@import '_content/Rhaudi.UiKit/Rhaudi.UiKit.wgi0hhkhlp.bundle.scp.css';

/* _content/FRP.Web/Components/Layout/MainLayout.razor.rz.scp.css */
.app-container[b-jl1iyu11ko] {
    height: 100vh;
    overflow: hidden;
}

/* Sidebar-Wrapper: Die UiSidebar (Rhaudi.UiKit) bringt selbst KEINE Breite mit
   (sie erwartet einen breiten-begrenzten Wrapper). Ohne diese Begrenzung dehnt sich
   .ui-sidebar auf volle Fensterbreite aus, wodurch rechtsbündige Elemente (Gruppen-
   Chevron via margin-left:auto) und der zentrierte Einklapp-Button unter der fixed
   positionierten .main-content verschwinden. Breite passt zum --sidebar-width-System,
   das TopBar/Footer/main-content (alle left: var(--sidebar-width)) bereits voraussetzen. */
.app-sidebar[b-jl1iyu11ko] {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    width: var(--sidebar-width);
    z-index: var(--z-sticky);
    overflow: hidden;
    transition: width 0.2s ease-in-out;
}

.app-sidebar.sidebar-collapsed[b-jl1iyu11ko] {
    width: var(--sidebar-width-collapsed);
    overflow: visible; /* Flyout-Untermenüs dürfen im eingeklappten Zustand herausragen */
}

.main-area[b-jl1iyu11ko] {
    /* Not needed anymore since all elements are fixed positioned */
}

.main-content[b-jl1iyu11ko] {
    overflow-y: auto;
    padding: 0;
    background: var(--surface-canvas);
    /* Positioning: between Sidebar, TopBar and Footer */
    position: fixed;
    top: 75px; /* TopBar height */
    left: var(--sidebar-width);
    right: 0;
    bottom: 40px; /* Footer height */
    width: calc(100vw - var(--sidebar-width));
    height: calc(100vh - 75px - 40px); /* Content height */
    padding: 15px;
    transition: left 0.2s ease-in-out, width 0.2s ease-in-out;
}

/* Collapsed sidebar state */
.app-container.sidebar-collapsed .main-content[b-jl1iyu11ko] {
    left: var(--sidebar-width-collapsed);
    width: calc(100vw - var(--sidebar-width-collapsed));
}

/* Weekly overview gets no extra padding */
.main-content:has(.weekly-overview-container)[b-jl1iyu11ko] {
    padding: 0;
}

/* /schichtplaner: volle Viewport-Höhe, genau EIN Scrollbalken (im .grid-body).
   Flex-Kette .main-content → .ui-page-shell → .ui-page-shell-body → .custom-shift-planner.
   Muss HIER liegen (nicht in main.css): gleiche Spezifität wie .main-content[b-scope],
   und FRP.Web.styles.css lädt nach main.css — außerhalb verliert der Override. */
.main-content:has(.custom-shift-planner)[b-jl1iyu11ko] {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    padding: 0;
}

.main-content:has(.custom-shift-planner)[b-jl1iyu11ko]  .ui-page-shell {
    flex: 1;
    min-height: 0;
}

.main-content:has(.custom-shift-planner)[b-jl1iyu11ko]  .ui-page-shell-body {
    display: flex;
    flex-direction: column;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .main-content[b-jl1iyu11ko] {
        top: 70px; /* Adjusted for mobile TopBar height */
        left: 0; /* Full width on mobile */
        width: 100vw; /* Full viewport width */
        height: calc(100vh - 70px - 60px);
    }
}

/* Sidebar Brand (Header) */
.sidebar-brand[b-jl1iyu11ko] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3) var(--dp-space-4);
    font-weight: var(--font-semibold);
    font-size: var(--text-lg);
    color: var(--text-primary);
}

.sidebar-brand-text[b-jl1iyu11ko] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Sidebar User (Footer) */
.sidebar-user[b-jl1iyu11ko] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2) var(--dp-space-3);
    border-radius: var(--dp-radius-3);
    color: var(--text-secondary);
}

.sidebar-user-info[b-jl1iyu11ko] {
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
}

.sidebar-user-name[b-jl1iyu11ko] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.sidebar-user-role[b-jl1iyu11ko] {
    font-size: var(--text-sm);
    color: var(--text-tertiary);
}

.sidebar-logout-btn[b-jl1iyu11ko] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    width: 100%;
    padding: var(--dp-space-2) var(--dp-space-3);
    margin-top: var(--dp-space-1);
    border: none;
    border-radius: var(--dp-radius-3);
    background: transparent;
    color: var(--text-secondary);
    font-size: var(--text-md);
    cursor: pointer;
    transition: background var(--transition-fast), color var(--transition-fast);
}

.sidebar-logout-btn:hover[b-jl1iyu11ko] {
    background: rgba(var(--status-danger-rgb), 0.08);
    color: var(--status-danger);
}

#blazor-error-ui[b-jl1iyu11ko] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: var(--shadow-md);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: var(--dp-space-2) var(--dp-space-5) var(--dp-space-3) var(--dp-space-5);
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-jl1iyu11ko] {
        cursor: pointer;
        position: absolute;
        right: var(--dp-space-3);
        top: var(--dp-space-2);
    }
/* _content/FRP.Web/Components/Navigation/Footer.razor.rz.scp.css */
.app-footer[b-k9xog3znus] {
    background: linear-gradient(135deg, var(--dp-slate-50) 0%, var(--dp-slate-100) 100%);
    border-top: 1px solid var(--border-default);
    padding: var(--dp-space-2) var(--dp-space-6);
    position: fixed;
    bottom: 0;
    right: 0;
    left: var(--sidebar-width);
    width: calc(100vw - var(--sidebar-width));
    z-index: var(--z-sticky);
    backdrop-filter: blur(10px);
    height: 40px;
    box-sizing: border-box;
    transition: left 0.2s ease-in-out, width 0.2s ease-in-out;
}

/* Collapsed sidebar state */
.app-footer.sidebar-collapsed[b-k9xog3znus] {
    left: var(--sidebar-width-collapsed);
    width: calc(100vw - var(--sidebar-width-collapsed));
}

.footer-content[b-k9xog3znus] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 100%;
}

.footer-left[b-k9xog3znus] {
    display: flex;
    align-items: center;
}

.footer-text[b-k9xog3znus] {
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-500);
}

.footer-right[b-k9xog3znus] {
    display: flex;
    align-items: center;
}

.footer-separator[b-k9xog3znus] {
    margin: 0 var(--dp-space-2);
    color: var(--dp-slate-300);
    font-size: var(--text-sm-plus);
}

.audit-text[b-k9xog3znus] {
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-400);
}

.deploy-text[b-k9xog3znus] {
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-400);
}

/* Responsive */
@media (max-width: 768px) {
    .app-footer[b-k9xog3znus] {
        padding: var(--dp-space-2);
        left: 0;
        width: 100vw;
    }
}
/* _content/FRP.Web/Components/Navigation/TopBar.razor.rz.scp.css */
.topbar[b-5x145zomys] {
    background: linear-gradient(135deg, #ffffff 0%, var(--dp-slate-50) 100%);
    border-bottom: 1px solid var(--border-default);
    padding: var(--dp-space-4) var(--dp-space-8);
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: var(--shadow-sm);
    height: 75px;
    position: fixed;
    top: 0;
    right: 0;
    left: var(--sidebar-width);
    width: calc(100vw - var(--sidebar-width));
    z-index: var(--z-sticky);
    backdrop-filter: blur(10px);
    transition: left 0.2s ease-in-out, width 0.2s ease-in-out;
}

/* Collapsed sidebar state */
.topbar.sidebar-collapsed[b-5x145zomys] {
    left: var(--sidebar-width-collapsed);
    width: calc(100vw - var(--sidebar-width-collapsed));
}

.date-display[b-5x145zomys] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    color: var(--text-secondary);
    font-size: var(--text-lg);
    font-weight: var(--font-medium);
}

.date-text[b-5x145zomys] {
    color: var(--text-primary);
}

@media (max-width: 768px) {
    .topbar[b-5x145zomys] {
        padding: var(--dp-space-4);
        height: auto;
        min-height: 70px;
        left: 0;
        width: 100vw;
    }
}
/* _content/FRP.Web/Components/Pages/Administration/DavasoDebug/DavasoDebug.razor.rz.scp.css */
.page-container[b-ewit74sbgf] {
    padding: var(--dp-space-4);
}

.page-content[b-ewit74sbgf] {
    margin-top: var(--dp-space-4);
}

.test-grid[b-ewit74sbgf] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(480px, 1fr));
    gap: var(--dp-space-4);
    align-items: start;
}

.test-card[b-ewit74sbgf] {
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    transition: box-shadow var(--transition-fast);
}

.test-card:hover[b-ewit74sbgf] {
    box-shadow: var(--shadow-md);
}

.test-card-header[b-ewit74sbgf] {
    padding: var(--dp-space-4);
    border-bottom: 1px solid var(--border-subtle);
    background: var(--surface-canvas);
}

.test-card-title[b-ewit74sbgf] {
    display: flex;
    align-items: center;
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}

.test-card-desc[b-ewit74sbgf] {
    display: block;
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    margin-top: var(--dp-space-1);
}

.test-card-body[b-ewit74sbgf] {
    padding: var(--dp-space-4);
}

.test-result[b-ewit74sbgf] {
    margin-top: var(--dp-space-3);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-3);
    border: 1px solid;
}

.test-result.success[b-ewit74sbgf] {
    background: rgba(16, 185, 129, 0.06);
    border-color: rgba(16, 185, 129, 0.25);
}

.test-result.error[b-ewit74sbgf] {
    background: rgba(239, 68, 68, 0.06);
    border-color: rgba(239, 68, 68, 0.25);
}

.result-header[b-ewit74sbgf] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
    margin-bottom: var(--dp-space-2);
}

.test-result.success .result-header[b-ewit74sbgf] {
    color: #065f46;
}

.test-result.error .result-header[b-ewit74sbgf] {
    color: #991b1b;
}

.result-duration[b-ewit74sbgf] {
    margin-left: auto;
    font-weight: var(--font-normal);
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    background: var(--surface-canvas);
    padding: 2px var(--dp-space-2);
    border-radius: var(--dp-radius-full);
}

.result-output[b-ewit74sbgf] {
    margin: 0;
    padding: var(--dp-space-3);
    background: var(--surface-canvas);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
    line-height: var(--leading-relaxed);
    color: var(--text-primary);
    white-space: pre-wrap;
    word-break: break-all;
    max-height: 300px;
    overflow-y: auto;
}

.result-error[b-ewit74sbgf] {
    margin: var(--dp-space-2) 0 0;
    padding: var(--dp-space-3);
    background: rgba(239, 68, 68, 0.05);
    border: 1px solid rgba(239, 68, 68, 0.15);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
    line-height: var(--leading-relaxed);
    color: #991b1b;
    white-space: pre-wrap;
    word-break: break-all;
    max-height: 300px;
    overflow-y: auto;
}

@media (max-width: 768px) {
    .test-grid[b-ewit74sbgf] {
        grid-template-columns: 1fr;
    }
}
/* _content/FRP.Web/Components/Pages/Administration/EmailTest/EmailTest.razor.rz.scp.css */
.page-container[b-n1pd4ush5z] {
    padding: var(--dp-space-4);
}

.page-content[b-n1pd4ush5z] {
    margin-top: var(--dp-space-4);
}

.content-grid[b-n1pd4ush5z] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-4);
    align-items: start;
}

.form-group[b-n1pd4ush5z] {
    margin-bottom: var(--dp-space-3);
}

.form-group label[b-n1pd4ush5z] {
    display: block;
    font-weight: 600;
    margin-bottom: var(--dp-space-1);
    color: var(--text-primary);
    font-size: var(--text-md);
}

.form-actions[b-n1pd4ush5z] {
    margin-bottom: var(--dp-space-3);
}

.result-alert[b-n1pd4ush5z] {
    display: flex;
    align-items: center;
    padding: var(--dp-space-3);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-md);
    margin-top: var(--dp-space-3);
}

.result-alert.success[b-n1pd4ush5z] {
    background: rgba(34, 197, 94, 0.1);
    border: 1px solid rgba(34, 197, 94, 0.3);
    color: #166534;
}

.result-alert.error[b-n1pd4ush5z] {
    background: rgba(239, 68, 68, 0.1);
    border: 1px solid rgba(239, 68, 68, 0.3);
    color: #991b1b;
}

.result-alert.warning[b-n1pd4ush5z] {
    background: rgba(245, 158, 11, 0.1);
    border: 1px solid rgba(245, 158, 11, 0.3);
    color: #92400e;
}

@media (max-width: 768px) {
    .content-grid[b-n1pd4ush5z] {
        grid-template-columns: 1fr;
    }
}
/* _content/FRP.Web/Components/Pages/Administration/HR/BulkTransfer.razor.rz.scp.css */
.page-content[b-xinsz210yd] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.card-header-content[b-xinsz210yd] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-weight: 600;
}

.step-number[b-xinsz210yd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: var(--primary-color, #3b82f6);
    color: white;
    border-radius: 50%;
    font-size: 0.875rem;
    font-weight: 700;
}

/* Upload Area */
.upload-area[b-xinsz210yd] {
    padding: 1rem;
}

.upload-hint[b-xinsz210yd] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 1rem;
    color: var(--text-muted);
    font-size: 0.875rem;
}

.file-actions[b-xinsz210yd] {
    margin-top: 1rem;
    display: flex;
    justify-content: flex-end;
}

/* Loading */
.loading-container[b-xinsz210yd] {
    display: flex;
    justify-content: center;
    padding: 3rem;
}

/* Stats Badges */
.stats-badges[b-xinsz210yd] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.stat-badge[b-xinsz210yd] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1rem 1.5rem;
    border-radius: 8px;
    min-width: 100px;
}

.stat-badge .stat-value[b-xinsz210yd] {
    font-size: 1.75rem;
    font-weight: 700;
}

.stat-badge .stat-label[b-xinsz210yd] {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    opacity: 0.8;
}

.stat-total[b-xinsz210yd] { background: #e0e7ff; color: #3730a3; }
.stat-success[b-xinsz210yd] { background: #d1fae5; color: #047857; }
.stat-warning[b-xinsz210yd] { background: #fef3c7; color: #b45309; }
.stat-info[b-xinsz210yd] { background: #dbeafe; color: #1d4ed8; }
.stat-attention[b-xinsz210yd] { background: #fee2e2; color: #dc2626; }
.stat-muted[b-xinsz210yd] { background: #f1f5f9; color: #64748b; }

/* Warnings */
.warnings-section[b-xinsz210yd] {
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-radius: 8px;
    padding: 1rem;
    margin-bottom: 1.5rem;
}

.warnings-section h5[b-xinsz210yd] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0 0 0.75rem 0;
    color: #b45309;
}

.warning-item[b-xinsz210yd] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.25rem 0;
    font-size: 0.875rem;
    color: #92400e;
}

.warnings-more[b-xinsz210yd] {
    font-style: italic;
    color: #b45309;
    margin-top: 0.5rem;
}

/* Transfer Grid */
.transfer-grid-section[b-xinsz210yd] {
    margin-top: 1rem;
}

/* Match Badges */
.match-badge[b-xinsz210yd] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.2rem 0.6rem;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
    min-width: 50px;
}

.match-exact[b-xinsz210yd] { background: #d1fae5; color: #047857; }
.match-good[b-xinsz210yd] { background: #dbeafe; color: #1d4ed8; }
.match-partial[b-xinsz210yd] { background: #fef3c7; color: #b45309; }
.match-none[b-xinsz210yd] { background: #f1f5f9; color: #94a3b8; }

/* Status Badges */
.status-badge[b-xinsz210yd] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
}

.status-badge.status-success[b-xinsz210yd] { background: #d1fae5; color: #047857; }
.status-badge.status-warning[b-xinsz210yd] { background: #f1f5f9; color: #94a3b8; }
.status-badge.status-attention[b-xinsz210yd] { background: #fee2e2; color: #dc2626; }

/* Export Summary */
.export-summary[b-xinsz210yd] {
    padding: 1rem;
    background: #f8fafc;
    border-radius: 8px;
    margin-bottom: 1.5rem;
}

.export-summary p[b-xinsz210yd] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0.5rem 0;
}

.warning-text[b-xinsz210yd] {
    color: #b45309;
}

.export-actions[b-xinsz210yd] {
    display: flex;
    justify-content: center;
    gap: 1rem;
}

/* Result Card */
[b-xinsz210yd] .result-card.success .e-card-header {
    background: #d1fae5;
    color: #047857;
}

.result-stats[b-xinsz210yd] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.result-stat[b-xinsz210yd] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-radius: 8px;
}

.result-stat.success[b-xinsz210yd] { background: #d1fae5; color: #047857; }
.result-stat.info[b-xinsz210yd] { background: #dbeafe; color: #1d4ed8; }

.result-actions[b-xinsz210yd] {
    display: flex;
    justify-content: center;
    gap: 1rem;
}

/* H17: Betragsfeld in der Vorschau hervorheben, wenn 0/nicht erkannt */
[b-xinsz210yd] .amount-invalid input,
[b-xinsz210yd] .amount-invalid .e-numeric {
    border-color: var(--color-warning, #d97706) !important;
    background: #fffbeb;
}
/* _content/FRP.Web/Components/Pages/Administration/InsuranceCompanies/InsuranceCompanyDetails.razor.rz.scp.css */
.page-container[b-zavt0sxqga] {
    padding: var(--dp-space-6);
    max-width: 100%;
}

.page-content[b-zavt0sxqga] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-md);
    padding: var(--dp-space-6);
}

/* Loading & Error States */
.loading-container[b-zavt0sxqga],
.error-container[b-zavt0sxqga] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 400px;
    gap: var(--dp-space-4);
}

/* Tab Customization */
[b-zavt0sxqga] .detail-tabs {
    background: transparent;
}

[b-zavt0sxqga] .detail-tabs .e-tab-header {
    background: var(--dp-slate-50);
    border-bottom: 2px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-4) var(--dp-radius-4) 0 0;
}

[b-zavt0sxqga] .detail-tabs .e-tab-header .e-toolbar-item.e-active {
    background: var(--surface-primary);
    border-bottom: 3px solid var(--accent);
    font-weight: var(--font-semibold);
}

[b-zavt0sxqga] .detail-tabs .e-content {
    background: var(--surface-primary);
    border-radius: 0 0 var(--dp-radius-4) var(--dp-radius-4);
    padding: var(--dp-space-6);
}

/* Tab Content */
.tab-content-wrapper[b-zavt0sxqga] {
    min-height: 400px;
}

/* Overview Content */
.overview-content[b-zavt0sxqga] {
    height: 100%;
}

.detail-card[b-zavt0sxqga] {
    background: var(--dp-slate-50);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-5);
    margin-bottom: var(--dp-space-4);
}

.detail-card .card-title[b-zavt0sxqga] {
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-600);
    margin-bottom: var(--dp-space-4);
    padding-bottom: var(--dp-space-2);
    border-bottom: 1px solid var(--dp-slate-200);
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.detail-row[b-zavt0sxqga] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-2) 0;
    border-bottom: 1px solid var(--dp-slate-100);
}

.detail-row:last-child[b-zavt0sxqga] {
    border-bottom: none;
}

.detail-row strong[b-zavt0sxqga] {
    color: var(--dp-slate-600);
    font-weight: var(--font-medium);
    font-size: var(--text-md);
}

.detail-row span[b-zavt0sxqga] {
    color: var(--text-primary);
    font-size: var(--text-md);
}

.address-content[b-zavt0sxqga] {
    color: var(--text-secondary);
    line-height: 1.6;
    font-size: var(--text-md);
}

.notes-content[b-zavt0sxqga] {
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-2);
    padding: var(--dp-space-3);
    margin-top: var(--dp-space-2);
    color: var(--dp-slate-600);
    white-space: pre-wrap;
    font-size: var(--text-md);
}

/* Billing Addresses Content */
.billing-addresses-content[b-zavt0sxqga] {
    min-height: 400px;
}

.billing-header[b-zavt0sxqga] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: var(--dp-space-6);
    padding-bottom: var(--dp-space-4);
    border-bottom: 1px solid var(--dp-slate-200);
}

.billing-title h4[b-zavt0sxqga] {
    margin: 0;
    color: var(--text-primary);
    font-weight: var(--font-semibold);
    font-size: var(--text-xl);
}

.billing-title p[b-zavt0sxqga] {
    margin: var(--dp-space-1) 0 0 0;
    font-size: var(--text-md);
}

/* Billing Address Cards Grid */
.billing-addresses-grid[b-zavt0sxqga] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
    gap: var(--dp-space-4);
}

.billing-address-card[b-zavt0sxqga] {
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-4);
    overflow: hidden;
    transition: var(--transition-base);
}

.billing-address-card:hover[b-zavt0sxqga] {
    border-color: var(--accent);
    box-shadow: var(--shadow-md);
}

.billing-address-card.inactive[b-zavt0sxqga] {
    opacity: 0.7;
    background: var(--dp-slate-50);
}

.billing-address-card .card-header[b-zavt0sxqga] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: var(--dp-space-4);
    background: var(--dp-slate-50);
    border-bottom: 1px solid var(--dp-slate-200);
}

.address-info[b-zavt0sxqga] {
    flex: 1;
}

.address-name[b-zavt0sxqga] {
    margin: 0 0 var(--dp-space-2) 0;
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}

.card-actions[b-zavt0sxqga] {
    display: flex;
    gap: var(--dp-space-2);
}

/* Icon-Only Button */
[b-zavt0sxqga] .btn-icon-only {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    padding: 0 !important;
    border-radius: var(--dp-radius-4) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

[b-zavt0sxqga] .btn-icon-only:hover {
    transform: scale(1.05);
}

[b-zavt0sxqga] .btn-icon-only i {
    font-size: 14px;
    margin: 0 !important;
}

.billing-address-card .card-body[b-zavt0sxqga] {
    padding: var(--dp-space-4);
}

.address-details[b-zavt0sxqga] {
    margin-bottom: var(--dp-space-4);
}

.address-details .detail-row[b-zavt0sxqga] {
    display: flex;
    align-items: center;
    margin-bottom: var(--dp-space-2);
    color: var(--dp-slate-600);
    font-size: var(--text-md);
    border-bottom: none;
    padding: 0;
    gap: var(--dp-space-2);
}

/* Service Categories in Cards */
.service-categories[b-zavt0sxqga] {
    margin-bottom: var(--dp-space-3);
}

.service-badges[b-zavt0sxqga] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-1);
}

.service-badges .badge[b-zavt0sxqga] {
    font-size: var(--text-sm-plus);
    padding: var(--dp-space-1) var(--dp-space-2);
}

.address-notes[b-zavt0sxqga] {
    margin-top: var(--dp-space-3);
    padding-top: var(--dp-space-3);
    border-top: 1px solid var(--dp-slate-200);
    color: var(--text-secondary);
    font-size: var(--text-md);
    display: flex;
    align-items: flex-start;
    gap: var(--dp-space-2);
}

/* Empty State */
.empty-state[b-zavt0sxqga] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--dp-space-12);
    text-align: center;
}

.empty-icon[b-zavt0sxqga] {
    width: 64px;
    height: 64px;
    border-radius: var(--dp-radius-full);
    background: var(--dp-slate-100);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: var(--dp-space-4);
    font-size: var(--text-3xl);
    color: var(--dp-slate-400);
}

.empty-state h5[b-zavt0sxqga] {
    margin-bottom: var(--dp-space-2);
    color: var(--text-primary);
    font-weight: var(--font-semibold);
}

.empty-state p[b-zavt0sxqga] {
    margin-bottom: var(--dp-space-6);
    max-width: 400px;
}

/* Badge Styles */
.badge[b-zavt0sxqga] {
    font-size: var(--text-sm-plus);
    padding: 0.35em 0.65em;
}

/* Dialog Styling */
.dialog-header[b-zavt0sxqga] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
}

.dialog-form[b-zavt0sxqga] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
}

.form-row[b-zavt0sxqga] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-3);
}

.form-field[b-zavt0sxqga] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.form-field label[b-zavt0sxqga] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
}

.form-field input[b-zavt0sxqga],
.form-field .form-control[b-zavt0sxqga] {
    padding: var(--dp-space-2) var(--dp-space-3);
    border: 1px solid var(--dp-slate-300);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
}

.form-field input:focus[b-zavt0sxqga],
.form-field .form-control:focus[b-zavt0sxqga] {
    border-color: var(--accent);
    outline: none;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.2);
}

/* Service Category Selection */
.service-categories-selection[b-zavt0sxqga] {
    max-height: 200px;
    overflow-y: auto;
    border: 1px solid var(--dp-slate-300);
    border-radius: var(--dp-radius-2);
    padding: var(--dp-space-3);
    background: var(--dp-slate-50);
}

.service-category-item[b-zavt0sxqga] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    margin-bottom: var(--dp-space-1);
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
}

.service-category-item:hover[b-zavt0sxqga] {
    background: var(--dp-slate-100);
}

.service-category-item:last-child[b-zavt0sxqga] {
    margin-bottom: 0;
}

.service-category-item input[type="checkbox"][b-zavt0sxqga] {
    width: 1rem;
    height: 1rem;
}

.service-category-label[b-zavt0sxqga] {
    flex: 1;
    cursor: pointer;
    margin: 0;
    font-size: var(--text-md);
    color: var(--dp-slate-600);
}

/* Form Check */
.form-check[b-zavt0sxqga] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.form-check-input[b-zavt0sxqga] {
    width: 1.25rem;
    height: 1.25rem;
}

.form-check-label[b-zavt0sxqga] {
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
    margin: 0;
}

.dialog-footer[b-zavt0sxqga] {
    display: flex;
    gap: var(--dp-space-2);
    justify-content: flex-end;
}

/* Responsive Design */
@media (max-width: 768px) {
    .page-container[b-zavt0sxqga] {
        padding: var(--dp-space-4);
    }

    .billing-header[b-zavt0sxqga] {
        flex-direction: column;
        gap: var(--dp-space-3);
    }

    .billing-addresses-grid[b-zavt0sxqga] {
        grid-template-columns: 1fr;
    }

    .form-row[b-zavt0sxqga] {
        grid-template-columns: 1fr;
    }

    .detail-row[b-zavt0sxqga] {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--dp-space-1);
    }
}
/* _content/FRP.Web/Components/Pages/Administration/InsuranceCompanies/InsuranceCompanyList.razor.rz.scp.css */
.page-container[b-vklmo5hegv] {
    padding: var(--dp-space-6);
    max-width: 100%;
}

.page-content[b-vklmo5hegv] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-md);
    padding: var(--dp-space-6);
}

.grid-container[b-vklmo5hegv] {
    overflow: auto;
}

.loading-container[b-vklmo5hegv] {
    text-align: center;
    padding: var(--dp-space-12);
}

/* Custom Cell Styles */
.company-name-cell[b-vklmo5hegv] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.company-name-cell strong[b-vklmo5hegv] {
    color: var(--text-primary);
    font-weight: var(--font-semibold);
}

.company-name-cell small[b-vklmo5hegv] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

.action-buttons[b-vklmo5hegv] {
    display: flex;
    gap: var(--dp-space-2);
    justify-content: center;
}

/* Icon-Only Button */
[b-vklmo5hegv] .btn-icon-only {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    padding: 0 !important;
    border-radius: var(--dp-radius-4) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

[b-vklmo5hegv] .btn-icon-only:hover {
    transform: scale(1.05);
}

[b-vklmo5hegv] .btn-icon-only i {
    font-size: 14px;
    margin: 0 !important;
}

/* Badge Styles */
.badge[b-vklmo5hegv] {
    font-size: var(--text-sm-plus);
    padding: 0.35em 0.65em;
}

/* Dialog Styling */
.dialog-header[b-vklmo5hegv] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
}

.dialog-form[b-vklmo5hegv] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
}

.form-row[b-vklmo5hegv] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-3);
}

.form-field[b-vklmo5hegv] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.form-field label[b-vklmo5hegv] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
}

.form-field input[b-vklmo5hegv] {
    padding: var(--dp-space-2) var(--dp-space-3);
    border: 1px solid var(--dp-slate-300);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
}

.form-field input:focus[b-vklmo5hegv] {
    border-color: var(--accent);
    outline: none;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.2);
}

.form-check[b-vklmo5hegv] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.form-check-input[b-vklmo5hegv] {
    width: 1.25rem;
    height: 1.25rem;
}

.form-check-label[b-vklmo5hegv] {
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
    margin: 0;
}

.dialog-footer[b-vklmo5hegv] {
    display: flex;
    gap: var(--dp-space-2);
    justify-content: flex-end;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .page-container[b-vklmo5hegv] {
        padding: var(--dp-space-4);
    }

    .form-row[b-vklmo5hegv] {
        grid-template-columns: 1fr;
    }

    .action-buttons[b-vklmo5hegv] {
        flex-wrap: wrap;
    }
}
/* _content/FRP.Web/Components/Pages/Administration/ServiceCategoryLimits/ServiceCategoryLimitList.razor.rz.scp.css */
/* ==========================================================================
   ServiceCategoryLimits - Body-spezifische Styles
   Hero kommt aus UiPageShell. Body aus .page-body.
   ========================================================================== */

.limits-page[b-pw8qvm2ypx] {
    /* body-spezifische Overrides (falls nötig) */
}

.btn-create:hover[b-pw8qvm2ypx] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(var(--accent-rgb), 0.3);
}

/* Stats-Cards und Filter-Bar kommen aus _page-patterns.css */

.limits-controls-row[b-pw8qvm2ypx] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
    margin-top: var(--dp-space-3);
    padding-top: var(--dp-space-3);
    border-top: 1px solid var(--dp-slate-100);
}

[b-pw8qvm2ypx] .filter-dropdown {
    border-radius: var(--dp-radius-4) !important;
}

.status-toggles[b-pw8qvm2ypx] {
    display: flex;
    background: var(--dp-slate-100);
    border-radius: var(--dp-radius-4);
    padding: 3px;
    gap: 2px;
}

.toggle-btn[b-pw8qvm2ypx] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2) var(--dp-space-4);
    background: transparent;
    border: none;
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.toggle-btn:hover[b-pw8qvm2ypx] {
    color: var(--text-primary);
}

.toggle-btn.active[b-pw8qvm2ypx] {
    background: var(--surface-primary);
    color: var(--accent);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.toggle-dot[b-pw8qvm2ypx] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
    opacity: 0.4;
    transition: all 0.2s ease;
}

.toggle-btn.active .toggle-dot[b-pw8qvm2ypx] {
    opacity: 1;
    transform: scale(1.2);
}

.results-count[b-pw8qvm2ypx] {
    display: flex;
    align-items: baseline;
    gap: var(--dp-space-1);
    padding-left: var(--dp-space-4);
    border-left: 1px solid var(--dp-slate-200);
}

.count-number[b-pw8qvm2ypx] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
}

.count-label[b-pw8qvm2ypx] {
    font-size: var(--text-md);
    color: var(--text-secondary);
}

/* ==========================================================================
   Data Section
   ========================================================================== */

.data-section[b-pw8qvm2ypx] {
    padding: var(--dp-space-6);
    max-width: 1400px;
    margin: 0 auto;
}

/* Loading State */
.loading-state[b-pw8qvm2ypx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--space-16);
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    border: 1px solid var(--dp-slate-200);
}

.loader[b-pw8qvm2ypx] {
    position: relative;
    width: 64px;
    height: 64px;
}

.loader-ring[b-pw8qvm2ypx] {
    position: absolute;
    inset: 0;
    border: 3px solid var(--dp-slate-200);
    border-top-color: var(--accent);
    border-radius: 50%;
    animation: spin-b-pw8qvm2ypx 1s linear infinite;
}

@keyframes spin-b-pw8qvm2ypx {
    to { transform: rotate(360deg); }
}

.loader-icon[b-pw8qvm2ypx] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    color: var(--accent);
    animation: pulse-b-pw8qvm2ypx 1.5s ease-in-out infinite;
}

@keyframes pulse-b-pw8qvm2ypx {
    0%, 100% { opacity: 0.5; }
    50% { opacity: 1; }
}

.loading-text[b-pw8qvm2ypx] {
    margin-top: var(--dp-space-4);
    font-size: var(--text-md);
    color: var(--text-secondary);
}

/* Empty State */
.empty-state[b-pw8qvm2ypx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--space-16);
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    border: 1px solid var(--dp-slate-200);
    text-align: center;
}

.empty-icon[b-pw8qvm2ypx] {
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--dp-slate-100);
    border-radius: 50%;
    font-size: 32px;
    color: var(--dp-slate-400);
    margin-bottom: var(--dp-space-4);
}

.empty-state h3[b-pw8qvm2ypx] {
    margin: 0;
    font-size: var(--text-xl);
    font-weight: 600;
    color: var(--text-primary);
}

.empty-state p[b-pw8qvm2ypx] {
    margin: var(--dp-space-2) 0 var(--dp-space-6);
    color: var(--text-secondary);
    max-width: 300px;
}

.btn-create-small[b-pw8qvm2ypx] {
    display: inline-flex;
    align-items: center;
    padding: var(--dp-space-2) var(--dp-space-4);
    background: var(--accent);
    color: white;
    border: none;
    border-radius: var(--dp-radius-4);
    font-size: var(--text-md);
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-create-small:hover[b-pw8qvm2ypx] {
    background: var(--dp-blue-800);
}

/* Grid Styling */
[b-pw8qvm2ypx] .limits-grid {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    border: 1px solid var(--dp-slate-200);
    overflow: hidden;
    animation: grid-appear-b-pw8qvm2ypx 0.5s ease-out 0.4s backwards;
}

@keyframes grid-appear-b-pw8qvm2ypx {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

[b-pw8qvm2ypx] .limits-grid .e-gridheader {
    background: var(--dp-slate-50);
    border-bottom: 1px solid var(--dp-slate-200);
}

[b-pw8qvm2ypx] .limits-grid .e-headercell {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-secondary);
    padding: var(--dp-space-4);
}

[b-pw8qvm2ypx] .limits-grid .e-rowcell {
    padding: var(--dp-space-4);
    border-color: var(--dp-slate-100);
    vertical-align: middle;
}

[b-pw8qvm2ypx] .limits-grid .e-row:hover .e-rowcell {
    background: var(--dp-slate-50);
}

[b-pw8qvm2ypx] .limits-grid .e-toolbar {
    background: transparent;
    border: none;
    padding: var(--dp-space-3);
}

/* Cell Templates */
.cell-category[b-pw8qvm2ypx] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
}

.category-badge[b-pw8qvm2ypx] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: linear-gradient(135deg, var(--accent) 0%, var(--dp-blue-800) 100%);
    border-radius: var(--dp-radius-4);
    flex-shrink: 0;
}

.category-code[b-pw8qvm2ypx] {
    font-size: 12px;
    font-weight: 700;
    color: white;
}

.category-name[b-pw8qvm2ypx] {
    font-size: var(--text-md);
    font-weight: 500;
    color: var(--text-primary);
}

.cell-carelevel[b-pw8qvm2ypx] {
    display: flex;
    align-items: center;
}

.carelevel-badge[b-pw8qvm2ypx] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 48px;
    padding: var(--dp-space-1) var(--dp-space-3);
    border-radius: var(--dp-radius-full);
    font-size: 12px;
    font-weight: 700;
    background: var(--dp-slate-100);
    color: var(--text-primary);
}

.carelevel-1[b-pw8qvm2ypx] { background: #dbeafe; color: #1d4ed8; }
.carelevel-2[b-pw8qvm2ypx] { background: #dcfce7; color: #15803d; }
.carelevel-3[b-pw8qvm2ypx] { background: #fef3c7; color: #b45309; }
.carelevel-4[b-pw8qvm2ypx] { background: #fee2e2; color: #b91c1c; }
.carelevel-5[b-pw8qvm2ypx] { background: #f3e8ff; color: #7c3aed; }

.carelevel-all[b-pw8qvm2ypx] {
    display: inline-flex;
    align-items: center;
    font-size: var(--text-md);
    color: var(--text-secondary);
}

.cell-amount[b-pw8qvm2ypx] {
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
    gap: var(--dp-space-1);
}

.amount-value[b-pw8qvm2ypx] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}

.amount-currency[b-pw8qvm2ypx] {
    font-size: 11px;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
}

.cell-validity[b-pw8qvm2ypx] {
    display: flex;
    align-items: center;
}

.validity-range[b-pw8qvm2ypx] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-1) var(--dp-space-2);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
}

.validity-from[b-pw8qvm2ypx],
.validity-to[b-pw8qvm2ypx] {
    font-weight: 500;
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}

.validity-arrow[b-pw8qvm2ypx] {
    color: var(--dp-slate-400);
    font-size: 12px;
}

.validity-unlimited[b-pw8qvm2ypx] {
    color: var(--status-success);
    font-size: 16px;
}

.cell-status[b-pw8qvm2ypx] {
    display: flex;
    justify-content: center;
}

.status-badge[b-pw8qvm2ypx] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-1) var(--dp-space-3);
    border-radius: var(--dp-radius-full);
    font-size: 12px;
    font-weight: 600;
}

.status-dot[b-pw8qvm2ypx] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
}

.status-active[b-pw8qvm2ypx] {
    background: rgba(var(--status-success-rgb), 0.1);
    color: var(--status-success);
}

.status-active .status-dot[b-pw8qvm2ypx] {
    animation: status-pulse-b-pw8qvm2ypx 2s ease-in-out infinite;
}

@keyframes status-pulse-b-pw8qvm2ypx {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.4; }
}

.status-expired[b-pw8qvm2ypx] {
    background: var(--dp-slate-100);
    color: var(--dp-slate-500);
}

.status-inactive[b-pw8qvm2ypx] {
    background: rgba(var(--status-warning-rgb), 0.1);
    color: var(--dp-amber-600);
}

.cell-actions[b-pw8qvm2ypx] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-2);
}

.action-btn[b-pw8qvm2ypx] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    border-radius: var(--dp-radius-4);
    font-size: 14px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.action-edit[b-pw8qvm2ypx] {
    background: var(--dp-slate-100);
    color: var(--text-secondary);
}

.action-edit:hover[b-pw8qvm2ypx] {
    background: var(--accent);
    color: white;
}

.action-deactivate[b-pw8qvm2ypx] {
    background: rgba(var(--status-warning-rgb), 0.1);
    color: var(--dp-amber-600);
}

.action-deactivate:hover[b-pw8qvm2ypx] {
    background: var(--status-warning);
    color: white;
}

.action-activate[b-pw8qvm2ypx] {
    background: rgba(var(--status-success-rgb), 0.1);
    color: var(--status-success);
}

.action-activate:hover[b-pw8qvm2ypx] {
    background: var(--status-success);
    color: white;
}

/* ==========================================================================
   Dialog Modal
   ========================================================================== */

[b-pw8qvm2ypx] .limit-dialog .e-dlg-header-content {
    padding: 0;
    border: none;
}

[b-pw8qvm2ypx] .limit-dialog .e-dlg-content {
    padding: 0;
}

[b-pw8qvm2ypx] .limit-dialog .e-footer-content {
    padding: var(--dp-space-4) var(--dp-space-6);
    background: var(--dp-slate-50);
    border-top: 1px solid var(--dp-slate-200);
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-3);
}

.dialog-header[b-pw8qvm2ypx] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
    padding: var(--dp-space-6);
    background: linear-gradient(135deg, var(--dp-slate-50) 0%, var(--surface-primary) 100%);
    border-bottom: 1px solid var(--dp-slate-200);
}

.dialog-icon[b-pw8qvm2ypx] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--dp-radius-6);
    font-size: 20px;
}

.dialog-icon.create[b-pw8qvm2ypx] {
    background: linear-gradient(135deg, var(--accent) 0%, var(--dp-blue-800) 100%);
    color: white;
}

.dialog-icon.edit[b-pw8qvm2ypx] {
    background: linear-gradient(135deg, var(--status-info) 0%, #2563eb 100%);
    color: white;
}

.dialog-title-group[b-pw8qvm2ypx] {
    flex: 1;
}

.dialog-title[b-pw8qvm2ypx] {
    margin: 0;
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--text-primary);
}

.dialog-subtitle[b-pw8qvm2ypx] {
    margin: 2px 0 0;
    font-size: var(--text-md);
    color: var(--text-secondary);
}

.dialog-form[b-pw8qvm2ypx] {
    padding: var(--dp-space-6);
}

.form-section[b-pw8qvm2ypx] {
    margin-bottom: var(--dp-space-5);
}

.form-section.highlight[b-pw8qvm2ypx] {
    padding: var(--dp-space-4);
    background: linear-gradient(135deg, rgba(var(--accent-rgb), 0.05) 0%, rgba(var(--status-success-rgb), 0.03) 100%);
    border-radius: var(--dp-radius-4);
    border: 1px solid rgba(var(--accent-rgb), 0.1);
}

.form-section:last-child[b-pw8qvm2ypx] {
    margin-bottom: 0;
}

.form-row[b-pw8qvm2ypx] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-4);
}

.form-field[b-pw8qvm2ypx] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.field-label[b-pw8qvm2ypx] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
    font-size: var(--text-md);
    font-weight: 600;
    color: var(--text-secondary);
}

.field-label.required[b-pw8qvm2ypx]::after {
    content: '*';
    color: var(--status-danger);
    margin-left: 2px;
}

.field-hint[b-pw8qvm2ypx] {
    font-size: 11px;
    color: var(--dp-slate-400);
}

[b-pw8qvm2ypx] .form-input {
    border-radius: var(--dp-radius-4) !important;
}

[b-pw8qvm2ypx] .form-input.input-currency .e-input {
    font-size: 1.25rem;
    font-weight: 600;
}

[b-pw8qvm2ypx] .form-textarea textarea {
    min-height: 80px;
    resize: vertical;
}

.form-toggle[b-pw8qvm2ypx] {
    display: flex;
    align-items: flex-start;
    gap: var(--dp-space-3);
    padding: var(--dp-space-4);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-4);
}

.toggle-content[b-pw8qvm2ypx] {
    flex: 1;
}

.toggle-label[b-pw8qvm2ypx] {
    display: block;
    font-weight: 600;
    color: var(--text-primary);
}

.toggle-description[b-pw8qvm2ypx] {
    display: block;
    margin-top: 2px;
    font-size: var(--text-md);
    color: var(--text-secondary);
}

.btn-cancel[b-pw8qvm2ypx] {
    padding: var(--dp-space-2) var(--dp-space-5);
    background: transparent;
    border: 1px solid var(--dp-slate-300);
    border-radius: var(--dp-radius-4);
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-cancel:hover[b-pw8qvm2ypx] {
    background: var(--dp-slate-100);
    border-color: var(--dp-slate-400);
}

.btn-submit[b-pw8qvm2ypx] {
    padding: var(--dp-space-2) var(--dp-space-6);
    background: linear-gradient(135deg, var(--accent) 0%, var(--dp-blue-800) 100%);
    border: none;
    border-radius: var(--dp-radius-4);
    font-weight: 600;
    color: white;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-submit:hover[b-pw8qvm2ypx] {
    box-shadow: 0 4px 12px rgba(var(--accent-rgb), 0.3);
}

/* ==========================================================================
   Toast Notifications
   ========================================================================== */

[b-pw8qvm2ypx] .limits-toast .e-toast {
    border-radius: var(--dp-radius-4);
    border-left: 4px solid;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

[b-pw8qvm2ypx] .limits-toast .e-toast-success {
    border-left-color: var(--status-success);
}

[b-pw8qvm2ypx] .limits-toast .e-toast-danger {
    border-left-color: var(--status-danger);
}

[b-pw8qvm2ypx] .limits-toast .e-toast-warning {
    border-left-color: var(--status-warning);
}

/* ==========================================================================
   Responsive Design
   ========================================================================== */

@media (max-width: 768px) {
    .limits-controls-row[b-pw8qvm2ypx] {
        flex-direction: column;
        align-items: stretch;
    }

    .status-toggles[b-pw8qvm2ypx] {
        justify-content: center;
    }

    .results-count[b-pw8qvm2ypx] {
        justify-content: center;
        padding: var(--dp-space-3) 0 0;
        border-left: none;
        border-top: 1px solid var(--dp-slate-200);
    }

    .data-section[b-pw8qvm2ypx] {
        padding: var(--dp-space-4);
    }

    .form-row[b-pw8qvm2ypx] {
        grid-template-columns: 1fr;
    }
}
/* _content/FRP.Web/Components/Pages/Administration/Services/ServiceManagement.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════
   Service Management — Body-spezifische Styles
   ─────────────────────────────────────────────────────────────
   Hero kommt aus UiPageShell (UIKit).
   Inline-KPIs aus .page-inline-metrics (_page-patterns.css).
   Hier: Panels, Grids, Tabs, Dialogs, Sub-Komponenten.
   ═══════════════════════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════════════════════
   BUTTONS (für .sv-btn in Dialog-Buttons)
   ═══════════════════════════════════════════════════════════════ */

.sv-btn[b-634mutnv1m] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3) var(--dp-space-5);
    border: none;
    border-radius: var(--dp-radius-4);
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
    cursor: pointer;
    transition: all var(--transition-base);
    white-space: nowrap;
    line-height: 1;
}

.sv-btn--accent[b-634mutnv1m] {
    background: var(--accent);
    color: #fff;
    box-shadow: 0 1px 3px rgba(59, 130, 246, 0.25);
}

.sv-btn--accent:hover[b-634mutnv1m] {
    background: var(--accent-hover);
    box-shadow: 0 4px 16px rgba(59, 130, 246, 0.3);
    transform: translateY(-1px);
}

.sv-btn--ghost[b-634mutnv1m] {
    background: transparent;
    color: var(--text-secondary);
    border: 1px solid var(--border-default);
}

.sv-btn--ghost:hover[b-634mutnv1m] {
    background: var(--dp-slate-100);
    border-color: var(--border-strong);
}

.sv-btn--sm[b-634mutnv1m] {
    padding: var(--dp-space-2) var(--dp-space-3);
    font-size: var(--text-sm-plus);
}

/* ═══════════════════════════════════════════════════════════════
   BODY LAYOUT (innerhalb .page-body — nur Vertical-Gap)
   ═══════════════════════════════════════════════════════════════ */

.sv-body[b-634mutnv1m] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-5);
}

/* ═══════════════════════════════════════════════════════════════
   PANELS
   ═══════════════════════════════════════════════════════════════ */

.sv-panel[b-634mutnv1m] {
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-6);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    animation: panel-up-b-634mutnv1m 0.45s ease both;
}

.sv-panel--detail[b-634mutnv1m] {
    animation-delay: 0.1s;
    border-left: 3px solid var(--accent);
}

@keyframes panel-up-b-634mutnv1m {
    from { opacity: 0; transform: translateY(12px); }
}

.sv-panel__head[b-634mutnv1m] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--dp-space-4) var(--dp-space-5);
    border-bottom: 1px solid var(--border-subtle);
    background: var(--dp-slate-50);
}

.sv-panel__title[b-634mutnv1m] {
    margin: 0;
    font-size: var(--text-sm-plus);
    font-weight: var(--font-bold);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--text-secondary);
}

.sv-panel__count[b-634mutnv1m] {
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
    font-weight: var(--font-medium);
}

/* ═══════════════════════════════════════════════════════════════
   GRID OVERRIDES
   ═══════════════════════════════════════════════════════════════ */

[b-634mutnv1m] .sv-grid {
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
}

[b-634mutnv1m] .sv-grid .e-gridheader {
    background: var(--dp-slate-50) !important;
    border-bottom: 2px solid var(--border-default) !important;
}

[b-634mutnv1m] .sv-grid .e-headercell {
    font-size: var(--text-sm-plus) !important;
    font-weight: var(--font-bold) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    color: var(--text-tertiary) !important;
    padding: var(--dp-space-3) var(--dp-space-4) !important;
}

[b-634mutnv1m] .sv-grid .e-rowcell {
    padding: var(--dp-space-3) var(--dp-space-4) !important;
    border-color: var(--border-subtle) !important;
    vertical-align: middle !important;
    font-size: var(--text-md);
    color: var(--text-primary);
}

[b-634mutnv1m] .sv-grid .e-row:hover .e-rowcell {
    background: var(--dp-slate-100) !important;
}

[b-634mutnv1m] .sv-grid .e-active .e-rowcell {
    background: var(--accent-light) !important;
    box-shadow: inset 3px 0 0 var(--accent);
}

[b-634mutnv1m] .sv-grid .e-toolbar {
    background: transparent !important;
    border: none !important;
    padding: var(--dp-space-3) var(--dp-space-4) !important;
}

[b-634mutnv1m] .sv-grid--inner {
    border-top: 1px solid var(--border-subtle) !important;
}

/* ═══════════════════════════════════════════════════════════════
   CELL COMPONENTS
   ═══════════════════════════════════════════════════════════════ */

.sv-code[b-634mutnv1m] {
    display: inline-block;
    padding: 2px var(--dp-space-2);
    background: var(--dp-slate-800);
    color: var(--accent-light);
    border-radius: var(--dp-radius-2);
    font-family: 'Consolas', 'SF Mono', monospace;
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    letter-spacing: 0.02em;
    line-height: 1.4;
}

.sv-code--lg[b-634mutnv1m] {
    padding: var(--dp-space-1) var(--dp-space-3);
    font-size: var(--text-md);
}

.sv-code--sm[b-634mutnv1m] {
    padding: 1px 6px;
    font-size: 0.7rem;
    background: var(--dp-slate-700);
}

.sv-cell-stack[b-634mutnv1m] {
    display: flex;
    flex-direction: column;
    gap: 1px;
}

.sv-cell-stack__primary[b-634mutnv1m] {
    font-weight: var(--font-semibold);
    color: var(--text-primary);
    font-size: var(--text-md);
}

.sv-cell-stack__secondary[b-634mutnv1m] {
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 220px;
}

.sv-fraction[b-634mutnv1m] {
    display: inline-flex;
    align-items: baseline;
    gap: 2px;
    font-family: 'Consolas', 'SF Mono', monospace;
    font-size: var(--text-md);
}

.sv-fraction__num[b-634mutnv1m] {
    font-weight: var(--font-bold);
    color: var(--status-success);
}

.sv-fraction__sep[b-634mutnv1m] {
    color: var(--dp-slate-300);
    font-weight: 300;
}

.sv-fraction__den[b-634mutnv1m] {
    color: var(--text-tertiary);
    font-weight: var(--font-medium);
}

.sv-mono[b-634mutnv1m] {
    font-family: 'Consolas', 'SF Mono', monospace;
    font-size: var(--text-md);
    color: var(--text-tertiary);
}

.sv-unit[b-634mutnv1m] {
    display: inline-block;
    padding: 2px var(--dp-space-2);
    background: var(--dp-slate-100);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    color: var(--text-secondary);
}

/* Status tags */
.sv-tag[b-634mutnv1m] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 3px var(--dp-space-2);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
}

.sv-tag--sm[b-634mutnv1m] {
    padding: 2px var(--dp-space-2);
    font-size: 0.68rem;
}

.sv-tag__dot[b-634mutnv1m] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
    flex-shrink: 0;
}

.sv-tag--live[b-634mutnv1m] {
    background: var(--status-success-light);
    color: var(--dp-emerald-700);
}

.sv-tag--live .sv-tag__dot[b-634mutnv1m] {
    animation: dot-pulse-b-634mutnv1m 2s ease-in-out infinite;
}

@keyframes dot-pulse-b-634mutnv1m {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.3; transform: scale(0.8); }
}

.sv-tag--off[b-634mutnv1m] {
    background: var(--status-warning-light);
    color: var(--dp-amber-600);
}

.sv-tag--muted[b-634mutnv1m] {
    background: var(--dp-slate-100);
    color: var(--dp-slate-500);
}

/* Pflegegrad badges */
.sv-pg[b-634mutnv1m] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 52px;
    padding: 3px var(--dp-space-3);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-bold);
}

.sv-pg--all[b-634mutnv1m] { background: var(--dp-slate-100); color: var(--text-secondary); }
.sv-pg--1[b-634mutnv1m] { background: #dbeafe; color: #1d4ed8; }
.sv-pg--2[b-634mutnv1m] { background: #dcfce7; color: #15803d; }
.sv-pg--3[b-634mutnv1m] { background: #fef3c7; color: #b45309; }
.sv-pg--4[b-634mutnv1m] { background: var(--status-danger-light); color: var(--dp-red-700); }
.sv-pg--5[b-634mutnv1m] { background: var(--dp-purple-100); color: var(--dp-purple-700); }

/* Money display */
.sv-money[b-634mutnv1m] {
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
    gap: var(--dp-space-1);
}

.sv-money__val[b-634mutnv1m] {
    font-size: var(--text-lg);
    font-weight: var(--font-bold);
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
    font-family: 'Consolas', 'SF Mono', monospace;
}

.sv-money__cur[b-634mutnv1m] {
    font-size: 0.65rem;
    font-weight: var(--font-bold);
    color: var(--text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

/* Date range */
.sv-range[b-634mutnv1m] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 3px var(--dp-space-2);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
    color: var(--text-secondary);
    font-variant-numeric: tabular-nums;
}

[b-634mutnv1m] .sv-range__inf {
    color: var(--status-success);
    font-size: 14px;
}

/* Action buttons */
.sv-actions[b-634mutnv1m] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-1);
}

.sv-action[b-634mutnv1m] {
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border: none;
    border-radius: var(--dp-radius-4);
    font-size: 14px;
    cursor: pointer;
    transition: all var(--transition-fast);
}

.sv-action--default[b-634mutnv1m] {
    background: var(--dp-slate-100);
    color: var(--text-secondary);
}

.sv-action--default:hover[b-634mutnv1m] {
    background: var(--dp-slate-700);
    color: #fff;
}

.sv-action--accent[b-634mutnv1m] {
    background: var(--accent-light);
    color: var(--accent);
}

.sv-action--accent:hover[b-634mutnv1m] {
    background: var(--accent);
    color: #fff;
}

.sv-action--warn[b-634mutnv1m] {
    background: var(--status-warning-light);
    color: var(--dp-amber-600);
}

.sv-action--warn:hover[b-634mutnv1m] {
    background: var(--status-warning);
    color: #fff;
}

.sv-action--go[b-634mutnv1m] {
    background: var(--status-success-light);
    color: var(--dp-emerald-700);
}

.sv-action--go:hover[b-634mutnv1m] {
    background: var(--status-success);
    color: #fff;
}

/* ═══════════════════════════════════════════════════════════════
   DETAIL SECTION
   ═══════════════════════════════════════════════════════════════ */

.sv-detail-head[b-634mutnv1m] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--dp-space-4) var(--dp-space-5);
    background: var(--dp-slate-50);
    border-bottom: 1px solid var(--border-default);
}

.sv-detail-head__left[b-634mutnv1m] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
}

.sv-detail-head__text[b-634mutnv1m] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.sv-detail-head__title[b-634mutnv1m] {
    margin: 0;
    font-size: var(--text-xl);
    font-weight: var(--font-bold);
    color: var(--text-primary);
}

.sv-detail-head__sub[b-634mutnv1m] {
    margin: 0;
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
}

/* Tabs */
[b-634mutnv1m] .sv-tabs {
    border: none !important;
}

[b-634mutnv1m] .sv-tabs .e-tab-header {
    background: var(--surface-primary) !important;
    border-bottom: 1px solid var(--border-default) !important;
    padding: 0 var(--dp-space-5) !important;
}

[b-634mutnv1m] .sv-tabs .e-tab-header .e-toolbar-item .e-tab-text {
    font-weight: var(--font-semibold) !important;
    font-size: var(--text-md) !important;
}

[b-634mutnv1m] .sv-tabs .e-tab-header .e-toolbar-item.e-active {
    border-bottom: 2px solid var(--accent) !important;
}

[b-634mutnv1m] .sv-tabs .e-tab-header .e-toolbar-item.e-active .e-tab-text {
    color: var(--accent) !important;
}

.sv-tab-body[b-634mutnv1m] {
    padding: var(--dp-space-4) var(--dp-space-5);
}

.sv-tab-toolbar[b-634mutnv1m] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: var(--dp-space-3);
}

.sv-tab-toolbar__info[b-634mutnv1m] {
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
    font-weight: var(--font-medium);
}

/* ═══════════════════════════════════════════════════════════════
   LOADER / EMPTY
   ═══════════════════════════════════════════════════════════════ */

.sv-loader[b-634mutnv1m] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-12) var(--dp-space-5);
    color: var(--text-tertiary);
    font-size: var(--text-md);
}

.sv-loader--compact[b-634mutnv1m] { padding: var(--dp-space-8) var(--dp-space-5); }

.sv-loader__spinner[b-634mutnv1m] {
    width: 36px;
    height: 36px;
    border: 3px solid var(--dp-slate-200);
    border-top-color: var(--accent);
    border-radius: 50%;
    animation: spin-b-634mutnv1m 0.8s linear infinite;
}

@keyframes spin-b-634mutnv1m { to { transform: rotate(360deg); } }

.sv-empty[b-634mutnv1m] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-4);
    padding: var(--dp-space-12) var(--dp-space-5);
    text-align: center;
}

.sv-empty--compact[b-634mutnv1m] {
    padding: var(--dp-space-8) var(--dp-space-5);
}

.sv-empty__icon[b-634mutnv1m] {
    width: 64px;
    height: 64px;
    display: grid;
    place-items: center;
    background: var(--dp-slate-100);
    border-radius: 50%;
    font-size: 26px;
    color: var(--dp-slate-300);
}

.sv-empty__text[b-634mutnv1m] {
    margin: 0;
    font-size: var(--text-md);
    color: var(--text-tertiary);
}

/* ═══════════════════════════════════════════════════════════════
   DIALOGS
   ═══════════════════════════════════════════════════════════════ */

[b-634mutnv1m] .sv-dialog .e-dlg-header-content {
    padding: 0 !important;
    border: none !important;
}

[b-634mutnv1m] .sv-dialog .e-dlg-content {
    padding: 0 !important;
}

[b-634mutnv1m] .sv-dialog .e-footer-content {
    padding: var(--dp-space-3) var(--dp-space-6) !important;
    background: var(--dp-slate-50) !important;
    border-top: 1px solid var(--border-default) !important;
    display: flex !important;
    justify-content: flex-end !important;
    gap: var(--dp-space-3) !important;
}

[b-634mutnv1m] .sv-dialog .e-dlg-header-content .e-btn.e-dlg-closeicon-btn {
    top: 18px !important;
    right: 16px !important;
}

.sv-dialog__head[b-634mutnv1m] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-5) var(--dp-space-6);
    border-bottom: 1px solid var(--border-default);
    background: var(--surface-primary);
}

.sv-dialog__icon[b-634mutnv1m] {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    background: var(--accent);
    border-radius: var(--dp-radius-4);
    font-size: 18px;
    color: #fff;
    flex-shrink: 0;
}

.sv-dialog__icon--edit[b-634mutnv1m] {
    background: var(--dp-slate-700);
}

.sv-dialog__title[b-634mutnv1m] {
    margin: 0;
    font-size: var(--text-xl);
    font-weight: var(--font-bold);
    color: var(--text-primary);
}

.sv-dialog__sub[b-634mutnv1m] {
    margin: 2px 0 0;
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
}

/* ═══════════════════════════════════════════════════════════════
   FORMS
   ═══════════════════════════════════════════════════════════════ */

.sv-form[b-634mutnv1m] {
    padding: var(--dp-space-5) var(--dp-space-6);
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}

.sv-form__row[b-634mutnv1m] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-3);
}

.sv-form__row--3[b-634mutnv1m] {
    grid-template-columns: 1fr 1fr 1fr;
}

.sv-field[b-634mutnv1m] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.sv-field--highlight[b-634mutnv1m] {
    padding: var(--dp-space-3);
    background: var(--accent-light);
    border: 1px solid rgba(59, 130, 246, 0.15);
    border-radius: var(--dp-radius-4);
}

.sv-label[b-634mutnv1m] {
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
}

.sv-label--req[b-634mutnv1m]::after {
    content: '*';
    color: var(--status-danger);
    font-weight: var(--font-bold);
}

.sv-hint[b-634mutnv1m] {
    font-size: 0.7rem;
    color: var(--text-tertiary);
}

[b-634mutnv1m] .sv-input {
    border-radius: var(--dp-radius-4) !important;
}

[b-634mutnv1m] .sv-input .e-input:focus,
[b-634mutnv1m] .sv-input.e-input-focus {
    border-color: var(--accent) !important;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1) !important;
}

[b-634mutnv1m] .sv-input--area textarea {
    min-height: 72px;
    resize: vertical;
}

[b-634mutnv1m] .sv-input--big .e-input {
    font-size: var(--text-2xl) !important;
    font-weight: var(--font-bold) !important;
    font-family: 'Consolas', 'SF Mono', monospace;
}

.sv-toggle-row[b-634mutnv1m] {
    display: flex;
    align-items: flex-start;
    gap: var(--dp-space-3);
    padding: var(--dp-space-3);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-4);
}

.sv-toggle-row__label[b-634mutnv1m] {
    display: block;
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
    color: var(--text-primary);
}

.sv-toggle-row__hint[b-634mutnv1m] {
    display: block;
    margin-top: 2px;
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
}

.sv-section-label[b-634mutnv1m] {
    margin: 0 0 var(--dp-space-3);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-bold);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--text-tertiary);
}

/* ═══════════════════════════════════════════════════════════════
   HISTORY — Add section + Timeline
   ═══════════════════════════════════════════════════════════════ */

.sv-history-add[b-634mutnv1m] {
    padding: var(--dp-space-4);
    background: var(--accent-light);
    border: 1px solid rgba(59, 130, 246, 0.15);
    border-radius: var(--dp-radius-4);
}

.sv-history-add__foot[b-634mutnv1m] {
    display: flex;
    justify-content: flex-end;
    margin-top: var(--dp-space-3);
}

.sv-timeline-section[b-634mutnv1m] {
    margin-top: var(--dp-space-1);
}

.sv-timeline[b-634mutnv1m] {
    display: flex;
    flex-direction: column;
}

.sv-timeline__item[b-634mutnv1m] {
    display: flex;
    gap: var(--dp-space-3);
    position: relative;
}

.sv-timeline__rail[b-634mutnv1m] {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 20px;
    flex-shrink: 0;
    padding-top: 6px;
}

.sv-timeline__node[b-634mutnv1m] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--dp-slate-300);
    border: 2px solid var(--surface-primary);
    box-shadow: 0 0 0 2px var(--dp-slate-200);
    flex-shrink: 0;
    z-index: 1;
}

.sv-timeline__item--current .sv-timeline__node[b-634mutnv1m] {
    background: var(--status-success);
    box-shadow: 0 0 0 2px var(--status-success-light), 0 0 8px rgba(16, 185, 129, 0.3);
}

.sv-timeline__item:not(:last-child) .sv-timeline__rail[b-634mutnv1m]::after {
    content: '';
    flex: 1;
    width: 2px;
    background: var(--dp-slate-200);
    margin-top: var(--dp-space-1);
}

.sv-timeline__card[b-634mutnv1m] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-3);
    margin-bottom: var(--dp-space-2);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-4);
    border: 1px solid var(--border-default);
    transition: all var(--transition-base);
}

.sv-timeline__item--current .sv-timeline__card[b-634mutnv1m] {
    background: var(--status-success-light);
    border-color: rgba(16, 185, 129, 0.2);
}

.sv-timeline__item:not(.sv-timeline__item--current) .sv-timeline__card[b-634mutnv1m] {
    opacity: 0.65;
}

.sv-timeline__item:not(.sv-timeline__item--current) .sv-timeline__card:hover[b-634mutnv1m] {
    opacity: 1;
}

.sv-timeline__price[b-634mutnv1m] {
    display: flex;
    align-items: baseline;
    gap: var(--dp-space-1);
    min-width: 90px;
}

.sv-timeline__meta[b-634mutnv1m] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.sv-timeline__period[b-634mutnv1m] {
    font-size: var(--text-md);
    color: var(--text-secondary);
    font-variant-numeric: tabular-nums;
}

.sv-timeline__reason[b-634mutnv1m] {
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
    font-style: italic;
}

/* Timeline inline edit */
.sv-timeline__item--editing .sv-timeline__node--edit[b-634mutnv1m] {
    background: var(--accent);
    box-shadow: 0 0 0 2px var(--accent-light), 0 0 8px rgba(59, 130, 246, 0.3);
}

.sv-timeline__edit-card[b-634mutnv1m] {
    flex: 1;
    padding: var(--dp-space-3) var(--dp-space-4);
    margin-bottom: var(--dp-space-2);
    background: var(--accent-light);
    border: 1px solid rgba(59, 130, 246, 0.2);
    border-radius: var(--dp-radius-4);
}

.sv-timeline__edit-actions[b-634mutnv1m] {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-2);
    margin-top: var(--dp-space-3);
}

.sv-timeline__card .sv-action[b-634mutnv1m] {
    flex-shrink: 0;
    opacity: 0;
    transition: opacity var(--transition-fast);
}

.sv-timeline__card:hover .sv-action[b-634mutnv1m] {
    opacity: 1;
}

/* ═══════════════════════════════════════════════════════════════
   TOAST
   ═══════════════════════════════════════════════════════════════ */

[b-634mutnv1m] .sv-toast .e-toast {
    border-radius: var(--dp-radius-4) !important;
    border-left: 4px solid !important;
    box-shadow: var(--shadow-lg) !important;
}

[b-634mutnv1m] .sv-toast .e-toast-success { border-left-color: var(--status-success) !important; }
[b-634mutnv1m] .sv-toast .e-toast-danger { border-left-color: var(--status-danger) !important; }
[b-634mutnv1m] .sv-toast .e-toast-warning { border-left-color: var(--status-warning) !important; }

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════════════════════ */

@media (max-width: 1100px) {
    .sv-form__row--3[b-634mutnv1m] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 768px) {
    .sv-form__row[b-634mutnv1m],
    .sv-form__row--3[b-634mutnv1m] {
        grid-template-columns: 1fr;
    }
}
/* _content/FRP.Web/Components/Pages/Administration/Settings/CheckInGroupSettings.razor.rz.scp.css */
.group-settings-container[b-zl23wx1f2e] {
    padding: var(--dp-space-4);
}

.group-settings-header[b-zl23wx1f2e] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: var(--dp-space-5);
}

.group-settings-header h5[b-zl23wx1f2e] {
    margin: 0;
    color: var(--text-primary);
}

.groups-list[b-zl23wx1f2e] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
}

.group-card[b-zl23wx1f2e] {
    display: flex;
    align-items: stretch;
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    overflow: hidden;
    transition: var(--transition-base);
}

.group-card:hover[b-zl23wx1f2e] {
    box-shadow: var(--shadow-sm);
}

.group-color-preview[b-zl23wx1f2e] {
    width: 8px;
    flex-shrink: 0;
}

.group-fields[b-zl23wx1f2e] {
    flex: 1;
    padding: var(--dp-space-3) var(--dp-space-4);
}

.field-row[b-zl23wx1f2e] {
    display: flex;
    gap: var(--dp-space-3);
    align-items: flex-end;
}

.field-group[b-zl23wx1f2e] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.field-group label[b-zl23wx1f2e] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    font-weight: var(--font-medium);
}

.field-group-grow[b-zl23wx1f2e] {
    flex: 1;
}

.field-group-action[b-zl23wx1f2e] {
    padding-bottom: 2px;
}

[b-zl23wx1f2e] .sort-order-input {
    width: 80px;
}

.empty-state[b-zl23wx1f2e] {
    text-align: center;
    padding: var(--dp-space-8);
    color: var(--text-secondary);
}

.empty-state :deep(svg)[b-zl23wx1f2e] {
    font-size: 2rem;
    margin-bottom: var(--dp-space-3);
}

.group-settings-actions[b-zl23wx1f2e] {
    margin-top: var(--dp-space-5);
    padding-top: var(--dp-space-4);
    border-top: 1px solid var(--border-default);
}
/* _content/FRP.Web/Components/Pages/Administration/Settings/DocumentKindSettings.razor.rz.scp.css */
.dockind-settings[b-8f12jujpyl] {
    padding: var(--dp-space-4);
}

.dockind-head[b-8f12jujpyl] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--dp-space-4);
    margin-bottom: var(--dp-space-4);
}

.dockind-hint[b-8f12jujpyl] {
    margin: 0;
    max-width: 640px;
    color: var(--text-secondary);
    font-size: var(--text-md);
}

/* Tabelle */
.dockind-table[b-8f12jujpyl] {
    width: 100%;
    border-collapse: collapse;
    background: var(--surface-primary);
    border: 1px solid var(--border-subtle);
    border-radius: var(--dp-radius-4);
    overflow: hidden;
}

.dockind-table th[b-8f12jujpyl] {
    text-align: left;
    font-size: var(--text-sm-plus);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--text-tertiary);
    background: var(--dp-slate-50);
    padding: var(--dp-space-2) var(--dp-space-3);
    border-bottom: 1px solid var(--border-subtle);
}

.dockind-table td[b-8f12jujpyl] {
    padding: var(--dp-space-2) var(--dp-space-3);
    border-bottom: 1px solid var(--border-subtle);
    font-size: var(--text-md);
    color: var(--text-primary);
    vertical-align: middle;
}

.dockind-table tr:last-child td[b-8f12jujpyl] { border-bottom: none; }

.dockind-table tr.is-inactive td[b-8f12jujpyl] { opacity: 0.55; }

.col-sort[b-8f12jujpyl] { width: 90px; font-variant-numeric: tabular-nums; }
.col-center[b-8f12jujpyl] { text-align: center; width: 70px; }
.col-actions[b-8f12jujpyl] { width: 50px; text-align: right; }
.col-name[b-8f12jujpyl] { font-weight: var(--font-semibold); }

.col-desc[b-8f12jujpyl] {
    max-width: 320px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--text-secondary);
}

.dockind-table :deep(.icon-yes)[b-8f12jujpyl] { color: var(--status-success); font-size: 16px; }
.dockind-table :deep(.icon-no)[b-8f12jujpyl] { color: var(--text-tertiary); font-size: 16px; }

.dockind-template[b-8f12jujpyl] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: var(--text-sm-plus);
    color: var(--accent);
    font-weight: var(--font-medium);
}

.dockind-none[b-8f12jujpyl] { color: var(--text-tertiary); }

.dockind-editbtn[b-8f12jujpyl] {
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--border-subtle);
    border-radius: var(--dp-radius-4);
    background: transparent;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
}

.dockind-editbtn:hover[b-8f12jujpyl] { border-color: var(--accent); color: var(--accent); }

/* Dialog (gleiche Muster wie Dokumenten-Hub) */
.dialog-overlay[b-8f12jujpyl] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}

.dialog-content[b-8f12jujpyl] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-xl);
    width: 100%;
    max-width: 480px;
}

.dialog-header[b-8f12jujpyl] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-3) var(--dp-space-4);
    border-bottom: 1px solid var(--border-subtle);
}

.dialog-header h4[b-8f12jujpyl] { margin: 0; font-size: var(--text-lg); font-weight: var(--font-semibold); }

.close-btn[b-8f12jujpyl] {
    background: none;
    border: none;
    cursor: pointer;
    color: var(--text-secondary);
    padding: var(--dp-space-1);
    border-radius: var(--dp-radius-2);
}

.dialog-body[b-8f12jujpyl] { padding: var(--dp-space-4); }

.form-stack[b-8f12jujpyl] { display: flex; flex-direction: column; gap: var(--dp-space-3); }

.form-group[b-8f12jujpyl] { display: flex; flex-direction: column; gap: var(--dp-space-1); }

.form-group label[b-8f12jujpyl] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--dp-slate-700);
}

.form-input[b-8f12jujpyl],
.form-textarea[b-8f12jujpyl] {
    padding: var(--dp-space-2) var(--dp-space-3);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-md);
    font-family: inherit;
}

.form-input:focus[b-8f12jujpyl],
.form-textarea:focus[b-8f12jujpyl] {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.1);
}

.form-textarea[b-8f12jujpyl] { resize: vertical; }

.form-row[b-8f12jujpyl] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
    flex-wrap: wrap;
}

.form-check[b-8f12jujpyl] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-md);
    cursor: pointer;
}

.form-check input[b-8f12jujpyl] { width: 16px; height: 16px; accent-color: var(--accent); }

.form-group--inline[b-8f12jujpyl] { flex-direction: row; align-items: center; gap: var(--dp-space-2); }

.form-input--small[b-8f12jujpyl] { width: 90px; }

.dockind-template-note[b-8f12jujpyl] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-sm-plus);
    color: var(--status-info);
}

.upload-error[b-8f12jujpyl] {
    padding: var(--dp-space-2) var(--dp-space-3);
    background: rgba(var(--status-danger-rgb), 0.1);
    border: 1px solid rgba(var(--status-danger-rgb), 0.25);
    border-radius: var(--dp-radius-4);
    color: var(--status-danger);
    font-size: var(--text-md);
}

.dialog-footer[b-8f12jujpyl] {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3) var(--dp-space-4);
    border-top: 1px solid var(--border-subtle);
    background: var(--surface-canvas);
}
/* _content/FRP.Web/Components/Pages/Administration/Settings/ReportTemplateSettings.razor.rz.scp.css */
.template-settings-container[b-ure0vuwq6w] {
    padding: var(--dp-space-4);
}

/* ── Header ─────────────────────────────────────────────────────────────── */
.template-settings-header[b-ure0vuwq6w] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: var(--dp-space-5);
}

.template-settings-header h5[b-ure0vuwq6w] {
    margin: 0;
    color: var(--text-primary);
}

/* ── Kategorie-Filter ───────────────────────────────────────────────────── */
.template-filter-bar[b-ure0vuwq6w] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    flex-wrap: wrap;
    margin-bottom: var(--dp-space-4);
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--surface-secondary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
}

.filter-label[b-ure0vuwq6w] {
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    color: var(--text-secondary);
    white-space: nowrap;
}

.filter-chips[b-ure0vuwq6w] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-2);
}

.template-chip[b-ure0vuwq6w] {
    display: inline-flex;
    align-items: center;
    padding: var(--dp-space-1) var(--dp-space-3);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    border-radius: var(--dp-radius-full, 9999px);
    border: 1px solid var(--border-default);
    background: var(--surface-primary);
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--transition-base);
    line-height: 1.4;
}

.template-chip:hover[b-ure0vuwq6w] {
    border-color: var(--accent);
    color: var(--accent);
}

.template-chip--active[b-ure0vuwq6w] {
    background: var(--accent);
    border-color: var(--accent);
    color: var(--text-inverse);
}

.template-chip--active:hover[b-ure0vuwq6w] {
    color: var(--text-inverse);
}

/* ── Grid cells ─────────────────────────────────────────────────────────── */
.category-badge[b-ure0vuwq6w] {
    display: inline-block;
    padding: 2px var(--dp-space-2);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    background: var(--surface-secondary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-2);
    color: var(--text-secondary);
}

.text-preview[b-ure0vuwq6w] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    font-style: italic;
}

.action-buttons[b-ure0vuwq6w] {
    display: flex;
    gap: var(--dp-space-2);
    justify-content: center;
}

/* ── Empty state ────────────────────────────────────────────────────────── */
.empty-state[b-ure0vuwq6w] {
    text-align: center;
    padding: var(--dp-space-8);
    color: var(--text-secondary);
}

.empty-state :deep(svg)[b-ure0vuwq6w] {
    font-size: 2rem;
    margin-bottom: var(--dp-space-3);
}

.empty-state p[b-ure0vuwq6w] {
    margin-top: var(--dp-space-3);
}

/* ── Dialog form ────────────────────────────────────────────────────────── */
.dialog-header-content[b-ure0vuwq6w] {
    display: flex;
    align-items: center;
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}

.form-container[b-ure0vuwq6w] {
    padding: var(--dp-space-4) 0;
}

.form-group[b-ure0vuwq6w] {
    margin-bottom: var(--dp-space-4);
}

.form-group label[b-ure0vuwq6w] {
    display: block;
    margin-bottom: var(--dp-space-2);
    color: var(--dp-slate-600);
    font-weight: var(--font-medium);
    font-size: var(--text-md);
}

.form-check[b-ure0vuwq6w] {
    display: flex;
    align-items: center;
    margin-top: var(--dp-space-2);
}

[b-ure0vuwq6w] .template-text-area .e-input {
    min-height: 120px;
    resize: vertical;
}
/* _content/FRP.Web/Components/Pages/Administration/Settings/SettingsList.razor.rz.scp.css */
/* Settings Container */
.settings-container[b-9rv72od11e] {
    padding: var(--dp-space-5);
    background: var(--dp-slate-50);
    min-height: 100vh;
}

/* Page Header */
.page-header[b-9rv72od11e] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--dp-space-8);
    background: var(--surface-primary);
    padding: var(--dp-space-5);
    border-radius: var(--dp-radius-4);
    box-shadow: var(--shadow-sm);
}

.header-content h2.page-title[b-9rv72od11e] {
    color: var(--text-primary);
    margin: 0;
    font-size: var(--text-3xl);
    font-weight: var(--font-semibold);
}

.page-subtitle[b-9rv72od11e] {
    color: var(--text-secondary);
    margin: var(--dp-space-1) 0 0 0;
    font-size: var(--text-md);
}

.header-actions[b-9rv72od11e] {
    display: flex;
    gap: var(--dp-space-3);
}

/* Statistics Cards */
.stats-row[b-9rv72od11e] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: var(--dp-space-5);
    margin-bottom: var(--dp-space-8);
}

.stat-card[b-9rv72od11e] {
    background: var(--surface-primary);
    padding: var(--dp-space-5);
    border-radius: var(--dp-radius-4);
    box-shadow: var(--shadow-sm);
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
    transition: var(--transition-base);
}

.stat-card:hover[b-9rv72od11e] {
    transform: translateY(-2px);
    box-shadow: var(--shadow-lg);
}

.stat-icon[b-9rv72od11e] {
    width: 50px;
    height: 50px;
    border-radius: var(--dp-radius-4);
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--status-info-light);
    color: var(--accent);
    font-size: var(--text-2xl);
}

.stat-icon.active[b-9rv72od11e] {
    background: var(--status-success-light);
    color: var(--status-success);
}

.stat-content[b-9rv72od11e] {
    display: flex;
    flex-direction: column;
}

.stat-value[b-9rv72od11e] {
    font-size: var(--text-3xl);
    font-weight: var(--font-bold);
    color: var(--text-primary);
    line-height: 1;
}

.stat-label[b-9rv72od11e] {
    color: var(--text-secondary);
    font-size: var(--text-md);
    margin-top: var(--dp-space-1);
}

/* Settings Content */
.settings-content[b-9rv72od11e] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-4);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
}

.loading-container[b-9rv72od11e] {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: var(--dp-space-12);
}

/* Category Content */
.category-content[b-9rv72od11e] {
    padding: var(--dp-space-5);
}

.category-header[b-9rv72od11e] {
    margin-bottom: var(--dp-space-5);
    padding-bottom: var(--dp-space-4);
    border-bottom: 1px solid var(--dp-slate-200);
}

.category-header h4[b-9rv72od11e] {
    color: var(--text-primary);
    margin: 0 0 var(--dp-space-1) 0;
    font-size: var(--text-2xl);
}

/* Setting Display */
.setting-display-name strong[b-9rv72od11e] {
    color: var(--text-primary);
    font-size: var(--text-md);
}

.setting-display-name small[b-9rv72od11e] {
    display: block;
    margin-top: 2px;
    font-size: var(--text-sm-plus);
    line-height: 1.3;
}

.setting-value[b-9rv72od11e] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.value-text[b-9rv72od11e] {
    font-family: 'Segoe UI', monospace;
    font-size: var(--text-md);
    color: var(--dp-slate-600);
}

.badge[b-9rv72od11e] {
    font-size: var(--text-sm-plus);
    padding: 2px var(--dp-space-2);
    border-radius: var(--dp-radius-2);
}

/* Action Buttons */
.action-buttons[b-9rv72od11e] {
    display: flex;
    gap: var(--dp-space-2);
    align-items: center;
}

.action-buttons .e-btn[b-9rv72od11e] {
    padding: var(--dp-space-2) var(--dp-space-3);
    min-width: auto;
    border-radius: var(--dp-radius-2);
}

/* Modal Styling */
.modal-header-content[b-9rv72od11e] {
    display: flex;
    align-items: center;
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}

.form-container[b-9rv72od11e] {
    padding: var(--dp-space-4) 0;
}

.form-group[b-9rv72od11e] {
    margin-bottom: var(--dp-space-5);
}

.form-group label[b-9rv72od11e] {
    display: block;
    margin-bottom: var(--dp-space-2);
    color: var(--dp-slate-600);
    font-weight: var(--font-medium);
    font-size: var(--text-md);
}

.form-check[b-9rv72od11e] {
    display: flex;
    align-items: center;
    margin-top: var(--dp-space-3);
}

/* Tab Customization */
[b-9rv72od11e] .e-tab .e-tab-header {
    background: var(--dp-slate-50);
    border-bottom: 2px solid var(--dp-slate-200);
}

[b-9rv72od11e] .e-tab .e-tab-header .e-toolbar-item {
    border-radius: var(--dp-radius-2) var(--dp-radius-2) 0 0;
    margin-right: var(--dp-space-1);
}

[b-9rv72od11e] .e-tab .e-tab-header .e-toolbar-item.e-active {
    background: var(--surface-primary);
    border-bottom: 2px solid var(--accent);
}

/* Grid Customization */
[b-9rv72od11e] .e-grid .e-gridheader {
    background: var(--dp-slate-50);
    font-weight: var(--font-semibold);
}

[b-9rv72od11e] .e-grid .e-row:hover {
    background: var(--dp-slate-50);
}

/* Toast Styling */
[b-9rv72od11e] .e-toast-container .e-toast {
    border-radius: var(--dp-radius-2);
    box-shadow: var(--shadow-lg);
}

[b-9rv72od11e] .e-toast.e-toast-success {
    border-left: 4px solid var(--status-success);
}

[b-9rv72od11e] .e-toast.e-toast-danger {
    border-left: 4px solid var(--status-danger);
}

[b-9rv72od11e] .e-toast.e-toast-warning {
    border-left: 4px solid var(--status-warning);
}

/* Responsive Design */
@media (max-width: 768px) {
    .page-header[b-9rv72od11e] {
        flex-direction: column;
        gap: var(--dp-space-4);
        align-items: stretch;
    }

    .header-actions[b-9rv72od11e] {
        justify-content: center;
    }

    .stats-row[b-9rv72od11e] {
        grid-template-columns: 1fr;
    }

    .stat-card[b-9rv72od11e] {
        padding: var(--dp-space-4);
    }

    .settings-container[b-9rv72od11e] {
        padding: var(--dp-space-4);
    }

    .category-content[b-9rv72od11e] {
        padding: var(--dp-space-4);
    }
}
/* _content/FRP.Web/Components/Pages/Administration/Transport/TransportRoutes.razor.rz.scp.css */
.routes-container[b-fttcyj6ebr] {
    padding: 1.5rem;
}

.page-header[b-fttcyj6ebr] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1.5rem;
}

.page-title[b-fttcyj6ebr] {
    margin: 0;
    font-size: 1.5rem;
    display: flex;
    align-items: center;
}

.page-subtitle[b-fttcyj6ebr] {
    color: var(--bs-secondary);
    margin: 0.25rem 0 0;
}

.stats-row[b-fttcyj6ebr] {
    display: flex;
    gap: 1rem;
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
}

.stat-card[b-fttcyj6ebr] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem;
    background: white;
    border: 1px solid var(--bs-border-color);
    border-radius: 8px;
    min-width: 150px;
}

.stat-icon[b-fttcyj6ebr] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: var(--bs-secondary-bg);
    font-size: 1.2rem;
}

.stat-icon.active[b-fttcyj6ebr] {
    background: color-mix(in srgb, var(--bs-success) 15%, white);
    color: var(--bs-success);
}

.stat-content[b-fttcyj6ebr] {
    display: flex;
    flex-direction: column;
}

.stat-value[b-fttcyj6ebr] {
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1;
}

.stat-label[b-fttcyj6ebr] {
    font-size: 0.85rem;
    color: var(--bs-secondary);
}

.loading-container[b-fttcyj6ebr] {
    display: flex;
    justify-content: center;
    padding: 3rem;
}

.routes-content[b-fttcyj6ebr] {
    background: white;
    border: 1px solid var(--bs-border-color);
    border-radius: 8px;
    overflow: hidden;
}

.color-preview[b-fttcyj6ebr] {
    width: 24px;
    height: 24px;
    border-radius: 4px;
    border: 1px solid var(--bs-border-color);
    margin: 0 auto;
}

.action-buttons[b-fttcyj6ebr] {
    display: flex;
    gap: 0.25rem;
    justify-content: center;
}

.form-container[b-fttcyj6ebr] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 1rem;
}

.form-group[b-fttcyj6ebr] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.form-group label[b-fttcyj6ebr] {
    font-weight: 500;
    font-size: 0.9rem;
}

.color-input-row[b-fttcyj6ebr] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.form-control-color[b-fttcyj6ebr] {
    width: 50px;
    height: 38px;
    padding: 0;
    border: 1px solid var(--bs-border-color);
    border-radius: 4px;
}

.modal-header-content[b-fttcyj6ebr] {
    display: flex;
    align-items: center;
    font-weight: 600;
}
/* _content/FRP.Web/Components/Pages/Administration/Users/UserManagement.razor.rz.scp.css */
.grid-container[b-8nepg7ykbk] {
    overflow: auto;
}

.loading-container[b-8nepg7ykbk] {
    text-align: center;
    padding: var(--dp-space-12);
}

.action-buttons[b-8nepg7ykbk] {
    display: flex;
    gap: var(--dp-space-2);
    justify-content: center;
}

.badge[b-8nepg7ykbk] {
    font-size: var(--text-sm-plus);
    padding: 0.35em 0.65em;
}

/* Dialog */
.dialog-header[b-8nepg7ykbk] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
}

.dialog-form[b-8nepg7ykbk] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
}

.form-field[b-8nepg7ykbk] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.form-field label[b-8nepg7ykbk] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
}

.form-field input[b-8nepg7ykbk],
.form-field select[b-8nepg7ykbk] {
    padding: var(--dp-space-2) var(--dp-space-3);
    border: 1px solid var(--dp-slate-300);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
}

.form-field input:focus[b-8nepg7ykbk],
.form-field select:focus[b-8nepg7ykbk] {
    border-color: var(--accent);
    outline: none;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.2);
}

.form-check[b-8nepg7ykbk] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.form-check-input[b-8nepg7ykbk] {
    width: 1.25rem;
    height: 1.25rem;
}

.form-check-label[b-8nepg7ykbk] {
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
    margin: 0;
}

.reset-hint[b-8nepg7ykbk] {
    margin: 0;
    color: var(--text-secondary);
    font-size: var(--text-md);
}

.dialog-footer[b-8nepg7ykbk] {
    display: flex;
    gap: var(--dp-space-2);
    justify-content: flex-end;
}
/* _content/FRP.Web/Components/Pages/Auth/Login.razor.rz.scp.css */
/* ========================================= */
/* Login Page                                */
/* ========================================= */

.login-page[b-cd4l6r2qsu] {
    min-height: 100vh;
    min-height: 100dvh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--dp-space-4);
    background: var(--dp-slate-100);
}

/* ========================================= */
/* Card                                      */
/* ========================================= */

.login-card[b-cd4l6r2qsu] {
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    border-top: 3px solid var(--accent);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-lg);
    padding: var(--dp-space-8);
    width: 100%;
    max-width: 400px;
    animation: login-enter-b-cd4l6r2qsu 0.5s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes login-enter-b-cd4l6r2qsu {
    from {
        opacity: 0;
        transform: translateY(12px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ========================================= */
/* Brand                                     */
/* ========================================= */

.login-brand[b-cd4l6r2qsu] {
    text-align: center;
    margin-bottom: var(--dp-space-6);
}

.login-brand__icon[b-cd4l6r2qsu] {
    width: 48px;
    height: 48px;
    border-radius: var(--dp-radius-6);
    background: linear-gradient(135deg, var(--accent), var(--dp-blue-800));
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: var(--dp-space-4);
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.2);
}

.login-brand__icon svg[b-cd4l6r2qsu] {
    width: 22px;
    height: 22px;
}

.login-brand__title[b-cd4l6r2qsu] {
    font-size: var(--text-2xl);
    font-weight: var(--font-bold);
    color: var(--text-primary);
    margin: 0 0 var(--dp-space-1);
    letter-spacing: -0.01em;
    line-height: var(--leading-tight);
}

.login-brand__sub[b-cd4l6r2qsu] {
    font-size: var(--text-md);
    color: var(--text-secondary);
    margin: 0;
    font-weight: var(--font-normal);
}

/* ========================================= */
/* Form                                      */
/* ========================================= */

.login-form[b-cd4l6r2qsu] {
    display: flex;
    flex-direction: column;
}

/* ========================================= */
/* Button                                    */
/* ========================================= */

.login-btn[b-cd4l6r2qsu] {
    width: 100%;
    padding: 0.625rem var(--dp-space-4);
    background: var(--accent);
    color: #ffffff;
    border: none;
    border-radius: var(--dp-radius-4);
    font-family: inherit;
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-2);
    transition: all var(--transition-fast);
    margin-top: var(--dp-space-2);
}

.login-btn:hover:not(:disabled)[b-cd4l6r2qsu] {
    background: var(--accent-hover);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.25);
}

.login-btn:active:not(:disabled)[b-cd4l6r2qsu] {
    transform: translateY(0);
    box-shadow: none;
}

.login-btn:disabled[b-cd4l6r2qsu] {
    opacity: 0.6;
    cursor: not-allowed;
}

.login-btn__arrow[b-cd4l6r2qsu] {
    width: 16px;
    height: 16px;
    transition: transform var(--transition-fast);
}

.login-btn:hover:not(:disabled) .login-btn__arrow[b-cd4l6r2qsu] {
    transform: translateX(3px);
}

.login-btn__spinner[b-cd4l6r2qsu] {
    width: 16px;
    height: 16px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: #ffffff;
    border-radius: 50%;
    animation: login-spin-b-cd4l6r2qsu 0.7s linear infinite;
}

@keyframes login-spin-b-cd4l6r2qsu {
    to { transform: rotate(360deg); }
}

/* ========================================= */
/* Error                                     */
/* ========================================= */

.login-error[b-cd4l6r2qsu] {
    display: flex;
    align-items: flex-start;
    gap: var(--dp-space-2);
    margin-top: var(--dp-space-4);
    padding: var(--dp-space-3);
    background: var(--status-danger-light);
    border: 1px solid #fecaca;
    border-radius: var(--dp-radius-4);
    color: var(--dp-red-700);
    font-size: var(--text-md);
    line-height: var(--leading-normal);
    animation: login-error-in-b-cd4l6r2qsu 0.3s ease;
}

.login-error__icon[b-cd4l6r2qsu] {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    margin-top: 2px;
    stroke: var(--status-danger);
}

@keyframes login-error-in-b-cd4l6r2qsu {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ========================================= */
/* Footer                                    */
/* ========================================= */

.login-footer[b-cd4l6r2qsu] {
    margin-top: var(--dp-space-6);
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
}

/* ========================================= */
/* Responsive                                */
/* ========================================= */

@media (max-width: 480px) {
    .login-card[b-cd4l6r2qsu] {
        padding: var(--dp-space-6);
    }

    .login-brand__title[b-cd4l6r2qsu] {
        font-size: var(--text-xl);
    }
}
/* _content/FRP.Web/Components/Pages/Billing/Abgleich.razor.rz.scp.css */
.abgleich-tiles[b-k9t10z97pr] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: var(--dp-space-4);
}

.abgleich-tile[b-k9t10z97pr] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
    padding: var(--dp-space-5);
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    text-decoration: none;
    color: var(--text-primary);
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

a.abgleich-tile:hover[b-k9t10z97pr] {
    transform: translateY(-3px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
    border-color: var(--accent);
}

.abgleich-tile__icon[b-k9t10z97pr] {
    font-size: 2rem;
    color: var(--accent);
    display: flex;
}

.abgleich-tile__title[b-k9t10z97pr] {
    font-size: var(--text-lg);
    font-weight: 600;
    color: var(--text-primary);
}

.abgleich-tile__text[b-k9t10z97pr] {
    font-size: var(--text-md);
    color: var(--text-secondary);
}

.abgleich-tile--davaso[b-k9t10z97pr] {
    grid-column: 1 / -1;
}

.abgleich-tile__davaso-controls[b-k9t10z97pr] {
    display: flex;
    gap: var(--dp-space-3);
    align-items: center;
    margin-top: var(--dp-space-3);
    flex-wrap: wrap;
}

.abgleich-tile__range[b-k9t10z97pr] {
    max-width: 280px;
}
/* _content/FRP.Web/Components/Pages/Billing/AvisenImport.razor.rz.scp.css */
.page-content[b-grpqvn4q2a] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.card-header-content[b-grpqvn4q2a] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-weight: 600;
}

.step-number[b-grpqvn4q2a] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: var(--primary-color, #3b82f6);
    color: white;
    border-radius: 50%;
    font-size: 0.875rem;
    font-weight: 700;
}

/* Upload Area */
.upload-area[b-grpqvn4q2a] {
    padding: 1rem;
}

.upload-hint[b-grpqvn4q2a] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 1rem;
    color: var(--text-muted);
    font-size: 0.875rem;
}

.file-actions[b-grpqvn4q2a] {
    margin-top: 1rem;
    display: flex;
    justify-content: flex-end;
}

/* Loading */
.loading-container[b-grpqvn4q2a] {
    display: flex;
    justify-content: center;
    padding: 3rem;
}

/* Preview Card */
.preview-card.has-errors[b-grpqvn4q2a]  .e-card-header {
    background: #fee2e2;
}

.parse-errors[b-grpqvn4q2a] {
    background: #fee2e2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    padding: 1rem;
    color: #dc2626;
}

.parse-errors h4[b-grpqvn4q2a] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0 0 0.75rem 0;
}

.parse-errors ul[b-grpqvn4q2a] {
    margin: 0;
    padding-left: 1.5rem;
}

/* Stats Badges */
.stats-badges[b-grpqvn4q2a] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.stat-badge[b-grpqvn4q2a] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1rem 1.5rem;
    border-radius: 8px;
    min-width: 100px;
}

.stat-badge .stat-value[b-grpqvn4q2a] {
    font-size: 1.75rem;
    font-weight: 700;
}

.stat-badge .stat-label[b-grpqvn4q2a] {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    opacity: 0.8;
}

.stat-total[b-grpqvn4q2a] { background: #e0e7ff; color: #3730a3; }
.stat-success[b-grpqvn4q2a] { background: #d1fae5; color: #047857; }
.stat-warning[b-grpqvn4q2a] { background: #fef3c7; color: #b45309; }
.stat-info[b-grpqvn4q2a] { background: #dbeafe; color: #1d4ed8; }
.stat-muted[b-grpqvn4q2a] { background: #f1f5f9; color: #64748b; }

/* Warnings */
.warnings-section[b-grpqvn4q2a] {
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-radius: 8px;
    padding: 1rem;
    margin-bottom: 1.5rem;
}

.warnings-section h5[b-grpqvn4q2a] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0 0 0.75rem 0;
    color: #b45309;
}

.warning-item[b-grpqvn4q2a] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.25rem 0;
    font-size: 0.875rem;
    color: #92400e;
}

.warnings-more[b-grpqvn4q2a] {
    font-style: italic;
    color: #b45309;
    margin-top: 0.5rem;
}

/* Transaction Sections */
.transaction-section[b-grpqvn4q2a] {
    margin-bottom: 1.5rem;
}

.transaction-section h5[b-grpqvn4q2a] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1rem;
    font-size: 1rem;
}

.purpose-cell[b-grpqvn4q2a] {
    font-size: 0.8125rem;
    color: #475569;
}

.invoice-link[b-grpqvn4q2a] {
    color: #3b82f6;
    font-weight: 600;
    text-decoration: none;
}

.invoice-link:hover[b-grpqvn4q2a] {
    text-decoration: underline;
}

.already-paid-badge[b-grpqvn4q2a] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.5rem;
    background: #f1f5f9;
    border-radius: 4px;
    font-size: 0.8125rem;
    color: #64748b;
}

/* Suggestion Chips */
.suggestion-chips[b-grpqvn4q2a] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
    margin-bottom: 0.5rem;
}

.suggestion-chip[b-grpqvn4q2a] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.625rem;
    border: 1px solid #3b82f6;
    background: #eff6ff;
    color: #1d4ed8;
    border-radius: 999px;
    font-size: 0.75rem;
    cursor: pointer;
    transition: all 0.15s ease;
    line-height: 1.4;
}

.suggestion-chip:hover[b-grpqvn4q2a] {
    background: #3b82f6;
    color: white;
}

.suggestion-chip .chip-invoice[b-grpqvn4q2a] {
    font-weight: 600;
}

.suggestion-chip .chip-amount[b-grpqvn4q2a] {
    opacity: 0.8;
    font-size: 0.6875rem;
}

/* Import Summary */
.import-summary[b-grpqvn4q2a] {
    padding: 1rem;
    background: #f8fafc;
    border-radius: 8px;
    margin-bottom: 1.5rem;
}

.import-summary p[b-grpqvn4q2a] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0.5rem 0;
}

.info-text[b-grpqvn4q2a] {
    color: #1d4ed8;
}

.import-actions[b-grpqvn4q2a] {
    display: flex;
    justify-content: center;
}

/* Result Card */
.result-card.success[b-grpqvn4q2a]  .e-card-header {
    background: #d1fae5;
    color: #047857;
}

.result-card.partial[b-grpqvn4q2a]  .e-card-header {
    background: #fef3c7;
    color: #b45309;
}

.result-card.failed[b-grpqvn4q2a]  .e-card-header {
    background: #fee2e2;
    color: #dc2626;
}

.result-stats[b-grpqvn4q2a] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.result-stat[b-grpqvn4q2a] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-radius: 8px;
}

.result-stat.success[b-grpqvn4q2a] { background: #d1fae5; color: #047857; }
.result-stat.info[b-grpqvn4q2a] { background: #dbeafe; color: #1d4ed8; }
.result-stat.warning[b-grpqvn4q2a] { background: #fef3c7; color: #b45309; }
.result-stat.error[b-grpqvn4q2a] { background: #fee2e2; color: #dc2626; }

.result-errors[b-grpqvn4q2a] {
    background: #fee2e2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    padding: 1rem;
    margin-bottom: 1.5rem;
}

.result-errors h5[b-grpqvn4q2a] {
    margin: 0 0 0.75rem 0;
    color: #dc2626;
}

.result-errors ul[b-grpqvn4q2a] {
    margin: 0;
    padding-left: 1.5rem;
    color: #991b1b;
}

.result-actions[b-grpqvn4q2a] {
    display: flex;
    justify-content: center;
    gap: 1rem;
}
/* _content/FRP.Web/Components/Pages/Billing/BankImport.razor.rz.scp.css */
.page-content[b-ecel5o4171] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.card-header-content[b-ecel5o4171] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-weight: 600;
}

.step-number[b-ecel5o4171] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: var(--primary-color, #3b82f6);
    color: white;
    border-radius: 50%;
    font-size: 0.875rem;
    font-weight: 700;
}

/* Upload Area */
.upload-area[b-ecel5o4171] {
    padding: 1rem;
}

.upload-hint[b-ecel5o4171] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 1rem;
    color: var(--text-muted);
    font-size: 0.875rem;
}

.file-actions[b-ecel5o4171] {
    margin-top: 1rem;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    gap: 1rem;
}

.ai-hint[b-ecel5o4171] {
    color: var(--accent, #7c3aed);
}

.year-select[b-ecel5o4171] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.year-select label[b-ecel5o4171] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.ai-remove-btn[b-ecel5o4171] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.25rem;
    border: 1px solid var(--color-border, #e2e8f0);
    background: transparent;
    color: var(--text-muted);
    border-radius: 6px;
    cursor: pointer;
}

.ai-remove-btn:hover[b-ecel5o4171] {
    border-color: #dc2626;
    color: #dc2626;
}

/* Fortschritts-Overlay (fixiert, scroll-unabhängig) */
.busy-overlay[b-ecel5o4171] {
    position: fixed;
    inset: 0;
    z-index: 1050;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(2px);
}

.busy-card[b-ecel5o4171] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    width: min(440px, calc(100vw - 2rem));
    padding: 2rem 2.5rem;
    background: var(--surface-1, #fff);
    border-radius: 12px;
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.3);
    text-align: center;
}

.busy-spinner[b-ecel5o4171] {
    width: 42px;
    height: 42px;
    border: 3px solid #e2e8f0;
    border-top-color: var(--accent, #7c3aed);
    border-radius: 50%;
    animation: busy-spin-b-ecel5o4171 0.8s linear infinite;
}

@keyframes busy-spin-b-ecel5o4171 {
    to { transform: rotate(360deg); }
}

.busy-title[b-ecel5o4171] {
    font-weight: 600;
    font-size: 1.05rem;
    color: var(--text-strong, #0f172a);
}

.busy-status[b-ecel5o4171] {
    min-height: 2.5em;
    font-size: 0.875rem;
    color: var(--text-muted);
}

.busy-bar[b-ecel5o4171] {
    position: relative;
    width: 100%;
    height: 6px;
    border-radius: 999px;
    background: #e2e8f0;
    overflow: hidden;
}

.busy-bar__fill[b-ecel5o4171] {
    height: 100%;
    border-radius: 999px;
    background: var(--accent, #7c3aed);
    transition: width 0.3s ease;
}

.busy-bar__indeterminate[b-ecel5o4171] {
    position: absolute;
    top: 0;
    height: 100%;
    width: 40%;
    border-radius: 999px;
    background: var(--accent, #7c3aed);
    animation: busy-slide-b-ecel5o4171 1.4s ease-in-out infinite;
}

@keyframes busy-slide-b-ecel5o4171 {
    0%   { left: -40%; }
    100% { left: 100%; }
}

/* Loading */
.loading-container[b-ecel5o4171] {
    display: flex;
    justify-content: center;
    padding: 3rem;
}

/* Preview Card */
.preview-card.has-errors[b-ecel5o4171]  .e-card-header {
    background: #fee2e2;
}

.parse-errors[b-ecel5o4171] {
    background: #fee2e2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    padding: 1rem;
    color: #dc2626;
}

.parse-errors h4[b-ecel5o4171] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0 0 0.75rem 0;
}

.parse-errors ul[b-ecel5o4171] {
    margin: 0;
    padding-left: 1.5rem;
}

/* Stats Badges */
.stats-badges[b-ecel5o4171] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.stat-badge[b-ecel5o4171] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1rem 1.5rem;
    border-radius: 8px;
    min-width: 100px;
}

.stat-badge .stat-value[b-ecel5o4171] {
    font-size: 1.75rem;
    font-weight: 700;
}

.stat-badge .stat-label[b-ecel5o4171] {
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    opacity: 0.8;
}

.stat-total[b-ecel5o4171] { background: #e0e7ff; color: #3730a3; }
.stat-success[b-ecel5o4171] { background: #d1fae5; color: #047857; }
.stat-warning[b-ecel5o4171] { background: #fef3c7; color: #b45309; }
.stat-info[b-ecel5o4171] { background: #dbeafe; color: #1d4ed8; }
.stat-muted[b-ecel5o4171] { background: #f1f5f9; color: #64748b; }

/* Warnings */
.warnings-section[b-ecel5o4171] {
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-radius: 8px;
    padding: 1rem;
    margin-bottom: 1.5rem;
}

.warnings-section h5[b-ecel5o4171] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0 0 0.75rem 0;
    color: #b45309;
}

.warning-item[b-ecel5o4171] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.25rem 0;
    font-size: 0.875rem;
    color: #92400e;
}

.warnings-more[b-ecel5o4171] {
    font-style: italic;
    color: #b45309;
    margin-top: 0.5rem;
}

/* Transaction Sections */
.transaction-section[b-ecel5o4171] {
    margin-bottom: 1.5rem;
}

.transaction-section h5[b-ecel5o4171] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1rem;
    font-size: 1rem;
}

.purpose-cell[b-ecel5o4171] {
    font-size: 0.8125rem;
    color: #475569;
}

.invoice-link[b-ecel5o4171] {
    color: #3b82f6;
    font-weight: 600;
    text-decoration: none;
}

.invoice-link:hover[b-ecel5o4171] {
    text-decoration: underline;
}

.already-paid-badge[b-ecel5o4171] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.5rem;
    background: #f1f5f9;
    border-radius: 4px;
    font-size: 0.8125rem;
    color: #64748b;
}

/* Suggestion Chips */
.suggestion-chips[b-ecel5o4171] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
    margin-bottom: 0.5rem;
}

.suggestion-chip[b-ecel5o4171] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.625rem;
    border: 1px solid #3b82f6;
    background: #eff6ff;
    color: #1d4ed8;
    border-radius: 999px;
    font-size: 0.75rem;
    cursor: pointer;
    transition: all 0.15s ease;
    line-height: 1.4;
}

.suggestion-chip:hover[b-ecel5o4171] {
    background: #3b82f6;
    color: white;
}

.suggestion-chip .chip-invoice[b-ecel5o4171] {
    font-weight: 600;
}

.suggestion-chip .chip-amount[b-ecel5o4171] {
    opacity: 0.8;
    font-size: 0.6875rem;
}

/* Import Summary */
.import-summary[b-ecel5o4171] {
    padding: 1rem;
    background: #f8fafc;
    border-radius: 8px;
    margin-bottom: 1.5rem;
}

.import-summary p[b-ecel5o4171] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0.5rem 0;
}

.info-text[b-ecel5o4171] {
    color: #1d4ed8;
}

.import-actions[b-ecel5o4171] {
    display: flex;
    justify-content: center;
}

/* Result Card */
.result-card.success[b-ecel5o4171]  .e-card-header {
    background: #d1fae5;
    color: #047857;
}

.result-card.partial[b-ecel5o4171]  .e-card-header {
    background: #fef3c7;
    color: #b45309;
}

.result-card.failed[b-ecel5o4171]  .e-card-header {
    background: #fee2e2;
    color: #dc2626;
}

.result-stats[b-ecel5o4171] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.result-stat[b-ecel5o4171] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-radius: 8px;
}

.result-stat.success[b-ecel5o4171] { background: #d1fae5; color: #047857; }
.result-stat.info[b-ecel5o4171] { background: #dbeafe; color: #1d4ed8; }
.result-stat.warning[b-ecel5o4171] { background: #fef3c7; color: #b45309; }
.result-stat.error[b-ecel5o4171] { background: #fee2e2; color: #dc2626; }

.result-errors[b-ecel5o4171] {
    background: #fee2e2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    padding: 1rem;
    margin-bottom: 1.5rem;
}

.result-errors h5[b-ecel5o4171] {
    margin: 0 0 0.75rem 0;
    color: #dc2626;
}

.result-errors ul[b-ecel5o4171] {
    margin: 0;
    padding-left: 1.5rem;
    color: #991b1b;
}

.result-actions[b-ecel5o4171] {
    display: flex;
    justify-content: center;
    gap: 1rem;
}
/* _content/FRP.Web/Components/Pages/Billing/DunningPreviewDialog.razor.rz.scp.css */
.dunning-preview[b-erqxnyzqzq] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9rem;
}

.dunning-preview th[b-erqxnyzqzq],
.dunning-preview td[b-erqxnyzqzq] {
    padding: 0.4rem 0.6rem;
    text-align: left;
    border-bottom: 1px solid var(--dp-slate-200, #e2e8f0);
    vertical-align: top;
}

.dunning-preview th[b-erqxnyzqzq] {
    font-weight: 600;
    color: var(--dp-slate-500, #64748b);
}

.dunning-preview td.num[b-erqxnyzqzq],
.dunning-preview th.num[b-erqxnyzqzq] {
    text-align: right;
    white-space: nowrap;
}

.dunning-preview tr.row-disabled[b-erqxnyzqzq] {
    opacity: 0.5;
}

.recipient-type[b-erqxnyzqzq] {
    display: block;
    font-size: 0.72rem;
    color: var(--dp-slate-500, #64748b);
}

.dunning-preview .hint[b-erqxnyzqzq] {
    font-size: 0.78rem;
    color: var(--status-warning, #b45309);
    max-width: 220px;
}

.dunning-summary[b-erqxnyzqzq] {
    margin-top: 0.9rem;
    font-weight: 600;
}

.dunning-preview .group-row td[b-erqxnyzqzq] {
    background: var(--dp-slate-50, #f8fafc);
    border-top: 1px solid var(--dp-slate-200, #e2e8f0);
    padding: var(--dp-space-2, 8px);
    font-size: 0.85rem;
}

.dunning-preview .group-guest[b-erqxnyzqzq] {
    font-weight: 600;
    color: var(--text-primary);
}

.dunning-preview .group-recipient[b-erqxnyzqzq] {
    margin-left: var(--dp-space-2, 8px);
    color: var(--text-secondary);
}

.dunning-preview .group-delivery[b-erqxnyzqzq] {
    float: right;
    color: var(--text-tertiary, #64748b);
}
/* _content/FRP.Web/Components/Pages/Billing/Index.razor.rz.scp.css */
/* ==========================================================================
   Billing Page - Body-spezifische Styles
   --------------------------------------------------------------------------
   Hero, Filter kommen aus _page-patterns.css (global).
   Hier nur: Zahlungs-Übersicht, Batch-Toolbar, Grid, Status-Badges, Dialog,
   Davaso, Job-Progress.
   ========================================================================== */

/* ==========================================================================
   Zahlungs-Übersicht (offen vs. bezahlt für den gewählten Zeitraum)
   ========================================================================== */

.payment-summary[b-7xr1a7j08i] {
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    padding: var(--dp-space-5);
    margin-bottom: var(--dp-space-5);
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}

.payment-summary__head[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--dp-space-4);
    flex-wrap: wrap;
}

.payment-summary__period[b-7xr1a7j08i] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}

.payment-summary__period i[b-7xr1a7j08i] {
    color: var(--dp-blue-600);
    font-size: var(--text-xl);
}

.payment-summary__billed[b-7xr1a7j08i] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    line-height: 1.2;
}

.payment-summary__billed-value[b-7xr1a7j08i] {
    font-size: var(--text-xl);
    font-weight: 700;
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}

.payment-summary__billed-label[b-7xr1a7j08i] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

/* Balken-Reihe: Bezahlt | Fortschritt | Offen */
.payment-summary__bar-row[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
}

.payment-summary__side[b-7xr1a7j08i] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    flex-shrink: 0;
    min-width: 110px;
}

.payment-summary__side--open[b-7xr1a7j08i] {
    align-items: flex-end;
    text-align: right;
}

.payment-summary__side-label[b-7xr1a7j08i] {
    font-size: var(--text-sm-plus);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-weight: var(--font-semibold);
}

.payment-summary__side--paid .payment-summary__side-label[b-7xr1a7j08i] { color: var(--status-success); }
.payment-summary__side--open .payment-summary__side-label[b-7xr1a7j08i] { color: var(--status-warning); }

.payment-summary__side-value[b-7xr1a7j08i] {
    font-size: var(--text-2xl);
    font-weight: 700;
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
    line-height: 1;
}

/* Fortschrittsbalken: Hintergrund = offener Anteil, Füllung = bezahlter Anteil */
.payment-summary__bar[b-7xr1a7j08i] {
    position: relative;
    flex: 1;
    height: 28px;
    border-radius: var(--dp-radius-full);
    background: var(--status-warning-light);
    overflow: hidden;
    min-width: 120px;
}

.payment-summary__bar[b-7xr1a7j08i]::before {
    content: '';
    position: absolute;
    inset: 0;
    width: calc(var(--progress, 0) * 100%);
    background: var(--status-success);
    border-radius: var(--dp-radius-full);
    transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.payment-summary__bar-pct[b-7xr1a7j08i] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--text-sm-plus);
    font-weight: var(--font-bold);
    color: var(--text-primary);
    z-index: 1;
    font-variant-numeric: tabular-nums;
}

/* Detail-Chips mit Anzahlen */
.payment-summary__chips[b-7xr1a7j08i] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-2);
    padding-top: var(--dp-space-3);
    border-top: 1px solid var(--dp-slate-100);
}

.payment-summary__chip[b-7xr1a7j08i] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-1) var(--dp-space-3);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    border: 1px solid var(--dp-slate-200);
    background: var(--surface-primary);
    color: var(--text-secondary);
}

.payment-summary__chip strong[b-7xr1a7j08i] {
    font-weight: 700;
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}

.payment-summary__chip i[b-7xr1a7j08i] { font-size: var(--text-lg); }

.payment-summary__chip--paid[b-7xr1a7j08i] {
    background: var(--status-success-light);
    border-color: rgba(var(--status-success-rgb), 0.25);
    color: #065f46;
}
.payment-summary__chip--paid strong[b-7xr1a7j08i] { color: #065f46; }

.payment-summary__chip--open[b-7xr1a7j08i] {
    background: var(--status-warning-light);
    border-color: rgba(var(--status-warning-rgb), 0.25);
    color: #92400e;
}
.payment-summary__chip--open strong[b-7xr1a7j08i] { color: #92400e; }

.payment-summary__chip--overdue[b-7xr1a7j08i] {
    background: var(--status-danger-light);
    border-color: rgba(var(--status-danger-rgb), 0.25);
    color: #991b1b;
}
.payment-summary__chip--overdue strong[b-7xr1a7j08i] { color: #991b1b; }

/* ==========================================================================
   Batch Actions Toolbar
   ========================================================================== */

.batch-toolbar[b-7xr1a7j08i] {
    position: sticky;
    top: 0;
    z-index: var(--z-sticky);
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    padding: var(--dp-space-3) var(--dp-space-4);
    margin-bottom: var(--dp-space-4);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: var(--dp-space-4);
    transition: box-shadow 0.3s ease, border-color 0.3s ease;
}

.batch-toolbar.has-selection[b-7xr1a7j08i] {
    border-color: var(--accent);
    box-shadow: 0 2px 12px rgba(var(--accent-rgb), 0.1);
}

.batch-group[b-7xr1a7j08i] {
    display: flex;
    gap: var(--dp-space-2);
    align-items: center;
}

.batch-btn[b-7xr1a7j08i] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2) var(--dp-space-3);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-4);
    background: transparent;
    color: var(--text-secondary);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    cursor: pointer;
    transition: all var(--transition-fast);
    white-space: nowrap;
}

.batch-btn:hover:not(:disabled)[b-7xr1a7j08i] {
    background: var(--dp-slate-50);
    color: var(--text-primary);
    border-color: var(--dp-slate-300);
}

.batch-btn:disabled[b-7xr1a7j08i] {
    opacity: 0.4;
    cursor: not-allowed;
}

.batch-btn :deep(i)[b-7xr1a7j08i] {
    font-size: var(--text-lg);
}

.batch-btn-spinner[b-7xr1a7j08i] {
    width: 14px;
    height: 14px;
    border: 2px solid var(--dp-slate-300);
    border-top-color: var(--accent);
    border-radius: 50%;
    animation: batch-spin-b-7xr1a7j08i 0.7s linear infinite;
}

@keyframes batch-spin-b-7xr1a7j08i {
    to { transform: rotate(360deg); }
}

.batch-btn-success:hover:not(:disabled)[b-7xr1a7j08i] {
    background: var(--status-success-light);
    color: var(--dp-emerald-700);
    border-color: var(--status-success);
}

/* Aktionsleisten-Dropdowns (Versand / Export) */
.batch-menu-wrap[b-7xr1a7j08i] {
    position: relative;
    display: inline-flex;
}

.batch-menu[b-7xr1a7j08i] {
    position: absolute;
    top: calc(100% + var(--dp-space-2));
    right: 0;
    z-index: 2;
    min-width: 200px;
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: var(--dp-space-2);
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    box-shadow: 0 6px 24px rgba(0, 0, 0, 0.12);
}

.batch-menu-item[b-7xr1a7j08i] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    width: 100%;
    padding: var(--dp-space-2) var(--dp-space-3);
    border: none;
    border-radius: var(--dp-radius-4);
    background: transparent;
    color: var(--text-secondary);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    text-align: left;
    cursor: pointer;
    transition: all var(--transition-fast);
    white-space: nowrap;
}

.batch-menu-item:hover:not(:disabled)[b-7xr1a7j08i] {
    background: var(--dp-slate-50);
    color: var(--text-primary);
}

.batch-menu-item:disabled[b-7xr1a7j08i] {
    opacity: 0.4;
    cursor: not-allowed;
}

.batch-menu-item :deep(i)[b-7xr1a7j08i] {
    font-size: var(--text-lg);
}

/* Fängt Klicks außerhalb der offenen Menüs (liegt knapp unter der sticky Toolbar). */
.batch-menu-overlay[b-7xr1a7j08i] {
    position: fixed;
    inset: 0;
    z-index: calc(var(--z-sticky) - 1);
    background: transparent;
}

.batch-selection-pill[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-1) var(--dp-space-2) var(--dp-space-1) var(--dp-space-3);
    background: var(--accent-light);
    border: 1px solid rgba(var(--accent-rgb), 0.2);
    border-radius: var(--dp-radius-full);
    color: var(--dp-blue-800);
    font-size: var(--text-md);
    font-weight: var(--font-semibold);
    animation: pill-appear-b-7xr1a7j08i 0.25s ease-out;
    white-space: nowrap;
}

@keyframes pill-appear-b-7xr1a7j08i {
    from { opacity: 0; transform: scale(0.9); }
    to { opacity: 1; transform: scale(1); }
}

.batch-selection-pill :deep(i)[b-7xr1a7j08i] {
    font-size: var(--text-lg);
    color: var(--accent);
}

.batch-clear-btn[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border: none;
    border-radius: var(--dp-radius-full);
    background: rgba(var(--accent-rgb), 0.15);
    color: var(--dp-blue-800);
    cursor: pointer;
    transition: background var(--transition-fast);
    padding: 0;
}

.batch-clear-btn:hover[b-7xr1a7j08i] {
    background: rgba(var(--accent-rgb), 0.3);
}

.batch-clear-btn :deep(i)[b-7xr1a7j08i] {
    font-size: 11px;
}

/* ==========================================================================
   Grid Section
   ========================================================================== */

.grid-section[b-7xr1a7j08i] {
    margin-bottom: var(--dp-space-8);
}

.grid-card[b-7xr1a7j08i] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    border: 1px solid var(--dp-slate-200);
    overflow: hidden;
}

.grid-header[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--dp-space-3) var(--dp-space-5);
    border-bottom: 1px solid var(--dp-slate-200);
    background: var(--dp-slate-50);
}

.grid-result-count[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-md);
    color: var(--text-secondary);
}

.grid-result-count strong[b-7xr1a7j08i] {
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}

.grid-result-count :deep(i)[b-7xr1a7j08i] {
    font-size: var(--text-lg);
    color: var(--dp-slate-400);
}

.grid-body[b-7xr1a7j08i] {
    padding: 0;
}

/* Grid Styling */
[b-7xr1a7j08i] .e-grid {
    border: none !important;
    box-shadow: none !important;
}

[b-7xr1a7j08i] .e-grid .e-gridheader {
    background: var(--dp-slate-50);
    border-bottom: 2px solid var(--dp-slate-200);
}

[b-7xr1a7j08i] .e-grid .e-columnheader {
    font-weight: var(--font-semibold);
    color: var(--dp-slate-700);
    font-size: var(--text-sm-plus);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

[b-7xr1a7j08i] .e-grid .e-row {
    transition: background-color var(--transition-fast);
}

[b-7xr1a7j08i] .e-grid .e-row:hover {
    background-color: var(--dp-slate-50) !important;
}

[b-7xr1a7j08i] .e-grid .e-altrow {
    background-color: rgba(var(--accent-rgb), 0.015);
}

[b-7xr1a7j08i] .e-grid .e-altrow:hover {
    background-color: var(--dp-slate-50) !important;
}

/* ==========================================================================
   Status Badges (with dot indicator)
   ========================================================================== */

.status-badge[b-7xr1a7j08i] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-full);
    font-size: 11px;
    font-weight: var(--font-semibold);
    letter-spacing: 0.3px;
    white-space: nowrap;
}

.status-dot[b-7xr1a7j08i] {
    width: 7px;
    height: 7px;
    border-radius: var(--dp-radius-full);
    flex-shrink: 0;
}

.status-draft[b-7xr1a7j08i] {
    background-color: var(--dp-slate-100);
    color: var(--dp-slate-600);
    border: 1px solid var(--dp-slate-300);
}

.status-draft .status-dot[b-7xr1a7j08i] {
    background-color: var(--dp-slate-400);
}

.status-open[b-7xr1a7j08i] {
    background-color: var(--status-warning-light);
    color: #92400e;
    border: 1px solid rgba(245, 158, 11, 0.25);
}

.status-open .status-dot[b-7xr1a7j08i] {
    background-color: var(--status-warning);
}

.status-sent[b-7xr1a7j08i] {
    background-color: var(--status-info-light);
    color: #0e7490;
    border: 1px solid rgba(6, 182, 212, 0.25);
}

.status-sent .status-dot[b-7xr1a7j08i] {
    background-color: var(--status-info);
}

.status-partial[b-7xr1a7j08i] {
    background-color: #fef3c7;
    color: #92400e;
    border: 1px solid rgba(245, 158, 11, 0.3);
}

.status-partial .status-dot[b-7xr1a7j08i] {
    background-color: var(--status-warning);
    box-shadow: 0 0 0 2px var(--status-success-light);
}

.status-paid[b-7xr1a7j08i] {
    background-color: var(--status-success-light);
    color: #065f46;
    border: 1px solid rgba(16, 185, 129, 0.25);
}

.status-paid .status-dot[b-7xr1a7j08i] {
    background-color: var(--status-success);
}

.status-overdue[b-7xr1a7j08i] {
    background-color: var(--status-danger-light);
    color: #991b1b;
    border: 1px solid rgba(239, 68, 68, 0.25);
}

.status-overdue .status-dot[b-7xr1a7j08i] {
    background-color: var(--status-danger);
    animation: dot-pulse-b-7xr1a7j08i 2s ease-in-out infinite;
}

@keyframes dot-pulse-b-7xr1a7j08i {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.4; }
}

.status-cancelled[b-7xr1a7j08i] {
    background-color: var(--dp-slate-100);
    color: var(--dp-slate-600);
    border: 1px solid var(--dp-slate-300);
}

.status-cancelled .status-dot[b-7xr1a7j08i] {
    background-color: var(--dp-slate-400);
}

/* ==========================================================================
   Type Badges (Recipient Column)
   ========================================================================== */

.recipient-cell[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.type-badge[b-7xr1a7j08i] {
    display: inline-flex;
    padding: 1px var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    font-size: 10px;
    font-weight: var(--font-bold);
    letter-spacing: 0.3px;
    text-transform: uppercase;
    flex-shrink: 0;
}

.type-insurance[b-7xr1a7j08i] {
    background-color: var(--accent-light);
    color: var(--dp-blue-800);
}

.type-private[b-7xr1a7j08i] {
    background-color: #fff7ed;
    color: #c2410c;
}

/* ==========================================================================
   ServiceRecord Badges
   ========================================================================== */

.badge[b-7xr1a7j08i] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 2px var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    font-size: 11px;
    font-weight: var(--font-semibold);
}

.badge-muted[b-7xr1a7j08i] {
    background-color: var(--dp-slate-100);
    color: var(--dp-slate-400);
    border: 1px solid var(--dp-slate-200);
}

.badge-secondary[b-7xr1a7j08i] {
    background-color: var(--dp-slate-200);
    color: var(--dp-slate-700);
    border: 1px solid var(--dp-slate-300);
}

.badge-warning[b-7xr1a7j08i] {
    background-color: var(--status-warning-light);
    color: #92400e;
    border: 1px solid rgba(245, 158, 11, 0.25);
}

.badge-success[b-7xr1a7j08i] {
    background-color: var(--status-success-light);
    color: #065f46;
    border: 1px solid rgba(16, 185, 129, 0.25);
}

.badge-primary[b-7xr1a7j08i] {
    background-color: var(--status-info-light);
    color: #0e7490;
    border: 1px solid rgba(6, 182, 212, 0.25);
}

/* ==========================================================================
   Delivery Method Badges
   ========================================================================== */

/* Versand- und SEPA-Badge nebeneinander; bricht um statt abzuschneiden */
.delivery-cell[b-7xr1a7j08i] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--dp-space-1);
}

.delivery-badge[b-7xr1a7j08i] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
    padding: 2px var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    font-size: 11px;
    font-weight: var(--font-semibold);
}

.delivery-email[b-7xr1a7j08i] {
    background-color: var(--status-info-light);
    color: #0e7490;
    border: 1px solid rgba(6, 182, 212, 0.25);
}

.delivery-post[b-7xr1a7j08i] {
    background-color: #fff7ed;
    color: #c2410c;
    border: 1px solid rgba(251, 146, 60, 0.25);
}

.delivery-manual[b-7xr1a7j08i] {
    background-color: var(--dp-slate-100);
    color: var(--dp-slate-700);
    border: 1px solid var(--dp-slate-300);
}

.delivery-unknown[b-7xr1a7j08i] {
    background-color: var(--dp-slate-100);
    color: var(--dp-slate-500);
    border: 1px solid var(--dp-slate-200);
}

/* ==========================================================================
   Invoice Link
   ========================================================================== */

.invoice-link[b-7xr1a7j08i] {
    color: var(--accent);
    text-decoration: none;
    font-weight: var(--font-semibold);
    transition: color var(--transition-fast);
}

.invoice-link:hover[b-7xr1a7j08i] {
    color: var(--accent-hover);
    text-decoration: underline;
}

/* ==========================================================================
   Action Buttons (Grid row actions)
   ========================================================================== */

.action-buttons[b-7xr1a7j08i] {
    display: flex;
    gap: var(--dp-space-1);
    justify-content: center;
}

.action-btn[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-4);
    background: transparent;
    color: var(--dp-slate-500);
    cursor: pointer;
    transition: all var(--transition-fast);
    padding: 0;
}

.action-btn:hover[b-7xr1a7j08i] {
    background: var(--dp-slate-50);
    color: var(--text-primary);
    border-color: var(--dp-slate-300);
}

.action-btn-danger:hover[b-7xr1a7j08i] {
    background: var(--status-danger-light);
    color: var(--status-danger);
    border-color: var(--status-danger);
}

.action-btn-success:hover[b-7xr1a7j08i] {
    background: var(--status-success-light);
    color: var(--status-success);
    border-color: var(--status-success);
}

.action-btn-info:hover[b-7xr1a7j08i] {
    background: var(--status-info-light);
    color: var(--status-info);
    border-color: var(--status-info);
}

.action-btn :deep(i)[b-7xr1a7j08i] {
    font-size: 14px;
}

/* ==========================================================================
   Overdue / Due Soon Row Styling
   ========================================================================== */

[b-7xr1a7j08i] .overdue-row {
    background-color: rgba(var(--status-danger-rgb), 0.04) !important;
    border-left: 3px solid var(--status-danger) !important;
}

[b-7xr1a7j08i] .overdue-row:hover {
    background-color: rgba(var(--status-danger-rgb), 0.08) !important;
}

[b-7xr1a7j08i] .due-soon-row {
    background-color: rgba(var(--status-warning-rgb), 0.04) !important;
    border-left: 3px solid var(--status-warning) !important;
}

[b-7xr1a7j08i] .due-soon-row:hover {
    background-color: rgba(var(--status-warning-rgb), 0.08) !important;
}

/* ==========================================================================
   Text Utilities
   ========================================================================== */

.text-danger[b-7xr1a7j08i] {
    color: var(--status-danger) !important;
}

.text-success[b-7xr1a7j08i] {
    color: var(--status-success) !important;
}

.text-warning[b-7xr1a7j08i] {
    color: var(--status-warning) !important;
}

.text-muted[b-7xr1a7j08i] {
    color: var(--text-secondary) !important;
}

/* ==========================================================================
   Dialogs
   ========================================================================== */

.dialog-header[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
}

.dialog-header i[b-7xr1a7j08i] {
    color: var(--accent);
    font-size: var(--text-2xl);
}

.payment-form[b-7xr1a7j08i] {
    padding: var(--dp-space-5);
}

.form-info[b-7xr1a7j08i] {
    background: var(--accent-light);
    border-left: 4px solid var(--accent);
    padding: var(--dp-space-3) var(--dp-space-4);
    margin-bottom: var(--dp-space-5);
    border-radius: var(--dp-radius-2);
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    color: var(--dp-blue-800);
    font-weight: var(--font-medium);
}

.form-info i[b-7xr1a7j08i] {
    font-size: var(--text-lg);
}

.form-group[b-7xr1a7j08i] {
    margin-bottom: var(--dp-space-5);
}

.form-group label[b-7xr1a7j08i] {
    display: block;
    margin-bottom: var(--dp-space-1);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-700);
}

.required[b-7xr1a7j08i] {
    color: var(--status-danger);
}

.dialog-footer[b-7xr1a7j08i] {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-3);
    padding: var(--dp-space-4) var(--dp-space-5);
    background: var(--dp-slate-50);
    border-top: 1px solid var(--border-default);
}

/* ==========================================================================
   E-Mail Dialog Sections
   ========================================================================== */

.delivery-section[b-7xr1a7j08i] {
    padding: var(--dp-space-3);
    border-radius: var(--dp-radius-4);
    margin-bottom: var(--dp-space-3);
}

.delivery-section h4[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    margin: 0 0 var(--dp-space-2) 0;
    font-size: var(--text-md);
    font-weight: var(--font-semibold);
}

.success-section[b-7xr1a7j08i] {
    background: var(--status-success-light);
    border: 1px solid rgba(16, 185, 129, 0.25);
}

.success-section h4[b-7xr1a7j08i] {
    color: #065f46;
}

.problem-section[b-7xr1a7j08i] {
    background: var(--status-warning-light);
    border: 1px solid rgba(245, 158, 11, 0.25);
}

.problem-section h4[b-7xr1a7j08i] {
    color: #92400e;
}

.invoice-list[b-7xr1a7j08i] {
    margin: 0;
    padding-left: var(--dp-space-4);
    font-size: var(--text-md);
}

.invoice-list li[b-7xr1a7j08i] {
    margin-bottom: var(--dp-space-1);
}

/* ==========================================================================
   Job Progress Overlay
   ========================================================================== */

.job-progress-overlay[b-7xr1a7j08i] {
    position: fixed;
    bottom: var(--dp-space-6);
    right: var(--dp-space-6);
    z-index: 1000;
    animation: slideIn-b-7xr1a7j08i 0.3s ease-out;
}

@keyframes slideIn-b-7xr1a7j08i {
    from {
        transform: translateX(100%);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

.job-progress-card[b-7xr1a7j08i] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-lg);
    border: 1px solid var(--border-default);
    min-width: 360px;
    max-width: 450px;
    overflow: hidden;
}

.job-progress-header[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--accent);
    color: white;
    font-weight: var(--font-semibold);
}

.job-progress-header i[b-7xr1a7j08i] {
    font-size: var(--text-xl);
}

.job-progress-content[b-7xr1a7j08i] {
    padding: var(--dp-space-4);
}

.job-progress-stats[b-7xr1a7j08i] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: var(--dp-space-3);
    font-size: var(--text-md);
}

.progress-count[b-7xr1a7j08i] {
    font-weight: var(--font-semibold);
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}

.progress-current[b-7xr1a7j08i] {
    color: var(--text-secondary);
    font-size: var(--text-sm-plus);
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.job-progress-results[b-7xr1a7j08i] {
    display: flex;
    gap: var(--dp-space-4);
    margin-top: var(--dp-space-3);
    padding-top: var(--dp-space-3);
    border-top: 1px solid var(--border-default);
    font-size: var(--text-md);
}

.result-success[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
    color: var(--status-success);
}

.result-failure[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
    color: var(--status-danger);
}

/* ==========================================================================
   Card Styling Override
   ========================================================================== */

[b-7xr1a7j08i] .e-card {
    border-radius: var(--dp-radius-6);
    box-shadow: none;
    border: 1px solid var(--dp-slate-200);
}

[b-7xr1a7j08i] .e-card .e-card-content {
    padding: 0;
}

/* ==========================================================================
   Responsive (nur Body-Elemente - Hero/Stats/Filter siehe _page-patterns.css)
   ========================================================================== */

@media (max-width: 768px) {
    .payment-summary__bar-row[b-7xr1a7j08i] {
        flex-direction: column;
        align-items: stretch;
    }

    .payment-summary__side[b-7xr1a7j08i],
    .payment-summary__side--open[b-7xr1a7j08i] {
        align-items: flex-start;
        text-align: left;
    }

    .payment-summary__bar[b-7xr1a7j08i] {
        order: -1;
    }

    .batch-toolbar[b-7xr1a7j08i] {
        flex-direction: column;
        gap: var(--dp-space-3);
        align-items: stretch;
    }

    .batch-group[b-7xr1a7j08i] {
        justify-content: center;
        flex-wrap: wrap;
    }

    .batch-selection-pill[b-7xr1a7j08i] {
        justify-content: center;
    }

    .batch-btn-label[b-7xr1a7j08i] {
        display: none;
    }
}
/* _content/FRP.Web/Components/Pages/Billing/InvoiceDetail.razor.rz.scp.css */
/* Main Container */
.page-container[b-msojws3w7v] {
    padding: var(--dp-space-2);
    background-color: var(--surface-canvas);
    min-height: calc(100vh - 100px);
}

/* Page Header (von PageHeader-Komponente gestylt) */
.page-header[b-msojws3w7v] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-md);
    margin-bottom: var(--dp-space-4);
    padding: var(--dp-space-4);
}

.header-content[b-msojws3w7v] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--dp-space-4);
}

.page-title[b-msojws3w7v] {
    color: var(--text-primary);
    margin: 0;
    font-size: var(--text-2xl);
    font-weight: var(--font-semibold);
}

.page-subtitle[b-msojws3w7v] {
    color: var(--text-secondary);
    margin: var(--dp-space-1) 0 0 0;
    font-size: var(--text-md);
}

.header-actions[b-msojws3w7v] {
    display: flex;
    gap: var(--dp-space-3);
    flex-wrap: wrap;
}

/* Info Cards Grid */
.invoice-info-section[b-msojws3w7v] {
    margin-bottom: var(--dp-space-8);
}

.info-grid[b-msojws3w7v] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: var(--dp-space-5);
    margin-bottom: var(--dp-space-5);
}

/* Info Card Styling */
.invoice-info-card .e-card-header[b-msojws3w7v],
.invoice-amount-card .e-card-header[b-msojws3w7v],
.invoice-recipient-card .e-card-header[b-msojws3w7v] {
    background: var(--dp-slate-50);
    border-bottom: 1px solid var(--dp-slate-300);
    padding: var(--dp-space-4) var(--dp-space-5);
}

.card-header-content[b-msojws3w7v] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-600);
}

.card-header-content i[b-msojws3w7v] {
    font-size: var(--text-xl);
    color: var(--dp-slate-500);
}

.header-actions[b-msojws3w7v] {
    margin-left: auto;
    display: flex;
    gap: var(--dp-space-2);
}

/* Info Details */
.info-details[b-msojws3w7v] {
    padding: var(--dp-space-5);
}

.info-row[b-msojws3w7v] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-2) 0;
    border-bottom: 1px solid var(--dp-slate-100);
}

.info-row:last-child[b-msojws3w7v] {
    border-bottom: none;
}

.info-row .label[b-msojws3w7v] {
    font-weight: var(--font-medium);
    color: var(--dp-slate-500);
}

/* Status Badges */
.status-badge[b-msojws3w7v] {
    padding: var(--dp-space-1) var(--dp-space-3);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    text-transform: uppercase;
}

.status-draft[b-msojws3w7v] { background: var(--dp-slate-200); color: var(--dp-slate-500); }
.status-open[b-msojws3w7v] { background: #d1ecf1; color: #0c5460; }
.status-sent[b-msojws3w7v] { background: #d4edda; color: #155724; }
.status-partial[b-msojws3w7v] { background: #fff3cd; color: #856404; }
.status-paid[b-msojws3w7v] { background: #d1e7dd; color: #0a3622; }
.status-overdue[b-msojws3w7v] { background: #f8d7da; color: #721c24; }
.status-cancelled[b-msojws3w7v] { background: var(--dp-slate-100); color: var(--dp-slate-500); }

.billing-type[b-msojws3w7v] {
    padding: var(--dp-space-1) var(--dp-space-3);
    border-radius: var(--dp-radius-6);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
}

.billing-type.insurance[b-msojws3w7v] {
    background: #e3f2fd;
    color: #1976d2;
}

.billing-type.private[b-msojws3w7v] {
    background: #f3e5f5;
    color: #7b1fa2;
}

/* Amount Card */
.amount-details[b-msojws3w7v] {
    padding: var(--dp-space-5);
}

.amount-row[b-msojws3w7v] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-2) 0;
    border-bottom: 1px solid var(--dp-slate-100);
}

.amount-row:last-child[b-msojws3w7v] {
    border-bottom: none;
    padding-top: var(--dp-space-4);
    border-top: 2px solid var(--dp-slate-300);
}

.amount-row.total .label[b-msojws3w7v],
.amount-row.total .amount[b-msojws3w7v] {
    font-weight: var(--font-semibold);
    font-size: var(--text-xl);
    color: var(--dp-slate-900);
}

.amount-row.paid .amount[b-msojws3w7v] {
    color: var(--status-success);
}

.amount-row.outstanding .amount[b-msojws3w7v] {
    color: var(--status-danger);
    font-weight: var(--font-semibold);
}

/* Recipient Card */
.recipient-details[b-msojws3w7v] {
    padding: var(--dp-space-5);
}

.recipient-name[b-msojws3w7v] {
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-900);
    margin-bottom: var(--dp-space-1);
}

.guest-info[b-msojws3w7v] {
    font-size: var(--text-md);
    color: var(--dp-slate-500);
}

/* Payment History Section */
.payments-section[b-msojws3w7v] {
    margin-bottom: var(--dp-space-8);
}

.payments-list[b-msojws3w7v] {
    display: flex;
    flex-direction: column;
}

.payment-entry[b-msojws3w7v] {
    padding: var(--dp-space-4) var(--dp-space-5);
    border-bottom: 1px solid var(--dp-slate-100);
    transition: background-color var(--transition-fast);
}

.payment-entry:last-child[b-msojws3w7v] {
    border-bottom: none;
}

.payment-entry:hover[b-msojws3w7v] {
    background-color: var(--dp-slate-50);
}

.payment-entry.storno[b-msojws3w7v] {
    background-color: #fff5f5;
}

.payment-main[b-msojws3w7v] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
    flex-wrap: wrap;
}

.payment-amount[b-msojws3w7v] {
    font-weight: var(--font-semibold);
    font-size: var(--text-lg);
    color: var(--status-success);
    min-width: 100px;
}

.payment-amount.storno[b-msojws3w7v] {
    color: var(--status-danger);
    text-decoration: line-through;
}

.payment-method[b-msojws3w7v] {
    padding: var(--dp-space-1) var(--dp-space-2);
    background: var(--dp-slate-100);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
}

.payment-date[b-msojws3w7v] {
    color: var(--dp-slate-500);
    font-size: var(--text-md);
}

.payment-detail[b-msojws3w7v] {
    margin-top: var(--dp-space-2);
    padding-left: var(--dp-space-1);
    font-size: var(--text-md);
    color: var(--dp-slate-500);
    line-height: 1.4;
}

/* Invoice Items Section */
.invoice-items-section[b-msojws3w7v] {
    margin-bottom: var(--dp-space-8);
}

.action-buttons[b-msojws3w7v] {
    display: flex;
    gap: var(--dp-space-1);
    justify-content: center;
}

/* Calendar Section */
.calendar-section[b-msojws3w7v] {
    margin-bottom: var(--dp-space-8);
}

.calendar-section .e-schedule[b-msojws3w7v] {
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
}

/* Notes Section */
.notes-section[b-msojws3w7v] {
    margin-bottom: var(--dp-space-8);
}

.notes-display[b-msojws3w7v] {
    padding: var(--dp-space-5);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-4);
    border: 1px solid var(--dp-slate-200);
    white-space: pre-wrap;
    min-height: 60px;
    color: var(--dp-slate-600);
}

/* Payment Modal */
.payment-form[b-msojws3w7v] {
    padding: var(--dp-space-5) 0;
}

.form-group[b-msojws3w7v] {
    margin-bottom: var(--dp-space-5);
}

.form-group label[b-msojws3w7v] {
    display: block;
    margin-bottom: var(--dp-space-1);
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
}

.form-group .required[b-msojws3w7v] {
    color: var(--status-danger);
}

.form-help[b-msojws3w7v] {
    display: block;
    margin-top: var(--dp-space-1);
    font-size: var(--text-md);
    color: var(--dp-slate-500);
}

.dialog-header[b-msojws3w7v] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-weight: var(--font-semibold);
}

.dialog-header i[b-msojws3w7v] {
    color: var(--accent);
}

.dialog-footer[b-msojws3w7v] {
    display: flex;
    gap: var(--dp-space-2);
    justify-content: flex-end;
}

/* Responsive Design */
@media (max-width: 768px) {
    .page-container[b-msojws3w7v] {
        padding: var(--dp-space-2);
    }

    .header-content[b-msojws3w7v] {
        flex-direction: column;
        align-items: stretch;
        text-align: center;
    }

    .header-actions[b-msojws3w7v] {
        justify-content: center;
    }

    .info-grid[b-msojws3w7v] {
        grid-template-columns: 1fr;
    }

    .info-row[b-msojws3w7v] {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--dp-space-1);
    }

    .amount-row[b-msojws3w7v] {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--dp-space-1);
    }
}

/* Animation Effects */
.invoice-detail-container .e-card[b-msojws3w7v] {
    transition: transform var(--transition-fast), box-shadow var(--transition-fast);
}

.invoice-detail-container .e-card:hover[b-msojws3w7v] {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

/* Grid Styling */
.invoice-items-section .e-grid .e-gridheader[b-msojws3w7v] {
    background: var(--dp-slate-50);
    border-bottom: 2px solid var(--dp-slate-300);
}

.invoice-items-section .e-grid .e-rowcell[b-msojws3w7v] {
    border-bottom: 1px solid var(--dp-slate-100);
}

.invoice-items-section .e-grid .e-altrow[b-msojws3w7v] {
    background: var(--dp-slate-50);
}

/* Calendar Event Colors */
[b-msojws3w7v] .e-schedule .e-appointment {
    border-radius: var(--dp-radius-4);
    border: none;
    font-weight: var(--font-medium);
}

[b-msojws3w7v] .e-schedule .e-appointment.category-betreuung {
    background: #4CAF50;
}

[b-msojws3w7v] .e-schedule .e-appointment.category-pflege {
    background: #2196F3;
}

[b-msojws3w7v] .e-schedule .e-appointment.category-therapie {
    background: #FF9800;
}

[b-msojws3w7v] .e-schedule .e-appointment.category-transport {
    background: #9C27B0;
}

[b-msojws3w7v] .e-schedule .e-appointment.category-sonstiges {
    background: #607D8B;
}

/* Category Badges */
.category-badge-container[b-msojws3w7v] {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.category-badge[b-msojws3w7v] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    color: white;
    white-space: nowrap;
}

.category-badge.category-43b[b-msojws3w7v] {
    background-color: var(--status-danger);
}

.category-badge.category-betreuung[b-msojws3w7v] {
    background-color: var(--status-success);
}

.category-badge.category-pflege[b-msojws3w7v] {
    background-color: var(--accent);
}

.category-badge.category-therapie[b-msojws3w7v] {
    background-color: #fd7e14;
}

.category-badge.category-transport[b-msojws3w7v] {
    background-color: var(--dp-blue-600);
}

.category-badge.category-default[b-msojws3w7v] {
    background-color: var(--status-info);
}

.category-badge i[b-msojws3w7v] {
    font-size: var(--text-sm-plus);
}

/* Calendar Collapse Section */
.calendar-collapse-card[b-msojws3w7v] {
    transition: all var(--transition-slow);
}

.calendar-collapse-card.collapsed .e-card-content[b-msojws3w7v] {
    display: none;
}

.calendar-header-content[b-msojws3w7v] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: var(--dp-space-2) 0;
    transition: all var(--transition-slow);
}

.calendar-header-content:hover[b-msojws3w7v] {
    background-color: var(--dp-slate-50);
    border-radius: var(--dp-radius-2);
    margin: -0.25rem;
    padding: var(--dp-space-3);
}

.calendar-summary-badges[b-msojws3w7v] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-2);
    align-items: center;
}

.badge[b-msojws3w7v] {
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    color: white;
}

.badge.badge-success[b-msojws3w7v] {
    background-color: var(--status-success);
}

.badge.badge-info[b-msojws3w7v] {
    background-color: var(--status-info);
}

.badge.badge-warning[b-msojws3w7v] {
    background-color: var(--status-warning);
    color: var(--dp-slate-900);
}

.badge.badge-danger[b-msojws3w7v] {
    background-color: var(--status-danger);
}

/* Grouped Invoice Items */
.invoice-items-grouped[b-msojws3w7v] {
    max-height: 500px;
    overflow-y: auto;
}

.category-group[b-msojws3w7v] {
    margin-bottom: var(--dp-space-6);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-4);
    overflow: hidden;
}

.category-header[b-msojws3w7v] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--dp-slate-50);
    border-bottom: 1px solid var(--dp-slate-200);
}

.category-title[b-msojws3w7v] {
    margin: 0;
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-600);
}

.category-summary[b-msojws3w7v] {
    color: var(--dp-slate-500);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
}

.category-items[b-msojws3w7v] {
    background: white;
}

.invoice-item-row[b-msojws3w7v] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: var(--dp-space-4);
    border-bottom: 1px solid var(--dp-slate-100);
    transition: background-color var(--transition-fast);
}

.invoice-item-row:last-child[b-msojws3w7v] {
    border-bottom: none;
}

.invoice-item-row:hover[b-msojws3w7v] {
    background-color: var(--dp-slate-50);
}

.item-main[b-msojws3w7v] {
    flex: 1;
    min-width: 0;
}

.item-name[b-msojws3w7v] {
    font-weight: var(--font-semibold);
    color: var(--dp-slate-900);
    font-size: var(--text-lg);
    margin-bottom: var(--dp-space-1);
}

.item-description[b-msojws3w7v] {
    color: var(--dp-slate-500);
    font-size: var(--text-md);
    line-height: 1.4;
}

.item-details[b-msojws3w7v] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-6);
    flex-shrink: 0;
    text-align: right;
}

.item-quantity[b-msojws3w7v],
.item-price[b-msojws3w7v],
.item-total[b-msojws3w7v] {
    min-width: 70px;
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
}

.item-total[b-msojws3w7v] {
    font-weight: var(--font-semibold);
    color: var(--status-success);
}

.item-actions[b-msojws3w7v] {
    min-width: 40px;
}

/* Inline Editing Controls */
.inline-edit[b-msojws3w7v] {
    min-width: 100px;
}

[b-msojws3w7v] .inline-numeric {
    max-width: 120px;
}

[b-msojws3w7v] .inline-date-picker {
    max-width: 180px;
}

/* Reopen Warning */
.reopen-warning[b-msojws3w7v] {
    padding: var(--dp-space-3) 0;
    color: var(--dp-slate-600);
    line-height: 1.6;
}

.reopen-warning p[b-msojws3w7v] {
    margin-bottom: var(--dp-space-2);
}

/* Add Item Dialog Total */
.add-item-total[b-msojws3w7v] {
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--status-success);
}

/* Print Styles */
@media print {
    .invoice-detail-container[b-msojws3w7v] {
        margin: 0;
        box-shadow: none;
    }

    .header-actions[b-msojws3w7v] {
        display: none !important;
    }

    .page-title[b-msojws3w7v] {
        font-size: var(--text-3xl);
    }

    .invoice-info-card[b-msojws3w7v],
    .invoice-amount-card[b-msojws3w7v],
    .invoice-recipient-card[b-msojws3w7v] {
        break-inside: avoid;
    }

    .invoice-items-section[b-msojws3w7v] {
        page-break-inside: avoid;
    }

    .category-badge[b-msojws3w7v] {
        background-color: #000 !important;
        color: white !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}
/* _content/FRP.Web/Components/Pages/Billing/MonthlyInvoiceCreate.razor.rz.scp.css */
/* Main Container */
.page-container[b-p7mtvwa6nj] {
    padding: var(--dp-space-2);
    background-color: var(--surface-canvas);
    min-height: calc(100vh - 100px);
}

/* Page Header (von PageHeader-Komponente gestylt) */
.page-header[b-p7mtvwa6nj] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-md);
    margin-bottom: var(--dp-space-4);
    padding: var(--dp-space-4);
}

.page-title[b-p7mtvwa6nj] {
    color: var(--text-primary);
    margin: 0;
    font-size: var(--text-2xl);
    font-weight: var(--font-semibold);
}

.page-subtitle[b-p7mtvwa6nj] {
    color: var(--text-secondary);
    margin: var(--dp-space-1) 0 0 0;
    font-size: var(--text-md);
}

/* Guest Info Cards - First Row (5 cards) */
.guest-info-cards-row[b-p7mtvwa6nj] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: var(--dp-space-3);
    margin-bottom: var(--dp-space-3);
}

.info-card[b-p7mtvwa6nj] {
    background: white;
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    padding: var(--dp-space-3);
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    box-shadow: var(--shadow-sm);
    transition: box-shadow var(--transition-fast);
}

.info-card:hover[b-p7mtvwa6nj] {
    box-shadow: var(--shadow-md);
}

.info-card-icon[b-p7mtvwa6nj] {
    width: 36px;
    height: 36px;
    border-radius: var(--dp-radius-full);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: var(--text-lg);
    flex-shrink: 0;
}

.info-card:nth-child(1) .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, var(--status-danger), #c82333); /* Pflegegrad - Red */
}

.info-card:nth-child(2) .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, var(--status-success), #1e7e34); /* Entlastungsbetrag - Green */
}

.info-card:nth-child(3) .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, var(--accent), #0056b3); /* Leistungsnachweis - Blue */
}

.info-card:nth-child(4) .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, var(--dp-blue-600), #5a2d91); /* Rollstuhl - Purple */
}

.info-card:nth-child(5) .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, var(--status-info), #117a8b); /* Versicherung - Teal */
}

.info-card:nth-child(6) .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, var(--status-warning), #e0a800); /* Notizen - Yellow */
}

.info-card:nth-child(7) .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, #6f42c1, #4a1a8a); /* Abwesenheit - Purple */
}

.info-card-content[b-p7mtvwa6nj] {
    flex: 1;
    min-width: 0;
}

.info-card-label[b-p7mtvwa6nj] {
    font-size: 10px;
    font-weight: var(--font-semibold);
    color: var(--dp-slate-500);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: var(--dp-space-1);
}

.info-card-value[b-p7mtvwa6nj] {
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    color: var(--dp-slate-900);
    word-wrap: break-word;
}

/* Card highlight classes for deviations from standard */
.info-card.card-attention[b-p7mtvwa6nj] {
    border-color: var(--status-warning);
    background: linear-gradient(135deg, #fff8e1, white);
    box-shadow: 0 2px 6px rgba(255, 193, 7, 0.2);
}

.info-card.card-attention:hover[b-p7mtvwa6nj] {
    box-shadow: 0 4px 12px rgba(255, 193, 7, 0.3);
}

.info-card.card-attention .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, var(--status-warning), #e0a800) !important;
    box-shadow: 0 2px 4px rgba(255, 193, 7, 0.3);
}

.info-card.card-warning[b-p7mtvwa6nj] {
    border-color: var(--status-danger);
    background: linear-gradient(135deg, #ffebee, white);
    box-shadow: 0 2px 6px rgba(220, 53, 69, 0.2);
}

.info-card.card-warning:hover[b-p7mtvwa6nj] {
    box-shadow: 0 4px 12px rgba(220, 53, 69, 0.3);
}

.info-card.card-warning .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, var(--status-danger), #c82333) !important;
    box-shadow: 0 2px 4px rgba(220, 53, 69, 0.3);
}

/* KRITISCHE Felder - Rechnungserstellung nicht möglich ohne */
.info-card.card-critical[b-p7mtvwa6nj] {
    border: 2px solid var(--status-danger);
    background: linear-gradient(135deg, #ffcdd2, #ffebee);
    box-shadow: 0 4px 12px rgba(220, 53, 69, 0.3);
    position: relative;
}

.info-card.card-critical[b-p7mtvwa6nj]::after {
    content: '!';
    position: absolute;
    top: -8px;
    right: -8px;
    width: 20px;
    height: 20px;
    background: var(--status-danger);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    font-size: 12px;
}

.info-card.card-critical:hover[b-p7mtvwa6nj] {
    box-shadow: 0 6px 16px rgba(220, 53, 69, 0.4);
}

.info-card.card-critical .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, var(--status-danger), #c82333) !important;
    box-shadow: 0 2px 6px rgba(220, 53, 69, 0.4);
}

.info-card.card-critical .info-card-value[b-p7mtvwa6nj] {
    color: var(--status-danger);
    font-weight: var(--font-bold);
}

/* Notes Card Styling */
.notes-card[b-p7mtvwa6nj] {
    background: white;
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    padding: var(--dp-space-4);
    display: flex;
    align-items: flex-start;
    gap: var(--dp-space-3);
    box-shadow: var(--shadow-sm);
    transition: box-shadow var(--transition-fast);
}

.notes-card:hover[b-p7mtvwa6nj] {
    box-shadow: var(--shadow-md);
}

.notes-card-icon[b-p7mtvwa6nj] {
    width: 40px;
    height: 40px;
    border-radius: var(--dp-radius-full);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: var(--text-xl);
    flex-shrink: 0;
    background: linear-gradient(135deg, var(--status-warning), #e0a800);
}

.notes-card-content[b-p7mtvwa6nj] {
    flex: 1;
    width: 100%;
}

.notes-card-label[b-p7mtvwa6nj] {
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-500);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: var(--dp-space-2);
}

[b-p7mtvwa6nj] .notes-input-large {
    width: 100%;
}

[b-p7mtvwa6nj] .notes-input-large .e-input {
    border: 1px solid var(--dp-slate-300);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-2) var(--dp-space-3);
    font-size: var(--text-md);
    min-height: 40px;
    background: var(--dp-slate-50);
    transition: all var(--transition-fast);
}

[b-p7mtvwa6nj] .notes-input-large .e-input:focus {
    border-color: var(--accent);
    background: white;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

/* Mobile responsiveness */
@media (max-width: 1200px) {
    .guest-info-cards-row[b-p7mtvwa6nj] {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .guest-info-cards-row[b-p7mtvwa6nj] {
        grid-template-columns: repeat(2, 1fr);
    }

    .info-card[b-p7mtvwa6nj] {
        padding: var(--dp-space-2);
    }

    .info-card-icon[b-p7mtvwa6nj] {
        width: 32px;
        height: 32px;
        font-size: var(--text-md);
    }
}

@media (max-width: 480px) {
    .guest-info-cards-row[b-p7mtvwa6nj] {
        grid-template-columns: 1fr;
    }
}


/* Parameter Card */
[b-p7mtvwa6nj] .parameter-card {
    margin-bottom: var(--dp-space-8);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-default);
}

/* Calendar Overview Integration */
[b-p7mtvwa6nj] .calendar-overview {
    margin-bottom: var(--dp-space-6);
}

/* Calendar Collapse Card */
[b-p7mtvwa6nj] .calendar-collapse-card {
    margin-bottom: var(--dp-space-5);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-default);
}

[b-p7mtvwa6nj] .calendar-collapse-card.collapsed {
    margin-bottom: var(--dp-space-4);
}

.calendar-header-content[b-p7mtvwa6nj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-4);
    cursor: pointer;
    user-select: none;
    transition: background-color var(--transition-fast);
    width: 100%;
}

.calendar-header-content:hover[b-p7mtvwa6nj] {
    background-color: var(--dp-slate-100);
}

.calendar-summary-badges[b-p7mtvwa6nj] {
    display: flex;
    gap: var(--dp-space-2);
    flex-wrap: wrap;
}

.calendar-summary-badges .badge[b-p7mtvwa6nj] {
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    white-space: nowrap;
}

.calendar-summary-badges .badge-success[b-p7mtvwa6nj] {
    background-color: var(--color-success-light);
    color: var(--color-success);
}

.calendar-summary-badges .badge-info[b-p7mtvwa6nj] {
    background-color: var(--status-info-light);
    color: var(--color-info);
}

.calendar-summary-badges .badge-warning[b-p7mtvwa6nj] {
    background-color: var(--color-warning-light);
    color: var(--color-warning);
}

.calendar-summary-badges .badge-danger[b-p7mtvwa6nj] {
    background-color: var(--color-danger-light);
    color: var(--color-danger);
}

.card-header-content[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-xl);
    font-weight: var(--font-medium);
    justify-content: space-between;
    width: 100%;
    transition: all var(--transition-slow);
}

.card-header-content.collapsed[b-p7mtvwa6nj] {
    opacity: 0.95;
}

.checkin-summary-badges[b-p7mtvwa6nj] {
    display: flex;
    gap: var(--dp-space-2);
    align-items: center;
}

.badge[b-p7mtvwa6nj] {
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    color: white;
}

.badge-success[b-p7mtvwa6nj] {
    background: var(--status-success);
}

.badge-info[b-p7mtvwa6nj] {
    background: var(--status-info);
}

.badge-warning[b-p7mtvwa6nj] {
    background: var(--status-warning);
    color: var(--dp-slate-900);
}

.header-actions[b-p7mtvwa6nj] {
    display: flex;
    gap: var(--dp-space-2);
    margin-left: auto;
    flex-shrink: 0;
    align-items: center;
    min-width: fit-content;
}

.header-actions .e-btn[b-p7mtvwa6nj] {
    font-size: var(--text-sm-plus);
    padding: var(--dp-space-1) var(--dp-space-3);
    white-space: nowrap;
    min-width: auto;
    border-radius: var(--dp-radius-4);
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
}

.header-actions .e-btn i[b-p7mtvwa6nj] {
    font-size: 12px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .header-actions[b-p7mtvwa6nj] {
        flex-direction: column;
        gap: var(--dp-space-2);
        margin-top: var(--dp-space-2);
    }

    .card-header-content[b-p7mtvwa6nj] {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--dp-space-4);
    }
}

.parameter-grid[b-p7mtvwa6nj] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-8);
    align-items: end;
}

.parameter-item[b-p7mtvwa6nj] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.parameter-item.full-width[b-p7mtvwa6nj] {
    grid-column: 1 / -1;
}

.parameter-item label[b-p7mtvwa6nj] {
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
    font-size: var(--text-md);
}

[b-p7mtvwa6nj] .notes-input {
    width: 100%;
}

[b-p7mtvwa6nj] .notes-input .e-input {
    border: 1px solid var(--dp-slate-300);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-2) var(--dp-space-3);
    font-size: var(--text-md);
    background: var(--dp-slate-50);
    transition: all var(--transition-fast);
}

[b-p7mtvwa6nj] .notes-input .e-input:focus {
    border-color: var(--accent);
    background: white;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

/* Guest Navigation */
.guest-navigation[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
    padding: var(--dp-space-2);
    background: var(--dp-slate-50);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-6);
}

.current-guest-info[b-p7mtvwa6nj] {
    flex: 1;
    text-align: center;
    padding: 0 var(--dp-space-4);
}

.guest-name-display[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-2);
    margin-bottom: var(--dp-space-1);
    font-size: var(--text-lg);
}

.guest-position[b-p7mtvwa6nj] {
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-500);
    font-weight: var(--font-medium);
}

.existing-invoice-warning[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    background: linear-gradient(135deg, var(--color-warning-light), #fff9e7);
    border-left: 4px solid var(--status-warning);
    padding: var(--dp-space-3) var(--dp-space-4);
    margin-top: var(--dp-space-4);
    border-radius: var(--dp-radius-4);
    color: var(--color-warning);
    font-size: var(--text-md);
}

.existing-invoice-warning i[b-p7mtvwa6nj] {
    color: #ff9800;
    font-size: var(--text-xl);
}

.no-guest-selected[b-p7mtvwa6nj] {
    color: var(--dp-slate-500);
    font-style: italic;
    font-size: var(--text-md);
}

.guest-navigation .e-btn[b-p7mtvwa6nj] {
    min-width: 100px;
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
}

.guest-navigation .e-btn i[b-p7mtvwa6nj] {
    font-size: var(--text-sm-plus);
}

/* Guest Dropdown Styling */
.guest-dropdown-item[b-p7mtvwa6nj] {
    padding: var(--dp-space-2) 0;
    border-bottom: 1px solid var(--dp-slate-100);
}

.guest-dropdown-item:last-child[b-p7mtvwa6nj] {
    border-bottom: none;
}

.guest-main-info[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    margin-bottom: var(--dp-space-1);
}

.guest-sub-info[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-500);
}

.guest-value-display[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.private-billing-info[b-p7mtvwa6nj] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
    color: var(--color-danger);
    font-weight: var(--font-medium);
}

.private-billing-info i[b-p7mtvwa6nj] {
    font-size: var(--text-sm-plus);
}

.insurance-info[b-p7mtvwa6nj] {
    color: var(--color-primary);
    font-weight: var(--font-medium);
}

.guest-name[b-p7mtvwa6nj] {
    font-weight: var(--font-medium);
    color: var(--text-primary);
}

.care-level-badge[b-p7mtvwa6nj] {
    background: var(--color-primary);
    color: white;
    padding: 2px var(--dp-space-2);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
}

.private-billing-badge[b-p7mtvwa6nj] {
    background: var(--color-danger);
    color: white;
    padding: 2px var(--dp-space-2);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
}

.private-billing-badge i[b-p7mtvwa6nj] {
    font-size: var(--text-sm-plus);
}

/* Loading Container */
.loading-container[b-p7mtvwa6nj] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 300px;
}

/* CheckIn Overview Card */
[b-p7mtvwa6nj] .checkin-overview-card {
    margin-bottom: var(--dp-space-8);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-default);
}

/* Compact Calendar */
.checkin-calendar-compact[b-p7mtvwa6nj] {
    padding: var(--dp-space-5);
}

.calendar-grid[b-p7mtvwa6nj] {
    max-width: 600px;
    margin: 0 auto;
}

.calendar-weekdays[b-p7mtvwa6nj] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: var(--dp-space-1);
    margin-bottom: var(--dp-space-2);
}

.weekday[b-p7mtvwa6nj] {
    text-align: center;
    font-weight: var(--font-semibold);
    color: var(--dp-slate-500);
    font-size: var(--text-md);
    padding: var(--dp-space-2) 0;
}

.calendar-days[b-p7mtvwa6nj] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: var(--dp-space-1);
}

.calendar-day[b-p7mtvwa6nj] {
    aspect-ratio: 1;
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-6);
    padding: var(--dp-space-2);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    transition: all var(--transition-fast);
    min-height: 60px;
}

.calendar-day:hover:not(.empty-day)[b-p7mtvwa6nj] {
    transform: scale(1.05);
    box-shadow: var(--shadow-md);
}

.empty-day[b-p7mtvwa6nj] {
    background: transparent;
    border: none;
}

.present-day[b-p7mtvwa6nj] {
    background: var(--color-success-light);
    border-color: var(--status-success);
}

.absent-day[b-p7mtvwa6nj] {
    background: var(--color-danger-light);
    border-color: var(--status-danger);
}

.planned-absent-day[b-p7mtvwa6nj] {
    background: var(--color-warning-light);
    border-color: var(--status-warning);
}

.no-checkin-day[b-p7mtvwa6nj] {
    background: var(--dp-slate-50);
}

.day-number[b-p7mtvwa6nj] {
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
    color: var(--text-primary);
    margin-bottom: var(--dp-space-1);
}

.checkin-status[b-p7mtvwa6nj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.checkin-status i[b-p7mtvwa6nj] {
    font-size: var(--text-md);
}

.text-success[b-p7mtvwa6nj] {
    color: var(--status-success) !important;
}

.text-warning[b-p7mtvwa6nj] {
    color: var(--status-warning) !important;
}

.text-danger[b-p7mtvwa6nj] {
    color: var(--status-danger) !important;
}

.text-primary[b-p7mtvwa6nj] {
    color: var(--accent) !important;
}

.text-info[b-p7mtvwa6nj] {
    color: var(--status-info) !important;
}

/* Calendar Summary */
.calendar-summary[b-p7mtvwa6nj] {
    display: flex;
    justify-content: center;
    gap: var(--dp-space-8);
    margin-top: var(--dp-space-8);
    padding: var(--dp-space-5);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-6);
}

.summary-item[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-weight: var(--font-medium);
}

.summary-item i[b-p7mtvwa6nj] {
    font-size: var(--text-xl);
}

/* Service Selection Card */
[b-p7mtvwa6nj] .service-selection-card {
    margin-bottom: var(--dp-space-8);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-default);
}

/* Tab Styling */
[b-p7mtvwa6nj] .service-category-tabs .e-tab-header {
    background: var(--dp-slate-50);
    border-bottom: 2px solid var(--border-default);
    padding: 0 var(--dp-space-2);
}

[b-p7mtvwa6nj] .service-category-tabs .e-tab-header .e-toolbar-item {
    padding: var(--dp-space-2) 0;
}

.tab-header-content[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2) var(--dp-space-3);
}

.category-code[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, var(--color-primary), #3a5bc7);
    color: white;
    padding: 4px 10px;
    border-radius: var(--dp-radius-2);
    font-weight: var(--font-bold);
    font-size: 11px;
    letter-spacing: 0.5px;
    box-shadow: 0 1px 3px rgba(var(--accent-rgb), 0.3);
}

.category-name[b-p7mtvwa6nj] {
    font-weight: var(--font-medium);
    color: var(--text-primary);
    font-size: var(--text-md);
}

.category-total[b-p7mtvwa6nj] {
    margin-left: var(--dp-space-2);
    font-weight: var(--font-bold);
    color: var(--status-success);
    background: var(--color-success-light);
    padding: 2px 8px;
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
}

/* Service Selection Content */
.service-selection-content[b-p7mtvwa6nj] {
    padding: var(--dp-space-5);
}

.service-selection-area[b-p7mtvwa6nj] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}

.billing-address-info[b-p7mtvwa6nj] {
    background: var(--accent-light);
    padding: var(--dp-space-3) var(--dp-space-5);
    border-radius: var(--dp-radius-6);
    margin-bottom: var(--dp-space-6);
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    color: var(--color-primary);
    font-weight: var(--font-medium);
}

.billing-address-info i[b-p7mtvwa6nj] {
    font-size: var(--text-xl);
}

.private-entlastung-warning[b-p7mtvwa6nj] {
    background: var(--color-warning-light);
    border: 1px solid var(--status-warning);
    padding: var(--dp-space-3) var(--dp-space-5);
    border-radius: var(--dp-radius-6);
    margin-bottom: var(--dp-space-6);
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    color: var(--color-warning);
    font-weight: var(--font-medium);
}

.private-entlastung-warning i[b-p7mtvwa6nj] {
    font-size: var(--text-xl);
    color: var(--status-warning);
}

/* Add Service Row */
.add-service-row[b-p7mtvwa6nj] {
    margin-bottom: var(--dp-space-4);
    max-width: 500px;
}

.add-service-row[b-p7mtvwa6nj]  .e-input-group {
    background: white;
}

/* Selected Services */
.selected-services[b-p7mtvwa6nj] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
    margin-bottom: var(--dp-space-6);
    background: var(--dp-slate-50);
    padding: var(--dp-space-3);
    border-radius: var(--dp-radius-4);
    border: 1px solid var(--dp-slate-100);
}

.selected-services:empty[b-p7mtvwa6nj] {
    display: none;
}

.service-item-row[b-p7mtvwa6nj] {
    display: grid;
    grid-template-columns: 1fr 135px 24px 100px 24px 110px 36px;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-3) var(--dp-space-4);
    background: white;
    border-radius: var(--dp-radius-4);
    border: 1px solid var(--dp-slate-200);
    transition: all var(--transition-fast);
}

.service-item-row:hover[b-p7mtvwa6nj] {
    border-color: var(--accent);
    box-shadow: 0 2px 8px rgba(var(--accent-rgb), 0.1);
}

.service-name[b-p7mtvwa6nj] {
    font-weight: var(--font-medium);
    color: var(--text-primary);
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-md);
    line-height: 1.4;
    flex-wrap: wrap;
}

.transport-info[b-p7mtvwa6nj] {
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-500);
    font-weight: normal;
    font-style: italic;
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
}

.transport-info i[b-p7mtvwa6nj] {
    color: var(--status-info);
    font-size: var(--text-sm-plus);
}

.spontaneous-absence-info[b-p7mtvwa6nj] {
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-500);
    font-weight: normal;
    font-style: italic;
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
}

.spontaneous-absence-info i[b-p7mtvwa6nj] {
    color: var(--color-danger);
    font-size: var(--text-sm-plus);
}

.service-price[b-p7mtvwa6nj] {
    text-align: right;
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
    font-size: var(--text-md);
    white-space: nowrap;
}

/* Editierbarer Preis Container */
.service-price-container[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
}

/* Visueller Hinweis wenn Preis geändert wurde */
.service-price-container.price-modified[b-p7mtvwa6nj]  .e-input-group {
    border-color: var(--status-warning);
    background-color: #fffbf0;
}

/* Reset-Button */
.reset-price-btn[b-p7mtvwa6nj] {
    width: 24px;
    height: 24px;
    padding: 0;
    border: none;
    background: var(--status-warning);
    color: white;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: all var(--transition-fast);
}

.reset-price-btn:hover[b-p7mtvwa6nj] {
    background: #e0a800;
    transform: scale(1.1);
}

/* Price Input Styling */
[b-p7mtvwa6nj] .price-input .e-input-group {
    min-width: 100px;
}

.service-total[b-p7mtvwa6nj] {
    text-align: right;
    font-weight: var(--font-bold);
    color: var(--status-success);
    font-size: var(--text-md);
    white-space: nowrap;
}

.multiply-sign[b-p7mtvwa6nj],
.equals-sign[b-p7mtvwa6nj] {
    text-align: center;
    color: var(--dp-slate-400);
    font-weight: var(--font-medium);
    font-size: var(--text-md);
}

/* Category Summary */
.category-summary[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, var(--dp-slate-50), white);
    padding: var(--dp-space-5);
    border-radius: var(--dp-radius-6);
    border: 1px solid var(--dp-slate-200);
    box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05);
}

.summary-row[b-p7mtvwa6nj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--dp-space-4);
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
}

.total-amount[b-p7mtvwa6nj] {
    color: var(--color-success);
}

.limit-info[b-p7mtvwa6nj] {
    display: flex;
    justify-content: space-between;
    margin-bottom: var(--dp-space-2);
    color: var(--dp-slate-600);
}

.limit-progress[b-p7mtvwa6nj] {
    margin-bottom: var(--dp-space-4);
    position: relative;
}

.progress-text[b-p7mtvwa6nj] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-weight: var(--font-semibold);
    font-size: var(--text-sm-plus);
    color: var(--text-primary);
    z-index: 10;
    text-shadow: 0 0 3px rgba(255, 255, 255, 0.8);
}

.split-info[b-p7mtvwa6nj] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-4);
    margin-top: var(--dp-space-4);
}

.split-item[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2);
    background: white;
    border-radius: var(--dp-radius-4);
    border: 1px solid var(--border-default);
}

.split-item i[b-p7mtvwa6nj] {
    font-size: var(--text-2xl);
}

/* Unlimited Category Info */
.unlimited-info[b-p7mtvwa6nj] {
    margin-top: var(--dp-space-4);
}

.unlimited-item[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3);
    background: linear-gradient(135deg, var(--color-success-light), #e8f5e9);
    border-radius: var(--dp-radius-4);
    border: 1px solid var(--status-success);
    color: var(--color-success);
    font-weight: var(--font-medium);
}

.unlimited-item i[b-p7mtvwa6nj] {
    font-size: var(--text-xl);
    color: var(--status-success);
}

/* Invoice Preview Card */
[b-p7mtvwa6nj] .invoice-preview-card {
    margin-top: var(--dp-space-6);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-default);
}

/* Invoice Groups */
.invoice-groups h4[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    color: var(--text-primary);
    margin-bottom: var(--dp-space-5);
}

.invoice-group[b-p7mtvwa6nj] {
    background: var(--dp-slate-50);
    padding: var(--dp-space-5);
    border-radius: var(--dp-radius-6);
    margin-bottom: var(--dp-space-5);
    border: 1px solid var(--border-default);
}

.invoice-group.private[b-p7mtvwa6nj] {
    background: #fef8e7;
    border-color: var(--color-warning);
}

.invoice-header[b-p7mtvwa6nj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--dp-space-4);
    padding-bottom: var(--dp-space-4);
    border-bottom: 1px solid var(--dp-slate-300);
}

.invoice-recipient-info[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.invoice-recipient[b-p7mtvwa6nj] {
    font-weight: var(--font-semibold);
    color: var(--text-primary);
    font-size: var(--text-lg);
}

.invoice-address[b-p7mtvwa6nj] {
    color: var(--dp-slate-500);
    font-size: var(--text-md);
    margin-left: var(--dp-space-4);
}

.invoice-number-preview[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    background: linear-gradient(135deg, #fff9e6, #fffdf5);
    padding: var(--dp-space-2) var(--dp-space-4);
    border-radius: var(--dp-radius-6);
    border-left: 4px solid #ff9800;
    box-shadow: 0 2px 4px rgba(255, 152, 0, 0.15);
}

.invoice-number[b-p7mtvwa6nj] {
    font-family: 'Courier New', monospace;
    font-weight: var(--font-bold);
    color: #e65100;
    font-size: var(--text-lg);
    letter-spacing: 0.5px;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.invoice-number-preview i[b-p7mtvwa6nj] {
    color: #ff9800;
    font-size: var(--text-lg);
}

.invoice-items[b-p7mtvwa6nj] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
    margin-bottom: var(--dp-space-4);
}

/* Category Grouping */
.category-group[b-p7mtvwa6nj] {
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-6);
    border: 1px solid var(--border-default);
    overflow: hidden;
    margin-bottom: var(--dp-space-3);
}

.category-group:last-child[b-p7mtvwa6nj] {
    margin-bottom: 0;
}

.category-header[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, var(--dp-blue-600) 0%, #764ba2 100%);
    padding: var(--dp-space-2) var(--dp-space-4);
    border-bottom: 1px solid var(--dp-slate-300);
}

.category-title[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    color: white;
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
}

.category-title i[b-p7mtvwa6nj] {
    font-size: var(--text-md);
}

.category-items[b-p7mtvwa6nj] {
    padding: var(--dp-space-2) var(--dp-space-3);
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.invoice-item[b-p7mtvwa6nj] {
    display: grid;
    grid-template-columns: 1fr 80px 120px;
    gap: var(--dp-space-4);
    align-items: center;
    padding: var(--dp-space-2) var(--dp-space-2);
    background: white;
    border-radius: var(--dp-radius-2);
    border: 1px solid var(--dp-slate-100);
}

.invoice-item.deduction-item[b-p7mtvwa6nj] {
    background: var(--color-warning-light);
    border-color: var(--status-warning);
}

.invoice-item.deduction-item .item-amount[b-p7mtvwa6nj] {
    color: var(--status-danger);
    font-weight: var(--font-bold);
}

.invoice-item.private-item[b-p7mtvwa6nj] {
    grid-template-columns: 100px 1fr 80px 120px;
}

.item-category[b-p7mtvwa6nj] {
    background: var(--color-warning);
    color: white;
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    font-weight: var(--font-semibold);
    font-size: var(--text-sm-plus);
    text-align: center;
}

.item-description[b-p7mtvwa6nj] {
    color: var(--text-primary);
    font-size: var(--text-md);
}

.item-quantity-price[b-p7mtvwa6nj] {
    text-align: right;
    color: var(--dp-slate-500);
    font-size: var(--text-sm-plus);
    white-space: nowrap;
}

.item-quantity[b-p7mtvwa6nj] {
    text-align: right;
    color: var(--dp-slate-500);
    font-size: var(--text-md);
}

.item-amount[b-p7mtvwa6nj] {
    text-align: right;
    font-weight: var(--font-semibold);
    color: var(--dp-slate-600);
    font-size: var(--text-md);
}

.category-subtotal[b-p7mtvwa6nj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-2) var(--dp-space-4);
    background: #e7f3ff;
    border-top: 1px solid var(--color-primary);
}

.subtotal-label[b-p7mtvwa6nj] {
    font-weight: var(--font-semibold);
    color: var(--color-primary);
    font-size: var(--text-md);
}

.subtotal-amount[b-p7mtvwa6nj] {
    font-weight: var(--font-bold);
    color: var(--color-primary);
    font-size: var(--text-lg);
}

.invoice-due-date[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3) var(--dp-space-4);
    background: #fff8dc;
    border-left: 3px solid var(--status-warning);
    margin: var(--dp-space-3) 0;
    color: var(--color-warning);
}

.invoice-total[b-p7mtvwa6nj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: var(--dp-space-4);
    border-top: 2px solid var(--dp-slate-300);
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}

.invoice-summary[b-p7mtvwa6nj] {
    margin-top: var(--dp-space-8);
    padding: var(--dp-space-5);
    background: var(--accent-light);
    border-radius: var(--dp-radius-6);
    text-align: center;
}

.summary-info[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-2);
    color: var(--color-primary);
    font-weight: var(--font-medium);
}

.no-invoices[b-p7mtvwa6nj] {
    text-align: center;
    padding: var(--dp-space-10);
    color: var(--dp-slate-500);
}

.no-invoices i[b-p7mtvwa6nj] {
    font-size: var(--text-4xl);
    margin-bottom: var(--dp-space-4);
}

/* No Services Available Card */
[b-p7mtvwa6nj] .no-services-card {
    margin-bottom: var(--dp-space-8);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-default);
    background: linear-gradient(135deg, var(--dp-slate-50), white);
}

.no-services-message[b-p7mtvwa6nj] {
    text-align: center;
    padding: var(--dp-space-12) var(--dp-space-5);
    color: var(--dp-slate-500);
}

.no-services-message i[b-p7mtvwa6nj] {
    font-size: 64px;
    color: var(--dp-slate-300);
    margin-bottom: var(--dp-space-5);
    display: block;
}

.no-services-message h4[b-p7mtvwa6nj] {
    color: var(--dp-slate-600);
    font-weight: var(--font-semibold);
    margin-bottom: var(--dp-space-2);
    font-size: var(--text-3xl);
}

.no-services-message p[b-p7mtvwa6nj] {
    font-size: var(--text-lg);
    color: var(--dp-slate-500);
    margin-bottom: var(--dp-space-6);
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
}

.no-services-message .e-btn[b-p7mtvwa6nj] {
    margin-top: var(--dp-space-4);
}

/* Create Button Section */
.create-button-section[b-p7mtvwa6nj] {
    margin-top: var(--dp-space-8);
    padding: var(--dp-space-5);
    text-align: center;
    background: linear-gradient(135deg, var(--dp-slate-50), var(--dp-slate-200));
    border-radius: var(--dp-radius-6);
    border: 1px solid var(--border-default);
}

.create-button-section .e-btn[b-p7mtvwa6nj] {
    padding: var(--dp-space-4) var(--dp-space-8);
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    border-radius: var(--dp-radius-6);
    box-shadow: 0 4px 15px rgba(var(--status-success-rgb), 0.3);
    transition: all var(--transition-slow);
}

.create-button-section .e-btn:hover[b-p7mtvwa6nj] {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(var(--status-success-rgb), 0.4);
}

.create-button-section .e-btn i[b-p7mtvwa6nj] {
    margin-right: var(--dp-space-2);
    font-size: var(--text-lg);
}

/* Responsive Design */
@media (max-width: 768px) {
    .parameter-grid[b-p7mtvwa6nj] {
        grid-template-columns: 1fr;
    }

    .calendar-day[b-p7mtvwa6nj] {
        font-size: var(--text-sm-plus);
        min-height: 50px;
    }

    .service-item-row[b-p7mtvwa6nj] {
        grid-template-columns: 1fr 1fr;
        gap: var(--dp-space-2);
        padding: var(--dp-space-3);
    }

    .service-item-row .service-name[b-p7mtvwa6nj] {
        grid-column: 1 / -1;
    }

    .service-item-row .multiply-sign[b-p7mtvwa6nj],
    .service-item-row .equals-sign[b-p7mtvwa6nj] {
        display: none;
    }

    .invoice-item[b-p7mtvwa6nj] {
        grid-template-columns: 1fr;
        gap: var(--dp-space-1);
    }

    .page-header[b-p7mtvwa6nj] {
        flex-direction: column;
        gap: var(--dp-space-4);
        text-align: center;
    }

    .calendar-summary[b-p7mtvwa6nj] {
        flex-direction: column;
        gap: var(--dp-space-4);
        align-items: center;
    }

    .split-info[b-p7mtvwa6nj] {
        grid-template-columns: 1fr;
    }

    /* Mobile create button adjustments */
    .create-button-section .e-btn[b-p7mtvwa6nj] {
        padding: var(--dp-space-3) var(--dp-space-6);
        font-size: var(--text-lg);
    }

    /* Mobile guest navigation adjustments */
    .guest-navigation[b-p7mtvwa6nj] {
        flex-direction: column;
        gap: var(--dp-space-2);
    }

    .guest-navigation .e-btn[b-p7mtvwa6nj] {
        min-width: auto;
        width: 100%;
    }

    .current-guest-info[b-p7mtvwa6nj] {
        order: -1;
        margin-bottom: var(--dp-space-2);
    }
}

/* Syncfusion Component Overrides */
[b-p7mtvwa6nj] .service-category-tabs .e-tab-header .e-active .e-tab-text {
    color: var(--color-primary);
    font-weight: var(--font-semibold);
}

[b-p7mtvwa6nj] .service-category-tabs .e-tab-header .e-indicator {
    background-color: var(--color-primary);
}

[b-p7mtvwa6nj] .e-numerictextbox.e-control-wrapper {
    min-width: 120px;
    width: auto;
}

[b-p7mtvwa6nj] .e-toast-success {
    background-color: var(--color-success);
}

[b-p7mtvwa6nj] .e-toast-danger {
    background-color: var(--color-danger);
}

/* Progress Bar Colors */
[b-p7mtvwa6nj] .e-progressbar .e-progress {
    transition: all var(--transition-slow);
}

/* Button Overrides */
[b-p7mtvwa6nj] .e-btn.e-success {
    background: linear-gradient(135deg, var(--color-success), #17a673);
    border: none;
    box-shadow: 0 2px 4px rgba(var(--status-success-rgb), 0.3);
}

[b-p7mtvwa6nj] .e-btn.e-success:hover {
    background: linear-gradient(135deg, #17a673, #138f5f);
    box-shadow: 0 4px 8px rgba(var(--status-success-rgb), 0.4);
    transform: translateY(-1px);
}

[b-p7mtvwa6nj] .e-btn.e-outline {
    border: 2px solid var(--color-primary);
    color: var(--color-primary);
    background: transparent;
}

[b-p7mtvwa6nj] .e-btn.e-outline:hover {
    background: var(--color-primary);
    color: white;
}

/* Card Styling */
[b-p7mtvwa6nj] .e-card {
    border: none;
    box-shadow: var(--shadow-sm);
    border-radius: var(--dp-radius-6);
}

[b-p7mtvwa6nj] .e-card .e-card-header {
    background: var(--dp-slate-50);
    border-bottom: 1px solid var(--border-default);
    border-radius: var(--dp-radius-6) var(--dp-radius-6) 0 0;
    padding: var(--dp-space-5);
}

[b-p7mtvwa6nj] .e-card .e-card-content {
    padding: var(--dp-space-5);
}

/* Tab animations */
[b-p7mtvwa6nj] .e-tab .e-content .e-item {
    padding: 0;
}

/* Spinner Styling */
[b-p7mtvwa6nj] .e-spinner-pane {
    background: rgba(255, 255, 255, 0.9);
}

/* ComboBox and DropDownList Styling */
[b-p7mtvwa6nj] .e-dropdownlist,
[b-p7mtvwa6nj] .e-combobox {
    border-radius: var(--dp-radius-4);
}

[b-p7mtvwa6nj] .e-dropdownlist .e-input-group,
[b-p7mtvwa6nj] .e-combobox .e-input-group {
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
}

[b-p7mtvwa6nj] .e-dropdownlist:hover .e-input-group,
[b-p7mtvwa6nj] .e-combobox:hover .e-input-group {
    border-color: var(--color-primary);
}

/* DatePicker Styling */
[b-p7mtvwa6nj] .e-datepicker .e-input-group {
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
}

[b-p7mtvwa6nj] .e-datepicker:hover .e-input-group {
    border-color: var(--color-primary);
}

/* NumericTextBox Styling */
[b-p7mtvwa6nj] .e-numerictextbox .e-input-group {
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
}

[b-p7mtvwa6nj] .e-numerictextbox:hover .e-input-group {
    border-color: var(--color-primary);
}

/* Icon-Only Button (rund) */
[b-p7mtvwa6nj] .btn-icon-only {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    padding: 0 !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0;
}

[b-p7mtvwa6nj] .btn-icon-only:hover {
    transform: scale(1.1);
}

[b-p7mtvwa6nj] .btn-icon-only:active {
    transform: scale(0.95);
}

[b-p7mtvwa6nj] .btn-icon-only i {
    font-size: 14px;
    margin: 0 !important;
}

/* Progress Bar Container */
[b-p7mtvwa6nj] .e-progressbar-container {
    border-radius: var(--dp-radius-6);
    overflow: hidden;
}

/* Elegant animations */
@keyframes fadeIn-b-p7mtvwa6nj {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.page-container[b-p7mtvwa6nj] {
    animation: fadeIn-b-p7mtvwa6nj 0.3s ease-out;
}

/* Smooth transitions */
*[b-p7mtvwa6nj] {
    transition: box-shadow var(--transition-fast), transform var(--transition-fast);
}

/* Focus styles */
[b-p7mtvwa6nj] .e-input-group:focus-within {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 2px rgba(var(--accent-rgb), 0.25);
}

/* Elegant hover effects */
.calendar-day:hover:not(.empty-day)[b-p7mtvwa6nj] {
    background: rgba(var(--accent-rgb), 0.1);
}

.invoice-group:hover[b-p7mtvwa6nj] {
    transform: translateY(-1px);
    box-shadow: var(--shadow-md);
}

/* Modern scrollbar */
[b-p7mtvwa6nj]::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

[b-p7mtvwa6nj]::-webkit-scrollbar-track {
    background: var(--dp-slate-100);
    border-radius: var(--dp-radius-2);
}

[b-p7mtvwa6nj]::-webkit-scrollbar-thumb {
    background: var(--dp-slate-300);
    border-radius: var(--dp-radius-2);
}

[b-p7mtvwa6nj]::-webkit-scrollbar-thumb:hover {
    background: var(--dp-slate-400);
}

/* === Bulk Invoice Creation Styles === */

/* Confirmation Dialog */
.bulk-confirm-content[b-p7mtvwa6nj] {
    padding: var(--dp-space-2);
}

.bulk-info[b-p7mtvwa6nj] {
    display: flex;
    align-items: flex-start;
    gap: var(--dp-space-3);
    padding: var(--dp-space-4);
    background: var(--accent-light);
    border-radius: var(--dp-radius-4);
    margin-bottom: var(--dp-space-4);
}

.bulk-info i[b-p7mtvwa6nj] {
    font-size: var(--text-3xl);
    color: var(--accent);
}

.bulk-info p[b-p7mtvwa6nj] {
    margin: 0;
    font-size: var(--text-lg);
}

.bulk-details[b-p7mtvwa6nj] {
    padding: var(--dp-space-3);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-4);
}

.bulk-details p[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    margin: 0 0 var(--dp-space-2) 0;
    font-size: var(--text-md);
}

.bulk-details p:last-child[b-p7mtvwa6nj] {
    margin-bottom: 0;
}

.bulk-details i[b-p7mtvwa6nj] {
    color: var(--text-secondary);
}

.bulk-warning[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3);
    background: var(--status-warning-light);
    border-radius: var(--dp-radius-4);
    margin-top: var(--dp-space-4);
    color: var(--color-warning);
}

.bulk-warning i[b-p7mtvwa6nj] {
    font-size: var(--text-xl);
}

/* Progress Overlay */
.bulk-job-progress-overlay[b-p7mtvwa6nj] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    animation: fadeIn-b-p7mtvwa6nj 0.2s ease-out;
}

@keyframes fadeIn-b-p7mtvwa6nj {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.bulk-job-progress-card[b-p7mtvwa6nj] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-xl);
    min-width: 450px;
    max-width: 550px;
    overflow: hidden;
    animation: slideUp-b-p7mtvwa6nj 0.3s ease-out;
}

@keyframes slideUp-b-p7mtvwa6nj {
    from {
        transform: translateY(20px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.bulk-job-header[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-4);
    background: var(--accent);
    color: white;
    font-weight: var(--font-semibold);
    font-size: var(--text-xl);
}

.bulk-job-header.completed[b-p7mtvwa6nj] {
    background: var(--status-success);
}

.bulk-job-header.failed[b-p7mtvwa6nj] {
    background: var(--status-danger);
}

.bulk-job-header i[b-p7mtvwa6nj] {
    font-size: var(--text-2xl);
}

.bulk-job-content[b-p7mtvwa6nj] {
    padding: var(--dp-space-5);
}

.bulk-job-stats[b-p7mtvwa6nj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: var(--dp-space-4);
}

.progress-count[b-p7mtvwa6nj] {
    font-weight: var(--font-semibold);
    font-size: var(--text-xl);
    color: var(--text-primary);
}

.progress-current[b-p7mtvwa6nj] {
    color: var(--text-secondary);
    font-size: var(--text-md);
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bulk-job-results[b-p7mtvwa6nj] {
    display: flex;
    gap: var(--dp-space-5);
    margin-top: var(--dp-space-4);
    padding-top: var(--dp-space-4);
    border-top: 1px solid var(--border-default);
    font-size: var(--text-lg);
}

.result-success[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    color: var(--status-success);
    font-weight: var(--font-medium);
}

.result-failure[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    color: var(--status-danger);
    font-weight: var(--font-medium);
}

.bulk-job-actions[b-p7mtvwa6nj] {
    display: flex;
    justify-content: center;
    margin-top: var(--dp-space-5);
    padding-top: var(--dp-space-4);
    border-top: 1px solid var(--border-default);
}

/* Ergebnis-Übersicht in Bulk Progress (Erstellt / Nicht erstellt) */
.bulk-job-overview[b-p7mtvwa6nj] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-4);
    margin-top: var(--dp-space-4);
    border-top: 1px solid var(--dp-slate-200);
    padding-top: var(--dp-space-3);
}

.bulk-job-overview-section[b-p7mtvwa6nj] {
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-2);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.overview-section-header[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2) var(--dp-space-3);
    font-weight: var(--font-semibold);
    font-size: var(--text-sm-plus);
    background: var(--dp-slate-50);
}

.overview-section-header--success[b-p7mtvwa6nj] {
    color: var(--status-success);
}

.overview-section-header--danger[b-p7mtvwa6nj] {
    color: var(--status-danger);
}

.overview-list[b-p7mtvwa6nj] {
    max-height: 280px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
}

.overview-item[b-p7mtvwa6nj] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: var(--dp-space-2) var(--dp-space-3);
    border-top: 1px solid var(--dp-slate-200);
}

.overview-name[b-p7mtvwa6nj] {
    font-weight: var(--font-semibold);
    color: var(--dp-slate-800);
    font-size: var(--text-sm-plus);
    word-break: break-word;
}

.overview-detail[b-p7mtvwa6nj] {
    color: var(--dp-slate-500);
    font-size: var(--text-sm-plus);
    word-break: break-word;
}

.overview-empty[b-p7mtvwa6nj] {
    padding: var(--dp-space-3);
    color: var(--dp-slate-500);
    font-size: var(--text-sm-plus);
}

@media (max-width: 768px) {
    .bulk-job-overview[b-p7mtvwa6nj] {
        grid-template-columns: 1fr;
    }
}

/* Sperre / Fehler bei manueller Rechnungserstellung */
.create-blocked-warning[b-p7mtvwa6nj],
.create-error[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
}

.create-blocked-warning[b-p7mtvwa6nj] {
    color: var(--status-warning);
    background: var(--dp-slate-50);
    border: 1px solid var(--status-warning);
}

.create-error[b-p7mtvwa6nj] {
    color: var(--status-danger);
    background: var(--dp-slate-50);
    border: 1px solid var(--status-danger);
    margin-top: var(--dp-space-2);
}
/* _content/FRP.Web/Components/Pages/Billing/PaymentAdviceChronicle.razor.rz.scp.css */
.chronicle[b-eh941wvgi4] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.chronicle-month[b-eh941wvgi4] {
    display: flex;
    align-items: baseline;
    gap: var(--dp-space-3);
    margin: var(--dp-space-5) 0 var(--dp-space-2);
    padding-bottom: var(--dp-space-2);
    border-bottom: 1px solid var(--border-default);
}

.chronicle-month:first-child[b-eh941wvgi4] {
    margin-top: 0;
}

.chronicle-month__label[b-eh941wvgi4] {
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--text-primary);
    text-transform: capitalize;
}

.chronicle-month__count[b-eh941wvgi4] {
    font-size: 0.85rem;
    color: var(--text-secondary);
}

.advice[b-eh941wvgi4] {
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    background: var(--surface-primary);
    overflow: hidden;
}

.advice--open[b-eh941wvgi4] {
    border-color: var(--accent);
}

.advice__head[b-eh941wvgi4] {
    display: grid;
    grid-template-columns: 24px 90px 130px 1fr 120px 90px auto;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-3) var(--dp-space-4);
    cursor: pointer;
}

.advice__head:hover[b-eh941wvgi4] {
    background: rgba(var(--accent-rgb), 0.04);
}

.advice__chevron[b-eh941wvgi4] {
    display: inline-flex;
    color: var(--text-secondary);
}

.advice__date[b-eh941wvgi4] {
    font-variant-numeric: tabular-nums;
    color: var(--text-primary);
}

.advice__kasse[b-eh941wvgi4] {
    font-weight: 500;
    color: var(--text-primary);
}

.advice__file[b-eh941wvgi4] {
    color: var(--text-secondary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.advice__sum[b-eh941wvgi4] {
    text-align: right;
    font-variant-numeric: tabular-nums;
    font-weight: 600;
    color: var(--text-primary);
}

.advice__booked[b-eh941wvgi4] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-1);
    font-size: 0.85rem;
    color: var(--text-secondary);
}

.advice__booked--complete[b-eh941wvgi4] {
    color: var(--status-success);
    font-weight: 600;
}

.advice__actions[b-eh941wvgi4] {
    display: inline-flex;
    gap: var(--dp-space-2);
}

.advice__action[b-eh941wvgi4] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
    border: 1px solid var(--border-default);
    background: transparent;
    border-radius: var(--dp-radius-2);
    padding: var(--dp-space-1) var(--dp-space-2);
    font-size: 0.8rem;
    color: var(--text-primary);
    cursor: pointer;
}

.advice__action:hover[b-eh941wvgi4] {
    border-color: var(--accent);
    color: var(--accent);
}

.advice__items[b-eh941wvgi4] {
    border-top: 1px solid var(--border-default);
    background: var(--surface-secondary);
    padding: var(--dp-space-2) var(--dp-space-4) var(--dp-space-3);
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.advice-item[b-eh941wvgi4] {
    display: grid;
    grid-template-columns: 140px 1fr 120px 150px;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-2) 0;
    padding-left: calc(24px + var(--dp-space-3));
}

.advice-item:not(:last-child)[b-eh941wvgi4] {
    border-bottom: 1px solid var(--border-default);
}

.advice-item__amount[b-eh941wvgi4] {
    text-align: right;
    font-variant-numeric: tabular-nums;
    color: var(--text-primary);
}
/* _content/FRP.Web/Components/Pages/Billing/PaymentAdviceDetail.razor.rz.scp.css */
/* ==========================================================================
   PaymentAdviceDetail — Zahlungsavise Detail
   Design-token-basierte Styles. Kein Bootstrap, keine hardcoded Werte.
   ========================================================================== */

/* ── Summen-Banner ─────────────────────────────────────────────────────── */

.avise-amount-banner[b-or54hs61sa] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
    padding: var(--dp-space-4) var(--dp-space-5);
    border-radius: var(--dp-radius-6);
    border: 1.5px solid;
    margin-bottom: var(--dp-space-4);
    flex-wrap: wrap;
}

.avise-amount-banner--match[b-or54hs61sa] {
    background: color-mix(in srgb, var(--status-success) 8%, transparent);
    border-color: color-mix(in srgb, var(--status-success) 30%, transparent);
    color: var(--status-success-dark, var(--status-success));
}

.avise-amount-banner--mismatch[b-or54hs61sa] {
    background: color-mix(in srgb, var(--status-danger) 8%, transparent);
    border-color: color-mix(in srgb, var(--status-danger) 30%, transparent);
    color: var(--status-danger-dark, var(--status-danger));
}

.avise-amount-banner__icon[b-or54hs61sa] {
    font-size: var(--text-xl);
    flex-shrink: 0;
}

.avise-amount-banner__body[b-or54hs61sa] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.avise-amount-banner__label[b-or54hs61sa] {
    font-size: var(--text-xs);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    opacity: 0.75;
    font-weight: var(--font-medium);
}

.avise-amount-banner__value[b-or54hs61sa] {
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    font-variant-numeric: tabular-nums;
}

.avise-amount-banner__sep[b-or54hs61sa] {
    width: 1px;
    height: 2.5rem;
    background: currentColor;
    opacity: 0.2;
    flex-shrink: 0;
}

.avise-amount-banner__hint[b-or54hs61sa] {
    margin-left: auto;
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    opacity: 0.85;
}

/* ── Mögliche Dublette ──────────────────────────────────────────────────── */

.avise-dup-warning[b-or54hs61sa] {
    display: flex;
    align-items: flex-start;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3) var(--dp-space-4);
    background: color-mix(in srgb, var(--status-warning) 8%, transparent);
    border: 1px solid color-mix(in srgb, var(--status-warning) 30%, transparent);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-sm-plus);
    color: var(--text-primary);
    margin-bottom: var(--dp-space-4);
    line-height: 1.5;
}

/* ── Avise-Datum (manuell setzbar) ──────────────────────────────────────── */

.avise-date-edit[b-or54hs61sa] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--surface-secondary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-4);
    margin-bottom: var(--dp-space-4);
    flex-wrap: wrap;
}

.avise-date-edit__label[b-or54hs61sa] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    color: var(--text-secondary);
    margin: 0;
}

.avise-date-edit__hint[b-or54hs61sa] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
    font-size: var(--text-sm);
    color: var(--status-warning, var(--text-secondary));
}

/* ── Booking hint ───────────────────────────────────────────────────────── */

.avise-booking-hint[b-or54hs61sa] {
    display: flex;
    align-items: flex-start;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3) var(--dp-space-4);
    background: color-mix(in srgb, var(--accent) 6%, transparent);
    border: 1px solid color-mix(in srgb, var(--accent) 20%, transparent);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    margin-bottom: var(--dp-space-4);
    line-height: 1.5;
}

.avise-booking-hint strong[b-or54hs61sa] {
    color: var(--text-primary);
}

/* ── Split layout ───────────────────────────────────────────────────────── */

.avise-split[b-or54hs61sa] {
    display: grid;
    grid-template-columns: 1fr 420px;
    gap: var(--dp-space-5);
    min-height: 680px;
}

@media (max-width: 1100px) {
    .avise-split[b-or54hs61sa] {
        grid-template-columns: 1fr;
    }
}

/* ── PDF Pane ───────────────────────────────────────────────────────────── */

.avise-split__pdf[b-or54hs61sa] {
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    overflow: hidden;
    min-height: 600px;
    display: flex;
    flex-direction: column;
}

.avise-pdf-placeholder[b-or54hs61sa] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-3);
    color: var(--text-secondary);
    font-size: var(--text-sm-plus);
    padding: var(--dp-space-8);
}

.avise-pdf-placeholder--empty[b-or54hs61sa] {
    color: var(--text-muted);
    font-size: var(--text-md);
}

/* ── Items Pane ─────────────────────────────────────────────────────────── */

.avise-split__items[b-or54hs61sa] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
    overflow-y: auto;
    max-height: 100%;
}

.avise-items-header[b-or54hs61sa] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
    color: var(--text-primary);
    padding-bottom: var(--dp-space-2);
    border-bottom: 1px solid var(--dp-slate-100);
}

.avise-items-header__status[b-or54hs61sa] {
    margin-left: auto;
}

/* ── „Position hinzufügen"-Dialog ───────────────────────────────────────── */

.avise-add-item-form[b-or54hs61sa] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.avise-add-item-form__hint[b-or54hs61sa] {
    font-size: var(--text-sm);
    color: var(--text-secondary);
    line-height: 1.5;
    margin-bottom: var(--dp-space-2);
}

.avise-add-item-form__label[b-or54hs61sa] {
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    color: var(--text-secondary);
}

/* ── Item Cards ─────────────────────────────────────────────────────────── */

.avise-item-list[b-or54hs61sa] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
}

.avise-item[b-or54hs61sa] {
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    padding: var(--dp-space-4);
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
    border-left: 4px solid transparent;
}

.avise-item--success[b-or54hs61sa]  { border-left-color: var(--status-success); }
.avise-item--primary[b-or54hs61sa]  { border-left-color: var(--accent); }
.avise-item--warning[b-or54hs61sa]  { border-left-color: var(--status-warning); }
.avise-item--danger[b-or54hs61sa]   { border-left-color: var(--status-danger); }
.avise-item--booked[b-or54hs61sa]   { border-left-color: var(--dp-slate-400); opacity: 0.85; }
.avise-item--muted[b-or54hs61sa]    { opacity: 0.65; }

/* Item header row */
.avise-item__header[b-or54hs61sa] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    flex-wrap: wrap;
}

.avise-item__rechnr[b-or54hs61sa] {
    font-weight: var(--font-semibold);
    font-size: var(--text-sm-plus);
    color: var(--text-primary);
    flex: 1;
    min-width: 0;
}

.avise-item__normalized[b-or54hs61sa] {
    color: var(--text-secondary);
    font-weight: var(--font-normal);
    font-size: var(--text-xs);
    margin-left: var(--dp-space-1);
}

.avise-item__amount[b-or54hs61sa] {
    font-weight: var(--font-semibold);
    font-variant-numeric: tabular-nums;
    font-size: var(--text-sm-plus);
    color: var(--text-primary);
    flex-shrink: 0;
}

/* Position löschen (Papierkorb) */
.avise-item__delete[b-or54hs61sa] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    padding: 0;
    border: none;
    border-radius: var(--dp-radius-4);
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    transition: background-color .12s ease, color .12s ease;
}

.avise-item__delete:hover[b-or54hs61sa] {
    background: var(--surface-secondary);
    color: var(--status-danger);
}

/* Matched invoice */
.avise-item__matched[b-or54hs61sa] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

.avise-item__invoice-link[b-or54hs61sa] {
    color: var(--accent);
    text-decoration: none;
    font-weight: var(--font-medium);
}

.avise-item__invoice-link:hover[b-or54hs61sa] {
    text-decoration: underline;
}

.avise-item__recipient[b-or54hs61sa] {
    color: var(--text-muted);
    font-weight: var(--font-normal);
}

/* Payment reference */
.avise-item__payment[b-or54hs61sa] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-xs);
    color: var(--text-muted);
}

/* Note */
.avise-item__note[b-or54hs61sa] {
    display: flex;
    align-items: flex-start;
    gap: var(--dp-space-2);
    font-size: var(--text-xs);
    color: var(--text-muted);
    font-style: italic;
}

/* Manual assignment actions */
.avise-item__actions[b-or54hs61sa] {
    padding-top: var(--dp-space-2);
    border-top: 1px solid var(--dp-slate-100);
    margin-top: var(--dp-space-1);
}

.avise-item__assign-row[b-or54hs61sa] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    flex-wrap: wrap;
}

.avise-invoice-picker[b-or54hs61sa] {
    flex: 1;
    min-width: 200px;
}

/* Amount + action buttons row */
.avise-item__amount-row[b-or54hs61sa] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    flex-wrap: wrap;
    margin-top: var(--dp-space-2);
}

.avise-item__amount-label[b-or54hs61sa] {
    font-size: var(--text-xs);
    color: var(--text-muted);
    white-space: nowrap;
    font-weight: var(--font-medium);
    flex-shrink: 0;
}

.avise-amount-input[b-or54hs61sa] {
    width: 130px;
    flex-shrink: 0;
}

/* ── Item chip-filter row ───────────────────────────────────────────────── */

.avise-item-chips[b-or54hs61sa] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-2);
    padding-bottom: var(--dp-space-3);
    border-bottom: 1px solid var(--dp-slate-100);
}

/* Empty-group hint */
.avise-filter-empty[b-or54hs61sa] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-5) var(--dp-space-4);
    color: var(--text-muted);
    font-size: var(--text-sm-plus);
    font-style: italic;
}

/* ── Blocking busy overlay ──────────────────────────────────────────────── */

.avise-busy-backdrop[b-or54hs61sa] {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(0, 0, 0, 0.35);
    display: flex;
    align-items: center;
    justify-content: center;
    /* Capture all pointer events so nothing behind is clickable */
    pointer-events: all;
}

.avise-busy-card[b-or54hs61sa] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-8);
    padding: var(--dp-space-8) var(--dp-space-10);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-5);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.18);
    min-width: 220px;
}

.avise-busy-card__message[b-or54hs61sa] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--text-primary);
    text-align: center;
}
/* _content/FRP.Web/Components/Pages/Billing/PaymentAdviceExplorer.razor.rz.scp.css */
.explorer-bulkbar[b-yf9lj985fv] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
    padding: var(--dp-space-3) var(--dp-space-4);
    margin-bottom: var(--dp-space-4);
    background: rgba(var(--accent-rgb), 0.06);
    border: 1px solid var(--accent);
    border-radius: var(--dp-radius-6);
}

.grid-header[b-yf9lj985fv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: var(--dp-space-3);
}
/* _content/FRP.Web/Components/Pages/Billing/PaymentAdvices.razor.rz.scp.css */
/* ==========================================================================
   PaymentAdvices — Zahlungsavise Posteingang
   Nur design-token-basierte Styles. Kein Bootstrap, keine hardcoded Werte.
   ========================================================================== */

/* Upload Card */
.card-header-content[b-39j5cqpiyq] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
}

.upload-area[b-39j5cqpiyq] {
    padding: var(--dp-space-4);
}

.upload-hint[b-39j5cqpiyq] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    margin-top: var(--dp-space-3);
    color: var(--text-secondary);
    font-size: var(--text-sm-plus);
}

.upload-actions[b-39j5cqpiyq] {
    margin-top: var(--dp-space-4);
    display: flex;
    justify-content: flex-end;
}

/* Upload Progress */
.upload-progress[b-39j5cqpiyq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-6) var(--dp-space-4);
}

.upload-progress__text[b-39j5cqpiyq] {
    color: var(--text-secondary);
    font-size: var(--text-sm-plus);
    text-align: center;
    margin: 0;
}

/* Grid wrapper */
.grid-card[b-39j5cqpiyq] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    border: 1px solid var(--dp-slate-200);
    overflow: hidden;
}

.grid-header[b-39j5cqpiyq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--dp-space-4) var(--dp-space-5);
    border-bottom: 1px solid var(--dp-slate-100);
}

.grid-result-count[b-39j5cqpiyq] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    color: var(--text-secondary);
    font-size: var(--text-sm-plus);
}

/* Booked ratio cell */
.booked-ratio[b-39j5cqpiyq] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    font-variant-numeric: tabular-nums;
}

.booked-ratio--complete[b-39j5cqpiyq] {
    color: var(--status-success);
    font-weight: var(--font-semibold);
}

/* Open link in action column */
.open-link[b-39j5cqpiyq] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
    color: var(--accent);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    text-decoration: none;
    transition: color 0.15s ease;
}

.open-link:hover[b-39j5cqpiyq] {
    color: var(--accent-dark, var(--accent));
    text-decoration: underline;
}

/* Trash button in delete column */
.delete-row-btn[b-39j5cqpiyq] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-3);
    cursor: pointer;
    color: var(--status-danger, var(--color-danger));
    transition: background 0.15s ease, color 0.15s ease;
}

.delete-row-btn:hover[b-39j5cqpiyq] {
    background: color-mix(in srgb, var(--status-danger, var(--color-danger)) 12%, transparent);
}
/* _content/FRP.Web/Components/Pages/CareOptimization/Index.razor.rz.scp.css */
/* ===========================
   CARE OPTIMIZATION PAGE
   Hero kommt aus UiPageShell. Body aus .page-body.
   =========================== */

.care-content[b-rfjq2jt4cp] {
    /* body-spezifische Overrides (falls nötig) */
}

/* Loading */
.loading-overlay[b-rfjq2jt4cp] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    padding: 4rem;
    color: var(--text-secondary, #6b7280);
}

.loading-spinner[b-rfjq2jt4cp] {
    width: 40px;
    height: 40px;
    border: 3px solid #e5e7eb;
    border-top-color: #6366f1;
    border-radius: 50%;
    animation: spin-b-rfjq2jt4cp 0.8s linear infinite;
}

@keyframes spin-b-rfjq2jt4cp {
    to { transform: rotate(360deg); }
}

/* Stats/Filter kommen aus _page-patterns.css */

/* Grid Section */
.grid-section[b-rfjq2jt4cp] {
    margin-bottom: 2rem;
}

.grid-card[b-rfjq2jt4cp] {
    background: white;
    border-radius: 16px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    border: 1px solid var(--border-color, #e5e7eb);
    overflow: hidden;
}

.grid-header[b-rfjq2jt4cp] {
    padding: 1rem 1.5rem;
    border-bottom: 1px solid var(--border-color, #e5e7eb);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.grid-result-count[b-rfjq2jt4cp] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--text-secondary, #6b7280);
}

.grid-body[b-rfjq2jt4cp] {
    padding: 0;
}

/* Guest link */
.guest-link[b-rfjq2jt4cp] {
    color: #6366f1;
    text-decoration: none;
    font-weight: 500;
    cursor: pointer;
}

.guest-link:hover[b-rfjq2jt4cp] {
    color: #4f46e5;
    text-decoration: underline;
}

/* PG Badges */
.pg-badge[b-rfjq2jt4cp] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    min-width: 40px;
}

.pg-1[b-rfjq2jt4cp] { background: #f3f4f6; color: #6b7280; }
.pg-2[b-rfjq2jt4cp] { background: #dbeafe; color: #2563eb; }
.pg-3[b-rfjq2jt4cp] { background: #fef3c7; color: #d97706; }
.pg-4[b-rfjq2jt4cp] { background: #fed7aa; color: #c2410c; }
.pg-5[b-rfjq2jt4cp] { background: #fecaca; color: #dc2626; }
.pg-none[b-rfjq2jt4cp] { background: #f3f4f6; color: #9ca3af; }

/* Utilization bar */
.utilization-cell[b-rfjq2jt4cp] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.utilization-bar[b-rfjq2jt4cp] {
    flex: 1;
    height: 8px;
    background: #f3f4f6;
    border-radius: 4px;
    overflow: hidden;
}

.utilization-fill[b-rfjq2jt4cp] {
    height: 100%;
    border-radius: 4px;
    transition: width 0.5s ease;
}

.utilization-optimal .utilization-fill[b-rfjq2jt4cp],
.utilization-fill.utilization-optimal[b-rfjq2jt4cp] { background: #22c55e; }
.utilization-good .utilization-fill[b-rfjq2jt4cp],
.utilization-fill.utilization-good[b-rfjq2jt4cp] { background: #3b82f6; }
.utilization-medium .utilization-fill[b-rfjq2jt4cp],
.utilization-fill.utilization-medium[b-rfjq2jt4cp] { background: #f59e0b; }
.utilization-low .utilization-fill[b-rfjq2jt4cp],
.utilization-fill.utilization-low[b-rfjq2jt4cp] { background: #ef4444; }

.utilization-text[b-rfjq2jt4cp] {
    font-size: 0.75rem;
    font-weight: 600;
    min-width: 42px;
    text-align: right;
}

.utilization-text.utilization-optimal[b-rfjq2jt4cp] { color: #22c55e; }
.utilization-text.utilization-good[b-rfjq2jt4cp] { color: #3b82f6; }
.utilization-text.utilization-medium[b-rfjq2jt4cp] { color: #d97706; }
.utilization-text.utilization-low[b-rfjq2jt4cp] { color: #ef4444; }

/* Potential */
.potential-positive[b-rfjq2jt4cp] {
    color: #22c55e;
    font-weight: 600;
    font-size: 0.85rem;
}

.potential-zero[b-rfjq2jt4cp] {
    color: #9ca3af;
    font-size: 0.85rem;
}

/* Private patient badges */
.kasse-cell[b-rfjq2jt4cp] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.badge-fully-private[b-rfjq2jt4cp] {
    display: inline-flex;
    align-items: center;
    padding: 0.15rem 0.5rem;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
    background: #fef2f2;
    color: #dc2626;
    border: 1px solid #fecaca;
}

.badge-45b-private[b-rfjq2jt4cp] {
    display: inline-flex;
    align-items: center;
    padding: 0.1rem 0.4rem;
    border-radius: 3px;
    font-size: 0.65rem;
    font-weight: 600;
    background: #fef3c7;
    color: #92400e;
    border: 1px solid #fde68a;
}

.badge-45b-all-private[b-rfjq2jt4cp] {
    display: inline-flex;
    align-items: center;
    padding: 0.1rem 0.4rem;
    border-radius: 3px;
    font-size: 0.7rem;
    font-weight: 600;
    background: #fef2f2;
    color: #dc2626;
}

.private-amount-sm[b-rfjq2jt4cp] {
    font-size: 0.75rem;
    color: #6b7280;
    margin-left: 0.375rem;
}

/* Private amount */
.private-amount[b-rfjq2jt4cp] {
    color: #ef4444;
    font-weight: 600;
}

/* Text helpers */
.text-muted[b-rfjq2jt4cp] {
    color: #9ca3af;
}

.no-budget-hint[b-rfjq2jt4cp] {
    font-size: 0.75rem;
    font-style: italic;
}

/* Responsive (Stats/Filter aus _page-patterns.css) */
/* _content/FRP.Web/Components/Pages/CheckIns/TagescheckDialog.razor.rz.scp.css */
.tc-summary[b-5xcbd9hkzc] {
    font-size: var(--text-sm);
    color: var(--text-tertiary);
    margin-bottom: var(--dp-space-3);
}

.tc-empty[b-5xcbd9hkzc] {
    padding: var(--dp-space-4);
    text-align: center;
    color: var(--text-tertiary);
}

.tc-rows[b-5xcbd9hkzc] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
    max-height: 60vh;
    overflow-y: auto;
}

.tc-row[b-5xcbd9hkzc] {
    display: flex;
    align-items: flex-start;
    gap: var(--dp-space-3);
    padding: var(--dp-space-2) var(--dp-space-3);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-md);
}

.tc-row--flagged[b-5xcbd9hkzc] {
    background: rgba(var(--status-warning-rgb), .08);
    border-color: rgba(var(--status-warning-rgb), .35);
}

.tc-check[b-5xcbd9hkzc] { padding-top: 2px; }
.tc-main[b-5xcbd9hkzc] { flex: 1; }

.tc-name-line[b-5xcbd9hkzc] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.tc-name[b-5xcbd9hkzc] { font-weight: 600; color: var(--text-primary); }
.tc-sym[b-5xcbd9hkzc] { color: var(--text-tertiary); }

.tc-group[b-5xcbd9hkzc] {
    font-size: var(--text-sm);
    color: #fff;
    padding: 0 var(--dp-space-2);
    border-radius: var(--dp-radius-full);
}

.tc-pg[b-5xcbd9hkzc] { font-size: var(--text-sm); color: var(--text-tertiary); }

.tc-flags[b-5xcbd9hkzc] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--dp-space-2);
    margin-top: var(--dp-space-1);
}

.tc-flag[b-5xcbd9hkzc] {
    font-size: var(--text-sm);
    color: var(--status-warning);
    font-weight: 500;
}

.tc-flag--cap[b-5xcbd9hkzc] { color: var(--status-danger); }

.tc-transport[b-5xcbd9hkzc] { color: var(--text-tertiary); }
/* _content/FRP.Web/Components/Pages/CheckIns/WeeklyCalendar.razor.rz.scp.css */
/* ==========================================================================
   Wochen-Check-In — modernes, token-basiertes Layout
   ========================================================================== */

/* ----- Header-Bereich (Actions-Slot) ----- */
.week-navigation[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.week-display[b-962k6cyirw] {
    min-width: 150px;
    text-align: center;
    font-size: var(--text-md);
    font-weight: 600;
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}

/* ==========================================================================
   KPI- + Sortier-Leiste
   ========================================================================== */

.ci-toolbar[b-962k6cyirw] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--dp-space-4);
    flex-wrap: wrap;
    margin-bottom: var(--dp-space-5);
}

.ci-kpis[b-962k6cyirw] {
    display: flex;
    gap: var(--dp-space-3);
    flex-wrap: wrap;
}

.ci-kpi[b-962k6cyirw] {
    --kpi: var(--accent);
    --kpi-rgb: var(--accent-rgb);
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
    min-width: 160px;
}

.ci-kpi__icon[b-962k6cyirw] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: var(--dp-radius-4);
    background: rgba(var(--kpi-rgb), 0.12);
    color: var(--kpi);
    font-size: 20px;
    flex-shrink: 0;
}

.ci-kpi__data[b-962k6cyirw] {
    display: flex;
    flex-direction: column;
}

.ci-kpi__value[b-962k6cyirw] {
    font-size: var(--text-2xl);
    font-weight: 700;
    line-height: 1.1;
    color: var(--text-primary);
    letter-spacing: -0.02em;
    font-variant-numeric: tabular-nums;
}

.ci-kpi__unit[b-962k6cyirw] {
    font-size: var(--text-lg);
    color: var(--text-tertiary);
    margin-left: 1px;
}

.ci-kpi__label[b-962k6cyirw] {
    font-size: var(--text-sm-plus);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--text-tertiary);
    font-weight: 500;
}

.ci-kpi--accent[b-962k6cyirw]  { --kpi: var(--accent);         --kpi-rgb: var(--accent-rgb); }
.ci-kpi--success[b-962k6cyirw] { --kpi: var(--status-success); --kpi-rgb: var(--status-success-rgb); }
.ci-kpi--info[b-962k6cyirw]    { --kpi: var(--status-info);    --kpi-rgb: var(--status-info-rgb); }

.ci-toolbar__sort[b-962k6cyirw] {
    display: flex;
    align-items: center;
}

/* ==========================================================================
   Lade-/Fehlerzustand
   ========================================================================== */

.ci-loading[b-962k6cyirw] {
    display: flex;
    justify-content: center;
    padding: var(--dp-space-8);
}

.ci-error[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-4) var(--dp-space-5);
    border-radius: var(--dp-radius-6);
    border: 1px solid rgba(var(--status-warning-rgb), 0.3);
    background: rgba(var(--status-warning-rgb), 0.1);
    color: #92400e;
    font-weight: 500;
}

.ci-error :deep(svg)[b-962k6cyirw] { font-size: 20px; }

/* ==========================================================================
   Wochenraster
   ========================================================================== */

.calendar-grid[b-962k6cyirw] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: var(--dp-space-4);
    align-items: start;
}

.day-column[b-962k6cyirw] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

/* ----- Tag-Kopf ----- */
.day-header[b-962k6cyirw] {
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6) var(--dp-radius-6) 0 0;
    border-bottom: none;
    padding: var(--dp-space-3) var(--dp-space-4);
}

.day-header__top[b-962k6cyirw] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: var(--dp-space-2);
}

.day-info[b-962k6cyirw] {
    display: flex;
    align-items: baseline;
    gap: var(--dp-space-2);
}

.day-name[b-962k6cyirw] {
    font-size: var(--text-md);
    font-weight: 700;
    color: var(--text-primary);
}

.day-date[b-962k6cyirw] {
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
    font-variant-numeric: tabular-nums;
}

.day-add-btn[b-962k6cyirw] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-4);
    background: var(--surface-primary);
    color: var(--accent);
    cursor: pointer;
    font-size: 16px;
    transition: all var(--transition-fast);
}

.day-add-btn:hover[b-962k6cyirw] {
    background: var(--accent-light);
    border-color: var(--accent);
}

/* ----- Kapazität ----- */
.day-capacity[b-962k6cyirw] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.day-capacity__bar[b-962k6cyirw] {
    height: 8px;
    border-radius: var(--dp-radius-full);
    background: var(--dp-slate-200);
    overflow: hidden;
}

.day-capacity__fill[b-962k6cyirw] {
    display: block;
    height: 100%;
    border-radius: var(--dp-radius-full);
    background: var(--status-success);
    transition: width 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}

.day-capacity__fill.is-full[b-962k6cyirw] { background: var(--status-danger); }

.day-capacity__meta[b-962k6cyirw] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.day-capacity__count[b-962k6cyirw] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
    font-size: var(--text-sm-plus);
    font-weight: 600;
    color: var(--text-secondary);
    font-variant-numeric: tabular-nums;
}

.day-capacity__count.is-full[b-962k6cyirw] { color: var(--status-danger); }

.day-capacity__total[b-962k6cyirw] {
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
}

/* ----- Karten-Container ----- */
.ci-cards[b-962k6cyirw] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3);
    background: var(--dp-slate-50);
    border: 1px solid var(--dp-slate-200);
    border-top: none;
    border-radius: 0 0 var(--dp-radius-6) var(--dp-radius-6);
    min-height: 120px;
}

/* ==========================================================================
   Check-In-Karte (umbenannt von .guest-card → keine Kollision mit Profil)
   Linker Rand = Status, Gruppe als farbiger Chip.
   ========================================================================== */

.ci-card[b-962k6cyirw] {
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-left: 5px solid var(--accent);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-2) var(--dp-space-3);
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
    box-shadow: var(--shadow-sm);
    transition: box-shadow var(--transition-fast), transform var(--transition-fast);
}

.ci-card:hover[b-962k6cyirw] {
    box-shadow: var(--shadow-md);
    transform: translateY(-1px);
}

/* ==========================================================================
   Zustands-Design: „Planung = Umriss, Realität = gefüllt"
   ========================================================================== */

/* Offen (nicht eingecheckt) — gestrichelter Rahmen, heller Look */
.ci-card.is-open[b-962k6cyirw] {
    border-style: dashed;
    border-left-style: solid;
}

.ci-card.is-open.planned[b-962k6cyirw]        { border-left-color: var(--accent); background: rgba(var(--accent-rgb), 0.02); }
.ci-card.is-open.absent[b-962k6cyirw]         { border-left-color: var(--status-danger); background: rgba(var(--status-danger-rgb), 0.04); }
.ci-card.is-open.planned-absent[b-962k6cyirw] { border-left-color: var(--status-warning); background: rgba(var(--status-warning-rgb), 0.05); opacity: 0.9; }

/* Eingecheckt (Fakt) — kompakte, solide Karte mit zwei FESTEN Zeilen:
   oben Badge | Name | Symbole, unten Chips | Aktionen. Nichts rutscht. */
.ci-card.is-done[b-962k6cyirw] {
    gap: var(--dp-space-1);
    padding: var(--dp-space-1) var(--dp-space-2) var(--dp-space-1) var(--dp-space-3);
}

.ci-done__top[b-962k6cyirw],
.ci-done__bottom[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    min-width: 0;
}

.ci-done__bottom[b-962k6cyirw] { min-height: 24px; }

.ci-done__top .ci-card__name[b-962k6cyirw] {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ci-done__bottom .ci-group-chip[b-962k6cyirw] { flex-shrink: 0; }

.ci-card.is-done.checked-in[b-962k6cyirw] {
    border-left-color: var(--status-success);
    border-color: rgba(var(--status-success-rgb), 0.35);
    background: rgba(var(--status-success-rgb), 0.14);
}

/* Eingecheckt, aber abwesend dokumentiert */
.ci-card.is-done.deviation-spontaneous[b-962k6cyirw] {
    border-left-color: var(--status-danger);
    border-color: rgba(var(--status-danger-rgb), 0.25);
    background: rgba(var(--status-danger-rgb), 0.07);
    opacity: 0.9;
}

.ci-card.is-done.deviation-planned[b-962k6cyirw] {
    border-left-color: var(--dp-slate-400);
    border-color: var(--dp-slate-200);
    background: var(--dp-slate-100);
    opacity: 0.85;
}

/* Status-Badge in der Fakt-Zeile: ✓ + Uhrzeit bzw. ✗ */
.ci-done__badge[b-962k6cyirw] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
    font-size: var(--text-sm-plus);
    font-weight: 700;
    color: var(--status-success);
}

.ci-done__badge :deep(svg)[b-962k6cyirw] { font-size: 16px; }

.ci-card.deviation-spontaneous .ci-done__badge[b-962k6cyirw] { color: var(--status-danger); }
.ci-card.deviation-planned .ci-done__badge[b-962k6cyirw]     { color: var(--text-tertiary); }

.ci-done__time[b-962k6cyirw] { font-variant-numeric: tabular-nums; }

.ci-done__actions[b-962k6cyirw] {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    margin-left: auto;
}

.ci-icon-btn.checkout:hover[b-962k6cyirw] {
    background: rgba(var(--status-danger-rgb), 0.1);
    color: var(--status-danger);
}

/* ----- Fahrten-Chip: Richtung + Plan/Ist/Abweichung ----- */
.ci-trip[b-962k6cyirw] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 1px var(--dp-space-2);
    border: 1px solid transparent;
    border-radius: var(--dp-radius-full);
    font-size: var(--text-sm-plus);
    font-weight: 700;
    line-height: 1.5;
    flex-shrink: 0;
    white-space: nowrap;
}

.ci-trip :deep(svg)[b-962k6cyirw] { font-size: 13px; }

.ci-trip__arrow[b-962k6cyirw] { font-weight: 800; }

.ci-trip__plan[b-962k6cyirw] {
    font-weight: 600;
    font-size: 0.9em;
    opacity: 0.85;
}

/* Geplant: grau, gestrichelt (noch nicht gefahren) */
.ci-trip--planned[b-962k6cyirw] {
    background: var(--dp-slate-100);
    border-style: dashed;
    border-color: var(--dp-slate-400);
    color: var(--text-secondary);
}

/* Gefahren wie geplant: grün gefüllt */
.ci-trip--actual[b-962k6cyirw] {
    background: rgba(var(--status-success-rgb), 0.15);
    color: var(--status-success);
}

/* Abweichung Ist vs. Plan (z. B. 2 Fahrten statt 1): Amber */
.ci-trip--deviation[b-962k6cyirw] {
    background: rgba(var(--status-warning-rgb), 0.18);
    border-color: rgba(var(--status-warning-rgb), 0.55);
    color: #92400e;
}

.ci-card__head[b-962k6cyirw] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--dp-space-2);
}

.ci-card__id[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1) var(--dp-space-2);
    flex-wrap: wrap;
    min-width: 0;
}

.ci-card__name[b-962k6cyirw] {
    font-size: var(--text-md);
    font-weight: 600;
    color: var(--text-primary);
    line-height: 1.25;
}

.ci-card__sym[b-962k6cyirw] { font-size: 14px; flex-shrink: 0; }
.ci-card__sym--info[b-962k6cyirw] { color: var(--status-info); }
.ci-card__sym--warn[b-962k6cyirw] { color: var(--status-warning); }

.ci-icon-btn[b-962k6cyirw] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border: none;
    border-radius: var(--dp-radius-4);
    background: transparent;
    color: var(--text-tertiary);
    cursor: pointer;
    font-size: 14px;
    flex-shrink: 0;
    transition: all var(--transition-fast);
}

.ci-icon-btn:hover[b-962k6cyirw] {
    background: var(--dp-slate-100);
    color: var(--accent);
}

.ci-card__age[b-962k6cyirw] {
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
    font-variant-numeric: tabular-nums;
}

.ci-group-chip[b-962k6cyirw] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 var(--dp-space-2);
    border-radius: var(--dp-radius-full);
    color: #fff;
    font-size: var(--text-sm-plus);
    font-weight: 700;
    line-height: 1;
}

/* ----- Status- + Aktions-Buttons ----- */
.ci-card__actions[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.ci-status-btns[b-962k6cyirw] {
    display: flex;
    gap: var(--dp-space-1);
    flex-shrink: 0;
}

.ci-status-btn[b-962k6cyirw] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 1.5px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-4);
    background: var(--surface-primary);
    color: var(--text-tertiary);
    cursor: pointer;
    font-size: 15px;
    transition: all var(--transition-fast);
}

.ci-status-btn:disabled[b-962k6cyirw] { opacity: 0.5; cursor: not-allowed; }

/* Farbcodierte Bedeutung – auch im Ruhezustand sichtbar */
.ci-status-btn.present[b-962k6cyirw]        { color: var(--status-success); border-color: rgba(var(--status-success-rgb), 0.45); }
.ci-status-btn.absent[b-962k6cyirw]         { color: var(--status-danger);  border-color: rgba(var(--status-danger-rgb), 0.45); }
.ci-status-btn.planned-absent[b-962k6cyirw] { color: var(--status-warning); border-color: rgba(var(--status-warning-rgb), 0.45); }

.ci-status-btn.present:hover:not(:disabled)[b-962k6cyirw]        { background: rgba(var(--status-success-rgb), 0.12); }
.ci-status-btn.absent:hover:not(:disabled)[b-962k6cyirw]         { background: rgba(var(--status-danger-rgb), 0.12); }
.ci-status-btn.planned-absent:hover:not(:disabled)[b-962k6cyirw] { background: rgba(var(--status-warning-rgb), 0.12); }

/* Ausgewählt – voll gefüllt */
.ci-status-btn.present.selected[b-962k6cyirw] {
    background: var(--status-success);
    border-color: var(--status-success);
    color: #fff;
}

.ci-status-btn.absent.selected[b-962k6cyirw] {
    background: var(--status-danger);
    border-color: var(--status-danger);
    color: #fff;
}

.ci-status-btn.planned-absent.selected[b-962k6cyirw] {
    background: var(--status-warning);
    border-color: var(--status-warning);
    color: #fff;
}

.ci-action-btn[b-962k6cyirw] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-1);
    flex: 1;
    height: 28px;
    padding: 0 var(--dp-space-2);
    border: 1px solid transparent;
    border-radius: var(--dp-radius-4);
    font-size: var(--text-sm-plus);
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
    transition: all var(--transition-fast);
}

.ci-action-btn.checkin[b-962k6cyirw] {
    background: var(--status-success);
    color: #fff;
}

.ci-action-btn.checkin:hover:not(.disabled)[b-962k6cyirw] { filter: brightness(0.95); }

.ci-action-btn.checkin.disabled[b-962k6cyirw],
.ci-action-btn.checkin:disabled[b-962k6cyirw] {
    background: var(--dp-slate-100);
    color: var(--text-tertiary);
    cursor: not-allowed;
}

.ci-action-btn.checkout[b-962k6cyirw] {
    background: var(--surface-primary);
    border-color: var(--status-danger);
    color: var(--status-danger);
}

.ci-action-btn.checkout:hover[b-962k6cyirw] {
    background: rgba(var(--status-danger-rgb), 0.08);
}

/* ----- Leerer Tag ----- */
.ci-empty-day[b-962k6cyirw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-6) var(--dp-space-3);
    color: var(--text-tertiary);
    font-size: var(--text-sm-plus);
    text-align: center;
}

.ci-empty-day :deep(svg)[b-962k6cyirw] { font-size: 24px; opacity: 0.6; }

/* ==========================================================================
   Gruppen-Legende
   ========================================================================== */

.ci-legend[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
    flex-wrap: wrap;
    margin-top: var(--dp-space-5);
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
}

.ci-legend__head[b-962k6cyirw] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-sm-plus);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-secondary);
}

.ci-legend__head :deep(svg)[b-962k6cyirw] { color: var(--accent); font-size: 16px; }

.ci-legend__items[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    flex-wrap: wrap;
}

.ci-legend__item[b-962k6cyirw] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.ci-legend__dot[b-962k6cyirw] {
    width: 14px;
    height: 14px;
    border-radius: var(--dp-radius-full);
}

.ci-legend__text[b-962k6cyirw] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

.ci-legend__empty[b-962k6cyirw] {
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
}

/* ==========================================================================
   Dialoge (Schnell-Check-In, Details, Spontaner Gast)
   ========================================================================== */

.ci-dialog__title[b-962k6cyirw] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-weight: 600;
}

.ci-dialog[b-962k6cyirw] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
    padding: var(--dp-space-1) 0;
}

.ci-dialog__summary[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    flex-wrap: wrap;
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-4);
}

.ci-dialog__summary strong[b-962k6cyirw] {
    font-size: var(--text-lg);
    color: var(--text-primary);
}

.ci-dialog__sub[b-962k6cyirw] {
    font-size: var(--text-md);
    color: var(--text-tertiary);
}

.ci-dialog__section[b-962k6cyirw] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.ci-dialog__label[b-962k6cyirw] {
    font-size: var(--text-sm-plus);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--text-tertiary);
}

.ci-dialog__check[b-962k6cyirw] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-md);
    color: var(--text-primary);
    cursor: pointer;
}

.ci-dialog__check input[b-962k6cyirw] { width: 16px; height: 16px; accent-color: var(--accent); }

.ci-dialog__hint[b-962k6cyirw] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
    font-size: var(--text-sm-plus);
    color: var(--status-info);
}

.ci-dialog__footer[b-962k6cyirw] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: var(--dp-space-2);
    width: 100%;
}

/* Token-basierte Eingabefelder */
.ci-input[b-962k6cyirw] {
    width: 100%;
    padding: var(--dp-space-2) var(--dp-space-3);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-4);
    background: var(--surface-primary);
    color: var(--text-primary);
    font-size: var(--text-md);
    font-family: inherit;
    transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.ci-input:focus[b-962k6cyirw] {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 3px var(--accent-light);
}

textarea.ci-input[b-962k6cyirw] { resize: vertical; }

/* Moderne Transport-Toggles (Icon + Label) */
.ci-toggle-group[b-962k6cyirw] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--dp-space-2);
}

.ci-toggle[b-962k6cyirw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-1);
    padding: var(--dp-space-2) var(--dp-space-1);
    border: 1.5px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-4);
    background: var(--surface-primary);
    color: var(--text-secondary);
    cursor: pointer;
    font-size: var(--text-sm-plus);
    font-weight: 500;
    transition: all var(--transition-fast);
}

.ci-toggle :deep(svg)[b-962k6cyirw] { font-size: 20px; }

.ci-toggle:hover[b-962k6cyirw] {
    border-color: var(--dp-slate-400);
    background: var(--dp-slate-50);
}

.ci-toggle.is-active[b-962k6cyirw] {
    border-color: var(--accent);
    background: var(--accent-light);
    color: var(--dp-blue-800);
    font-weight: 600;
}

/* Pille im Dialog-Kopf */
.ci-pill[b-962k6cyirw] {
    display: inline-flex;
    align-items: center;
    padding: var(--dp-space-1) var(--dp-space-3);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-sm-plus);
    font-weight: 600;
    margin-left: auto;
}

.ci-pill--success[b-962k6cyirw] {
    background: rgba(var(--status-success-rgb), 0.12);
    color: var(--status-success);
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 1300px) {
    .calendar-grid[b-962k6cyirw] { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 900px) {
    .calendar-grid[b-962k6cyirw] { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 600px) {
    .calendar-grid[b-962k6cyirw] { grid-template-columns: 1fr; }
    .ci-kpi[b-962k6cyirw] { flex: 1; min-width: 130px; }
}

@media (prefers-reduced-motion: reduce) {
    .day-capacity__fill[b-962k6cyirw] { transition: none; }
    .ci-card[b-962k6cyirw] { transition: none; }
}
/* _content/FRP.Web/Components/Pages/Dashboard/Home.razor.rz.scp.css */
/* ==========================================================================
   Dashboard — ruhiges, modernes Operations-Layout
   Eine konsistente Card-Sprache, klare Sektionen, großzügiger Weißraum.
   Alle Werte aus dem UiKit-Token-System.
   ========================================================================== */

.dashboard[b-afsy5mht3c] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-6);
    /* Volle Breite nutzen statt der globalen 1400px-Begrenzung aus .page-body
       (auf großen Monitoren bleibt sonst links/rechts Platz ungenutzt). */
    max-width: none;
}

/* ----- Header: Zeitstempel im Actions-Slot ----- */
.dash-updated[b-afsy5mht3c] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
    font-variant-numeric: tabular-nums;
}

.dash-updated :deep(.dash-updated__icon)[b-afsy5mht3c] {
    font-size: 14px;
    opacity: 0.7;
}

/* ==========================================================================
   Sektionen
   ========================================================================== */

.dash-section[b-afsy5mht3c] {
    animation: dash-rise-b-afsy5mht3c 0.5s cubic-bezier(0.22, 1, 0.36, 1) backwards;
    animation-delay: calc(var(--i, 0) * 0.08s);
}

@keyframes dash-rise-b-afsy5mht3c {
    from { opacity: 0; transform: translateY(12px); }
    to   { opacity: 1; transform: translateY(0); }
}

.dash-section__head[b-afsy5mht3c] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    margin-bottom: var(--dp-space-4);
}

.dash-section__head :deep(.dash-section__icon)[b-afsy5mht3c] {
    font-size: 18px;
    color: var(--accent);
}

.dash-section__title[b-afsy5mht3c] {
    margin: 0;
    font-size: var(--text-sm-plus);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--text-secondary);
    white-space: nowrap;
}

.dash-section__rule[b-afsy5mht3c] {
    flex: 1;
    height: 1px;
    background: linear-gradient(to right, var(--dp-slate-200), transparent);
}

/* ==========================================================================
   KPI-Karten
   ========================================================================== */

.dash-kpi-grid[b-afsy5mht3c] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
    gap: var(--dp-space-4);
}

.dash-kpi[b-afsy5mht3c] {
    --kpi: var(--accent);
    --kpi-rgb: var(--accent-rgb);
    position: relative;
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
    padding: var(--dp-space-5);
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    transition: transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);
}

.dash-kpi:hover[b-afsy5mht3c] {
    transform: translateY(-3px);
    box-shadow: var(--shadow-md);
    border-color: rgba(var(--kpi-rgb), 0.35);
}

.dash-kpi__icon[b-afsy5mht3c] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: var(--dp-radius-4);
    background: rgba(var(--kpi-rgb), 0.12);
    color: var(--kpi);
    font-size: 22px;
}

.dash-kpi__value[b-afsy5mht3c] {
    font-size: var(--text-3xl);
    font-weight: 700;
    line-height: 1;
    color: var(--text-primary);
    letter-spacing: -0.03em;
    font-variant-numeric: tabular-nums;
}

.dash-kpi__sub[b-afsy5mht3c] {
    font-size: var(--text-lg);
    font-weight: 600;
    color: var(--text-tertiary);
    margin-left: 4px;
    letter-spacing: 0;
}

.dash-kpi__unit[b-afsy5mht3c] {
    font-size: var(--text-xl);
    font-weight: 600;
    color: var(--text-tertiary);
    margin-left: 1px;
}

.dash-kpi__label[b-afsy5mht3c] {
    font-size: var(--text-sm-plus);
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-tertiary);
}

.dash-kpi__bar[b-afsy5mht3c] {
    height: 5px;
    margin-top: var(--dp-space-1);
    border-radius: var(--dp-radius-full);
    background: var(--dp-slate-100);
    overflow: hidden;
}

.dash-kpi__bar > span[b-afsy5mht3c] {
    display: block;
    height: 100%;
    border-radius: var(--dp-radius-full);
    background: var(--kpi);
    transition: width 0.9s cubic-bezier(0.22, 1, 0.36, 1);
}

/* Akzentstreifen links als ruhiger Farbcode */
.dash-kpi[b-afsy5mht3c]::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: var(--kpi);
    opacity: 0.85;
}

.dash-kpi--accent[b-afsy5mht3c]  { --kpi: var(--accent);          --kpi-rgb: var(--accent-rgb); }
.dash-kpi--success[b-afsy5mht3c] { --kpi: var(--status-success);  --kpi-rgb: var(--status-success-rgb); }
.dash-kpi--danger[b-afsy5mht3c]  { --kpi: var(--status-danger);   --kpi-rgb: var(--status-danger-rgb); }
.dash-kpi--info[b-afsy5mht3c]    { --kpi: var(--status-info);     --kpi-rgb: var(--status-info-rgb); }
.dash-kpi--muted[b-afsy5mht3c]   { --kpi: var(--dp-slate-400);    --kpi-rgb: 148, 163, 184; }

/* ==========================================================================
   Charts — gemeinsame Card-Sprache
   ========================================================================== */

.dash-charts-grid[b-afsy5mht3c] {
    display: grid;
    grid-template-columns: 1.4fr 1fr;
    gap: var(--dp-space-5);
}

.dash-card[b-afsy5mht3c] {
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
    padding: var(--dp-space-5);
    transition: box-shadow var(--transition-fast);
}

.dash-card:hover[b-afsy5mht3c] {
    box-shadow: var(--shadow-md);
}

.dash-card__head[b-afsy5mht3c] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: var(--dp-space-3);
}

.dash-card__title[b-afsy5mht3c] {
    font-size: var(--text-lg);
    font-weight: 600;
    color: var(--text-primary);
}

.dash-card__kpi[b-afsy5mht3c] {
    display: inline-flex;
    align-items: center;
    padding: var(--dp-space-1) var(--dp-space-3);
    background: var(--accent-light);
    color: var(--dp-blue-800);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-sm-plus);
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}

.dash-card__placeholder[b-afsy5mht3c] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 280px;
    color: var(--text-tertiary);
    font-size: var(--text-md);
    text-align: center;
}

/* ==========================================================================
   Aufgaben-Grid
   ========================================================================== */

.dash-tasks-grid[b-afsy5mht3c] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--dp-space-5);
}

/* Count-Badge im Widget-Header */
.dash-count[b-afsy5mht3c] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    padding: 0 var(--dp-space-2);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-sm-plus);
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: #fff;
}

.dash-count--danger[b-afsy5mht3c]  { background: var(--status-danger); }
.dash-count--primary[b-afsy5mht3c] { background: var(--accent); }
.dash-count--warning[b-afsy5mht3c] { background: var(--status-warning); }
.dash-count--purple[b-afsy5mht3c]  { background: var(--dp-purple-500); }

/* ==========================================================================
   Fehler-Banner
   ========================================================================== */

.dash-banner[b-afsy5mht3c] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
    padding: var(--dp-space-4) var(--dp-space-5);
    border-radius: var(--dp-radius-6);
    border: 1px solid rgba(var(--status-danger-rgb), 0.25);
    background: rgba(var(--status-danger-rgb), 0.06);
}

.dash-banner__icon[b-afsy5mht3c] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: var(--dp-radius-4);
    background: var(--status-danger);
    color: #fff;
    flex-shrink: 0;
    font-size: 18px;
}

.dash-banner__text[b-afsy5mht3c] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.dash-banner__title[b-afsy5mht3c] {
    font-size: var(--text-md);
    font-weight: 600;
    color: var(--text-primary);
}

.dash-banner__sub[b-afsy5mht3c] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 1100px) {
    .dash-charts-grid[b-afsy5mht3c] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .dash-tasks-grid[b-afsy5mht3c] {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    .dash-section[b-afsy5mht3c] { animation: none; }
    .dash-kpi__bar > span[b-afsy5mht3c] { transition: none; }
}
/* _content/FRP.Web/Components/Pages/Employees/Employees.razor.rz.scp.css */
.page-container[b-7f49wkiz66] {
    padding: var(--dp-space-6);
    max-width: 100%;
}

.page-content[b-7f49wkiz66] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-md);
    padding: var(--dp-space-6);
}

/* Filter Grid */
.filter-grid[b-7f49wkiz66] {
    display: flex;
    gap: var(--dp-space-4);
    align-items: flex-end;
    flex-wrap: wrap;
    margin-bottom: var(--dp-space-6);
    padding: var(--dp-space-4);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-4);
    border: 1px solid var(--border-default);
}

.filter-item[b-7f49wkiz66] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
    min-width: 180px;
}

.filter-item.search-field[b-7f49wkiz66] {
    flex: 1;
    min-width: 250px;
}

.filter-item.filter-checkbox[b-7f49wkiz66] {
    justify-content: flex-end;
    padding-bottom: var(--dp-space-2);
}

.filter-label[b-7f49wkiz66] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
}

.loading-container[b-7f49wkiz66] {
    text-align: center;
    padding: var(--dp-space-12);
}

.grid-container[b-7f49wkiz66] {
    overflow: auto;
}

.employee-name-cell[b-7f49wkiz66] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.employee-name-cell .name[b-7f49wkiz66] {
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}

.employee-number[b-7f49wkiz66] {
    color: var(--text-secondary);
    background: var(--dp-slate-200);
    padding: 2px 6px;
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
}

.department-cell[b-7f49wkiz66] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.department-indicator[b-7f49wkiz66] {
    width: 12px;
    height: 12px;
    border-radius: var(--dp-radius-full);
    display: inline-block;
}

.vacation-days[b-7f49wkiz66] {
    font-weight: var(--font-semibold);
    color: var(--status-success);
}

.action-buttons[b-7f49wkiz66] {
    display: flex;
    gap: var(--dp-space-2);
    justify-content: center;
}

/* Icon-Only Button */
[b-7f49wkiz66] .btn-icon-only {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    padding: 0 !important;
    border-radius: var(--dp-radius-4) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

[b-7f49wkiz66] .btn-icon-only:hover {
    transform: scale(1.05);
}

[b-7f49wkiz66] .btn-icon-only i {
    font-size: 14px;
    margin: 0 !important;
}

.empty-state[b-7f49wkiz66] {
    text-align: center;
    padding: var(--dp-space-12) var(--dp-space-8);
    background: var(--surface-canvas);
    border-radius: var(--dp-radius-4);
    margin-top: var(--dp-space-8);
}

.empty-state .empty-icon[b-7f49wkiz66] {
    font-size: var(--text-4xl);
    color: var(--border-default);
    margin-bottom: var(--dp-space-4);
}

.empty-state h4[b-7f49wkiz66] {
    color: var(--text-secondary);
    margin-bottom: var(--dp-space-2);
}

.badge[b-7f49wkiz66] {
    font-size: var(--text-sm-plus);
    padding: 0.35em 0.65em;
}

/* Dialog Styling */
.dialog-header[b-7f49wkiz66] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
}

.dialog-form[b-7f49wkiz66] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
}

.form-row[b-7f49wkiz66] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-3);
}

.form-field[b-7f49wkiz66] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.form-field label[b-7f49wkiz66] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
}

.dialog-footer[b-7f49wkiz66] {
    display: flex;
    gap: var(--dp-space-2);
    justify-content: flex-end;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .page-container[b-7f49wkiz66] {
        padding: var(--dp-space-4);
    }

    .header-content[b-7f49wkiz66] {
        flex-direction: column;
        text-align: center;
        gap: var(--dp-space-6);
    }

    .header-left .page-title[b-7f49wkiz66] {
        font-size: var(--text-3xl);
    }

    .filters-section .row > div[b-7f49wkiz66] {
        margin-bottom: var(--dp-space-4);
    }

    .action-buttons[b-7f49wkiz66] {
        flex-wrap: wrap;
    }
}
/* _content/FRP.Web/Components/Pages/Employees/TimeRecordAdjustment.razor.rz.scp.css */
/* Time Record Adjustment Page Styles */

/* Header with Navigation */
.adjustment-header[b-2nhzzekvrk] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--dp-space-3);
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    margin-bottom: var(--dp-space-4);
}

/* Employee Navigation */
.employee-nav[b-2nhzzekvrk] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.employee-nav[b-2nhzzekvrk]  .employee-dropdown {
    min-width: 280px;
}

.employee-nav[b-2nhzzekvrk]  .e-ddl {
    border-radius: var(--dp-radius-2);
}

/* Date Filter */
.date-filter[b-2nhzzekvrk] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.date-filter select[b-2nhzzekvrk] {
    padding: 6px 12px;
    border-radius: var(--dp-radius-2);
    border: 1px solid var(--border-default);
    background: var(--surface-primary);
    font-size: var(--text-md);
    min-width: 120px;
}

.date-filter select:focus[b-2nhzzekvrk] {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 2px rgba(var(--accent-rgb), 0.1);
}

/* Actions */
.actions[b-2nhzzekvrk] {
    display: flex;
    gap: var(--dp-space-2);
}

/* Summary Bar */
.summary-bar[b-2nhzzekvrk] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-3);
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--dp-slate-50);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    margin-bottom: var(--dp-space-4);
}

.summary-item[b-2nhzzekvrk] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2) var(--dp-space-3);
    background: var(--surface-primary);
    border-radius: var(--dp-radius-2);
    border: 1px solid var(--border-subtle);
}

.summary-label[b-2nhzzekvrk] {
    font-size: var(--text-md);
    color: var(--text-secondary);
}

.summary-value[b-2nhzzekvrk] {
    font-weight: var(--font-semibold);
    font-size: var(--text-lg);
    font-family: var(--font-family-mono, monospace);
}

.summary-item.positive .summary-value[b-2nhzzekvrk] {
    color: var(--status-success);
}

.summary-item.warning .summary-value[b-2nhzzekvrk] {
    color: var(--status-warning);
}

.summary-item.negative .summary-value[b-2nhzzekvrk] {
    color: var(--status-danger);
}

/* Loading State */
.loading-container[b-2nhzzekvrk] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--dp-space-8);
    color: var(--text-secondary);
}

/* Time Records List */
.time-records-list[b-2nhzzekvrk] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.time-record-row[b-2nhzzekvrk] {
    display: grid;
    grid-template-columns: 80px 200px 240px 80px 50px;
    gap: var(--dp-space-3);
    align-items: center;
    padding: var(--dp-space-3);
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-md);
    transition: background-color 0.15s ease;
}

.time-record-row:hover[b-2nhzzekvrk] {
    background: var(--dp-slate-50);
}

.time-record-row.incomplete[b-2nhzzekvrk] {
    border-left: 3px solid var(--status-warning);
    background: rgba(255, 193, 7, 0.05);
}

/* Date Column */
.record-date[b-2nhzzekvrk] {
    display: flex;
    flex-direction: column;
}

.record-date .day[b-2nhzzekvrk] {
    font-weight: var(--font-semibold);
    font-size: var(--text-lg);
}

.record-date .weekday[b-2nhzzekvrk] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

/* Stamp Time Column */
.record-stamp[b-2nhzzekvrk] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.record-stamp .label[b-2nhzzekvrk] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

.record-stamp .time[b-2nhzzekvrk] {
    font-family: var(--font-family-mono, monospace);
    font-weight: var(--font-medium);
}

.record-stamp .time em[b-2nhzzekvrk] {
    color: var(--status-warning);
    font-style: italic;
}

.record-stamp .duration[b-2nhzzekvrk] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    margin-left: var(--dp-space-1);
}

/* Adjustment Inputs Column */
.record-adjustment[b-2nhzzekvrk] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.record-adjustment .label[b-2nhzzekvrk] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

.shift-badge[b-2nhzzekvrk] {
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    padding: 2px 6px;
    border-radius: var(--dp-radius-2);
    margin-right: var(--dp-space-2);
}

.time-inputs[b-2nhzzekvrk] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
}

.time-inputs .time-input[b-2nhzzekvrk] {
    width: 90px;
    padding: 4px 8px;
    font-family: var(--font-family-mono, monospace);
    font-size: var(--text-md);
    text-align: center;
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-2);
}

.time-inputs .time-input:focus[b-2nhzzekvrk] {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 2px rgba(var(--accent-rgb), 0.1);
}

.time-inputs .separator[b-2nhzzekvrk] {
    color: var(--text-secondary);
    font-weight: var(--font-medium);
}

/* Diff Column */
.record-diff[b-2nhzzekvrk] {
    text-align: center;
    font-weight: var(--font-medium);
    font-family: var(--font-family-mono, monospace);
}

/* Actions Column */
.record-actions[b-2nhzzekvrk] {
    display: flex;
    justify-content: center;
}

.record-actions .btn[b-2nhzzekvrk] {
    padding: 4px 8px;
}

/* Notes Row */
.record-notes[b-2nhzzekvrk] {
    grid-column: 1 / -1;
    padding-top: var(--dp-space-2);
    border-top: 1px dashed var(--border-subtle);
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

/* Quick-Assign Shift Buttons */
.quick-assign-buttons[b-2nhzzekvrk] {
    display: flex;
    gap: var(--dp-space-1);
    margin-top: 4px;
}

.quick-assign-btn[b-2nhzzekvrk] {
    padding: 2px 10px;
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    border-radius: var(--dp-radius-2);
    line-height: 1.4;
}

/* Break Deduction Tag (inline in notes row) */
.break-deduction-tag[b-2nhzzekvrk] {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    color: var(--status-warning);
    background: rgba(255, 193, 7, 0.1);
    border-radius: var(--dp-radius-2);
    white-space: nowrap;
}

/* Absence Row */
.absence-row[b-2nhzzekvrk] {
    background: var(--dp-slate-50);
    border: 1px solid var(--border-subtle);
}

.absence-info[b-2nhzzekvrk] {
    grid-column: 2 / 5;
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.absence-hours[b-2nhzzekvrk] {
    font-family: var(--font-family-mono, monospace);
    font-weight: var(--font-medium);
    color: var(--text-secondary);
}

/* Absence Type Badges */
.absence-badge[b-2nhzzekvrk] {
    padding: 2px 10px;
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    white-space: nowrap;
}

.absence-vacation[b-2nhzzekvrk] { background: rgba(16, 185, 129, 0.15); color: #059669; }
.absence-sick[b-2nhzzekvrk] { background: rgba(239, 68, 68, 0.15); color: #dc2626; }
.absence-training[b-2nhzzekvrk] { background: rgba(139, 92, 246, 0.15); color: #7c3aed; }
.absence-other[b-2nhzzekvrk] { background: rgba(107, 114, 128, 0.15); color: #4b5563; }

/* Color Classes */
.text-success[b-2nhzzekvrk] {
    color: var(--status-success) !important;
}

.text-warning[b-2nhzzekvrk] {
    color: var(--status-warning) !important;
}

.text-danger[b-2nhzzekvrk] {
    color: var(--status-danger) !important;
}

.text-info[b-2nhzzekvrk] {
    color: var(--status-info) !important;
}

.text-muted[b-2nhzzekvrk] {
    color: var(--text-secondary) !important;
}

/* Responsive Design */
@media (max-width: 1024px) {
    .adjustment-header[b-2nhzzekvrk] {
        flex-direction: column;
        align-items: stretch;
    }

    .employee-nav[b-2nhzzekvrk] {
        justify-content: center;
    }

    .employee-nav[b-2nhzzekvrk]  .employee-dropdown {
        flex: 1;
        min-width: 200px;
    }

    .date-filter[b-2nhzzekvrk] {
        justify-content: center;
    }

    .actions[b-2nhzzekvrk] {
        justify-content: center;
    }

    .summary-bar[b-2nhzzekvrk] {
        justify-content: center;
    }

    .time-record-row[b-2nhzzekvrk] {
        grid-template-columns: 70px 1fr 1fr auto auto;
        gap: var(--dp-space-2);
    }
}

@media (max-width: 768px) {
    .time-record-row[b-2nhzzekvrk] {
        grid-template-columns: 1fr 1fr;
        gap: var(--dp-space-2);
    }

    .record-date[b-2nhzzekvrk] {
        grid-column: 1;
    }

    .record-stamp[b-2nhzzekvrk] {
        grid-column: 2;
    }

    .record-adjustment[b-2nhzzekvrk] {
        grid-column: 1 / -1;
    }

    .record-diff[b-2nhzzekvrk],
    .record-actions[b-2nhzzekvrk] {
        grid-column: span 1;
    }

    .summary-item[b-2nhzzekvrk] {
        flex: 1 1 calc(50% - var(--dp-space-2));
        min-width: 140px;
    }
}

@media (max-width: 480px) {
    .adjustment-header[b-2nhzzekvrk] {
        padding: var(--dp-space-2);
    }

    .employee-nav[b-2nhzzekvrk]  .employee-dropdown {
        min-width: 150px;
    }

    .date-filter select[b-2nhzzekvrk] {
        min-width: 100px;
    }

    .summary-item[b-2nhzzekvrk] {
        flex: 1 1 100%;
    }

    .time-inputs .time-input[b-2nhzzekvrk] {
        width: 75px;
    }
}

/* Dialog "Zeiteintrag hinzufügen" */
.add-record-form[b-2nhzzekvrk] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}

.add-record-form .form-group[b-2nhzzekvrk] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.add-record-form .form-group label[b-2nhzzekvrk] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--text-secondary);
}

.add-record-form .readonly-value[b-2nhzzekvrk] {
    font-weight: var(--font-semibold);
    color: var(--text-primary);
    padding: var(--dp-space-2) 0;
}

.add-record-form .form-row[b-2nhzzekvrk] {
    display: flex;
    gap: var(--dp-space-4);
}

.add-record-form .form-row .form-group[b-2nhzzekvrk] {
    flex: 1;
}

.add-record-form .form-control[b-2nhzzekvrk] {
    padding: var(--dp-space-2) var(--dp-space-3);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-lg);
}

.add-record-form .form-control:focus[b-2nhzzekvrk] {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 2px rgba(var(--accent-rgb), 0.1);
}

/* Sammel-Eintrag */
.bulk-info-bar[b-2nhzzekvrk] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2) var(--dp-space-3);
    background: rgba(var(--accent-rgb), 0.08);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
    color: var(--accent);
    font-weight: var(--font-medium);
}

.bulk-result[b-2nhzzekvrk] {
    padding: var(--dp-space-2) var(--dp-space-3);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
}

.bulk-result-success[b-2nhzzekvrk] {
    background: rgba(16, 185, 129, 0.1);
    color: #059669;
    border: 1px solid rgba(16, 185, 129, 0.3);
}

.bulk-result-error[b-2nhzzekvrk] {
    background: rgba(239, 68, 68, 0.1);
    color: #dc2626;
    border: 1px solid rgba(239, 68, 68, 0.3);
}

/* Dialog Footer Styling */
[b-2nhzzekvrk] .e-dialog .e-footer-content {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-2);
    padding: var(--dp-space-4);
    border-top: 1px solid var(--border-default);
}
/* _content/FRP.Web/Components/Pages/Guests/GuestCareDocumentation.razor.rz.scp.css */
.pflegedoku-picker[b-9e5mbl8lh6] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-7) var(--dp-space-4);
    color: var(--text-secondary);
}

.pflegedoku-picker[b-9e5mbl8lh6]  .ph {
    font-size: 3rem;
    color: var(--accent);
}

.pflegedoku-picker__title[b-9e5mbl8lh6] {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--text-primary);
}

.pflegedoku-picker__hint[b-9e5mbl8lh6] {
    margin: 0;
    font-size: .9rem;
    color: var(--text-tertiary);
}

.pflegedoku-picker__box[b-9e5mbl8lh6] {
    margin-top: var(--dp-space-3);
    min-width: 280px;
}

.pflegedoku-tabs[b-9e5mbl8lh6] {
    display: inline-flex;
    gap: var(--dp-space-1);
    margin: var(--dp-space-4) 0 var(--dp-space-4);
    background: var(--dp-slate-100, rgba(0,0,0,.04));
    padding: var(--dp-space-1);
    border-radius: var(--dp-radius-md);
}
.pflegedoku-tab[b-9e5mbl8lh6] {
    border: none; background: transparent; cursor: pointer;
    padding: .4rem .9rem; border-radius: var(--dp-radius-sm);
    font-size: .9rem; font-weight: 600; color: var(--text-secondary);
}
.pflegedoku-tab.is-active[b-9e5mbl8lh6] { background: var(--surface-primary); color: var(--accent); box-shadow: var(--shadow-sm); }
/* _content/FRP.Web/Components/Pages/Guests/GuestCreate.razor.rz.scp.css */
/* Guest Create Page Styles */

.page-container[b-2he2ij8ju1] {
    padding: var(--dp-space-2);
    background-color: var(--surface-canvas);
    min-height: calc(100vh - 100px);
}

.loading-container[b-2he2ij8ju1] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 400px;
    text-align: center;
}

.loading-spinner[b-2he2ij8ju1] {
    width: 40px;
    height: 40px;
    border: 4px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-full);
    border-top: 4px solid var(--accent);
    animation: spin-b-2he2ij8ju1 1s linear infinite;
    margin-bottom: var(--dp-space-4);
}

@keyframes spin-b-2he2ij8ju1 {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.page-header[b-2he2ij8ju1] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-md);
    margin-bottom: var(--dp-space-6);
    padding: var(--dp-space-6);
}

.header-content[b-2he2ij8ju1] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.page-title[b-2he2ij8ju1] {
    color: var(--text-primary);
    margin: 0;
    font-size: var(--text-3xl);
    font-weight: var(--font-semibold);
    display: flex;
    align-items: center;
}

.page-subtitle[b-2he2ij8ju1] {
    color: var(--text-secondary);
    margin: var(--dp-space-1) 0 0 0;
    font-size: var(--text-lg);
}

.header-actions[b-2he2ij8ju1] {
    display: flex;
    gap: var(--dp-space-3);
}

/* Form Layout */
.create-form[b-2he2ij8ju1] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-6);
}

.form-card[b-2he2ij8ju1] {
    background: transparent;
    border-radius: 0;
    box-shadow: none;
    overflow: visible;
}

.card-header[b-2he2ij8ju1] {
    background: transparent;
    padding: var(--dp-space-3) 0;
    border-bottom: 1px solid var(--border-default);
}

.card-header h4[b-2he2ij8ju1] {
    margin: 0;
    color: var(--text-primary);
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    display: flex;
    align-items: center;
}

.card-body[b-2he2ij8ju1] {
    padding: var(--dp-space-4) 0;
}

/* Info Card Styling */
.info-card[b-2he2ij8ju1] {
    background: linear-gradient(135deg, #e8f4f8 0%, #f0f8ff 100%);
    border: 1px solid var(--status-info);
}

.info-card .card-header[b-2he2ij8ju1] {
    background: linear-gradient(135deg, #d1ecf1 0%, #e2f0ff 100%);
    border-bottom: 1px solid var(--status-info);
}

.info-card .card-header h4[b-2he2ij8ju1] {
    color: #0c5460;
}

.info-content[b-2he2ij8ju1] {
    color: #0c5460;
}

.info-content p[b-2he2ij8ju1] {
    margin: 0 0 var(--dp-space-4) 0;
    font-size: var(--text-lg);
    line-height: 1.5;
}

.info-list[b-2he2ij8ju1] {
    margin: 0;
    padding-left: var(--dp-space-6);
    font-size: var(--text-md);
}

.info-list li[b-2he2ij8ju1] {
    margin-bottom: var(--dp-space-2);
    line-height: 1.4;
}

/* Form Grid */
.form-grid[b-2he2ij8ju1] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: var(--dp-space-6);
}

.form-group[b-2he2ij8ju1] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.form-group label[b-2he2ij8ju1] {
    font-weight: var(--font-semibold);
    color: var(--text-primary);
    font-size: var(--text-md);
    margin: 0;
}

.validation-message[b-2he2ij8ju1] {
    color: var(--status-danger);
    font-size: var(--text-md);
    margin-top: var(--dp-space-1);
    display: block;
}

/* Form Actions */
.form-actions[b-2he2ij8ju1] {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-4);
    padding: var(--dp-space-4) 0;
    background: transparent;
    border-radius: 0;
    box-shadow: none;
    border-top: 1px solid var(--border-default);
    margin-top: var(--dp-space-4);
}

/* Syncfusion Form Control Customizations */
[b-2he2ij8ju1] .e-input-group {
    border-radius: var(--dp-radius-4);
    border: 2px solid var(--border-default);
    transition: var(--transition-fast);
}

[b-2he2ij8ju1] .e-input-group:hover {
    border-color: var(--status-info);
}

[b-2he2ij8ju1] .e-input-group.e-input-focus {
    border-color: var(--accent);
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

[b-2he2ij8ju1] .e-input-group input,
[b-2he2ij8ju1] .e-input-group textarea {
    border: none;
    padding: var(--dp-space-3);
    font-size: var(--text-lg);
}

/* Dropdown Customizations */
[b-2he2ij8ju1] .e-dropdownlist {
    border-radius: var(--dp-radius-4);
}

[b-2he2ij8ju1] .e-dropdownlist .e-input-group {
    border-radius: var(--dp-radius-4);
}

[b-2he2ij8ju1] .e-dropdownlist.e-input-focus .e-input-group {
    border-color: var(--accent);
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

/* DatePicker Customizations */
[b-2he2ij8ju1] .e-date-wrapper {
    border-radius: var(--dp-radius-4);
}

[b-2he2ij8ju1] .e-date-wrapper .e-input-group {
    border-radius: var(--dp-radius-4);
}

/* Button Customizations */
.btn[b-2he2ij8ju1] {
    border-radius: var(--dp-radius-4);
    font-weight: var(--font-medium);
    transition: var(--transition-fast);
}

.btn:hover:not(:disabled)[b-2he2ij8ju1] {
    transform: translateY(-1px);
}

.btn-success:hover:not(:disabled)[b-2he2ij8ju1] {
    box-shadow: 0 4px 8px rgba(40, 167, 69, 0.3);
}

/* Responsive Design */
@media (max-width: 768px) {
    .page-container[b-2he2ij8ju1] {
        padding: var(--dp-space-2);
    }

    .header-content[b-2he2ij8ju1] {
        flex-direction: column;
        gap: var(--dp-space-4);
        align-items: flex-start;
    }

    .form-grid[b-2he2ij8ju1] {
        grid-template-columns: 1fr;
    }

    .form-actions[b-2he2ij8ju1] {
        flex-direction: column;
        padding: var(--dp-space-3) 0;
    }

    .form-actions .btn[b-2he2ij8ju1] {
        width: 100%;
    }
}

@media (max-width: 576px) {
    .page-title[b-2he2ij8ju1] {
        font-size: var(--text-3xl);
    }

    .header-actions[b-2he2ij8ju1] {
        width: 100%;
        justify-content: space-between;
    }

    .card-body[b-2he2ij8ju1] {
        padding: var(--dp-space-3) 0;
    }

    .form-actions[b-2he2ij8ju1] {
        padding: var(--dp-space-3) 0;
    }
}

/* Toast customizations */
[b-2he2ij8ju1] .e-toast-success {
    background-color: #d4edda;
    border-color: #c3e6cb;
    color: #155724;
}

[b-2he2ij8ju1] .e-toast-danger {
    background-color: #f8d7da;
    border-color: #f5c6cb;
    color: #721c24;
}

[b-2he2ij8ju1] .e-toast-warning {
    background-color: #fff3cd;
    border-color: #ffeaa7;
    color: #856404;
}

/* Validation styling */
[b-2he2ij8ju1] .e-input-group.e-error {
    border-color: var(--status-danger);
}

[b-2he2ij8ju1] .e-input-group.e-error:focus-within {
    border-color: var(--status-danger);
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

/* Loading state */
.fa-spinner.fa-spin[b-2he2ij8ju1] {
    animation: fa-spin-b-2he2ij8ju1 1s infinite linear;
}

@keyframes fa-spin-b-2he2ij8ju1 {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
/* _content/FRP.Web/Components/Pages/Guests/GuestDetails.razor.rz.scp.css */
/* Breadcrumbs */
.breadcrumb-link[b-b28d8flqs6] {
    color: var(--accent);
    text-decoration: none;
    transition: var(--transition-fast);
}

.breadcrumb-link:hover[b-b28d8flqs6] {
    color: #0056b3;
    text-decoration: underline;
}

/* Container — natürlicher Seitenfluss (Hero + Tabs untereinander) */
.guest-details-container[b-b28d8flqs6] {
    background: var(--surface-canvas);
}

/* Loading */
.loading-container[b-b28d8flqs6] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
}

/* Compact Header */
.details-header[b-b28d8flqs6] {
    background: var(--surface-primary);
    padding: var(--dp-space-4) var(--dp-space-6);
    border-bottom: 1px solid var(--border-subtle);
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-shrink: 0;
}

.header-info h3[b-b28d8flqs6] {
    font-size: var(--text-3xl);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}

.header-meta[b-b28d8flqs6] {
    font-size: var(--text-md);
    color: var(--text-secondary);
    margin-top: var(--dp-space-1);
}

.header-actions[b-b28d8flqs6] {
    display: flex;
    gap: var(--dp-space-2);
}

/* Tabs — natürliche Höhe, ganze Seite scrollt */
[b-b28d8flqs6] .guest-details-tabs .e-tab-header {
    background: var(--surface-primary);
    border-bottom: 2px solid var(--border-subtle);
}

[b-b28d8flqs6] .guest-details-tabs .e-content {
    background: var(--surface-canvas);
    padding: var(--dp-space-6);
}

/* Tab Content Grid */
.tab-content-grid[b-b28d8flqs6] {
    width: 100%;
    margin: 0;
}

.content-row[b-b28d8flqs6] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-6);
    margin-bottom: var(--dp-space-6);
}

/* Detail Cards */
.detail-card[b-b28d8flqs6] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-6);
    border: 1px solid var(--border-subtle);
    box-shadow: var(--shadow-sm);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.detail-card:hover[b-b28d8flqs6] {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.card-title[b-b28d8flqs6] {
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
    margin-bottom: var(--dp-space-5);
    padding-bottom: var(--dp-space-3);
    border-bottom: 2px solid var(--dp-slate-100);
}

/* Detail Grid */
.detail-grid[b-b28d8flqs6] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-4);
}

.detail-item[b-b28d8flqs6] {
    display: flex;
    flex-direction: column;
}

.detail-item.full-width[b-b28d8flqs6] {
    grid-column: 1 / -1;
}

.detail-item label[b-b28d8flqs6] {
    font-size: var(--text-sm-plus);
    text-transform: uppercase;
    color: var(--text-secondary);
    margin-bottom: var(--dp-space-1);
    font-weight: var(--font-semibold);
    letter-spacing: 0.5px;
}

.detail-item span[b-b28d8flqs6] {
    color: var(--text-primary);
    font-size: var(--text-lg);
}

.detail-text[b-b28d8flqs6] {
    background: var(--surface-canvas);
    padding: var(--dp-space-3);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
    line-height: 1.5;
    color: var(--dp-slate-700);
}

/* Schedule Section */
.schedule-section[b-b28d8flqs6] {
    margin-top: var(--dp-space-6);
}

/* Contacts Container */
.contacts-container[b-b28d8flqs6] {
    width: 100%;
    margin: 0;
}

/* Emergency Container */
.emergency-container[b-b28d8flqs6] {
    width: 100%;
    margin: 0;
}

.emergency-card .card-title[b-b28d8flqs6] {
    border-bottom-color: #fee;
}

/* History Container */
.history-container[b-b28d8flqs6] {
    width: 100%;
    margin: 0;
}

/* Responsive */
@media (max-width: 1024px) {
    .content-row[b-b28d8flqs6] {
        grid-template-columns: 1fr;
    }

    .detail-grid[b-b28d8flqs6] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .details-header[b-b28d8flqs6] {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--dp-space-4);
    }

    .header-actions[b-b28d8flqs6] {
        width: 100%;
        justify-content: space-between;
    }

    [b-b28d8flqs6] .guest-details-tabs .e-content {
        padding: var(--dp-space-4);
    }
}

/* Badge styling */
.badge[b-b28d8flqs6] {
    font-size: var(--text-sm-plus);
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-full);
}

/* Fix overlapping in weekly planner */
[b-b28d8flqs6] .weekly-planner-container {
    overflow: visible;
}

[b-b28d8flqs6] .weekday-checkbox .e-label {
    margin-left: 0;
}
/* _content/FRP.Web/Components/Pages/Guests/GuestIntakeReview.razor.rz.scp.css */
.review-grid[b-3zu18synys] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: var(--dp-space-3);
}

.review-field label[b-3zu18synys] {
    display: block;
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    margin-bottom: var(--dp-space-1);
}

.review-current[b-3zu18synys] {
    display: block;
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
    margin-top: var(--dp-space-1);
}

.review-field--uncertain[b-3zu18synys] {
    border-left: 3px solid var(--status-warning);
    padding-left: var(--dp-space-2);
    border-radius: 2px;
}

.review-uncertain-banner[b-3zu18synys] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    background: rgba(var(--status-warning-rgb), 0.12);
    border: 1px solid var(--status-warning);
    border-radius: var(--dp-radius-6);
    padding: var(--dp-space-2) var(--dp-space-3);
    margin-bottom: var(--dp-space-4);
}

.review-contact[b-3zu18synys] {
    padding: var(--dp-space-2) 0;
    border-bottom: 1px solid var(--dp-slate-200);
}
/* _content/FRP.Web/Components/Pages/Guests/Guests.razor.rz.scp.css */
/* ==========================================================================
   Gäste-Liste — schlanke Zeilen-Tabelle (ersetzt das Syncfusion-Grid)
   ========================================================================== */

.gl-count[b-ahqityilko] {
    margin-left: auto;
    align-self: center;
    font-size: var(--text-sm-plus);
    font-weight: 600;
    color: var(--text-tertiary);
    white-space: nowrap;
}

.gl-table-wrap[b-ahqityilko] {
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
}

.gl-table[b-ahqityilko] {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--text-md);
}

.gl-table thead th[b-ahqityilko] {
    text-align: left;
    font-size: var(--text-sm-plus);
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--text-tertiary);
    padding: var(--dp-space-3) var(--dp-space-4);
    border-bottom: 1px solid var(--dp-slate-200);
    background: var(--dp-slate-50);
    white-space: nowrap;
}
.gl-table thead th.gl-c[b-ahqityilko] { text-align: center; }
.gl-actions-col[b-ahqityilko] { width: 96px; }

.gl-table tbody td[b-ahqityilko] {
    padding: var(--dp-space-3) var(--dp-space-4);
    border-bottom: 1px solid var(--border-subtle);
    vertical-align: middle;
}
.gl-table tbody tr:last-child td[b-ahqityilko] { border-bottom: none; }
.gl-table tbody td.gl-c[b-ahqityilko] { text-align: center; }

.gl-table tbody tr[b-ahqityilko] {
    cursor: pointer;
    transition: background 0.12s ease;
}
.gl-table tbody tr:hover[b-ahqityilko] { background: var(--accent-light); }
.gl-row--inactive[b-ahqityilko] { background: var(--dp-slate-50); }
.gl-row--inactive:hover[b-ahqityilko] { background: var(--dp-slate-100); }

/* Gast-Zelle */
.gl-g[b-ahqityilko] { display: flex; align-items: center; gap: var(--dp-space-3); }
.gl-dot[b-ahqityilko] { width: 9px; height: 9px; border-radius: 50%; flex-shrink: 0; }
.gl-dot--on[b-ahqityilko] { background: var(--status-success); }
.gl-dot--off[b-ahqityilko] { background: var(--dp-slate-300); }
.gl-name[b-ahqityilko] { font-weight: 640; color: var(--text-primary); }
.gl-sub[b-ahqityilko] { font-size: var(--text-sm-plus); color: var(--text-tertiary); margin-top: 1px; }

/* Pflegegrad-Badge (dezent getönt, nur Zahl) */
.gl-pg[b-ahqityilko] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-sm-plus);
    font-weight: 600;
    padding: 3px 11px;
    border-radius: var(--dp-radius-full);
    border: 1px solid color-mix(in srgb, var(--cl) 32%, var(--dp-slate-200));
    background: color-mix(in srgb, var(--cl) 9%, var(--surface-primary));
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}
.gl-pg__dot[b-ahqityilko] { width: 8px; height: 8px; border-radius: 50%; background: var(--cl); }

/* Hinweis-Icon */
.gl-hint[b-ahqityilko] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: var(--dp-radius-4);
    background: rgba(var(--status-warning-rgb), 0.10);
    color: var(--status-warning);
    font-size: 16px;
}

.gl-muted[b-ahqityilko] { color: var(--text-tertiary); }
.gl-priv[b-ahqityilko] { color: var(--accent); font-weight: 600; }

/* Check-Ins */
.gl-ci__n[b-ahqityilko] { font-weight: 700; color: var(--text-primary); font-variant-numeric: tabular-nums; }
.gl-ci__last[b-ahqityilko] { font-size: var(--text-sm-plus); color: var(--text-tertiary); margin-top: 1px; }

/* Aktionen (beim Zeilen-Hover eingeblendet) */
.gl-acts[b-ahqityilko] {
    display: flex;
    gap: var(--dp-space-1);
    justify-content: flex-end;
    opacity: 0;
    transition: opacity 0.12s ease;
}
.gl-table tbody tr:hover .gl-acts[b-ahqityilko] { opacity: 1; }

.gl-iconbtn[b-ahqityilko] {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: none;
    border-radius: var(--dp-radius-4);
    color: var(--text-tertiary);
    cursor: pointer;
    font-size: 16px;
    transition: background 0.12s, color 0.12s;
}
.gl-iconbtn:hover[b-ahqityilko] { background: var(--accent-light); color: var(--accent); }
.gl-iconbtn--danger:hover[b-ahqityilko] { background: rgba(var(--status-danger-rgb), 0.10); color: var(--status-danger); }
.gl-iconbtn--success:hover[b-ahqityilko] { background: rgba(var(--status-success-rgb), 0.10); color: var(--status-success); }

/* Touch-Geräte: Aktionen dauerhaft sichtbar (kein Hover) */
@media (hover: none) {
    .gl-acts[b-ahqityilko] { opacity: 1; }
}

/* Verstecktes Export-Grid (nur für Syncfusion ExportToExcelAsync) */
.gl-export-grid[b-ahqityilko] {
    position: absolute;
    left: -9999px;
    top: 0;
    width: 1px;
    height: 1px;
    overflow: hidden;
    pointer-events: none;
}

/* ==========================================================================
   Toast-Anpassungen (global via ::deep)
   ========================================================================== */
[b-ahqityilko] .e-toast-success { background-color: #d4edda; border-color: #c3e6cb; color: #155724; }
[b-ahqityilko] .e-toast-danger  { background-color: #f8d7da; border-color: #f5c6cb; color: #721c24; }
[b-ahqityilko] .e-toast-warning { background-color: #fff3cd; border-color: #ffeaa7; color: #856404; }
[b-ahqityilko] .e-toast-info    { background-color: #d1ecf1; border-color: #bee5eb; color: #0c5460; }
/* _content/FRP.Web/Components/Pages/Guests/PflegedokuDashboard.razor.rz.scp.css */
/* ===================================================================== */
/* Pflegedoku-Dashboard – modernes, mappen-zentriertes Layout            */
/* ===================================================================== */

/* Severity-Farbsystem: jede is-* Klasse setzt --sev / --sev-rgb,
   alle Punkte/Avatare/Badges/Akzente leiten sich daraus ab. */
.is-green[b-1xvx5xu39e]  { --sev: var(--status-success); --sev-rgb: var(--status-success-rgb); }
.is-yellow[b-1xvx5xu39e] { --sev: var(--status-warning); --sev-rgb: var(--status-warning-rgb); }
.is-orange[b-1xvx5xu39e] { --sev: #ea780e;               --sev-rgb: 234, 120, 14; }
.is-red[b-1xvx5xu39e]    { --sev: var(--status-danger);  --sev-rgb: var(--status-danger-rgb); }
.is-grey[b-1xvx5xu39e]   { --sev: var(--dp-slate-400);   --sev-rgb: 148, 163, 184; }

.pdot[b-1xvx5xu39e] {
    display: inline-block; width: 9px; height: 9px; border-radius: 50%;
    background: var(--sev, var(--dp-slate-400)); vertical-align: middle;
    margin-right: 4px;
    box-shadow: 0 0 0 3px rgba(var(--sev-rgb, 148,163,184), .18);
}
.pdot--lg[b-1xvx5xu39e] { width: 13px; height: 13px; }

/* ---- Einblend-Animation ---- */
@keyframes pdashUp-b-1xvx5xu39e { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
.pdash-reveal[b-1xvx5xu39e] { animation: pdashUp-b-1xvx5xu39e .45s cubic-bezier(.22,.61,.36,1) both; }

/* ===================== HERO ===================== */
.pdash-hero[b-1xvx5xu39e] {
    display: grid;
    grid-template-columns: minmax(200px, 260px) 1fr;
    gap: var(--dp-space-4);
    align-items: center;
    padding: var(--dp-space-4);
    border-radius: var(--dp-radius-xl, 18px);
    background:
        radial-gradient(120% 140% at 0% 0%, rgba(var(--accent-rgb), .10), transparent 55%),
        linear-gradient(180deg, var(--surface-primary), var(--surface-primary));
    border: 1px solid var(--dp-slate-200);
    box-shadow: var(--shadow-md, 0 8px 24px rgba(15, 23, 42, .06));
    margin-bottom: var(--dp-space-4);
}

.pdash-hero__donut[b-1xvx5xu39e] { display: flex; flex-direction: column; align-items: center; gap: var(--dp-space-2); }

.pdash-legend[b-1xvx5xu39e] { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 12px; width: 100%; max-width: 230px; }
.pdash-legend__item[b-1xvx5xu39e] { font-size: .78rem; color: var(--text-secondary); white-space: nowrap; }
.pdash-legend__item b[b-1xvx5xu39e] { color: var(--text-primary); margin-left: 2px; }

.pdash-kpis[b-1xvx5xu39e] { display: grid; grid-template-columns: 1fr 1fr; gap: var(--dp-space-2); }

.pdash-kpi[b-1xvx5xu39e] {
    --kpi: var(--accent); --kpi-rgb: var(--accent-rgb);
    position: relative; overflow: hidden;
    display: grid; grid-template-columns: auto 1fr; align-items: center; column-gap: var(--dp-space-3);
    padding: var(--dp-space-3) var(--dp-space-4);
    border-radius: var(--dp-radius-lg, 14px);
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    box-shadow: var(--shadow-sm, 0 2px 8px rgba(15,23,42,.05));
    transition: transform .18s ease, box-shadow .18s ease;
}
.pdash-kpi[b-1xvx5xu39e]::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: var(--kpi); }
.pdash-kpi:hover[b-1xvx5xu39e] { transform: translateY(-2px); box-shadow: var(--shadow-md, 0 10px 26px rgba(15,23,42,.10)); }
.pdash-kpi--blue[b-1xvx5xu39e]   { --kpi: #2563eb; --kpi-rgb: 37, 99, 235; }
.pdash-kpi--amber[b-1xvx5xu39e]  { --kpi: #d97706; --kpi-rgb: 217, 119, 6; }
.pdash-kpi--violet[b-1xvx5xu39e] { --kpi: #7c3aed; --kpi-rgb: 124, 58, 237; }
.pdash-kpi--red[b-1xvx5xu39e]    { --kpi: #dc2626; --kpi-rgb: 220, 38, 38; }

.pdash-kpi__icon[b-1xvx5xu39e] {
    grid-row: 1 / 3; align-self: center;
    width: 32px; height: 32px; border-radius: 9px;
    display: inline-flex; align-items: center; justify-content: center;
    background: rgba(var(--kpi-rgb), .12); color: var(--kpi);
    font-size: 1rem;
}
.pdash-kpi__num[b-1xvx5xu39e] { font-size: 1.55rem; font-weight: 800; line-height: 1.05; color: var(--text-primary); letter-spacing: -.02em; }
.pdash-kpi__lbl[b-1xvx5xu39e] { font-size: .76rem; font-weight: 600; color: var(--text-tertiary); }

/* ===================== BLOCK ===================== */
.pdash-block[b-1xvx5xu39e] { margin-top: var(--dp-space-5); }
.pdash-block__head[b-1xvx5xu39e] { display: flex; align-items: center; justify-content: space-between; gap: var(--dp-space-3); margin-bottom: var(--dp-space-3); }
.pdash-block__title[b-1xvx5xu39e] { display: flex; align-items: center; gap: var(--dp-space-2); margin: 0; font-size: 1.05rem; font-weight: 700; color: var(--text-primary); }
.pdash-block__title .ph[b-1xvx5xu39e] { color: var(--accent); }
.pdash-block__count[b-1xvx5xu39e] { font-size: .82rem; font-weight: 600; color: var(--text-tertiary); }
.pdash-block__tools[b-1xvx5xu39e] { display: flex; align-items: center; gap: var(--dp-space-3); }

.pdash-toggle[b-1xvx5xu39e] { font-size: .82rem; color: var(--text-secondary); display: inline-flex; align-items: center; gap: 6px; cursor: pointer; }

.pdash-viewswitch[b-1xvx5xu39e] { display: inline-flex; background: var(--dp-slate-100); border-radius: var(--dp-radius-md); padding: 2px; }
.pdash-viewswitch button[b-1xvx5xu39e] { border: none; background: transparent; cursor: pointer; padding: 5px 9px; border-radius: var(--dp-radius-sm); color: var(--text-tertiary); line-height: 0; }
.pdash-viewswitch button.is-on[b-1xvx5xu39e] { background: var(--surface-primary); color: var(--accent); box-shadow: var(--shadow-sm, 0 1px 3px rgba(15,23,42,.12)); }

/* ---- Badge ---- */
.pdash-badge[b-1xvx5xu39e] {
    font-size: .74rem; font-weight: 700; padding: 3px 9px; border-radius: 999px;
    background: rgba(var(--sev-rgb, 148,163,184), .14); color: var(--sev, var(--text-secondary));
    white-space: nowrap;
}

/* Klickbare Variante (als <button> gerendert → Button-Reset + dezente Interaktivität) */
.pdash-badge--clickable[b-1xvx5xu39e] {
    border: none; font-family: inherit; line-height: inherit;
    cursor: pointer;
    transition: background .15s ease, box-shadow .15s ease;
}
.pdash-badge--clickable:hover[b-1xvx5xu39e] {
    background: rgba(var(--sev-rgb, 148,163,184), .26);
    box-shadow: 0 0 0 1px rgba(var(--sev-rgb, 148,163,184), .4);
}
.pdash-badge--clickable:focus-visible[b-1xvx5xu39e] { outline: 2px solid var(--sev, var(--accent)); outline-offset: 1px; }

/* ===================== HANDLUNGSBEDARF ===================== */
.pdash-actions[b-1xvx5xu39e] { display: flex; flex-direction: column; gap: var(--dp-space-3); }

.pdash-action[b-1xvx5xu39e] {
    position: relative; display: flex; align-items: center; gap: var(--dp-space-3);
    width: 100%; text-align: left; cursor: pointer;
    padding: var(--dp-space-3) var(--dp-space-4) var(--dp-space-3) calc(var(--dp-space-4) + 4px);
    border: 1px solid var(--dp-slate-200); border-radius: var(--dp-radius-lg, 14px);
    background: var(--surface-primary); overflow: hidden;
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.pdash-action[b-1xvx5xu39e]::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: var(--sev); }
.pdash-action:hover[b-1xvx5xu39e] { transform: translateY(-2px); box-shadow: var(--shadow-md, 0 10px 26px rgba(15,23,42,.10)); border-color: rgba(var(--sev-rgb), .5); }
/* Die Zeile ist jetzt ein div[role=button] (Badges darin sind echte Buttons) → sichtbarer Tastatur-Fokus. */
.pdash-action:focus-visible[b-1xvx5xu39e] { outline: 2px solid var(--accent); outline-offset: 2px; }

.pdash-action__main[b-1xvx5xu39e] { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: var(--dp-space-2); }
.pdash-action__top[b-1xvx5xu39e] { display: flex; align-items: center; gap: var(--dp-space-2); flex-wrap: wrap; }
.pdash-action__name[b-1xvx5xu39e] { font-weight: 700; color: var(--text-primary); }

.pdash-action__att[b-1xvx5xu39e] { text-align: right; display: flex; flex-direction: column; line-height: 1.1; }
.pdash-action__att-num[b-1xvx5xu39e] { font-size: 1.25rem; font-weight: 800; color: var(--text-primary); }
.pdash-action__att-lbl[b-1xvx5xu39e] { font-size: .7rem; color: var(--text-tertiary); }

.pdash-action__go[b-1xvx5xu39e] { color: var(--text-tertiary); font-size: 1.2rem; line-height: 0; }
.pdash-action:hover .pdash-action__go[b-1xvx5xu39e] { color: var(--accent); transform: translateX(2px); transition: transform .16s ease; }

/* ---- „Alles aktuell" ---- */
.pdash-allgood[b-1xvx5xu39e] {
    display: flex; align-items: center; gap: var(--dp-space-3);
    padding: var(--dp-space-4) var(--dp-space-5);
    border-radius: var(--dp-radius-lg, 14px);
    background: rgba(var(--status-success-rgb), .08);
    border: 1px solid rgba(var(--status-success-rgb), .25);
}
.pdash-allgood .ph[b-1xvx5xu39e] { font-size: 2rem; color: var(--status-success); }
.pdash-allgood strong[b-1xvx5xu39e] { display: block; color: var(--text-primary); }
.pdash-allgood span[b-1xvx5xu39e] { color: var(--text-secondary); font-size: .88rem; }

/* ===================== ALLE MAPPEN – KARTEN ===================== */
.pdash-grid[b-1xvx5xu39e] { display: grid; grid-template-columns: repeat(auto-fill, minmax(248px, 1fr)); gap: var(--dp-space-3); }

.pdash-card[b-1xvx5xu39e] {
    display: flex; flex-direction: column; gap: var(--dp-space-3);
    text-align: left; cursor: pointer;
    padding: var(--dp-space-4);
    border: 1px solid var(--dp-slate-200); border-radius: var(--dp-radius-lg, 14px);
    background: var(--surface-primary);
    transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.pdash-card:hover[b-1xvx5xu39e] { transform: translateY(-3px); box-shadow: var(--shadow-md, 0 12px 28px rgba(15,23,42,.12)); border-color: var(--accent); }

.pdash-card__head[b-1xvx5xu39e] { display: flex; align-items: center; gap: var(--dp-space-2); }
.pdash-card__name[b-1xvx5xu39e] { flex: 1; min-width: 0; font-weight: 700; color: var(--text-primary); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.pdash-card__pipe[b-1xvx5xu39e] { display: flex; justify-content: center; padding: var(--dp-space-1) 0; }

.pdash-card__foot[b-1xvx5xu39e] { display: flex; justify-content: space-between; gap: var(--dp-space-2); border-top: 1px solid var(--dp-slate-100); padding-top: var(--dp-space-2); }
.pdash-stat[b-1xvx5xu39e] { font-size: .76rem; color: var(--text-tertiary); }
.pdash-stat b[b-1xvx5xu39e] { color: var(--text-primary); font-size: .95rem; }

/* ---- Responsive ---- */
@media (max-width: 820px) {
    .pdash-hero[b-1xvx5xu39e] { grid-template-columns: 1fr; }
    .pdash-kpis[b-1xvx5xu39e] { grid-template-columns: 1fr 1fr; }
}
/* _content/FRP.Web/Components/Pages/Guests/UebergabeJournal.razor.rz.scp.css */
/* ── Timeline & Chips (aus BerichteblattPanel.razor.css kopiert — CSS-Isolation) ── */
.rep-timeline[b-6u2k4j24e5] { display: flex; flex-direction: column; gap: var(--dp-space-3); }
.rep-entry[b-6u2k4j24e5] {
    border: 1px solid var(--dp-slate-200); border-left: 3px solid var(--accent);
    border-radius: var(--dp-radius-md); padding: var(--dp-space-3); background: var(--surface-primary);
}
.rep-entry__head[b-6u2k4j24e5] { display: flex; align-items: center; gap: var(--dp-space-2); flex-wrap: wrap; margin-bottom: var(--dp-space-2); }
.rep-entry__date[b-6u2k4j24e5] { font-weight: 600; color: var(--text-primary); }
.rep-entry__author[b-6u2k4j24e5] { color: var(--text-tertiary); font-size: .85rem; }
.rep-entry__bezug[b-6u2k4j24e5] { font-size: .82rem; color: var(--text-secondary); margin-bottom: var(--dp-space-1); }
.rep-entry__text[b-6u2k4j24e5] { color: var(--text-primary); white-space: pre-wrap; }

.rep-chip[b-6u2k4j24e5] {
    border: 1px solid var(--dp-slate-300); background: transparent;
    font-size: .78rem; font-weight: 600; padding: .2rem .6rem; border-radius: var(--dp-radius-pill, 999px);
    color: var(--text-secondary);
}
.rep-chip--warning[b-6u2k4j24e5] { background: rgba(var(--status-warning-rgb), .15); color: var(--status-warning); border-color: transparent; }
.rep-chip--info[b-6u2k4j24e5]    { background: rgba(var(--status-info-rgb), .15);    color: var(--status-info);    border-color: transparent; }
.rep-chip--danger[b-6u2k4j24e5]  { background: rgba(var(--status-danger-rgb), .15);  color: var(--status-danger);  border-color: transparent; }
.rep-chip--success[b-6u2k4j24e5] { background: rgba(var(--status-success-rgb), .15); color: var(--status-success); border-color: transparent; }
.rep-chip--accent[b-6u2k4j24e5]  { background: var(--accent-light); color: var(--dp-blue-800); border-color: transparent; }
.rep-chip--muted[b-6u2k4j24e5]   { background: var(--dp-slate-100, rgba(0,0,0,.05)); color: var(--text-secondary); border-color: transparent; }

/* ── Datumsnavigation (Actions-Slot) ── */
.uej-date-nav[b-6u2k4j24e5] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.uej-datepicker[b-6u2k4j24e5] {
    width: 140px;
}

/* ── Sektionsrahmen (guest-card) ── */
.uej-section[b-6u2k4j24e5] {
    padding: var(--dp-space-4);
    margin-bottom: var(--dp-space-4);
}

.uej-section__head[b-6u2k4j24e5] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    margin-bottom: var(--dp-space-4);
    padding-bottom: var(--dp-space-3);
    border-bottom: 1px solid var(--dp-slate-200);
}

.uej-section__title[b-6u2k4j24e5] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-md);
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    flex: 1;
}

.uej-section__count[b-6u2k4j24e5] {
    font-size: var(--text-sm);
    color: var(--text-tertiary);
    font-weight: 500;
}

/* ── Gast-Link ── */
.uej-guest-link[b-6u2k4j24e5] {
    font-weight: 600;
    color: var(--accent);
    text-decoration: none;
    border-radius: var(--dp-radius-sm);
    padding: 0 var(--dp-space-1);
    transition: background 0.15s;
}

.uej-guest-link:hover[b-6u2k4j24e5] {
    background: var(--accent-light);
    text-decoration: underline;
}

/* ── Offene Beobachtungen ── */
.uej-obs-groups[b-6u2k4j24e5] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}

.uej-obs-group[b-6u2k4j24e5] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.uej-obs-group__guest[b-6u2k4j24e5] {
    font-size: var(--text-sm);
}

.uej-obs-list[b-6u2k4j24e5] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.uej-obs-item[b-6u2k4j24e5] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2) var(--dp-space-3);
    background: rgba(var(--status-warning-rgb, 245, 158, 11), .06);
    border: 1px solid rgba(var(--status-warning-rgb, 245, 158, 11), .2);
    border-radius: var(--dp-radius-md);
}

.uej-obs-chip[b-6u2k4j24e5] {
    flex-shrink: 0;
    cursor: default;
    pointer-events: none;
}

.uej-obs-topic[b-6u2k4j24e5] {
    font-weight: 500;
    color: var(--text-primary);
    flex: 1;
}

.uej-obs-since[b-6u2k4j24e5] {
    font-size: var(--text-sm);
    color: var(--text-tertiary);
    white-space: nowrap;
}
/* _content/FRP.Web/Components/Pages/Leistungsnachweise/ServiceRecordTabs.razor.rz.scp.css */
/* Container */
.leistungsnachweise-container[b-0p6g6ofoiy] {
    max-width: 1600px;
    margin: 0 auto;
    padding: var(--dp-space-5);
}

/* Page Header */
.page-header[b-0p6g6ofoiy] {
    background: linear-gradient(135deg, var(--status-success), #218838);
    color: white;
    padding: var(--dp-space-6);
    border-radius: var(--dp-radius-6);
    margin-bottom: var(--dp-space-8);
    box-shadow: var(--shadow-md);
}

.header-content[b-0p6g6ofoiy] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.page-title[b-0p6g6ofoiy] {
    margin: 0;
    font-size: var(--text-3xl);
    font-weight: var(--font-medium);
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
}

.page-title i[b-0p6g6ofoiy] {
    font-size: var(--text-4xl);
}

.header-info[b-0p6g6ofoiy] {
    margin-top: var(--dp-space-3);
    font-size: var(--text-lg);
    opacity: 0.95;
}

/* Tab Styles */
.service-record-tabs[b-0p6g6ofoiy] {
    margin-top: var(--dp-space-5);
}

[b-0p6g6ofoiy] .service-record-tabs .e-tab-header {
    background: var(--surface-canvas);
    border-radius: var(--dp-radius-6) var(--dp-radius-6) 0 0;
}

[b-0p6g6ofoiy] .service-record-tabs .e-tab-header .e-tab-wrap .e-tab-text {
    font-size: var(--text-lg);
    font-weight: var(--font-medium);
}

/* Tab Content Areas */
.tab-content-overview[b-0p6g6ofoiy],
.tab-content-upload[b-0p6g6ofoiy] {
    padding: var(--dp-space-5);
}

/* Upload Sub-Tabs */
[b-0p6g6ofoiy] .upload-sub-tabs {
    margin-bottom: var(--dp-space-8);
}

[b-0p6g6ofoiy] .upload-sub-tabs .e-tab-header {
    background: var(--surface-canvas);
    border-radius: var(--dp-radius-4) var(--dp-radius-4) 0 0;
    border-bottom: 1px solid var(--border-default);
}

[b-0p6g6ofoiy] .upload-sub-tabs .e-tab-header .e-tab-wrap .e-tab-text {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
}

[b-0p6g6ofoiy] .upload-sub-tabs .e-content {
    border: none;
    padding: 0;
}

.sub-tab-content[b-0p6g6ofoiy] {
    padding: var(--dp-space-5) 0 0 0;
}

/* Filter Card */
[b-0p6g6ofoiy] .filter-card {
    margin-bottom: var(--dp-space-8);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-md);
}

.card-header-content[b-0p6g6ofoiy] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    font-size: var(--text-xl);
    font-weight: var(--font-medium);
}

.filter-controls[b-0p6g6ofoiy] {
    display: flex;
    align-items: flex-end;
    gap: var(--dp-space-5);
}

.date-selector[b-0p6g6ofoiy] {
    flex: 1;
    max-width: 300px;
}

.date-selector label[b-0p6g6ofoiy] {
    display: block;
    margin-bottom: var(--dp-space-2);
    font-weight: var(--font-medium);
    color: var(--dp-slate-700);
}

/* Statistics Section */
.stats-section[b-0p6g6ofoiy] {
    margin-bottom: var(--dp-space-8);
}

.stats-grid[b-0p6g6ofoiy] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: var(--dp-space-5);
}

[b-0p6g6ofoiy] .stat-card {
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-md);
    border: 1px solid var(--border-default);
    transition: var(--transition-fast);
}

[b-0p6g6ofoiy] .stat-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-lg);
}

[b-0p6g6ofoiy] .stat-card.generated {
    border-left: 4px solid var(--dp-blue-600);
}

[b-0p6g6ofoiy] .stat-card.signed {
    border-left: 4px solid var(--status-success);
}

[b-0p6g6ofoiy] .stat-card.pending {
    border-left: 4px solid var(--status-warning);
}

[b-0p6g6ofoiy] .stat-card.invoiced {
    border-left: 4px solid var(--accent);
}

/* Create Tab Stat Cards */
[b-0p6g6ofoiy] .stat-card.guests {
    border-left: 4px solid var(--status-info);
}

[b-0p6g6ofoiy] .stat-card.checkins {
    border-left: 4px solid var(--status-success);
}

[b-0p6g6ofoiy] .stat-card.transports {
    border-left: 4px solid #fd7e14;
}

.stat-content[b-0p6g6ofoiy] {
    display: flex;
    align-items: center;
    padding: var(--dp-space-5);
}

.stat-icon[b-0p6g6ofoiy] {
    width: 60px;
    height: 60px;
    border-radius: var(--dp-radius-full);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: var(--dp-space-5);
}

.stat-card.generated .stat-icon[b-0p6g6ofoiy] {
    background: #f3e5f5;
    color: #7b1fa2;
}

.stat-card.signed .stat-icon[b-0p6g6ofoiy] {
    background: #e8f5e8;
    color: #2e7d32;
}

.stat-card.pending .stat-icon[b-0p6g6ofoiy] {
    background: #fff3cd;
    color: #856404;
}

.stat-card.invoiced .stat-icon[b-0p6g6ofoiy] {
    background: #e3f2fd;
    color: #1976d2;
}

.stat-card.guests .stat-icon[b-0p6g6ofoiy] {
    background: #e0f7fa;
    color: #00695c;
}

.stat-card.checkins .stat-icon[b-0p6g6ofoiy] {
    background: #e8f5e8;
    color: #2e7d32;
}

.stat-card.transports .stat-icon[b-0p6g6ofoiy] {
    background: #fff3e0;
    color: #ef6c00;
}

.stat-icon i[b-0p6g6ofoiy] {
    font-size: var(--text-2xl);
}

.stat-details[b-0p6g6ofoiy] {
    flex: 1;
}

.stat-value[b-0p6g6ofoiy] {
    font-size: var(--text-4xl);
    font-weight: var(--font-bold);
    line-height: 1;
    margin-bottom: var(--dp-space-2);
    color: var(--text-primary);
}

.stat-label[b-0p6g6ofoiy] {
    font-size: var(--text-md);
    color: var(--text-secondary);
    font-weight: var(--font-medium);
}

/* Filter Section */
.filter-section[b-0p6g6ofoiy] {
    margin-bottom: var(--dp-space-8);
}

.filter-grid[b-0p6g6ofoiy] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: var(--dp-space-5);
    align-items: end;
}

.filter-item[b-0p6g6ofoiy] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.filter-item.date-range[b-0p6g6ofoiy] {
    min-width: 250px;
}

.filter-item.filter-actions[b-0p6g6ofoiy] {
    justify-content: end;
}

.filter-label[b-0p6g6ofoiy] {
    font-size: var(--text-md);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-700);
    margin-bottom: var(--dp-space-2);
}

/* Grid Section */
[b-0p6g6ofoiy] .grid-section .e-card-header {
    background: var(--surface-canvas);
    border-bottom: 1px solid var(--border-default);
}

.card-header-content[b-0p6g6ofoiy] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    color: var(--text-primary);
    font-weight: var(--font-semibold);
}

.card-header-content i[b-0p6g6ofoiy] {
    color: var(--accent);
}

/* Simple Action Bar */
.simple-actions[b-0p6g6ofoiy] {
    background: var(--surface-canvas);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-3) var(--dp-space-5);
    margin-bottom: var(--dp-space-5);
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: var(--shadow-sm);
}

.selected-info[b-0p6g6ofoiy] {
    font-weight: var(--font-semibold);
    color: var(--dp-slate-700);
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.selected-info[b-0p6g6ofoiy]::before {
    content: "\2713";
    background: var(--status-success);
    color: white;
    border-radius: var(--dp-radius-full);
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--text-sm-plus);
    font-weight: var(--font-bold);
}

.action-buttons-simple[b-0p6g6ofoiy] {
    display: flex;
    gap: var(--dp-space-3);
    align-items: center;
}

/* Table Card */
[b-0p6g6ofoiy] .table-card {
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-md);
}

/* Table Styles */
.care-level-badge[b-0p6g6ofoiy] {
    background: var(--accent);
    color: white;
    padding: 2px 8px;
    border-radius: var(--dp-radius-6);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
}

.presence-info[b-0p6g6ofoiy] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.presence-days[b-0p6g6ofoiy] {
    font-weight: var(--font-semibold);
    color: var(--status-success);
}

.billable-absences[b-0p6g6ofoiy] {
    color: var(--status-warning);
    font-weight: var(--font-medium);
}

.wheelchair-badge[b-0p6g6ofoiy] {
    background: var(--status-info);
    color: white;
    padding: var(--dp-space-1) var(--dp-space-3);
    border-radius: var(--dp-radius-8);
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-weight: var(--font-semibold);
}

.status-badge[b-0p6g6ofoiy] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-6);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    white-space: nowrap;
}

.status-ready[b-0p6g6ofoiy] {
    background: #d4edda;
    color: #155724;
}

.status-empty[b-0p6g6ofoiy] {
    background: #f8d7da;
    color: #721c24;
}

.status-pending[b-0p6g6ofoiy] {
    background: var(--dp-slate-100);
    color: var(--text-secondary);
    border: 1px solid var(--dp-slate-200);
}

.status-signed[b-0p6g6ofoiy] {
    background: #dcfce7;
    color: #166534;
    border: 1px solid #bbf7d0;
}

.status-invoiced[b-0p6g6ofoiy] {
    background: #dbeafe;
    color: #1e40af;
    border: 1px solid #bfdbfe;
}

/* Statistics Badges */
.stats-badges[b-0p6g6ofoiy] {
    display: flex;
    gap: var(--dp-space-4);
    margin-bottom: var(--dp-space-5);
    flex-wrap: wrap;
}

.stat-badge[b-0p6g6ofoiy] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: var(--dp-space-3) var(--dp-space-5);
    border-radius: var(--dp-radius-4);
    min-width: 100px;
    text-align: center;
}

.stat-badge .stat-value[b-0p6g6ofoiy] {
    font-size: var(--text-3xl);
    font-weight: var(--font-bold);
    line-height: 1.2;
}

.stat-badge .stat-label[b-0p6g6ofoiy] {
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.stat-total[b-0p6g6ofoiy] {
    background: var(--dp-slate-100);
    border: 1px solid var(--dp-slate-200);
}

.stat-total .stat-value[b-0p6g6ofoiy] {
    color: var(--text-primary);
}

.stat-total .stat-label[b-0p6g6ofoiy] {
    color: var(--text-secondary);
}

.stat-pending[b-0p6g6ofoiy] {
    background: #fef3c7;
    border: 1px solid #fde68a;
}

.stat-pending .stat-value[b-0p6g6ofoiy] {
    color: #92400e;
}

.stat-pending .stat-label[b-0p6g6ofoiy] {
    color: #b45309;
}

.stat-signed[b-0p6g6ofoiy] {
    background: #dcfce7;
    border: 1px solid #bbf7d0;
}

.stat-signed .stat-value[b-0p6g6ofoiy] {
    color: #166534;
}

.stat-signed .stat-label[b-0p6g6ofoiy] {
    color: #15803d;
}

.stat-invoiced[b-0p6g6ofoiy] {
    background: #dbeafe;
    border: 1px solid #bfdbfe;
}

.stat-invoiced .stat-value[b-0p6g6ofoiy] {
    color: #1e40af;
}

.stat-invoiced .stat-label[b-0p6g6ofoiy] {
    color: #1d4ed8;
}

/* Days Info in Grid */
.days-info[b-0p6g6ofoiy] {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.days-value[b-0p6g6ofoiy] {
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}

.absence-note[b-0p6g6ofoiy] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

/* Transport Info */
.transport-info[b-0p6g6ofoiy] {
    font-size: var(--text-md);
    color: var(--text-primary);
}

/* Upload Tab Styles */
[b-0p6g6ofoiy] .upload-card {
    margin-bottom: var(--dp-space-8);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-md);
}

[b-0p6g6ofoiy] .manual-upload-card {
    margin-bottom: var(--dp-space-8);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-md);
    border-left: 4px solid var(--accent);
}

.upload-container[b-0p6g6ofoiy] {
    padding: var(--dp-space-5);
}

.upload-info[b-0p6g6ofoiy] {
    margin-top: var(--dp-space-4);
    padding: var(--dp-space-3);
    background-color: #f0f8ff;
    border-radius: var(--dp-radius-2);
    color: #0066cc;
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
}

/* Manual Upload Styles */
.manual-upload-container[b-0p6g6ofoiy] {
    padding: var(--dp-space-5);
}

.manual-upload-form[b-0p6g6ofoiy] {
    background: var(--surface-canvas);
    padding: var(--dp-space-5);
    border-radius: var(--dp-radius-4);
    margin-bottom: var(--dp-space-4);
}

.form-row[b-0p6g6ofoiy] {
    display: flex;
    gap: var(--dp-space-5);
    align-items: end;
    margin-bottom: var(--dp-space-5);
    flex-wrap: wrap;
}

.form-group[b-0p6g6ofoiy] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.form-label[b-0p6g6ofoiy] {
    font-size: var(--text-md);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-700);
    margin: 0;
}

.file-upload-section[b-0p6g6ofoiy] {
    margin-bottom: var(--dp-space-5);
    padding-top: var(--dp-space-4);
    border-top: 1px solid var(--border-default);
}

.upload-actions[b-0p6g6ofoiy] {
    display: flex;
    justify-content: flex-start;
    gap: var(--dp-space-3);
}

.manual-upload-info[b-0p6g6ofoiy] {
    padding: var(--dp-space-3);
    background-color: #fff3cd;
    border: 1px solid #ffeaa7;
    border-radius: var(--dp-radius-4);
    color: #856404;
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    font-size: var(--text-md);
}

.manual-upload-info i[b-0p6g6ofoiy] {
    color: #856404;
    flex-shrink: 0;
}

[b-0p6g6ofoiy] .recent-uploads-card {
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-md);
}

/* Management Tab Styles */
.badge[b-0p6g6ofoiy] {
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
}

.badge-success[b-0p6g6ofoiy] {
    background-color: var(--status-success);
    color: white;
}

.badge-warning[b-0p6g6ofoiy] {
    background-color: var(--status-warning);
    color: var(--text-primary);
}

.invoice-link[b-0p6g6ofoiy] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    color: var(--accent);
    text-decoration: none;
    font-weight: var(--font-medium);
    transition: var(--transition-fast);
}

.invoice-link:hover[b-0p6g6ofoiy] {
    color: #1d4ed8;
    text-decoration: underline;
}

/* Invoice Chips for multiple invoices */
.invoice-chips[b-0p6g6ofoiy] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}

.invoice-chip[b-0p6g6ofoiy] {
    display: inline-block;
    padding: 2px 8px;
    background: var(--primary-light, #e3f2fd);
    border-radius: 12px;
    font-size: 0.8rem;
    text-decoration: none;
    color: var(--primary, #1976d2);
    white-space: nowrap;
}

.invoice-chip:hover[b-0p6g6ofoiy] {
    background: var(--primary, #1976d2);
    color: white;
}

.text-muted[b-0p6g6ofoiy] {
    color: var(--text-secondary);
    font-style: italic;
}

.text-muted i[b-0p6g6ofoiy] {
    margin-right: var(--dp-space-1);
}

.action-buttons[b-0p6g6ofoiy] {
    display: flex;
    gap: var(--dp-space-2);
    justify-content: center;
    flex-wrap: wrap;
}

/* Icon-Only Button (rund) */
[b-0p6g6ofoiy] .btn-icon-only {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    padding: 0 !important;
    border-radius: var(--dp-radius-4) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

[b-0p6g6ofoiy] .btn-icon-only:hover {
    transform: scale(1.05);
}

[b-0p6g6ofoiy] .btn-icon-only i {
    font-size: 14px;
    margin: 0 !important;
}

/* Loading Container */
.loading-container[b-0p6g6ofoiy] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 400px;
}

/* Empty State */
[b-0p6g6ofoiy] .empty-state-card {
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-md);
}

.empty-state[b-0p6g6ofoiy] {
    text-align: center;
    padding: var(--dp-space-12) var(--dp-space-5);
}

.empty-state i[b-0p6g6ofoiy] {
    font-size: var(--text-4xl);
    color: var(--border-default);
    margin-bottom: var(--dp-space-5);
}

.empty-state h3[b-0p6g6ofoiy] {
    font-size: var(--text-2xl);
    font-weight: var(--font-medium);
    color: var(--dp-slate-700);
    margin-bottom: var(--dp-space-3);
}

.empty-state p[b-0p6g6ofoiy] {
    font-size: var(--text-lg);
    color: var(--text-secondary);
    max-width: 500px;
    margin: 0 auto;
}

/* Responsive */
@media (max-width: 768px) {
    .filter-controls[b-0p6g6ofoiy] {
        flex-direction: column;
        align-items: stretch;
    }

    .date-selector[b-0p6g6ofoiy] {
        max-width: none;
    }

    .stats-grid[b-0p6g6ofoiy] {
        grid-template-columns: 1fr 1fr;
        gap: var(--dp-space-3);
    }

    .filter-grid[b-0p6g6ofoiy] {
        grid-template-columns: 1fr;
        gap: var(--dp-space-3);
    }

    .stat-value[b-0p6g6ofoiy] {
        font-size: var(--text-3xl);
    }

    .stat-label[b-0p6g6ofoiy] {
        font-size: var(--text-md);
    }

    .action-buttons[b-0p6g6ofoiy] {
        gap: var(--dp-space-1);
    }

    .action-buttons .e-btn[b-0p6g6ofoiy] {
        min-width: 28px;
        height: 28px;
    }

    .simple-actions[b-0p6g6ofoiy] {
        flex-direction: column;
        gap: var(--dp-space-3);
        align-items: stretch;
        text-align: center;
    }

    .action-buttons-simple[b-0p6g6ofoiy] {
        justify-content: center;
    }

    .tab-content-create[b-0p6g6ofoiy],
    .tab-content-upload[b-0p6g6ofoiy] {
        padding: var(--dp-space-3);
    }

    .form-row[b-0p6g6ofoiy] {
        flex-direction: column;
        align-items: stretch;
        gap: var(--dp-space-4);
    }

    .manual-upload-form[b-0p6g6ofoiy] {
        padding: var(--dp-space-4);
    }
}

@media (max-width: 480px) {
    .stats-grid[b-0p6g6ofoiy] {
        grid-template-columns: 1fr;
    }

    .stat-content[b-0p6g6ofoiy] {
        padding: var(--dp-space-4);
    }

    .stat-value[b-0p6g6ofoiy] {
        font-size: var(--text-2xl);
    }
}

/* Link Invoice Dialog */
.dialog-header[b-0p6g6ofoiy] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    font-size: var(--text-2xl);
    font-weight: var(--font-medium);
}

.dialog-header i[b-0p6g6ofoiy] {
    color: var(--status-warning);
}

.link-dialog-content[b-0p6g6ofoiy] {
    padding: var(--dp-space-5);
}

.record-info[b-0p6g6ofoiy] {
    background: var(--surface-canvas);
    padding: var(--dp-space-4);
    border-radius: var(--dp-radius-4);
    margin-bottom: var(--dp-space-5);
}

.record-info h6[b-0p6g6ofoiy] {
    margin: 0 0 var(--dp-space-3) 0;
    color: var(--dp-slate-700);
    font-weight: var(--font-semibold);
}

.record-info p[b-0p6g6ofoiy] {
    margin: 0;
    line-height: 1.6;
}

.invoice-selection[b-0p6g6ofoiy] {
    margin-top: var(--dp-space-5);
}

.invoice-selection .form-label[b-0p6g6ofoiy] {
    font-weight: var(--font-medium);
    margin-bottom: var(--dp-space-3);
    display: block;
}

.dialog-footer[b-0p6g6ofoiy] {
    display: flex;
    gap: var(--dp-space-3);
    justify-content: flex-end;
    padding: var(--dp-space-4);
    border-top: 1px solid var(--border-default);
}
/* _content/FRP.Web/Components/Pages/Leistungsnachweise/SignServiceRecord.razor.rz.scp.css */
/* ==========================================================================
   SignServiceRecord — integrierte Unterschrift-Ansicht
   Stufe 1 (Liste) nutzt die globalen page-pattern-Klassen.
   Hier nur das, was darüber hinaus gebraucht wird: Status-Badges mit Icon
   und das zweispaltige Signatur-Layout (Stufe 2).
   ========================================================================== */

.signing-page[b-c0x3scemt5] {
    position: relative;
}

/* ==========================================================================
   Status-Badges (Icon + Text)
   ========================================================================== */

.signing-page[b-c0x3scemt5]  .status-badge {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
}

.signing-page[b-c0x3scemt5]  .status-signed {
    background-color: var(--status-success-light);
    color: var(--dp-emerald-700);
    border: 1px solid var(--status-success-light);
}

/* ==========================================================================
   Stufe 2 — Signatur-Modus
   ========================================================================== */

.signing-mode[b-c0x3scemt5] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
    padding: var(--dp-space-5);
    max-width: 1400px;
    margin: 0 auto;
}

/* Toolbar */
.signing-toolbar[b-c0x3scemt5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: var(--dp-space-3);
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
}

.signing-toolbar__left[b-c0x3scemt5],
.signing-toolbar__right[b-c0x3scemt5] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    flex-wrap: wrap;
}

.signing-guest[b-c0x3scemt5] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2) var(--dp-space-3);
    background: var(--dp-slate-50);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
}

.signing-guest__name[b-c0x3scemt5] {
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}

.signing-guest__period[b-c0x3scemt5] {
    color: var(--text-secondary);
    font-size: var(--text-sm-plus);
}

/* Layout: PDF links, Signatur rechts */
.signing-layout[b-c0x3scemt5] {
    display: flex;
    gap: var(--dp-space-4);
    height: calc(100vh - 260px);
    min-height: 520px;
}

.signing-pdf[b-c0x3scemt5] {
    position: relative;
    flex: 1 1 auto;
    min-width: 0;
    background: var(--dp-slate-100);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    overflow: hidden;
}

.signing-pdf__loading[b-c0x3scemt5] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.9);
    z-index: 10;
}

.signing-pdf[b-c0x3scemt5]  .e-pv-viewer-container,
.signing-pdf[b-c0x3scemt5]  .e-pv-main-container {
    height: 100% !important;
}

/* Signatur-Panel */
.signing-panel[b-c0x3scemt5] {
    flex: 0 0 380px;
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
    padding: var(--dp-space-4);
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
}

.signing-panel__header[b-c0x3scemt5] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
    padding-bottom: var(--dp-space-3);
    border-bottom: 1px solid var(--dp-slate-100);
}

.signing-panel__hint[b-c0x3scemt5] {
    margin: 0;
    color: var(--text-secondary);
    font-size: var(--text-sm-plus);
}

/* Inline-Signatur-Pad */
.signing-pad[b-c0x3scemt5] {
    flex: 1 1 auto;
    min-height: 220px;
    background: white;
    border: 2px dashed var(--dp-slate-300);
    border-radius: var(--dp-radius-6);
    overflow: hidden;
    touch-action: none;
}

.signing-pad[b-c0x3scemt5]  .e-signature,
.signing-pad[b-c0x3scemt5]  canvas {
    width: 100% !important;
    height: 100% !important;
}

/* Erfasste Unterschrift als Vorschaubild */
.signing-panel__preview[b-c0x3scemt5] {
    flex: 1 1 auto;
    min-height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    padding: var(--dp-space-3);
}

.signing-panel__preview img[b-c0x3scemt5] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.signing-panel__actions[b-c0x3scemt5] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-2);
}

.signing-panel__actions[b-c0x3scemt5]  .e-btn {
    flex: 1 1 auto;
    min-height: 44px;
}

.signing-panel__note[b-c0x3scemt5] {
    display: flex;
    align-items: flex-start;
    gap: var(--dp-space-2);
    margin: 0;
    padding: var(--dp-space-3);
    background: var(--status-info-light);
    color: var(--text-secondary);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-sm-plus);
}

/* ==========================================================================
   Dialoge (Vollbild-Signatur + Überschreiben)
   ========================================================================== */

.signing-dialog-header[b-c0x3scemt5] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-weight: var(--font-semibold);
}

.signing-dialog-header--warning[b-c0x3scemt5] {
    color: var(--status-warning);
}

.signing-dialog-footer[b-c0x3scemt5] {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-2);
}

.signing-fullscreen-body[b-c0x3scemt5] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
    height: 100%;
    padding: var(--dp-space-4);
}

.signing-fullscreen-hint[b-c0x3scemt5] {
    margin: 0;
    color: var(--text-secondary);
}

.signing-fullscreen-pad[b-c0x3scemt5] {
    flex: 1 1 auto;
    min-height: 320px;
    background: white;
    border: 2px dashed var(--dp-slate-300);
    border-radius: var(--dp-radius-6);
    overflow: hidden;
    touch-action: none;
}

.signing-fullscreen-pad[b-c0x3scemt5]  .e-signature,
.signing-fullscreen-pad[b-c0x3scemt5]  canvas {
    width: 100% !important;
    height: 100% !important;
}

/* ==========================================================================
   Touch / Responsive
   ========================================================================== */

.signing-toolbar[b-c0x3scemt5]  .e-btn {
    min-height: 44px;
    touch-action: manipulation;
}

@media (max-width: 1024px) {
    .signing-layout[b-c0x3scemt5] {
        flex-direction: column;
        height: auto;
        min-height: 0;
    }

    .signing-pdf[b-c0x3scemt5] {
        height: 60vh;
        flex: none;
    }

    .signing-panel[b-c0x3scemt5] {
        flex: none;
    }

    .signing-toolbar__left[b-c0x3scemt5],
    .signing-toolbar__right[b-c0x3scemt5] {
        width: 100%;
        justify-content: space-between;
    }
}
/* _content/FRP.Web/Components/Pages/Letters/Index.razor.rz.scp.css */
/* Design-Tokens aus Rhaudi.UiKit (tokens.css) — siehe z. B. PaymentAdviceChronicle.razor.css
   für dasselbe Muster: --dp-space-*/--dp-radius-* für Abstände[b-jex0ohfih6], --text-*/--surface-*/--border-*
   für Farben[b-jex0ohfih6], --status-* für Zustände. Keine hardcodierten Werte. */

.letters-section[b-jex0ohfih6] {
    margin-bottom: var(--dp-space-6);
}

.letters-section__header[b-jex0ohfih6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: var(--dp-space-3);
}

.letters-section__title[b-jex0ohfih6] {
    font-size: var(--text-2xl);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
    margin: 0 0 var(--dp-space-3) 0;
}

.letters-section__header .letters-section__title[b-jex0ohfih6] {
    margin: 0;
}

.letters-split[b-jex0ohfih6] {
    display: block;
    font-size: var(--text-sm);
    color: var(--text-secondary);
}

.letters-actions[b-jex0ohfih6] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    flex-wrap: wrap;
}

.letters-badge[b-jex0ohfih6] {
    display: inline-flex;
    align-items: center;
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm);
    font-weight: var(--font-medium);
    background: var(--surface-secondary);
    color: var(--text-secondary);
    white-space: nowrap;
}

/* Serienbrief-Status (LetterBatchStatus) */
.letters-badge--draft[b-jex0ohfih6] {
    background: var(--status-warning-light);
    color: var(--status-warning);
}

.letters-badge--ready[b-jex0ohfih6] {
    background: var(--status-info-light);
    color: var(--status-info);
}

.letters-badge--sent[b-jex0ohfih6] {
    background: var(--status-success-light);
    color: var(--status-success);
}

/* Einzelbrief-Status (LetterStatus) */
.letters-badge--pending[b-jex0ohfih6] {
    background: var(--status-warning-light);
    color: var(--status-warning);
}

.letters-badge--generated[b-jex0ohfih6] {
    background: var(--status-info-light);
    color: var(--status-info);
}

.letters-badge--failed[b-jex0ohfih6] {
    background: var(--status-danger-light);
    color: var(--status-danger);
}

/* Vorlage stillgelegt */
.letters-badge--inactive[b-jex0ohfih6] {
    background: var(--surface-secondary);
    color: var(--text-secondary);
    margin-left: var(--dp-space-2);
}

.letters-error[b-jex0ohfih6] {
    display: block;
    margin-top: var(--dp-space-1);
    font-size: var(--text-sm);
    color: var(--status-danger);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}

.letters-missing[b-jex0ohfih6] {
    font-size: var(--text-sm);
    font-style: italic;
    color: var(--text-tertiary);
}

/* IMPORTANT 5: Warnzeichen in der Serienbrief-Übersicht für gescheiterte Briefe. */
.letters-failed-warning[b-jex0ohfih6] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
    margin-top: var(--dp-space-1);
    font-size: var(--text-sm);
    font-weight: var(--font-medium);
    color: var(--status-danger);
}
/* _content/FRP.Web/Components/Pages/Letters/LetterWizard.razor.rz.scp.css */
/* Design-Tokens aus Rhaudi.UiKit (tokens.css) — siehe Components/Pages/Letters/Index.razor.css
   für dasselbe Muster: --dp-space-*/--dp-radius-* für Abstände[b-59yeva4sv4], --text-*/--surface-*/--border-*
   für Farben[b-59yeva4sv4], --status-* für Zustände. Keine hardcodierten Werte. */

.wizard[b-59yeva4sv4] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-5);
}

/* ==========================================================================
   Schritt-Anzeige
   ========================================================================== */

.wizard-steps[b-59yeva4sv4] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
    list-style: none;
    margin: 0 0 var(--dp-space-2) 0;
    padding: 0;
}

.wizard-step[b-59yeva4sv4] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    color: var(--text-tertiary);
}

.wizard-step + .wizard-step[b-59yeva4sv4]::before {
    content: '';
    display: inline-block;
    width: 32px;
    height: 1px;
    background: var(--dp-slate-200);
    margin-right: var(--dp-space-4);
}

.wizard-step__number[b-59yeva4sv4] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: var(--dp-radius-full);
    background: var(--surface-secondary);
    color: var(--text-secondary);
    font-weight: var(--font-semibold);
    font-size: var(--text-sm);
    flex-shrink: 0;
}

.wizard-step__label[b-59yeva4sv4] {
    font-weight: var(--font-medium);
    font-size: var(--text-md);
    white-space: nowrap;
}

.wizard-step--active[b-59yeva4sv4] {
    color: var(--text-primary);
}

.wizard-step--active .wizard-step__number[b-59yeva4sv4] {
    background: var(--accent);
    color: white;
}

.wizard-step--done .wizard-step__number[b-59yeva4sv4] {
    background: var(--status-success-light);
    color: var(--status-success);
}

.wizard-step--done .wizard-step__label[b-59yeva4sv4] {
    color: var(--text-secondary);
}

/* ==========================================================================
   Schritt-Panel + Aktionsleiste
   ========================================================================== */

.wizard-panel[b-59yeva4sv4] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}

.wizard-actions[b-59yeva4sv4] {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-2);
    padding-top: var(--dp-space-3);
    border-top: 1px solid var(--dp-slate-100);
}

/* ==========================================================================
   Schritt 1: Gästeliste
   ========================================================================== */

.wizard-guest-toolbar[b-59yeva4sv4] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--dp-space-3);
    flex-wrap: wrap;
}

.wizard-guest-search[b-59yeva4sv4] {
    max-width: 320px;
    flex: 1 1 240px;
}

.wizard-guest-count[b-59yeva4sv4] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    white-space: nowrap;
}

/* ==========================================================================
   Schritt 2: Editor (links Text, rechts Vorschau)
   ========================================================================== */

.wizard-editor[b-59yeva4sv4] {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: var(--dp-space-6);
    align-items: start;
}

.wizard-editor__left[b-59yeva4sv4],
.wizard-editor__right[b-59yeva4sv4] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
}

.wizard-editor__right[b-59yeva4sv4] {
    position: sticky;
    top: var(--dp-space-4);
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    padding: var(--dp-space-4);
}

.wizard-ai[b-59yeva4sv4] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
    background: var(--surface-secondary);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-4);
}

.wizard-ai--unavailable[b-59yeva4sv4] {
    flex-direction: row;
    align-items: center;
    gap: var(--dp-space-2);
    color: var(--text-tertiary);
    font-size: var(--text-sm-plus);
}

.wizard-placeholders[b-59yeva4sv4] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-2);
}

.wizard-preview-nav[b-59yeva4sv4] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-3);
}

.wizard-preview-nav__label[b-59yeva4sv4] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    text-align: center;
}

.wizard-preview-hint[b-59yeva4sv4] {
    color: var(--text-tertiary);
    font-size: var(--text-sm-plus);
    margin: 0;
}

[b-59yeva4sv4] .wizard-body textarea {
    min-height: 220px;
    resize: vertical;
}

/* M1: Begleittext der E-Mail, Schritt 3 — kleiner als der Brieftext, aber nicht einzeilig. */
[b-59yeva4sv4] .wizard-email-body textarea {
    min-height: 100px;
    resize: vertical;
}

@media (max-width: 992px) {
    .wizard-editor[b-59yeva4sv4] {
        grid-template-columns: 1fr;
    }

    .wizard-editor__right[b-59yeva4sv4] {
        position: static;
    }
}

/* ==========================================================================
   Schritt 3: Prüfen und Verschicken
   ========================================================================== */

.wizard-address[b-59yeva4sv4],
.wizard-guest[b-59yeva4sv4] {
    display: block;
    font-size: var(--text-sm);
    color: var(--text-secondary);
}

.wizard-warning[b-59yeva4sv4] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
    color: var(--status-warning);
    font-size: var(--text-sm);
}

.wizard-row-actions[b-59yeva4sv4] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    flex-wrap: wrap;
}

.wizard-summary-bar[b-59yeva4sv4] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: var(--dp-space-3);
    padding-top: var(--dp-space-3);
    border-top: 1px solid var(--dp-slate-100);
}

.wizard-summary[b-59yeva4sv4] {
    font-size: var(--text-md);
    color: var(--text-primary);
}

.wizard-summary-actions[b-59yeva4sv4] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    flex-wrap: wrap;
}

.wizard-progress[b-59yeva4sv4] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    background: var(--status-info-light);
    color: var(--status-info);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-3) var(--dp-space-4);
    font-size: var(--text-sm-plus);
}

/* IMPORTANT 1: Hinweis, dass Schritt 1/2 nach dem Erzeugen gesperrt sind. */
.wizard-locked-hint[b-59yeva4sv4] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    margin: 0;
    color: var(--text-secondary);
    font-size: var(--text-sm-plus);
}

/* IMPORTANT 2: Warnung nach gescheiterter Erzeugung — verlangt eine ausdrückliche Bestätigung,
   bevor der Anwender es erneut versuchen kann. */
.wizard-warning-banner[b-59yeva4sv4] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--dp-space-3);
    background: var(--status-danger-light);
    color: var(--status-danger);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-3) var(--dp-space-4);
    font-size: var(--text-sm-plus);
}

.wizard-warning-banner span[b-59yeva4sv4] {
    flex: 1 1 320px;
}

/* Hinweis unter dem Stichtagsfeld: Vergleichs-Platzhalter im Text, aber kein Stichtag gesetzt —
   ohne Datum blieben z. B. {{Preistabelle}} kommentarlos leer im Brief stehen. */
.wizard-stichtag-warning[b-59yeva4sv4] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    background: var(--status-warning-light);
    color: var(--status-warning);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-2) var(--dp-space-3);
    font-size: var(--text-sm-plus);
    margin-top: calc(-1 * var(--dp-space-2));
}
/* _content/FRP.Web/Components/Pages/OfferCreator/Index.razor.rz.scp.css */
/* ===========================
   OFFER CREATOR PAGE
   Hero kommt aus UiPageShell. Body aus .page-body.
   =========================== */

/* Content-Layout innerhalb .page-body */
.offer-content[b-2o0hkphgsp] {
    /* body-spezifische Overrides (falls nötig) */
}

/* Layout: side by side */
.offer-layout[b-2o0hkphgsp] {
    display: grid;
    grid-template-columns: 340px 1fr;
    gap: 1.5rem;
    align-items: start;
}

/* Loading */
.loading-overlay[b-2o0hkphgsp] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    padding: 4rem;
    color: var(--color-text-secondary);
    grid-column: 1 / -1;
}

.loading-spinner[b-2o0hkphgsp] {
    width: 40px;
    height: 40px;
    border: 3px solid var(--color-border);
    border-top-color: var(--color-primary);
    border-radius: 50%;
    animation: spin-b-2o0hkphgsp 0.8s linear infinite;
}

@keyframes spin-b-2o0hkphgsp {
    to { transform: rotate(360deg); }
}

/* Section Card */
.section-card[b-2o0hkphgsp] {
    background: var(--color-surface);
    border-radius: 16px;
    padding: 1.5rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    border: 1px solid var(--color-border);
}

.section-header[b-2o0hkphgsp] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
    color: var(--color-primary);
    font-size: 1.1rem;
}

.section-header h2[b-2o0hkphgsp] {
    font-size: 1rem;
    font-weight: 600;
    margin: 0;
    color: var(--color-text-primary);
}

/* Form */
.form-group[b-2o0hkphgsp] {
    margin-bottom: 1.25rem;
}

.form-label[b-2o0hkphgsp] {
    display: block;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--color-text-secondary);
    margin-bottom: 0.375rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.checkbox-group[b-2o0hkphgsp] {
    padding-top: 0.5rem;
}

/* Info Bar */
.info-bar[b-2o0hkphgsp] {
    display: flex;
    gap: 1rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.info-item[b-2o0hkphgsp] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: var(--color-surface);
    border-radius: 10px;
    font-size: 0.8rem;
    color: var(--color-text-secondary);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    border: 1px solid var(--color-border);
}

.info-item strong[b-2o0hkphgsp] {
    color: var(--color-text-primary);
}

/* Budget Cards */
.budget-card[b-2o0hkphgsp] {
    background: var(--color-surface);
    border-radius: 16px;
    padding: 1.25rem 1.5rem;
    margin-bottom: 0.75rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    border: 1px solid var(--color-border);
    animation: fadeInUp-b-2o0hkphgsp 0.4s ease-out both;
    animation-delay: calc(var(--delay, 0) * 0.1s);
}

@keyframes fadeInUp-b-2o0hkphgsp {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.budget-header[b-2o0hkphgsp] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
}

.budget-title[b-2o0hkphgsp] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--color-text-primary);
}

.budget-limit[b-2o0hkphgsp] {
    font-size: 0.8rem;
    color: var(--color-text-secondary);
}

.budget-bar-wrapper[b-2o0hkphgsp] {
    margin-bottom: 0.75rem;
}

.budget-bar[b-2o0hkphgsp] {
    display: flex;
    height: 10px;
    background: var(--color-bg);
    border-radius: 5px;
    overflow: hidden;
}

.budget-fill[b-2o0hkphgsp] {
    height: 100%;
    transition: width 0.5s ease;
}

.budget-fill-insurance[b-2o0hkphgsp] {
    background: var(--color-primary);
}

.budget-fill-private[b-2o0hkphgsp] {
    background: var(--color-warning);
}

.budget-details[b-2o0hkphgsp] {
    display: flex;
    justify-content: space-between;
    font-size: 0.8rem;
}

.budget-insurance[b-2o0hkphgsp] {
    color: var(--color-primary);
    font-weight: 500;
}

.budget-private[b-2o0hkphgsp] {
    color: var(--color-warning);
    font-weight: 500;
}

.budget-utilization[b-2o0hkphgsp] {
    margin-top: 0.5rem;
    font-size: 0.75rem;
    color: var(--color-text-secondary);
}

/* Summary Card */
.summary-card[b-2o0hkphgsp] {
    background: var(--color-surface);
    border-radius: 16px;
    padding: 1.25rem 1.5rem;
    margin-top: 1rem;
    margin-bottom: 0.75rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    border: 1px solid var(--color-border);
}

.summary-row[b-2o0hkphgsp] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0;
}

.summary-label[b-2o0hkphgsp] {
    font-size: 0.875rem;
    color: var(--color-text-secondary);
}

.summary-value[b-2o0hkphgsp] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--color-text-primary);
}

.summary-divider[b-2o0hkphgsp] {
    height: 1px;
    background: var(--color-border);
    margin: 0.25rem 0;
}

.summary-insurance .summary-label[b-2o0hkphgsp] {
    color: var(--color-primary);
}

.summary-insurance .summary-value[b-2o0hkphgsp] {
    color: var(--color-primary);
    font-size: 1.125rem;
}

.summary-private .summary-label[b-2o0hkphgsp] {
    color: var(--color-warning);
}

.summary-private .summary-value[b-2o0hkphgsp] {
    color: var(--color-warning);
    font-size: 1.125rem;
}

/* Highlight Box */
.highlight-box[b-2o0hkphgsp] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    border-radius: 12px;
    margin-bottom: 0.75rem;
    font-size: 0.875rem;
    line-height: 1.5;
}

.highlight-success[b-2o0hkphgsp] {
    background: var(--color-success-light);
    border: 1px solid #bbf7d0;
    color: var(--color-success);
}

.highlight-good[b-2o0hkphgsp] {
    background: var(--color-success-light);
    border: 1px solid #bbf7d0;
    color: var(--color-success);
}

.highlight-info[b-2o0hkphgsp] {
    background: var(--accent-light);
    border: 1px solid var(--accent-light);
    color: var(--color-primary);
}

.highlight-warning[b-2o0hkphgsp] {
    background: #fffbeb;
    border: 1px solid #fde68a;
    color: #b45309;
}

/* Preisstand-Hinweis unter der Eingabe-Karte */
.price-note[b-2o0hkphgsp] {
    margin-top: 0.75rem;
}

/* Action Bar */
.action-bar[b-2o0hkphgsp] {
    margin-top: 1rem;
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.btn-pdf[b-2o0hkphgsp] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    background: linear-gradient(135deg, var(--color-primary), var(--accent-hover));
    color: var(--text-inverse);
    border: none;
    border-radius: 12px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 2px 8px rgba(var(--accent-rgb), 0.3);
}

.btn-pdf:hover:not(:disabled)[b-2o0hkphgsp] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(var(--accent-rgb), 0.4);
}

.btn-pdf:disabled[b-2o0hkphgsp] {
    opacity: 0.7;
    cursor: not-allowed;
}

/* Email Button */
.btn-email[b-2o0hkphgsp] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    background: linear-gradient(135deg, var(--color-primary), var(--accent-hover));
    color: var(--text-inverse);
    border: none;
    border-radius: 12px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    box-shadow: 0 2px 8px rgba(var(--accent-rgb), 0.3);
}

.btn-email:hover:not(:disabled)[b-2o0hkphgsp] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(var(--accent-rgb), 0.4);
}

.btn-email:disabled[b-2o0hkphgsp] {
    opacity: 0.7;
    cursor: not-allowed;
}

.btn-spinner[b-2o0hkphgsp] {
    width: 16px;
    height: 16px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: var(--text-inverse);
    border-radius: 50%;
    animation: spin-b-2o0hkphgsp 0.8s linear infinite;
}

/* Detail Section */
.detail-section[b-2o0hkphgsp] {
    margin-top: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.detail-topf-card[b-2o0hkphgsp] {
    background: var(--color-surface);
    border-radius: 16px;
    padding: 1.25rem 1.5rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    border: 1px solid var(--color-border);
    animation: fadeInUp-b-2o0hkphgsp 0.4s ease-out both;
}

.detail-topf-header[b-2o0hkphgsp] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
    padding-bottom: 0.75rem;
    border-bottom: 2px solid var(--color-primary);
}

.detail-topf-name[b-2o0hkphgsp] {
    font-weight: 700;
    font-size: 0.95rem;
    color: var(--color-primary);
}

.detail-topf-limit[b-2o0hkphgsp] {
    font-size: 0.8rem;
    color: var(--color-text-secondary);
    font-weight: 500;
}

.detail-table-wrapper[b-2o0hkphgsp] {
    overflow-x: auto;
}

.detail-table[b-2o0hkphgsp] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8rem;
}

.detail-table th[b-2o0hkphgsp] {
    padding: 0.5rem 0.75rem;
    text-align: left;
    font-weight: 600;
    color: var(--color-text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    font-size: 0.7rem;
    border-bottom: 1px solid var(--color-border);
}

.detail-table td[b-2o0hkphgsp] {
    padding: 0.5rem 0.75rem;
    color: var(--color-text-primary);
    border-bottom: 1px solid var(--border-subtle);
}

.detail-table tbody tr:hover[b-2o0hkphgsp] {
    background: var(--color-bg);
}

.detail-table .text-right[b-2o0hkphgsp] {
    text-align: right;
}

.detail-table .col-kasse[b-2o0hkphgsp] {
    color: var(--color-primary);
    font-weight: 600;
}

.detail-table .col-privat[b-2o0hkphgsp] {
    color: var(--color-warning);
    font-weight: 600;
}

.detail-sum-row[b-2o0hkphgsp] {
    border-top: 2px solid var(--color-primary);
}

.detail-sum-row td[b-2o0hkphgsp] {
    border-bottom: none;
    padding-top: 0.75rem;
}

.detail-budget-warning[b-2o0hkphgsp] {
    margin-top: 0.75rem;
    padding: 0.5rem 0.75rem;
    background: var(--color-danger-light);
    border: 1px solid #fecaca;
    border-radius: 8px;
    color: var(--color-danger);
    font-size: 0.8rem;
    font-weight: 600;
}

.detail-budget-ok[b-2o0hkphgsp] {
    margin-top: 0.75rem;
    padding: 0.5rem 0.75rem;
    background: var(--color-success-light);
    border: 1px solid #bbf7d0;
    border-radius: 8px;
    color: var(--color-success);
    font-size: 0.8rem;
    font-weight: 500;
}

/* Responsive */
@media (max-width: 1024px) {
    .offer-layout[b-2o0hkphgsp] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .info-bar[b-2o0hkphgsp] {
        flex-direction: column;
    }

    .budget-details[b-2o0hkphgsp] {
        flex-direction: column;
        gap: 0.25rem;
    }
}

/* Modus-Umschalter */
.mode-toggle[b-2o0hkphgsp] {
    display: inline-flex;
    gap: 0.25rem;
    padding: 0.25rem;
    margin-bottom: 1.25rem;
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: 12px;
}

.mode-btn[b-2o0hkphgsp] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    border: none;
    background: transparent;
    color: var(--color-text-secondary);
    font-size: 0.85rem;
    font-weight: 600;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s;
}

.mode-btn:hover[b-2o0hkphgsp] {
    color: var(--color-text-primary);
}

.mode-btn--active[b-2o0hkphgsp] {
    background: var(--color-primary);
    color: var(--text-inverse);
}

/* Aktuell-Chip */
.current-days-chip[b-2o0hkphgsp] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: var(--color-bg);
    border: 1px solid var(--color-border);
    border-radius: 10px;
    font-size: 0.85rem;
    color: var(--color-text-secondary);
}

.current-days-chip strong[b-2o0hkphgsp] {
    color: var(--color-text-primary);
}

/* Vergleichskarte */
.compare-card[b-2o0hkphgsp] {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 1rem;
    background: var(--color-surface);
    border-radius: 16px;
    padding: 1.25rem 1.5rem;
    margin-bottom: 0.75rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
    border: 1px solid var(--color-border);
    animation: fadeInUp-b-2o0hkphgsp 0.4s ease-out both;
}

.compare-col[b-2o0hkphgsp] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.compare-col-label[b-2o0hkphgsp] {
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--color-text-secondary);
}

.compare-col-target .compare-col-label[b-2o0hkphgsp] {
    color: var(--color-primary);
}

.compare-col-days[b-2o0hkphgsp] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--color-text-primary);
    margin-bottom: 0.25rem;
}

.compare-row[b-2o0hkphgsp] {
    display: flex;
    justify-content: space-between;
    font-size: 0.8rem;
    color: var(--color-text-secondary);
}

.compare-row.compare-private[b-2o0hkphgsp] {
    font-weight: 700;
    color: var(--color-warning);
}

.compare-arrow[b-2o0hkphgsp] {
    color: var(--color-primary);
    font-size: 1.5rem;
    display: flex;
    align-items: center;
}

/* Differenz-Hinweis */
.compare-delta[b-2o0hkphgsp] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 1.25rem;
    margin-bottom: 0.75rem;
    background: var(--color-success-light);
    border: 1px solid #bbf7d0;
    border-radius: 12px;
    color: var(--color-success);
    font-size: 0.9rem;
}

@media (max-width: 768px) {
    .compare-card[b-2o0hkphgsp] {
        grid-template-columns: 1fr;
    }
    .compare-arrow[b-2o0hkphgsp] {
        transform: rotate(90deg);
        justify-content: center;
    }
}
/* _content/FRP.Web/Components/Pages/Public/GuestIntakeForm.razor.rz.scp.css */
/* Fehntjer-Huus-Design für die öffentliche Anmeldeseite. Eigenständig gebrandet (KEINE
   UiKit-Tokens/--dp-*) — lokale Custom Properties + selbst gehostete Fonts, angelehnt an
   die Fehntjer-Huus-Homepage (css/styles.css, css/fonts.css). */

@font-face {
    font-family: 'Outfit';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/fonts/outfit-400-latin.woff2') format('woff2');
}

@font-face {
    font-family: 'Outfit';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('/fonts/outfit-600-latin.woff2') format('woff2');
}

@font-face {
    font-family: 'Outfit';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('/fonts/outfit-700-latin.woff2') format('woff2');
}

@font-face {
    font-family: 'Source Sans 3';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/fonts/source-sans-3-400-latin.woff2') format('woff2');
}

@font-face {
    font-family: 'Source Sans 3';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('/fonts/source-sans-3-600-latin.woff2') format('woff2');
}

.intake-page[b-ptjqoh1guy] {
    /* Fehntjer-Huus-Palette (lokal, s. Design-Sprache) */
    --fh-base: #FDF8F0;
    --fh-primary: #C67B4E;
    --fh-primary-dark: #A8643D;
    --fh-secondary: #3D6B50;
    --fh-secondary-dark: #2E5340;
    --fh-sage: #E8EDE5;
    --fh-text: #2D2926;
    --fh-text-light: #5A5550;
    --fh-amber: #D4A574;
    --fh-white: #FFFFFF;
    --fh-border: #E0D8CF;
    --fh-danger: #B3432E;
    --fh-radius: 12px;
    --fh-radius-sm: 8px;
    --fh-shadow: 0 4px 12px rgba(45, 41, 38, .10);
    --fh-font-heading: 'Outfit', system-ui, sans-serif;
    --fh-font-body: 'Source Sans 3', system-ui, sans-serif;

    min-height: 100vh;
    background: var(--fh-base);
    display: flex;
    justify-content: center;
    padding: 24px 16px;
    font-family: var(--fh-font-body);
    color: var(--fh-text);
    -webkit-font-smoothing: antialiased;
}

.intake-card[b-ptjqoh1guy] {
    width: 100%;
    max-width: 560px;
    background: var(--fh-white);
    border-radius: var(--fh-radius);
    box-shadow: var(--fh-shadow);
    padding: 28px 24px;
    align-self: flex-start;
}

.intake-eyebrow[b-ptjqoh1guy] {
    display: block;
    font-size: .75rem;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: var(--fh-secondary);
    margin-bottom: 6px;
}

.intake-header h1[b-ptjqoh1guy] {
    font-family: var(--fh-font-heading);
    font-weight: 700;
    letter-spacing: -0.01em;
    font-size: 1.7rem;
    color: var(--fh-primary);
    margin: 0 0 4px;
}

.intake-sub[b-ptjqoh1guy] { color: var(--fh-text-light); margin: 0 0 16px; }

.intake-progress[b-ptjqoh1guy] {
    height: 8px;
    border-radius: 4px;
    background: var(--fh-sage);
    overflow: hidden;
}

.intake-progress__bar[b-ptjqoh1guy] {
    height: 100%;
    background: var(--fh-secondary);
    transition: width .3s ease;
}

.intake-step-label[b-ptjqoh1guy] {
    font-size: .85rem;
    color: var(--fh-text-light);
    margin: 10px 0 0;
}

.intake-section[b-ptjqoh1guy] { margin-top: 20px; }

.intake-field[b-ptjqoh1guy] { display: block; margin-bottom: 16px; }

.intake-field span[b-ptjqoh1guy] {
    display: block;
    font-family: var(--fh-font-heading);
    font-weight: 600;
    font-size: .9rem;
    color: var(--fh-secondary);
    margin-bottom: 6px;
}

.intake-field input[b-ptjqoh1guy],
.intake-field select[b-ptjqoh1guy],
.intake-field textarea[b-ptjqoh1guy] {
    width: 100%;
    font-family: var(--fh-font-body);
    font-size: 1rem;
    padding: 12px 14px;
    border: 1px solid var(--fh-border);
    border-radius: var(--fh-radius-sm);
    background: var(--fh-white);
    color: var(--fh-text);
    box-sizing: border-box;
    transition: border-color .2s ease;
}

.intake-field input:focus[b-ptjqoh1guy],
.intake-field select:focus[b-ptjqoh1guy],
.intake-field textarea:focus[b-ptjqoh1guy] {
    outline: none;
    border-color: var(--fh-primary);
}

.intake-check[b-ptjqoh1guy] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 12px;
    font-size: 1rem;
    color: var(--fh-text);
}

.intake-check input[b-ptjqoh1guy] {
    width: 22px;
    height: 22px;
    flex-shrink: 0;
    accent-color: var(--fh-primary);
}

.intake-consent[b-ptjqoh1guy] {
    padding: 16px;
    border: 1px solid var(--fh-border);
    border-radius: var(--fh-radius-sm);
    background: var(--fh-sage);
}

.intake-contact[b-ptjqoh1guy] {
    border: 1px solid var(--fh-border);
    border-radius: var(--fh-radius);
    background: var(--fh-sage);
    padding: 16px;
    margin-bottom: 16px;
}

.intake-contact legend[b-ptjqoh1guy] {
    font-family: var(--fh-font-heading);
    font-weight: 600;
    font-size: .9rem;
    color: var(--fh-secondary);
    padding: 0 4px;
}

.intake-add[b-ptjqoh1guy], .intake-remove[b-ptjqoh1guy] {
    background: none;
    border: none;
    color: var(--fh-primary);
    font-weight: 600;
    font-size: .9rem;
    cursor: pointer;
    padding: 4px 0;
}

.intake-remove[b-ptjqoh1guy] { color: var(--fh-danger); }

.intake-nav[b-ptjqoh1guy] {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-top: 24px;
}

.intake-btn[b-ptjqoh1guy] {
    flex: 1;
    font-family: var(--fh-font-heading);
    font-weight: 600;
    font-size: 1rem;
    padding: 14px;
    border-radius: var(--fh-radius-sm);
    border: 1px solid var(--fh-primary);
    background: var(--fh-primary);
    color: var(--fh-white);
    cursor: pointer;
    transition: background .2s ease, border-color .2s ease;
}

.intake-btn:hover:not(:disabled)[b-ptjqoh1guy] {
    background: var(--fh-primary-dark);
    border-color: var(--fh-primary-dark);
}

.intake-btn--ghost[b-ptjqoh1guy] {
    background: none;
    color: var(--fh-primary);
}

.intake-btn--ghost:hover:not(:disabled)[b-ptjqoh1guy] {
    background: var(--fh-sage);
}

/* Absenden: gleiches Terrakotta wie „Weiter“ (bewusst kein Farbwechsel am letzten Schritt). */
.intake-btn--primary[b-ptjqoh1guy] {
    background: var(--fh-primary);
    border-color: var(--fh-primary);
}

.intake-btn--primary:hover:not(:disabled)[b-ptjqoh1guy] {
    background: var(--fh-primary-dark);
    border-color: var(--fh-primary-dark);
}

.intake-btn:disabled[b-ptjqoh1guy] { opacity: .6; cursor: default; }

.intake-errors[b-ptjqoh1guy] {
    background: color-mix(in srgb, var(--fh-danger) 10%, transparent);
    border: 1px solid var(--fh-danger);
    border-radius: var(--fh-radius-sm);
    padding: 10px 14px;
    margin-top: 16px;
    color: var(--fh-danger);
}

.intake-errors p[b-ptjqoh1guy] { margin: 4px 0; font-size: .9rem; }

.intake-hint[b-ptjqoh1guy] { font-size: .9rem; color: var(--fh-text-light); }

.intake-state[b-ptjqoh1guy] { text-align: center; padding: 32px 0; }

.intake-state h1[b-ptjqoh1guy] {
    font-family: var(--fh-font-heading);
    font-weight: 700;
    color: var(--fh-primary);
    font-size: 1.7rem;
}

.intake-done-icon[b-ptjqoh1guy] {
    width: 64px; height: 64px; margin: 0 auto 16px;
    border-radius: 50%;
    background: var(--fh-secondary);
    color: var(--fh-white); font-size: 32px; line-height: 64px;
}

.intake-spinner[b-ptjqoh1guy] {
    width: 36px; height: 36px; margin: 0 auto 16px;
    border: 4px solid var(--fh-sage);
    border-top-color: var(--fh-primary);
    border-radius: 50%;
    animation: intake-spin-b-ptjqoh1guy 1s linear infinite;
}

@keyframes intake-spin-b-ptjqoh1guy { to { transform: rotate(360deg); } }
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Components/ShiftPlannerCell.razor.rz.scp.css */
.shift-cell[b-6p9zk2r9gc] {
    position: relative;
    padding: var(--dp-space-1);
    min-height: 50px;
    border-right: 2px solid var(--dp-slate-400);
    cursor: pointer;
    transition: background var(--transition-base);
}

.shift-cell:hover[b-6p9zk2r9gc] {
    background: var(--dp-slate-100);
}

.shift-cell.day-alt[b-6p9zk2r9gc] {
    background: rgba(0, 0, 0, 0.025);
}

.shift-cell.today[b-6p9zk2r9gc] {
    background: rgba(139, 92, 246, 0.05);
}

.shift-cell.day-alt.today[b-6p9zk2r9gc] {
    background: rgba(139, 92, 246, 0.08);
}

.shift-cell.even-row[b-6p9zk2r9gc] {
    background: rgba(0, 0, 0, 0.035);
}

.shift-cell.even-row.today[b-6p9zk2r9gc] {
    background: rgba(139, 92, 246, 0.08);
}

.shift-cell.even-row.day-alt[b-6p9zk2r9gc] {
    background: rgba(0, 0, 0, 0.05);
}

.shift-cell.even-row.day-alt.today[b-6p9zk2r9gc] {
    background: rgba(139, 92, 246, 0.1);
}

/* ─── Holiday Cells ─── */
.shift-cell.holiday[b-6p9zk2r9gc] {
    background:
        repeating-linear-gradient(
            45deg,
            transparent,
            transparent 8px,
            rgba(185, 28, 28, 0.04) 8px,
            rgba(185, 28, 28, 0.04) 9px
        ),
        repeating-linear-gradient(
            -45deg,
            transparent,
            transparent 8px,
            rgba(185, 28, 28, 0.04) 8px,
            rgba(185, 28, 28, 0.04) 9px
        ),
        #fef8f8;
    cursor: default;
    pointer-events: none;
}

.shift-cell.holiday:hover[b-6p9zk2r9gc] {
    background:
        repeating-linear-gradient(
            45deg,
            transparent,
            transparent 8px,
            rgba(185, 28, 28, 0.04) 8px,
            rgba(185, 28, 28, 0.04) 9px
        ),
        repeating-linear-gradient(
            -45deg,
            transparent,
            transparent 8px,
            rgba(185, 28, 28, 0.04) 8px,
            rgba(185, 28, 28, 0.04) 9px
        ),
        #fef8f8;
}

.shift-cell.holiday.even-row[b-6p9zk2r9gc] {
    background:
        repeating-linear-gradient(
            45deg,
            transparent,
            transparent 8px,
            rgba(185, 28, 28, 0.05) 8px,
            rgba(185, 28, 28, 0.05) 9px
        ),
        repeating-linear-gradient(
            -45deg,
            transparent,
            transparent 8px,
            rgba(185, 28, 28, 0.05) 8px,
            rgba(185, 28, 28, 0.05) 9px
        ),
        #fdf3f3;
}

.shift-cell.holiday.day-alt[b-6p9zk2r9gc] {
    background:
        repeating-linear-gradient(
            45deg,
            transparent,
            transparent 8px,
            rgba(185, 28, 28, 0.05) 8px,
            rgba(185, 28, 28, 0.05) 9px
        ),
        repeating-linear-gradient(
            -45deg,
            transparent,
            transparent 8px,
            rgba(185, 28, 28, 0.05) 8px,
            rgba(185, 28, 28, 0.05) 9px
        ),
        #fdf3f3;
}

.shift-cell.holiday.even-row.day-alt[b-6p9zk2r9gc] {
    background:
        repeating-linear-gradient(
            45deg,
            transparent,
            transparent 8px,
            rgba(185, 28, 28, 0.06) 8px,
            rgba(185, 28, 28, 0.06) 9px
        ),
        repeating-linear-gradient(
            -45deg,
            transparent,
            transparent 8px,
            rgba(185, 28, 28, 0.06) 8px,
            rgba(185, 28, 28, 0.06) 9px
        ),
        #fceded;
}

.holiday-indicator[b-6p9zk2r9gc] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    min-height: 32px;
}

.holiday-dash[b-6p9zk2r9gc] {
    font-size: var(--text-md);
    color: #d4a0a0;
    opacity: 0.7;
    letter-spacing: 2px;
}

/* ─── Drag & Drop ─── */
.shift-cell.drag-over[b-6p9zk2r9gc] {
    background: rgba(59, 130, 246, 0.15);
    border: 2px dashed var(--accent);
}

.shift-cell.drag-invalid[b-6p9zk2r9gc] {
    background: rgba(239, 68, 68, 0.1);
    border: 2px dashed var(--status-danger);
}

.timeline-container[b-6p9zk2r9gc] {
    position: relative;
    height: 100%;
    min-height: 42px;
}

.shift-item[b-6p9zk2r9gc] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
    border-left: 3px solid;
    cursor: grab;
    transition: transform var(--transition-base), opacity var(--transition-base);
}

/* Timeline positioning for multiple shifts in one cell */
.shift-item.timeline-positioned[b-6p9zk2r9gc] {
    position: absolute;
    top: var(--dp-space-1);
    bottom: var(--dp-space-1);
    /* left and width come from inline style */
    padding: 2px var(--dp-space-1);
    font-size: 0.7rem;
    overflow: hidden;
    white-space: nowrap;
}

.shift-item:hover[b-6p9zk2r9gc] {
    transform: translateY(-1px);
    box-shadow: var(--shadow-sm);
}

.shift-item.dragging[b-6p9zk2r9gc] {
    opacity: 0.5;
    transform: scale(0.95);
}

.shift-code[b-6p9zk2r9gc] {
    font-weight: var(--font-semibold);
}

.shift-time[b-6p9zk2r9gc] {
    font-size: 0.65rem;
    opacity: 0.8;
}

.empty-cell-indicator[b-6p9zk2r9gc] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    min-height: 32px;
    color: var(--dp-slate-300);
    opacity: 0.3;
    transition: opacity var(--transition-base);
    cursor: pointer;
}

.shift-cell:hover .empty-cell-indicator[b-6p9zk2r9gc] {
    opacity: 1;
    color: var(--dp-blue-600);
}

/* Stempeluhr-Overlay: Ist-Spur am unteren Zellenrand */
.stamp-block[b-6p9zk2r9gc] {
    position: absolute;
    bottom: 2px;
    height: 6px;
    background: linear-gradient(90deg, var(--status-success) 0%, var(--dp-emerald-700) 100%);
    border-radius: 3px;
    opacity: 0.85;
    pointer-events: auto;
    cursor: help;
    z-index: 2;
    box-shadow: var(--shadow-sm);
}

.stamp-block:hover[b-6p9zk2r9gc] {
    opacity: 1;
    height: 8px;
}

.stamp-block--unplanned[b-6p9zk2r9gc] {
    background: var(--dp-amber-600);
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Components/ShiftPlannerDayHeader.razor.rz.scp.css */
.day-header[b-ucrettmblq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--dp-space-3) var(--dp-space-2);
    font-size: var(--text-md);
    color: var(--dp-slate-600);
    background: var(--dp-slate-100);
    border-right: 2px solid var(--dp-slate-400);
}

.day-header.day-alt[b-ucrettmblq] {
    background: var(--dp-slate-200);
}

.day-header.today[b-ucrettmblq] {
    background: linear-gradient(135deg, var(--dp-blue-600) 0%, var(--dp-purple-700) 100%);
    color: var(--text-inverse);
}

.day-header.today .day-name[b-ucrettmblq],
.day-header.today .day-date[b-ucrettmblq] {
    color: var(--text-inverse);
}

.day-name[b-ucrettmblq] {
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
}

.day-date[b-ucrettmblq] {
    font-size: var(--text-sm-plus);
    opacity: 0.8;
}

/* ─── Holiday Header ─── */
.day-header.holiday[b-ucrettmblq] {
    background:
        linear-gradient(180deg, #fef2f2 0%, #fee2e2 100%);
    border-bottom: 2px solid #fca5a5;
    position: relative;
}

.day-header.holiday.day-alt[b-ucrettmblq] {
    background:
        linear-gradient(180deg, #fde8e8 0%, #fdd9d9 100%);
}

.day-header.holiday.today[b-ucrettmblq] {
    background:
        linear-gradient(135deg, #e57373 0%, #9575cd 100%);
    border-bottom: 2px solid rgba(255, 255, 255, 0.3);
}

.day-header.holiday.today .day-name[b-ucrettmblq],
.day-header.holiday.today .day-date[b-ucrettmblq] {
    color: var(--text-inverse);
}

.day-header.holiday.today .holiday-name[b-ucrettmblq] {
    color: rgba(255, 255, 255, 0.95);
    background: rgba(255, 255, 255, 0.15);
    border-color: rgba(255, 255, 255, 0.25);
}

.holiday-name[b-ucrettmblq] {
    display: inline-block;
    font-size: 0.6rem;
    font-weight: var(--font-semibold);
    color: #b91c1c;
    background: rgba(185, 28, 28, 0.08);
    border: 1px solid rgba(185, 28, 28, 0.15);
    border-radius: var(--dp-radius-full);
    padding: 1px 8px;
    margin-top: 3px;
    line-height: 1.4;
    letter-spacing: 0.01em;
    white-space: nowrap;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Components/ShiftPlannerGrid.razor.rz.scp.css */
.shift-planner-grid[b-28r01tzsbg] {
    display: flex;
    flex-direction: column;
    flex: 1;
    overflow: hidden;
    background: var(--surface-primary);
}

.grid-header[b-28r01tzsbg] {
    display: grid;
    grid-template-columns: 180px repeat(5, 1fr) 120px;
    background: var(--dp-slate-100);
    border-bottom: 2px solid var(--border-default);
    position: sticky;
    top: 0;
    z-index: var(--z-dropdown);
}

.employee-column-header[b-28r01tzsbg],
.hours-column-header[b-28r01tzsbg] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--dp-space-3) var(--dp-space-2);
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
    color: var(--dp-slate-600);
    background: var(--dp-slate-100);
    border-right: 1px solid var(--border-default);
}

.hours-column-header[b-28r01tzsbg] {
    border-right: none;
}

.grid-body[b-28r01tzsbg] {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Components/ShiftPlannerHeader.razor.rz.scp.css */
.shift-planner-header[b-75kapxidps] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--dp-space-3) var(--dp-space-4);
    background: linear-gradient(135deg, var(--dp-blue-600) 0%, var(--dp-purple-700) 100%);
    color: var(--text-inverse);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.header-left[b-75kapxidps] {
    display: flex;
    align-items: center;
}

.header-title[b-75kapxidps] {
    margin: 0;
    font-size: var(--text-2xl);
    font-weight: var(--font-semibold);
}

.header-center[b-75kapxidps] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
}

.week-navigation[b-75kapxidps] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.nav-btn[b-75kapxidps] {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: var(--text-inverse);
    padding: var(--dp-space-2) var(--dp-space-3);
    border-radius: var(--dp-radius-4);
    cursor: pointer;
    transition: all var(--transition-base);
}

.nav-btn:hover[b-75kapxidps] {
    background: rgba(255, 255, 255, 0.2);
}

.current-week[b-75kapxidps] {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 180px;
}

.week-label[b-75kapxidps] {
    font-size: var(--text-md);
    font-weight: var(--font-semibold);
    opacity: 0.9;
}

.week-dates[b-75kapxidps] {
    font-size: var(--text-lg);
    font-weight: var(--font-medium);
}

.today-btn[b-75kapxidps] {
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: var(--text-inverse);
    padding: var(--dp-space-2) var(--dp-space-4);
    border-radius: var(--dp-radius-4);
    cursor: pointer;
    transition: all var(--transition-base);
    font-weight: var(--font-medium);
}

.today-btn:hover[b-75kapxidps] {
    background: rgba(255, 255, 255, 0.25);
}

.header-right[b-75kapxidps] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
}

.evaluation-month[b-75kapxidps] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.month-label[b-75kapxidps] {
    font-size: var(--text-md);
    opacity: 0.9;
}

.month-select[b-75kapxidps] {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: var(--text-inverse);
    padding: 6px var(--dp-space-3);
    border-radius: var(--dp-radius-4);
    cursor: pointer;
}

.month-select option[b-75kapxidps] {
    background: var(--dp-blue-800);
    color: var(--text-inverse);
}

.action-buttons[b-75kapxidps] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.action-btn[b-75kapxidps] {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: var(--text-inverse);
    padding: var(--dp-space-2) var(--dp-space-3);
    border-radius: var(--dp-radius-4);
    cursor: pointer;
    transition: all var(--transition-base);
}

.action-btn:hover[b-75kapxidps] {
    background: rgba(255, 255, 255, 0.2);
}

.action-btn.active[b-75kapxidps] {
    background: rgba(255, 255, 255, 0.3);
    border-color: rgba(255, 255, 255, 0.5);
    box-shadow: 0 0 8px rgba(255, 255, 255, 0.3);
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Components/ShiftPlannerHeatmap.razor.rz.scp.css */
.heatmap-container[b-mcn5lprv19] {
    background: var(--surface-primary);
    border-bottom: 1px solid var(--border-default);
    padding: var(--dp-space-3) var(--dp-space-4);
}

.heatmap-header[b-mcn5lprv19] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: var(--dp-space-3);
}

.heatmap-title[b-mcn5lprv19] {
    font-weight: var(--font-semibold);
    color: var(--dp-slate-900);
    font-size: 0.9rem;
}

.config-btn[b-mcn5lprv19] {
    background: transparent;
    border: 1px solid var(--border-default);
    color: var(--dp-slate-500);
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    cursor: pointer;
    transition: all var(--transition-base);
}

.config-btn:hover[b-mcn5lprv19] {
    background: var(--dp-slate-100);
    color: var(--dp-slate-900);
    border-color: var(--dp-slate-300);
}

.heatmap-grid[b-mcn5lprv19] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.heatmap-row[b-mcn5lprv19] {
    display: flex;
    gap: 2px;
}

.header-row[b-mcn5lprv19] {
    margin-bottom: var(--dp-space-1);
}

.heatmap-label[b-mcn5lprv19] {
    width: 80px;
    min-width: 80px;
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
    padding: var(--dp-space-1) var(--dp-space-2);
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-600);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-2);
}

.dept-code[b-mcn5lprv19] {
    font-weight: var(--font-semibold);
    color: var(--dp-slate-900);
}

.shift-code[b-mcn5lprv19] {
    color: var(--dp-slate-500);
}

.heatmap-day-header[b-mcn5lprv19] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: var(--dp-space-1);
    text-align: center;
}

.day-name[b-mcn5lprv19] {
    font-weight: var(--font-semibold);
    color: var(--dp-slate-900);
    font-size: var(--text-sm-plus);
    text-transform: uppercase;
}

.day-date[b-mcn5lprv19] {
    font-size: 0.7rem;
    color: var(--dp-slate-500);
}

.heatmap-cell[b-mcn5lprv19] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 6px var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    cursor: help;
    transition: all var(--transition-base);
    min-height: 28px;
}

.heatmap-cell:hover[b-mcn5lprv19] {
    transform: scale(1.05);
    box-shadow: var(--shadow-sm);
}

.cell-value[b-mcn5lprv19] {
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    color: var(--text-inverse);
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

/* Status-specific colors handled via inline styles from BackgroundColor property */
.staffing-critical .cell-value[b-mcn5lprv19],
.staffing-under .cell-value[b-mcn5lprv19],
.staffing-optimal .cell-value[b-mcn5lprv19],
.staffing-over .cell-value[b-mcn5lprv19] {
    color: var(--text-inverse);
}

.heatmap-legend[b-mcn5lprv19] {
    display: flex;
    gap: var(--dp-space-4);
    margin-top: var(--dp-space-3);
    padding-top: var(--dp-space-2);
    border-top: 1px solid var(--border-default);
}

.legend-item[b-mcn5lprv19] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.legend-color[b-mcn5lprv19] {
    width: 14px;
    height: 14px;
    border-radius: var(--dp-radius-2);
}

.legend-text[b-mcn5lprv19] {
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-500);
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Components/ShiftPlannerHoursDisplay.razor.rz.scp.css */
.hours-cell[b-lmymmod115] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--dp-space-2);
    background: var(--dp-slate-50);
    font-size: var(--text-sm-plus);
}

.hours-display[b-lmymmod115] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.hours-values[b-lmymmod115] {
    display: flex;
    gap: 2px;
    color: var(--dp-slate-500);
}

.soll[b-lmymmod115] {
    color: var(--dp-slate-500);
}

.separator[b-lmymmod115] {
    color: var(--dp-slate-400);
}

.ist[b-lmymmod115] {
    color: var(--dp-slate-700);
    font-weight: var(--font-medium);
}

.stamped[b-lmymmod115] {
    color: var(--dp-emerald-700);
    font-weight: 600;
}

.hours-diff[b-lmymmod115] {
    font-size: 0.7rem;
}

.hours-diff.hours-over[b-lmymmod115] {
    color: var(--dp-emerald-700);
}

.hours-diff.hours-under[b-lmymmod115] {
    color: var(--dp-red-700);
}

.hours-diff.hours-ok[b-lmymmod115] {
    color: var(--dp-slate-500);
}

.hours-cell.even-row[b-lmymmod115] {
    background: var(--dp-slate-100);
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Components/ShiftPlannerLegend.razor.rz.scp.css */
.shift-legend[b-qa9l7guy1q] {
    background: var(--surface-primary);
    border-top: 1px solid var(--border-default);
    transition: all var(--transition-slow);
}

.legend-header[b-qa9l7guy1q] {
    display: flex;
    align-items: center;
    padding: var(--dp-space-3) var(--dp-space-4);
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
    color: var(--dp-slate-600);
    cursor: pointer;
    user-select: none;
    background: var(--dp-slate-50);
}

.legend-header:hover[b-qa9l7guy1q] {
    background: var(--dp-slate-100);
}

.legend-content[b-qa9l7guy1q] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-4);
    padding: var(--dp-space-3) var(--dp-space-4);
}

.legend-group[b-qa9l7guy1q] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.legend-group-header[b-qa9l7guy1q] {
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-500);
    padding-left: var(--dp-space-2);
    border-left: 3px solid var(--dp-slate-300);
}

.legend-items[b-qa9l7guy1q] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.legend-item[b-qa9l7guy1q] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: var(--dp-space-1) 10px;
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
}

.legend-item .shift-code[b-qa9l7guy1q] {
    font-weight: var(--font-semibold);
}

.legend-item .shift-time[b-qa9l7guy1q] {
    opacity: 0.9;
}

.legend-item.leave-vacation[b-qa9l7guy1q] {
    background: repeating-linear-gradient(
        45deg,
        var(--status-warning-light),
        var(--status-warning-light) 5px,
        #fde68a 5px,
        #fde68a 10px
    );
    color: var(--dp-amber-600);
}

.legend-item.leave-sick[b-qa9l7guy1q] {
    background: repeating-linear-gradient(
        45deg,
        var(--status-danger-light),
        var(--status-danger-light) 5px,
        #fecaca 5px,
        #fecaca 10px
    );
    color: var(--dp-red-700);
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Components/ShiftPlannerRoleGroup.razor.rz.scp.css */
.role-group[b-rp6otz319w] {
    border-bottom: 1px solid var(--border-default);
}

.role-header[b-rp6otz319w] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: 10px var(--dp-space-3);
    background: var(--dp-slate-50);
    cursor: pointer;
    user-select: none;
    transition: background var(--transition-base);
}

.role-header:hover[b-rp6otz319w] {
    background: var(--dp-slate-100);
}

.role-toggle[b-rp6otz319w] {
    width: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--dp-slate-500);
}

.role-color-indicator[b-rp6otz319w] {
    width: 12px;
    height: 12px;
    border-radius: 3px;
}

.role-name[b-rp6otz319w] {
    font-weight: var(--font-semibold);
    font-size: 0.9rem;
    color: var(--dp-slate-700);
}

.employee-count[b-rp6otz319w] {
    font-size: 0.8rem;
    color: var(--dp-slate-500);
    margin-left: auto;
}

.role-employees[b-rp6otz319w] {
    background: var(--surface-primary);
}

/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Components/ShiftPlannerRow.razor.rz.scp.css */
.employee-row[b-3subcil0ig] {
    display: grid;
    grid-template-columns: 180px repeat(5, 1fr) 120px;
    border-bottom: 1px solid var(--border-default);
    min-height: 48px;
}

.employee-row:hover[b-3subcil0ig] {
    background: var(--dp-slate-50);
}

.employee-cell[b-3subcil0ig] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
    justify-content: space-between;
    padding: var(--dp-space-2) var(--dp-space-3);
    background: var(--dp-slate-50);
    border-right: 1px solid var(--border-default);
    border-left: 3px solid var(--role-color, var(--dp-slate-300));
}

.employee-name[b-3subcil0ig] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--dp-slate-700);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.employee-info[b-3subcil0ig] {
    display: flex;
    flex-direction: column;
    gap: 1px;
    overflow: hidden;
    flex: 1;
    min-width: 0;
}

.employee-name-line[b-3subcil0ig] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
}

.employee-badges-line[b-3subcil0ig] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.contract-days-badge[b-3subcil0ig] {
    font-size: 0.65rem;
    color: var(--dp-slate-400);
    white-space: nowrap;
    flex-shrink: 0;
}

.vacation-days-badge[b-3subcil0ig] {
    font-size: 0.65rem;
    color: var(--status-warning);
    white-space: nowrap;
    flex-shrink: 0;
}

.week-warning-icon[b-3subcil0ig] {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    font-size: 0.85rem;
    cursor: help;
    color: var(--status-warning);
}

.overtime-badge[b-3subcil0ig] {
    font-size: 0.6rem;
    white-space: nowrap;
    flex-shrink: 0;
    padding: 0 2px;
    border-radius: 2px;
}

.overtime-positive[b-3subcil0ig] {
    color: var(--status-success);
}

.overtime-negative[b-3subcil0ig] {
    color: var(--status-danger);
}

.employee-row.even-row .employee-cell[b-3subcil0ig] {
    background: var(--dp-slate-100);
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/CustomShiftPlanner.razor.rz.scp.css */
/* Main container */
.custom-shift-planner[b-pvlor1f8wy] {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    max-width: none;
    /* .page-body setzt margin: 0 auto — horizontale auto-Margins schalten in der
       Flex-Spalte das Breiten-Stretching ab (Planner schrumpft auf fit-content und
       zentriert sich). width + margin explizit setzen = volle Breite. */
    width: 100%;
    margin: 0;
    padding: var(--dp-space-3);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-4);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}

/* Loading overlay */
.loading-overlay[b-pvlor1f8wy] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1;
    background: rgba(255, 255, 255, 0.9);
}

.loading-text[b-pvlor1f8wy] {
    font-size: var(--text-lg);
    color: var(--dp-slate-500);
}

/* Role colors */
[b-pvlor1f8wy] .role-1 { --role-color: var(--accent); --role-border: var(--dp-blue-800); }
[b-pvlor1f8wy] .role-2 { --role-color: var(--status-success); --role-border: var(--dp-emerald-700); }
[b-pvlor1f8wy] .role-3 { --role-color: var(--status-warning); --role-border: var(--dp-amber-600); }
[b-pvlor1f8wy] .role-4 { --role-color: var(--dp-blue-600); --role-border: var(--dp-purple-700); }
[b-pvlor1f8wy] .role-5 { --role-color: var(--status-info); --role-border: var(--dp-cyan-500); }
[b-pvlor1f8wy] .role-6 { --role-color: #f97316; --role-border: #ea580c; }
[b-pvlor1f8wy] .role-7 { --role-color: var(--dp-slate-500); --role-border: var(--dp-slate-600); }
[b-pvlor1f8wy] .role-8 { --role-color: var(--status-danger); --role-border: var(--dp-red-700); }

/* Leave shift styles */
[b-pvlor1f8wy] .leave-vacation-shift {
    background: repeating-linear-gradient(
        45deg,
        var(--status-warning-light),
        var(--status-warning-light) 5px,
        #fde68a 5px,
        #fde68a 10px
    ) !important;
    color: #92400e !important;
    border-color: var(--status-warning) !important;
}

[b-pvlor1f8wy] .leave-sick-shift {
    background: repeating-linear-gradient(
        45deg,
        var(--status-danger-light),
        var(--status-danger-light) 5px,
        #fecaca 5px,
        #fecaca 10px
    ) !important;
    color: #991b1b !important;
    border-color: var(--status-danger) !important;
}

[b-pvlor1f8wy] .leave-shift {
    background: repeating-linear-gradient(
        45deg,
        var(--dp-slate-200),
        var(--dp-slate-200) 5px,
        var(--dp-slate-300) 5px,
        var(--dp-slate-300) 10px
    ) !important;
    color: var(--dp-slate-700) !important;
    border-color: var(--dp-slate-500) !important;
}

[b-pvlor1f8wy] .leave-training-shift {
    background: repeating-linear-gradient(
        45deg,
        #e0f2fe,
        #e0f2fe 5px,
        #bae6fd 5px,
        #bae6fd 10px
    ) !important;
    color: #0369a1 !important;
    border-color: #0ea5e9 !important;
}

/* Hours deviation styles */
[b-pvlor1f8wy] .hours-over {
    color: var(--dp-emerald-700);
    font-weight: var(--font-semibold);
}

[b-pvlor1f8wy] .hours-under {
    color: var(--dp-red-700);
    font-weight: var(--font-semibold);
}

[b-pvlor1f8wy] .hours-ok {
    color: var(--dp-slate-500);
}

/* Drag and drop styles */
[b-pvlor1f8wy] .dragging {
    opacity: 0.5;
    transform: scale(0.95);
}

[b-pvlor1f8wy] .drag-over {
    background-color: rgba(59, 130, 246, 0.1);
    border: 2px dashed var(--accent);
}

[b-pvlor1f8wy] .drag-invalid {
    background-color: rgba(239, 68, 68, 0.1);
    border: 2px dashed var(--status-danger);
}

/* Scrollbar styling */
[b-pvlor1f8wy] ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

[b-pvlor1f8wy] ::-webkit-scrollbar-track {
    background: var(--dp-slate-100);
    border-radius: var(--dp-radius-2);
}

[b-pvlor1f8wy] ::-webkit-scrollbar-thumb {
    background: var(--dp-slate-300);
    border-radius: var(--dp-radius-2);
}

[b-pvlor1f8wy] ::-webkit-scrollbar-thumb:hover {
    background: var(--dp-slate-400);
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Dialogs/CopyMonthDialog.razor.rz.scp.css */
.dialog-backdrop[b-s22iddi8zt] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: var(--z-modal-backdrop);
}

.copy-month-dialog[b-s22iddi8zt] {
    position: fixed;
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-xl);
    z-index: var(--z-modal);
    min-width: 400px;
    max-width: 500px;
}

.dialog-header[b-s22iddi8zt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--dp-space-4) var(--dp-space-5);
    border-bottom: 1px solid var(--border-default);
}

.dialog-title[b-s22iddi8zt] {
    margin: 0;
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-800);
}

.close-btn[b-s22iddi8zt] {
    background: none;
    border: none;
    color: var(--dp-slate-500);
    cursor: pointer;
    padding: var(--dp-space-1);
    border-radius: var(--dp-radius-2);
}

.close-btn:hover[b-s22iddi8zt] {
    background: var(--dp-slate-100);
    color: var(--dp-slate-700);
}

.dialog-body[b-s22iddi8zt] {
    padding: var(--dp-space-5);
}

.info-box[b-s22iddi8zt] {
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--dp-slate-100);
    border-radius: var(--dp-radius-4);
    color: var(--dp-slate-600);
    font-size: var(--text-md);
    margin-bottom: var(--dp-space-5);
}

.form-group[b-s22iddi8zt] {
    margin-bottom: var(--dp-space-4);
}

.form-label[b-s22iddi8zt] {
    display: block;
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
    margin-bottom: var(--dp-space-2);
}

.form-select[b-s22iddi8zt] {
    width: 100%;
    padding: 10px var(--dp-space-3);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    font-size: 0.9rem;
    color: var(--dp-slate-800);
}

.form-select:focus[b-s22iddi8zt] {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.checkbox-group[b-s22iddi8zt] {
    margin-bottom: var(--dp-space-2);
}

.checkbox-item[b-s22iddi8zt] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: 6px 0;
    cursor: pointer;
    font-size: var(--text-md);
    color: var(--dp-slate-700);
}

.checkbox-item input[type="checkbox"][b-s22iddi8zt] {
    width: 16px;
    height: 16px;
    accent-color: var(--accent);
}

.employee-list[b-s22iddi8zt] {
    max-height: 200px;
    overflow-y: auto;
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-2) var(--dp-space-3);
}

.dialog-footer[b-s22iddi8zt] {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-2);
    padding: var(--dp-space-4) var(--dp-space-5);
    border-top: 1px solid var(--border-default);
}

.btn-cancel[b-s22iddi8zt] {
    background: var(--dp-slate-100);
    border: 1px solid var(--border-default);
    color: var(--dp-slate-600);
    padding: 10px var(--dp-space-4);
    border-radius: var(--dp-radius-4);
    cursor: pointer;
    font-weight: var(--font-medium);
}

.btn-cancel:hover[b-s22iddi8zt] {
    background: var(--dp-slate-200);
}

.btn-copy[b-s22iddi8zt] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    color: var(--text-inverse);
    padding: 10px var(--dp-space-5);
    border-radius: var(--dp-radius-4);
    cursor: pointer;
    font-weight: var(--font-medium);
}

.btn-copy:hover:not(:disabled)[b-s22iddi8zt] {
    opacity: 0.9;
}

.btn-copy:disabled[b-s22iddi8zt] {
    opacity: 0.6;
    cursor: not-allowed;
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Dialogs/ShiftEditDialog.razor.rz.scp.css */
.dialog-backdrop[b-mc7qssy1h4] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: var(--z-modal-backdrop);
}

.shift-edit-dialog[b-mc7qssy1h4] {
    position: fixed;
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-xl);
    z-index: var(--z-modal);
    min-width: 380px;
}

.dialog-header[b-mc7qssy1h4] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--dp-space-4) var(--dp-space-5);
    border-bottom: 1px solid var(--border-default);
}

.dialog-title[b-mc7qssy1h4] {
    margin: 0;
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-800);
}

.close-btn[b-mc7qssy1h4] {
    background: none;
    border: none;
    color: var(--dp-slate-500);
    cursor: pointer;
    padding: var(--dp-space-1);
    border-radius: var(--dp-radius-2);
}

.close-btn:hover[b-mc7qssy1h4] {
    background: var(--dp-slate-100);
    color: var(--dp-slate-700);
}

.dialog-body[b-mc7qssy1h4] {
    padding: var(--dp-space-5);
}

.dialog-info[b-mc7qssy1h4] {
    display: flex;
    gap: var(--dp-space-2);
    margin-bottom: var(--dp-space-2);
    font-size: 0.9rem;
}

.info-label[b-mc7qssy1h4] {
    color: var(--dp-slate-500);
    min-width: 60px;
}

.info-value[b-mc7qssy1h4] {
    color: var(--dp-slate-800);
    font-weight: var(--font-medium);
}

.time-inputs[b-mc7qssy1h4] {
    display: flex;
    align-items: flex-end;
    gap: var(--dp-space-3);
    margin-top: var(--dp-space-5);
}

.time-group[b-mc7qssy1h4] {
    flex: 1;
}

.time-label[b-mc7qssy1h4] {
    display: block;
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    color: var(--dp-slate-500);
    margin-bottom: 6px;
}

.time-input[b-mc7qssy1h4] {
    width: 100%;
    padding: 10px var(--dp-space-3);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-lg);
    color: var(--dp-slate-800);
}

.time-input:focus[b-mc7qssy1h4] {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.time-separator[b-mc7qssy1h4] {
    padding-bottom: var(--dp-space-3);
    color: var(--dp-slate-400);
}

.error-message[b-mc7qssy1h4] {
    margin-top: var(--dp-space-3);
    padding: 10px var(--dp-space-3);
    background: #fef2f2;
    border-radius: var(--dp-radius-4);
    color: var(--dp-red-700);
    font-size: var(--text-md);
}

.dialog-footer[b-mc7qssy1h4] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-4) var(--dp-space-5);
    border-top: 1px solid var(--border-default);
}

.footer-spacer[b-mc7qssy1h4] {
    flex: 1;
}

.btn-delete[b-mc7qssy1h4] {
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: var(--dp-red-700);
    padding: 10px var(--dp-space-4);
    border-radius: var(--dp-radius-4);
    cursor: pointer;
    font-weight: var(--font-medium);
}

.btn-delete:hover[b-mc7qssy1h4] {
    background: var(--status-danger-light);
    border-color: #f87171;
}

.btn-cancel[b-mc7qssy1h4] {
    background: var(--dp-slate-100);
    border: 1px solid var(--border-default);
    color: var(--dp-slate-600);
    padding: 10px var(--dp-space-4);
    border-radius: var(--dp-radius-4);
    cursor: pointer;
    font-weight: var(--font-medium);
}

.btn-cancel:hover[b-mc7qssy1h4] {
    background: var(--dp-slate-200);
}

.btn-save[b-mc7qssy1h4] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    color: var(--text-inverse);
    padding: 10px var(--dp-space-5);
    border-radius: var(--dp-radius-4);
    cursor: pointer;
    font-weight: var(--font-medium);
}

.btn-save:hover[b-mc7qssy1h4] {
    opacity: 0.9;
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Dialogs/ShiftSelectionDialog.razor.rz.scp.css */
.shift-selection-dialog *[b-5llbtnts89],
.shift-selection-dialog *[b-5llbtnts89]::before,
.shift-selection-dialog *[b-5llbtnts89]::after {
    box-sizing: border-box;
}

.dialog-backdrop[b-5llbtnts89] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: var(--z-modal-backdrop);
}

.shift-selection-dialog[b-5llbtnts89] {
    position: fixed;
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-xl);
    z-index: var(--z-modal);
    min-width: 320px;
    max-width: 420px;
    width: 420px;
    box-sizing: border-box;
}

.dialog-header[b-5llbtnts89] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--dp-space-4) var(--dp-space-5);
    border-bottom: 1px solid var(--border-default);
}

.dialog-title[b-5llbtnts89] {
    margin: 0;
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-800);
}

.close-btn[b-5llbtnts89] {
    background: none;
    border: none;
    color: var(--dp-slate-500);
    cursor: pointer;
    padding: var(--dp-space-1);
    border-radius: var(--dp-radius-2);
}

.close-btn:hover[b-5llbtnts89] {
    background: var(--dp-slate-100);
    color: var(--dp-slate-700);
}

.dialog-body[b-5llbtnts89] {
    padding: var(--dp-space-4);
    box-sizing: border-box;
}

.dialog-info[b-5llbtnts89] {
    display: flex;
    gap: var(--dp-space-2);
    margin-bottom: var(--dp-space-2);
    font-size: 0.9rem;
}

.info-label[b-5llbtnts89] {
    color: var(--dp-slate-500);
    min-width: 80px;
}

.info-value[b-5llbtnts89] {
    color: var(--dp-slate-800);
    font-weight: var(--font-medium);
}

.shift-options[b-5llbtnts89] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
    margin-top: var(--dp-space-4);
}

.shift-option[b-5llbtnts89] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--dp-slate-50);
    border: 1px solid var(--border-default);
    border-left: 4px solid;
    border-radius: var(--dp-radius-4);
    cursor: pointer;
    transition: var(--transition-base);
}

.shift-option:hover[b-5llbtnts89] {
    background: var(--dp-slate-100);
    transform: translateX(4px);
}

.shift-code[b-5llbtnts89] {
    font-weight: var(--font-semibold);
    font-size: var(--text-lg);
    color: var(--dp-slate-800);
}

.shift-time[b-5llbtnts89] {
    font-size: var(--text-md);
    color: var(--dp-slate-500);
}

.dialog-footer[b-5llbtnts89] {
    display: flex;
    justify-content: flex-end;
    padding: var(--dp-space-4) var(--dp-space-5);
    border-top: 1px solid var(--border-default);
}

.btn-cancel[b-5llbtnts89] {
    background: var(--dp-slate-100);
    border: 1px solid var(--border-default);
    color: var(--dp-slate-600);
    padding: var(--dp-space-2) var(--dp-space-4);
    border-radius: var(--dp-radius-4);
    cursor: pointer;
    font-weight: var(--font-medium);
}

.btn-cancel:hover[b-5llbtnts89] {
    background: var(--dp-slate-200);
}

.no-shifts-message[b-5llbtnts89] {
    padding: var(--dp-space-4);
    background: var(--status-warning-light);
    border: 1px solid #fcd34d;
    border-radius: var(--dp-radius-4);
    color: #92400e;
    text-align: center;
    font-size: 0.9rem;
}

.no-shifts-message small[b-5llbtnts89] {
    color: var(--dp-amber-600);
}

.section-header[b-5llbtnts89] {
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-500);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: var(--dp-space-2);
    padding-bottom: var(--dp-space-1);
    border-bottom: 1px solid var(--border-default);
}

.mt-3[b-5llbtnts89] {
    margin-top: var(--dp-space-4);
}

.leave-options[b-5llbtnts89] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-2);
}

.leave-option[b-5llbtnts89] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: var(--dp-space-3) 14px;
    background: var(--dp-slate-50);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    cursor: pointer;
    transition: var(--transition-base);
    text-align: left;
}

.leave-option:hover[b-5llbtnts89] {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

.leave-option .leave-icon[b-5llbtnts89] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: var(--dp-radius-4);
    font-size: var(--text-lg);
}

.leave-option .leave-text[b-5llbtnts89] {
    font-size: 0.85rem;
    font-weight: var(--font-medium);
    color: var(--dp-slate-700);
}

.leave-option.vacation[b-5llbtnts89] {
    border-left: 3px solid var(--status-warning);
}

.leave-option.vacation .leave-icon[b-5llbtnts89] {
    background: var(--status-warning-light);
    color: var(--dp-amber-600);
}

.leave-option.vacation:hover[b-5llbtnts89] {
    background: #fffbeb;
}

.leave-option.unpaid[b-5llbtnts89] {
    border-left: 3px solid var(--dp-blue-600);
}

.leave-option.unpaid .leave-icon[b-5llbtnts89] {
    background: var(--dp-purple-100);
    color: var(--dp-purple-700);
}

.leave-option.unpaid:hover[b-5llbtnts89] {
    background: #f5f3ff;
}

.leave-option.sick[b-5llbtnts89] {
    border-left: 3px solid var(--status-danger);
}

.leave-option.sick .leave-icon[b-5llbtnts89] {
    background: var(--status-danger-light);
    color: var(--dp-red-700);
}

.leave-option.sick:hover[b-5llbtnts89] {
    background: #fef2f2;
}

.leave-option.training[b-5llbtnts89] {
    border-left: 3px solid #0ea5e9;
}

.leave-option.training .leave-icon[b-5llbtnts89] {
    background: #e0f2fe;
    color: #0284c7;
}

.leave-option.training:hover[b-5llbtnts89] {
    background: #f0f9ff;
}

.leave-option.training.selected[b-5llbtnts89] {
    background: #e0f2fe;
    border-color: #0ea5e9;
}

.training-time-panel[b-5llbtnts89] {
    margin-top: var(--dp-space-3);
    padding: var(--dp-space-3);
    background: #f0f9ff;
    border: 1px solid #bae6fd;
    border-radius: var(--dp-radius-4);
    box-sizing: border-box;
}

.time-inputs[b-5llbtnts89] {
    display: flex;
    gap: var(--dp-space-3);
    margin-bottom: var(--dp-space-3);
}

.time-group[b-5llbtnts89] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
    min-width: 0;
}

.time-group label[b-5llbtnts89] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
}

.time-input[b-5llbtnts89] {
    width: 100%;
    padding: var(--dp-space-2);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-lg);
    text-align: center;
    box-sizing: border-box;
}

.time-input:focus[b-5llbtnts89] {
    outline: none;
    border-color: #0ea5e9;
    box-shadow: 0 0 0 2px rgba(14, 165, 233, 0.2);
}

.time-error[b-5llbtnts89] {
    color: var(--status-danger);
    font-size: var(--text-md);
    margin-bottom: var(--dp-space-2);
}

.btn-confirm[b-5llbtnts89] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-1);
    padding: var(--dp-space-2) var(--dp-space-4);
    background: #0ea5e9;
    color: white;
    border: none;
    border-radius: var(--dp-radius-4);
    font-weight: var(--font-medium);
    cursor: pointer;
    transition: var(--transition-base);
}

.btn-confirm:hover[b-5llbtnts89] {
    background: #0284c7;
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Dialogs/StaffingConfigDialog.razor.rz.scp.css */
.dialog-backdrop[b-2c33jnpeka] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: var(--z-modal-backdrop);
}

.config-dialog[b-2c33jnpeka] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-xl);
    z-index: var(--z-modal);
    width: 700px;
    max-width: 95vw;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
}

.dialog-header[b-2c33jnpeka] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--dp-space-4) var(--dp-space-6);
    border-bottom: 1px solid var(--border-default);
}

.dialog-title[b-2c33jnpeka] {
    margin: 0;
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-800);
}

.close-btn[b-2c33jnpeka] {
    background: none;
    border: none;
    padding: var(--dp-space-2);
    cursor: pointer;
    color: var(--dp-slate-500);
    border-radius: var(--dp-radius-4);
    transition: var(--transition-base);
}

.close-btn:hover[b-2c33jnpeka] {
    background: var(--dp-slate-100);
    color: var(--dp-slate-800);
}

.dialog-body[b-2c33jnpeka] {
    padding: var(--dp-space-6);
    overflow-y: auto;
    flex: 1;
}

.dialog-footer[b-2c33jnpeka] {
    display: flex;
    gap: var(--dp-space-3);
    justify-content: flex-end;
    padding: var(--dp-space-4) var(--dp-space-6);
    border-top: 1px solid var(--border-default);
}

.loading-container[b-2c33jnpeka] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-4);
    padding: var(--dp-space-8);
}

.spinner[b-2c33jnpeka] {
    width: 30px;
    height: 30px;
    border: 3px solid var(--dp-slate-200);
    border-top-color: var(--accent);
    border-radius: var(--dp-radius-full);
    animation: spin-b-2c33jnpeka 1s linear infinite;
}

@keyframes spin-b-2c33jnpeka {
    to { transform: rotate(360deg); }
}

/* Sections */
.section-title[b-2c33jnpeka] {
    margin: 0 0 var(--dp-space-4) 0;
    font-size: 0.9rem;
    font-weight: var(--font-semibold);
    color: var(--dp-slate-800);
}

.add-section[b-2c33jnpeka] {
    background: var(--dp-slate-50);
    padding: var(--dp-space-4);
    border-radius: var(--dp-radius-4);
    margin-bottom: var(--dp-space-6);
}

.add-form[b-2c33jnpeka] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
}

.form-row[b-2c33jnpeka] {
    display: flex;
    gap: var(--dp-space-4);
    align-items: flex-end;
}

.form-group[b-2c33jnpeka] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.form-group.actions[b-2c33jnpeka] {
    flex: 0;
}

.form-group label[b-2c33jnpeka] {
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    color: var(--dp-slate-600);
}

.form-select[b-2c33jnpeka],
.form-input[b-2c33jnpeka] {
    padding: var(--dp-space-2) var(--dp-space-3);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-md);
    transition: var(--transition-base);
}

.form-select:focus[b-2c33jnpeka],
.form-input:focus[b-2c33jnpeka] {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.btn-add[b-2c33jnpeka] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    color: var(--text-inverse);
    padding: var(--dp-space-2) var(--dp-space-4);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    cursor: pointer;
    transition: var(--transition-base);
    white-space: nowrap;
}

.btn-add:hover:not(:disabled)[b-2c33jnpeka] {
    opacity: 0.9;
}

.btn-add:disabled[b-2c33jnpeka] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Requirements Table */
.requirements-section[b-2c33jnpeka] {
    margin-top: var(--dp-space-4);
}

.empty-message[b-2c33jnpeka] {
    padding: var(--dp-space-6);
    text-align: center;
    color: var(--dp-slate-500);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-4);
}

.requirements-table-container[b-2c33jnpeka] {
    max-height: 250px;
    overflow-y: auto;
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
}

.requirements-table[b-2c33jnpeka] {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--text-md);
}

.requirements-table th[b-2c33jnpeka],
.requirements-table td[b-2c33jnpeka] {
    padding: var(--dp-space-2) var(--dp-space-3);
    text-align: left;
    border-bottom: 1px solid var(--border-default);
}

.requirements-table th[b-2c33jnpeka] {
    background: var(--dp-slate-50);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-600);
    position: sticky;
    top: 0;
}

.requirements-table tr:hover[b-2c33jnpeka] {
    background: var(--dp-slate-50);
}

.requirements-table tr:last-child td[b-2c33jnpeka] {
    border-bottom: none;
}

.btn-delete[b-2c33jnpeka] {
    background: transparent;
    border: 1px solid var(--border-default);
    color: var(--status-danger);
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    cursor: pointer;
    transition: var(--transition-base);
}

.btn-delete:hover[b-2c33jnpeka] {
    background: #fef2f2;
    border-color: #fecaca;
}

.btn-close[b-2c33jnpeka] {
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    color: var(--dp-slate-600);
    padding: var(--dp-space-2) var(--dp-space-5);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    cursor: pointer;
    transition: var(--transition-base);
}

.btn-close:hover[b-2c33jnpeka] {
    background: var(--dp-slate-50);
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Dialogs/TimeRecordImportDialog.razor.rz.scp.css */
.dialog-backdrop[b-nc8bgzkqg2] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: var(--z-modal-backdrop);
}

.import-dialog[b-nc8bgzkqg2] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-xl);
    z-index: var(--z-modal);
    width: 600px;
    max-width: 95vw;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
}

.dialog-header[b-nc8bgzkqg2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--dp-space-4) var(--dp-space-6);
    border-bottom: 1px solid var(--border-default);
}

.dialog-title[b-nc8bgzkqg2] {
    margin: 0;
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-800);
}

.close-btn[b-nc8bgzkqg2] {
    background: none;
    border: none;
    padding: var(--dp-space-2);
    cursor: pointer;
    color: var(--dp-slate-500);
    border-radius: var(--dp-radius-4);
    transition: var(--transition-base);
}

.close-btn:hover[b-nc8bgzkqg2] {
    background: var(--dp-slate-100);
    color: var(--dp-slate-800);
}

.dialog-body[b-nc8bgzkqg2] {
    padding: var(--dp-space-6);
    overflow-y: auto;
    flex: 1;
}

.dialog-footer[b-nc8bgzkqg2] {
    display: flex;
    gap: var(--dp-space-3);
    justify-content: flex-end;
    padding: var(--dp-space-4) var(--dp-space-6);
    border-top: 1px solid var(--border-default);
}

/* Upload Section */
.upload-section[b-nc8bgzkqg2] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}

.upload-info[b-nc8bgzkqg2] {
    background: var(--dp-slate-50);
    padding: var(--dp-space-4);
    border-radius: var(--dp-radius-4);
    border: 1px solid var(--border-default);
}

.upload-info h6[b-nc8bgzkqg2] {
    margin: 0 0 var(--dp-space-2) 0;
    font-size: var(--text-md);
    color: var(--dp-slate-600);
}

.upload-info code[b-nc8bgzkqg2] {
    display: block;
    padding: var(--dp-space-2);
    background: var(--dp-slate-200);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-800);
}

.format-example[b-nc8bgzkqg2] {
    margin-top: var(--dp-space-2);
}

.format-example small[b-nc8bgzkqg2] {
    color: var(--dp-slate-500);
}

.upload-area[b-nc8bgzkqg2] {
    position: relative;
    border: 2px dashed var(--dp-slate-300);
    border-radius: var(--dp-radius-6);
    padding: var(--dp-space-12) var(--dp-space-8);
    text-align: center;
    transition: var(--transition-base);
    cursor: pointer;
}

.upload-area:hover[b-nc8bgzkqg2],
.upload-area.drag-over[b-nc8bgzkqg2] {
    border-color: var(--accent);
    background: rgba(59, 130, 246, 0.05);
}

.upload-area .file-input[b-nc8bgzkqg2] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.upload-content[b-nc8bgzkqg2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-3);
    pointer-events: none;
}

.upload-icon[b-nc8bgzkqg2] {
    font-size: var(--text-4xl);
    color: var(--accent);
}

.upload-text[b-nc8bgzkqg2] {
    color: var(--dp-slate-500);
}

.error-message[b-nc8bgzkqg2] {
    padding: var(--dp-space-3) var(--dp-space-4);
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: var(--dp-radius-4);
    color: var(--dp-red-700);
    font-size: var(--text-md);
}

/* Preview Section */
.preview-section[b-nc8bgzkqg2] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}

.preview-header[b-nc8bgzkqg2] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.preview-header h6[b-nc8bgzkqg2] {
    margin: 0;
    color: var(--dp-slate-800);
}

.preview-filename[b-nc8bgzkqg2] {
    font-size: var(--text-md);
    color: var(--dp-slate-500);
}

.preview-table-container[b-nc8bgzkqg2] {
    max-height: 300px;
    overflow-y: auto;
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
}

.preview-table[b-nc8bgzkqg2] {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--text-md);
}

.preview-table th[b-nc8bgzkqg2],
.preview-table td[b-nc8bgzkqg2] {
    padding: var(--dp-space-2) var(--dp-space-3);
    text-align: left;
    border-bottom: 1px solid var(--border-default);
}

.preview-table th[b-nc8bgzkqg2] {
    background: var(--dp-slate-50);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-600);
    position: sticky;
    top: 0;
}

.preview-table tr:hover[b-nc8bgzkqg2] {
    background: var(--dp-slate-50);
}

.preview-table .invalid-row[b-nc8bgzkqg2] {
    background: #fef2f2;
}

.preview-table .invalid-row:hover[b-nc8bgzkqg2] {
    background: var(--status-danger-light);
}

.preview-more[b-nc8bgzkqg2] {
    text-align: center;
    padding: var(--dp-space-3);
    color: var(--dp-slate-500);
    font-size: var(--text-md);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-4);
}

.preview-summary[b-nc8bgzkqg2] {
    display: flex;
    gap: var(--dp-space-6);
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-4);
}

.summary-valid[b-nc8bgzkqg2] {
    color: var(--dp-emerald-700);
}

.summary-invalid[b-nc8bgzkqg2] {
    color: var(--dp-red-700);
}

/* Importing Section */
.importing-section[b-nc8bgzkqg2] {
    padding: var(--dp-space-12);
}

.spinner-container[b-nc8bgzkqg2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-4);
}

.spinner[b-nc8bgzkqg2] {
    width: 40px;
    height: 40px;
    border: 3px solid var(--dp-slate-200);
    border-top-color: var(--accent);
    border-radius: var(--dp-radius-full);
    animation: spin-b-nc8bgzkqg2 1s linear infinite;
}

@keyframes spin-b-nc8bgzkqg2 {
    to { transform: rotate(360deg); }
}

/* Result Section */
.result-section[b-nc8bgzkqg2] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}

.result-summary[b-nc8bgzkqg2] {
    text-align: center;
    padding: var(--dp-space-8);
    border-radius: var(--dp-radius-6);
}

.result-summary.success[b-nc8bgzkqg2] {
    background: var(--status-success-light);
}

.result-summary.warning[b-nc8bgzkqg2] {
    background: #fffbeb;
}

.result-icon[b-nc8bgzkqg2] {
    font-size: var(--text-4xl);
    margin-bottom: var(--dp-space-4);
}

.result-icon.success[b-nc8bgzkqg2] {
    color: var(--dp-emerald-700);
}

.result-icon.warning[b-nc8bgzkqg2] {
    color: var(--dp-amber-600);
}

.result-summary h6[b-nc8bgzkqg2] {
    margin: 0 0 var(--dp-space-4) 0;
    font-size: var(--text-2xl);
    color: var(--dp-slate-800);
}

.result-stats[b-nc8bgzkqg2] {
    display: flex;
    justify-content: center;
    gap: var(--dp-space-6);
}

.stat[b-nc8bgzkqg2] {
    font-weight: var(--font-semibold);
}

.stat.success[b-nc8bgzkqg2] {
    color: var(--dp-emerald-700);
}

.stat.error[b-nc8bgzkqg2] {
    color: var(--dp-red-700);
}

.stat.warning[b-nc8bgzkqg2] {
    color: var(--dp-amber-600);
}

.errors-section[b-nc8bgzkqg2] {
    background: #fef2f2;
    padding: var(--dp-space-4);
    border-radius: var(--dp-radius-4);
}

.errors-section h6[b-nc8bgzkqg2] {
    margin: 0 0 var(--dp-space-2) 0;
    color: var(--dp-red-700);
}

.error-list[b-nc8bgzkqg2] {
    margin: 0;
    padding-left: var(--dp-space-5);
    font-size: var(--text-md);
    color: var(--dp-red-700);
}

.error-list li[b-nc8bgzkqg2] {
    margin-bottom: var(--dp-space-1);
}

/* Buttons */
.btn-cancel[b-nc8bgzkqg2],
.btn-secondary[b-nc8bgzkqg2],
.btn-primary[b-nc8bgzkqg2] {
    padding: var(--dp-space-2) var(--dp-space-4);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    cursor: pointer;
    transition: var(--transition-base);
}

.btn-cancel[b-nc8bgzkqg2] {
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    color: var(--dp-slate-500);
}

.btn-cancel:hover[b-nc8bgzkqg2] {
    background: var(--dp-slate-50);
    color: var(--dp-slate-800);
}

.btn-secondary[b-nc8bgzkqg2] {
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    color: var(--dp-slate-600);
}

.btn-secondary:hover[b-nc8bgzkqg2] {
    background: var(--dp-slate-50);
}

.btn-primary[b-nc8bgzkqg2] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    color: var(--text-inverse);
}

.btn-primary:hover:not(:disabled)[b-nc8bgzkqg2] {
    opacity: 0.9;
    transform: translateY(-1px);
}

.btn-primary:disabled[b-nc8bgzkqg2] {
    opacity: 0.5;
    cursor: not-allowed;
}

.text-success[b-nc8bgzkqg2] {
    color: var(--dp-emerald-700);
}

.text-danger[b-nc8bgzkqg2] {
    color: var(--dp-red-700);
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/WeeklyOverview.razor.rz.scp.css */
/* =================================================================== */
/* Weekly Overview - Clean Table Layout */
/* =================================================================== */

.weekly-overview-container[b-ak8b6fin4a] {
    padding: var(--dp-space-4);
    background: var(--dp-slate-50);
    width: 100%;
    /* .page-body deckelt auf 1400px und zentriert (margin: 0 auto) — hier aufheben,
       volle Breite wie /schichtplaner. */
    max-width: none;
    margin: 0;
    height: auto;
    box-sizing: border-box;
    overflow: visible;
    position: relative;
}

.print-header[b-ak8b6fin4a] {
    text-align: center;
    margin-bottom: var(--dp-space-8);
    display: none; /* Only shown when printing */
}

.print-header h1[b-ak8b6fin4a] {
    margin: 0 0 var(--dp-space-2) 0;
    color: var(--dp-slate-800);
    font-size: 1.8rem;
}

.print-header p[b-ak8b6fin4a] {
    margin: 0;
    color: var(--dp-slate-500);
    font-size: 0.9rem;
}

/* =================================================================== */
/* Navigation */
/* =================================================================== */
.week-navigation[b-ak8b6fin4a] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--surface-primary);
    padding: var(--dp-space-4);
    border-radius: var(--dp-radius-4);
    margin-bottom: var(--dp-space-4);
    box-shadow: var(--shadow-sm);
}

.nav-controls[b-ak8b6fin4a] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
}

.current-week[b-ak8b6fin4a] {
    margin: 0;
    font-size: var(--text-2xl);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-800);
    min-width: 250px;
    text-align: center;
}

.action-buttons[b-ak8b6fin4a] {
    display: flex;
    gap: var(--dp-space-2);
}

/* =================================================================== */
/* Weekly Table */
/* =================================================================== */
.weekly-table[b-ak8b6fin4a] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-4);
    box-shadow: var(--shadow-lg);
    overflow: hidden;
}

.shift-table[b-ak8b6fin4a] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9rem;
}

.shift-table th[b-ak8b6fin4a] {
    background: var(--dp-slate-50);
    padding: var(--dp-space-4) var(--dp-space-2);
    text-align: center;
    font-weight: var(--font-semibold);
    color: var(--dp-slate-600);
    border-bottom: 2px solid var(--dp-slate-300);
}

.employee-column[b-ak8b6fin4a] {
    width: 150px;
    text-align: left !important;
    padding-left: var(--dp-space-4) !important;
}

.day-column[b-ak8b6fin4a] {
    width: calc((100% - 150px) / 5);
    min-width: 140px;
}

.day-header .day-name[b-ak8b6fin4a] {
    font-weight: var(--font-semibold);
    font-size: 0.9rem;
}

.day-header .day-date[b-ak8b6fin4a] {
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-500);
    font-weight: var(--font-normal);
}

/* Role Headers */
.role-header-row[b-ak8b6fin4a] {
    background: var(--dp-slate-200);
}

.role-header[b-ak8b6fin4a] {
    font-weight: var(--font-bold);
    padding: var(--dp-space-3) var(--dp-space-4);
    color: var(--dp-slate-600);
    border-bottom: 1px solid var(--dp-slate-300);
}

/* Employee Rows */
.employee-row[b-ak8b6fin4a] {
    border-bottom: 1px solid var(--dp-slate-300);
}

.employee-row:hover[b-ak8b6fin4a] {
    background: var(--dp-slate-50);
}

.employee-name[b-ak8b6fin4a] {
    padding: var(--dp-space-3) var(--dp-space-4);
    font-weight: var(--font-medium);
    color: var(--dp-slate-800);
    border-right: 1px solid var(--dp-slate-300);
}

.shift-cell[b-ak8b6fin4a] {
    padding: var(--dp-space-2);
    text-align: center;
    vertical-align: middle;
    border-right: 1px solid var(--dp-slate-300);
}

.shift-entry[b-ak8b6fin4a] {
    display: inline-block;
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
    margin: 2px;
    min-width: 80px;
}

.shift-time[b-ak8b6fin4a] {
    display: block;
    font-weight: var(--font-semibold);
}

.shift-status[b-ak8b6fin4a] {
    display: block;
    font-size: 0.7rem;
    opacity: 0.8;
}

.no-shift[b-ak8b6fin4a] {
    color: var(--dp-slate-400);
    font-size: var(--text-2xl);
}

/* Shift Colors by Shift Type */
.shift-early[b-ak8b6fin4a] {
    background: #4ECDC4; /* Türkis für Frühdienst */
    color: var(--text-inverse);
}

.shift-late[b-ak8b6fin4a] {
    background: #FF6B6B; /* Rot für Spätdienst */
    color: var(--text-inverse);
}

.shift-early-early[b-ak8b6fin4a] {
    background: #45B7D1; /* Blau für Früh-Früh */
    color: var(--text-inverse);
}

.shift-fullday[b-ak8b6fin4a] {
    background: #96CEB4; /* Grün für Ganztag */
    color: var(--text-inverse);
}

.shift-night[b-ak8b6fin4a] {
    background: #6C5CE7; /* Lila für Nachtdienst */
    color: var(--text-inverse);
}

.shift-leave[b-ak8b6fin4a] {
    background: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

.shift-replacement[b-ak8b6fin4a] {
    background: var(--status-info-light);
    color: #0c5460;
    border: 1px solid #bee5eb;
}

.shift-default[b-ak8b6fin4a] {
    background: var(--dp-slate-500);
    color: var(--text-inverse);
}

/* =================================================================== */
/* Holiday Styling                                                     */
/* =================================================================== */
.holiday-column[b-ak8b6fin4a] {
    background:
        linear-gradient(180deg, #fef2f2 0%, #fee2e2 100%) !important;
}

.holiday-badge[b-ak8b6fin4a] {
    display: inline-block;
    font-size: 0.65rem;
    font-weight: var(--font-semibold);
    color: #b91c1c;
    background: rgba(185, 28, 28, 0.08);
    border: 1px solid rgba(185, 28, 28, 0.15);
    border-radius: var(--dp-radius-full);
    padding: 1px 8px;
    margin-top: 3px;
    line-height: 1.4;
    white-space: nowrap;
}

.holiday-cell[b-ak8b6fin4a] {
    background:
        repeating-linear-gradient(
            45deg,
            transparent,
            transparent 8px,
            rgba(185, 28, 28, 0.04) 8px,
            rgba(185, 28, 28, 0.04) 9px
        ),
        repeating-linear-gradient(
            -45deg,
            transparent,
            transparent 8px,
            rgba(185, 28, 28, 0.04) 8px,
            rgba(185, 28, 28, 0.04) 9px
        ),
        #fef8f8 !important;
}

.holiday-dash[b-ak8b6fin4a] {
    color: #d4a0a0;
    font-size: var(--text-2xl);
    opacity: 0.6;
}

/* =================================================================== */
/* Legend */
/* =================================================================== */
.legend[b-ak8b6fin4a] {
    background: var(--surface-primary);
    padding: var(--dp-space-4);
    border-radius: var(--dp-radius-4);
    margin-top: var(--dp-space-4);
    box-shadow: var(--shadow-sm);
}

.legend h4[b-ak8b6fin4a] {
    margin: 0 0 var(--dp-space-3) 0;
    color: var(--dp-slate-800);
}

.legend-items[b-ak8b6fin4a] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: var(--dp-space-2);
}

.legend-group[b-ak8b6fin4a] {
    font-size: 0.85rem;
}

.legend-group strong[b-ak8b6fin4a] {
    color: var(--dp-slate-600);
    margin-right: var(--dp-space-2);
}

.legend-shift[b-ak8b6fin4a] {
    display: inline-block;
    margin-right: var(--dp-space-4);
    color: var(--dp-slate-500);
}

/* =================================================================== */
/* Print Styles */
/* =================================================================== */
@media print {
    @page {
        size: A4 landscape;
        margin: 10mm;
    }

    /* Aggressive hide everything approach */
    *[b-ak8b6fin4a] {
        visibility: hidden !important;
        display: none !important;
        position: static !important;
        overflow: hidden !important;
        z-index: -1 !important;
    }

    /* Force hide all layout components with high specificity */
    .app-container[b-ak8b6fin4a],
    .app-container *[b-ak8b6fin4a],
    .topbar[b-ak8b6fin4a],
    .topbar *[b-ak8b6fin4a],
    .app-footer[b-ak8b6fin4a],
    .app-footer *[b-ak8b6fin4a],
    .app-sidebar[b-ak8b6fin4a],
    .app-sidebar *[b-ak8b6fin4a],
    .main-content[b-ak8b6fin4a],
    .e-sidebar[b-ak8b6fin4a],
    .e-sidebar *[b-ak8b6fin4a],
    nav[b-ak8b6fin4a],
    nav *[b-ak8b6fin4a],
    header[b-ak8b6fin4a],
    header *[b-ak8b6fin4a],
    footer[b-ak8b6fin4a],
    footer *[b-ak8b6fin4a] {
        visibility: hidden !important;
        display: none !important;
        position: static !important;
        z-index: -999 !important;
        opacity: 0 !important;
    }

    /* Show only the weekly overview and make it cover the entire page */
    .weekly-overview-container[b-ak8b6fin4a] {
        visibility: visible !important;
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        padding: 10mm !important;
        margin: 0 !important;
        background: var(--surface-primary) !important;
        overflow: visible !important;
        z-index: 9999 !important;
        opacity: 1 !important;
    }

    /* Show all children of weekly overview */
    .weekly-overview-container[b-ak8b6fin4a],
    .weekly-overview-container *:not(.no-print):not(.no-print *)[b-ak8b6fin4a] {
        visibility: visible !important;
        display: block !important;
        position: static !important;
        opacity: 1 !important;
        z-index: auto !important;
    }

    /* Hide no-print elements completely */
    .no-print[b-ak8b6fin4a],
    .no-print *[b-ak8b6fin4a],
    .week-navigation[b-ak8b6fin4a],
    .week-navigation *[b-ak8b6fin4a],
    .legend[b-ak8b6fin4a],
    .legend *[b-ak8b6fin4a] {
        visibility: hidden !important;
        display: none !important;
        opacity: 0 !important;
        position: absolute !important;
        left: -9999px !important;
        z-index: -999 !important;
    }

    /* Ensure proper table display */
    .weekly-table[b-ak8b6fin4a] {
        display: table !important;
        width: 100% !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .weekly-table thead[b-ak8b6fin4a] {
        display: table-header-group !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .weekly-table tbody[b-ak8b6fin4a] {
        display: table-row-group !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .weekly-table tr[b-ak8b6fin4a] {
        display: table-row !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .weekly-table th[b-ak8b6fin4a],
    .weekly-table td[b-ak8b6fin4a] {
        display: table-cell !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .print-header[b-ak8b6fin4a] {
        display: block !important;
        margin-bottom: var(--dp-space-4) !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    /* Clean print styling */
    .weekly-table[b-ak8b6fin4a] {
        box-shadow: none !important;
        border: 1px solid #000 !important;
    }

    .shift-table th[b-ak8b6fin4a],
    .shift-table td[b-ak8b6fin4a] {
        border: 1px solid var(--dp-slate-800) !important;
        background: var(--surface-primary) !important;
    }

    .shift-entry[b-ak8b6fin4a] {
        border: 1px solid var(--dp-slate-500) !important;
        background: var(--dp-slate-100) !important;
        color: #000 !important;
        display: inline-block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .role-header[b-ak8b6fin4a] {
        background: var(--dp-slate-200) !important;
        color: #000 !important;
    }

    .shift-table th[b-ak8b6fin4a] {
        background: var(--dp-slate-100) !important;
        color: #000 !important;
    }

    .holiday-column[b-ak8b6fin4a] {
        background: #fef2f2 !important;
    }

    .holiday-cell[b-ak8b6fin4a] {
        background: #fef8f8 !important;
    }

    .holiday-badge[b-ak8b6fin4a] {
        color: #b91c1c !important;
        background: #fde8e8 !important;
        border: 1px solid #d4a0a0 !important;
        display: inline-block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .holiday-dash[b-ak8b6fin4a] {
        color: #d4a0a0 !important;
        display: inline !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    /* Text elements must be visible */
    .weekly-overview-container span[b-ak8b6fin4a],
    .weekly-overview-container div[b-ak8b6fin4a],
    .weekly-overview-container td[b-ak8b6fin4a],
    .weekly-overview-container th[b-ak8b6fin4a],
    .weekly-overview-container h1[b-ak8b6fin4a],
    .weekly-overview-container p[b-ak8b6fin4a] {
        visibility: visible !important;
        opacity: 1 !important;
        display: initial !important;
    }
}

/* =================================================================== */
/* Responsive */
/* =================================================================== */
@media (max-width: 1200px) {
    .shift-table[b-ak8b6fin4a] {
        font-size: var(--text-sm-plus);
    }

    .day-column[b-ak8b6fin4a] {
        min-width: 100px;
    }

    .shift-entry[b-ak8b6fin4a] {
        min-width: 70px;
        font-size: var(--text-sm-plus);
    }
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/WeeklyPrint.razor.rz.scp.css */
/* Remove all existing navigation and layout */
[b-hzwejzkgae] * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

[b-hzwejzkgae] body {
    font-family: Arial, sans-serif !important;
    background: var(--surface-primary) !important;
    margin: 0 !important;
    padding: 20px !important;
}

/* Hide all layout elements */
[b-hzwejzkgae] .app-container,
[b-hzwejzkgae] .topbar,
[b-hzwejzkgae] .app-sidebar,
[b-hzwejzkgae] .app-footer,
[b-hzwejzkgae] .main-content {
    display: none !important;
    visibility: hidden !important;
}

.print-container[b-hzwejzkgae] {
    width: 100%;
    background: var(--surface-primary);
    position: relative;
    z-index: 9999;
}

.print-header[b-hzwejzkgae] {
    text-align: center;
    margin-bottom: var(--dp-space-8);
}

.print-header h1[b-hzwejzkgae] {
    font-size: 1.4rem;
    margin-bottom: var(--dp-space-1);
    color: var(--dp-slate-800);
}

.shift-table[b-hzwejzkgae] {
    width: 100%;
    border-collapse: collapse;
    font-size: var(--text-sm-plus);
}

.shift-table th[b-hzwejzkgae],
.shift-table td[b-hzwejzkgae] {
    border: 1px solid var(--dp-slate-800);
    padding: var(--dp-space-1);
    text-align: center;
    line-height: 1.2;
}

.employee-column[b-hzwejzkgae] {
    text-align: left !important;
    font-weight: var(--font-bold);
    width: 150px;
}

.role-header[b-hzwejzkgae] {
    background: var(--dp-slate-200) !important;
    font-weight: var(--font-bold);
    text-align: left;
    -webkit-print-color-adjust: exact !important;
    color-adjust: exact !important;
}

.shift-entry[b-hzwejzkgae] {
    display: inline-block;
    padding: 1px 3px;
    border-radius: 2px;
    margin: 1px;
    background: var(--dp-slate-100) !important;
    font-size: 0.65rem;
    line-height: 1.1;
    -webkit-print-color-adjust: exact !important;
    color-adjust: exact !important;
}

/* Shift colors by type */
.shift-early[b-hzwejzkgae] {
    background: #4ECDC4 !important; /* Türkis für Frühdienst */
    color: var(--text-inverse) !important;
}

.shift-late[b-hzwejzkgae] {
    background: #FF6B6B !important; /* Rot für Spätdienst */
    color: var(--text-inverse) !important;
}

.shift-early-early[b-hzwejzkgae] {
    background: #45B7D1 !important; /* Blau für Früh-Früh */
    color: var(--text-inverse) !important;
}

.shift-fullday[b-hzwejzkgae] {
    background: #96CEB4 !important; /* Grün für Ganztag */
    color: var(--text-inverse) !important;
}

.shift-night[b-hzwejzkgae] {
    background: #6C5CE7 !important; /* Lila für Nachtdienst */
    color: var(--text-inverse) !important;
}

.shift-leave[b-hzwejzkgae] {
    background: #FED766 !important; /* Gelb für Urlaub/Abwesenheit */
    color: #7a5c00 !important;
    font-weight: bold;
}

.shift-replacement[b-hzwejzkgae] {
    background: #FFA94D !important; /* Orange für Vertretung */
    color: var(--text-inverse) !important;
}

/* =================================================================== */
/* Holiday Styling                                                     */
/* =================================================================== */
.holiday-column[b-hzwejzkgae] {
    background: #fef2f2 !important;
    -webkit-print-color-adjust: exact !important;
    color-adjust: exact !important;
}

.holiday-badge[b-hzwejzkgae] {
    display: inline-block;
    font-size: 0.55rem;
    font-weight: bold;
    color: #b91c1c;
    background: rgba(185, 28, 28, 0.08);
    border: 1px solid rgba(185, 28, 28, 0.2);
    border-radius: 9999px;
    padding: 0 6px;
    margin-top: 2px;
    line-height: 1.4;
    white-space: nowrap;
    -webkit-print-color-adjust: exact !important;
    color-adjust: exact !important;
}

.holiday-cell[b-hzwejzkgae] {
    background: #fef8f8 !important;
    -webkit-print-color-adjust: exact !important;
    color-adjust: exact !important;
}

.holiday-dash[b-hzwejzkgae] {
    color: #d4a0a0;
    font-size: 0.8rem;
    opacity: 0.6;
}

@media print {
    @page {
        size: A4 landscape;
        margin: 8mm;
    }

    *[b-hzwejzkgae] {
        -webkit-print-color-adjust: exact !important;
        color-adjust: exact !important;
    }

    body[b-hzwejzkgae] {
        margin: 0 !important;
        padding: 8mm !important;
        font-size: var(--text-sm-plus) !important;
    }

    .shift-table[b-hzwejzkgae] {
        font-size: 0.7rem !important;
    }

    .shift-table th[b-hzwejzkgae],
    .shift-table td[b-hzwejzkgae] {
        padding: 0.15rem !important;
        line-height: 1.1 !important;
    }

    .shift-table th[b-hzwejzkgae] {
        font-size: 0.65rem !important;
        padding: 0.1rem !important;
    }

    .role-header[b-hzwejzkgae] {
        background: var(--dp-slate-200) !important;
        padding: 0.15rem !important;
        font-size: 0.65rem !important;
    }

    .print-header[b-hzwejzkgae] {
        margin-bottom: var(--dp-space-4) !important;
    }

    .print-header h1[b-hzwejzkgae] {
        font-size: var(--text-2xl) !important;
        margin-bottom: 0.2rem !important;
    }

    .shift-entry[b-hzwejzkgae] {
        background: var(--dp-slate-100) !important;
        font-size: 0.6rem !important;
        padding: 1px 2px !important;
        line-height: 1.0 !important;
    }

    .shift-early[b-hzwejzkgae] {
        background: #4ECDC4 !important; /* Türkis für Frühdienst */
        color: var(--text-inverse) !important;
    }

    .shift-late[b-hzwejzkgae] {
        background: #FF6B6B !important; /* Rot für Spätdienst */
        color: var(--text-inverse) !important;
    }

    .shift-early-early[b-hzwejzkgae] {
        background: #45B7D1 !important; /* Blau für Früh-Früh */
        color: var(--text-inverse) !important;
    }

    .shift-fullday[b-hzwejzkgae] {
        background: #96CEB4 !important; /* Grün für Ganztag */
        color: var(--text-inverse) !important;
    }

    .shift-night[b-hzwejzkgae] {
        background: #6C5CE7 !important; /* Lila für Nachtdienst */
        color: var(--text-inverse) !important;
    }

    .shift-leave[b-hzwejzkgae] {
        background: #FED766 !important; /* Gelb für Urlaub/Abwesenheit */
        color: #7a5c00 !important;
        font-weight: bold;
    }

    .shift-replacement[b-hzwejzkgae] {
        background: #FFA94D !important; /* Orange für Vertretung */
        color: var(--text-inverse) !important;
    }

    .holiday-column[b-hzwejzkgae] {
        background: #fef2f2 !important;
    }

    .holiday-cell[b-hzwejzkgae] {
        background: #fef8f8 !important;
    }

    .holiday-badge[b-hzwejzkgae] {
        color: #b91c1c !important;
        background: #fde8e8 !important;
        border: 1px solid #d4a0a0 !important;
    }

    .holiday-dash[b-hzwejzkgae] {
        color: #d4a0a0 !important;
    }
}
/* _content/FRP.Web/Components/Pages/Terminal/StempelMonitor.razor.rz.scp.css */
.monitor-section[b-bz4x4vzafv] { margin-bottom: var(--dp-space-4); }
.monitor-section h4[b-bz4x4vzafv] { display: flex; align-items: center; gap: var(--dp-space-2); margin-bottom: var(--dp-space-3); }
.monitor-section h5[b-bz4x4vzafv] { margin: var(--dp-space-3) 0 var(--dp-space-2); color: var(--color-text-secondary); }

.monitor-presence[b-bz4x4vzafv] { display: flex; flex-wrap: wrap; gap: var(--dp-space-2); }
.monitor-presence__card[b-bz4x4vzafv] {
    display: flex; flex-direction: column; gap: var(--dp-space-1);
    padding: var(--dp-space-2) var(--dp-space-3);
    background: var(--surface-primary); border: 1px solid var(--border-subtle);
    border-radius: var(--radius-md);
}
.monitor-presence__name[b-bz4x4vzafv] { font-weight: 600; }
.monitor-presence__since[b-bz4x4vzafv] { font-size: var(--text-sm); color: var(--color-text-muted); }

.monitor-unknown__row[b-bz4x4vzafv], .monitor-incomplete__row[b-bz4x4vzafv] {
    display: flex; align-items: center; gap: var(--dp-space-3);
    padding: var(--dp-space-2) var(--dp-space-3); border-radius: var(--radius-md);
    background: var(--surface-primary); border: 1px solid var(--border-subtle);
    margin-bottom: var(--dp-space-2);
}
.monitor-incomplete__name[b-bz4x4vzafv] { font-weight: 600; min-width: 180px; }
.monitor-incomplete__source[b-bz4x4vzafv] { font-size: var(--text-sm); color: var(--color-text-muted); }
.monitor-unknown__row > :last-child[b-bz4x4vzafv], .monitor-incomplete__row > :last-child[b-bz4x4vzafv] { margin-left: auto; }

.monitor-filter[b-bz4x4vzafv] { display: flex; gap: var(--dp-space-3); margin-bottom: var(--dp-space-3); }
.monitor-filter input[b-bz4x4vzafv], .monitor-filter select[b-bz4x4vzafv] {
    padding: var(--dp-space-2); border: 1px solid var(--color-border); border-radius: var(--radius-md);
    background: var(--surface-primary); color: var(--color-text-primary);
}

.monitor-events[b-bz4x4vzafv] { width: 100%; border-collapse: collapse; }
.monitor-events th[b-bz4x4vzafv], .monitor-events td[b-bz4x4vzafv] {
    text-align: left; padding: var(--dp-space-2) var(--dp-space-3);
    border-bottom: 1px solid var(--border-subtle); font-size: var(--text-sm);
}
.monitor-events__row--in td:nth-child(3)[b-bz4x4vzafv] { color: var(--color-success); font-weight: 600; }
.monitor-events__row--out td:nth-child(3)[b-bz4x4vzafv] { color: var(--color-primary); font-weight: 600; }
.monitor-events__row--warn td:nth-child(3)[b-bz4x4vzafv] { color: var(--color-warning); font-weight: 600; }

.monitor-dialog-error[b-bz4x4vzafv] { color: var(--color-danger); margin-top: var(--dp-space-2); }

.monitor-section__head[b-bz4x4vzafv] { display: flex; align-items: center; justify-content: space-between; margin-bottom: var(--dp-space-3); }
.monitor-section__head h4[b-bz4x4vzafv] { margin-bottom: 0; }

.monitor-presence__actions[b-bz4x4vzafv] { display: flex; gap: var(--dp-space-1); margin-top: var(--dp-space-1); }
.monitor-presence__action[b-bz4x4vzafv] {
    display: inline-flex; align-items: center; justify-content: center;
    padding: 2px 6px; border: 1px solid var(--border-subtle); border-radius: var(--radius-md);
    background: transparent; color: var(--color-text-muted); cursor: pointer;
}
.monitor-presence__action:hover[b-bz4x4vzafv] { color: var(--color-text-primary); border-color: var(--color-border); }
.monitor-presence__action--danger:hover[b-bz4x4vzafv] { color: var(--color-danger); border-color: var(--color-danger); }

.monitor-events__adjusted[b-bz4x4vzafv] { color: var(--color-warning); font-weight: 600; margin-left: var(--dp-space-1); }
/* _content/FRP.Web/Components/Pages/Terminal/StempeluhrTerminal.razor.rz.scp.css */
/* ============================================================================
   Stempeluhr-Kiosk — „Nachtpforte"
   Dauerhaft dunkler Wand-Bildschirm: blendet im Flur nicht, schont das
   Tablet-Panel (kein weißes Dauerleuchten). Der Scan-Moment flutet den ganzen
   Screen mit Statusfarbe — aus dem Augenwinkel erkennbar, ob es geklappt hat.
   Kiosk-Palette bewusst page-lokal (EmptyLayout, kein App-Chrome): die
   UiKit-Tokens sind fürs helle App-Design gedacht, der Kiosk ist eine
   eigenständige, dunkle Oberfläche.
   ============================================================================ */

.terminal[b-0ns7n97a2j] {
    /* Kiosk-Palette */
    --kiosk-bg: #101725;          /* tiefes Nachtblau statt Schwarz — weicher */
    --kiosk-bg-glow: #1a2438;
    --kiosk-ink: #eef2f8;
    --kiosk-muted: #8b96ab;
    --kiosk-line: rgba(238, 242, 248, 0.14);
    --kiosk-pill: rgba(238, 242, 248, 0.08);
    --kiosk-accent: #6ea8ff;

    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: radial-gradient(ellipse 120% 90% at 50% 30%, var(--kiosk-bg-glow), var(--kiosk-bg) 70%);
    color: var(--kiosk-ink);
    user-select: none;
    overflow: hidden;
}

/* ---------------------------------------------------------------- Ruhebildschirm */
.terminal__idle[b-0ns7n97a2j] {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-4);
}

.terminal__clock[b-0ns7n97a2j] {
    font-size: clamp(6rem, 17vw, 12rem);
    font-weight: 200;
    line-height: 1;
    letter-spacing: -0.02em;
    color: var(--kiosk-ink);
    font-variant-numeric: tabular-nums;
}

.terminal__clock-seconds[b-0ns7n97a2j] {
    font-size: 0.35em;
    font-weight: 300;
    color: var(--kiosk-muted);
    font-variant-numeric: tabular-nums;
}

.terminal__date[b-0ns7n97a2j] {
    font-size: clamp(1.1rem, 2.4vw, 1.6rem);
    font-weight: 400;
    color: var(--kiosk-muted);
    letter-spacing: 0.02em;
}

/* Scan-Aufforderung mit „Atem-Ring": zeigt ruhig, dass das Gerät lebt und wartet */
.terminal__scan-prompt[b-0ns7n97a2j] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-3);
    margin-top: clamp(1.5rem, 5vh, 3.5rem);
}

.terminal__scan-ring[b-0ns7n97a2j] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 84px;
    height: 84px;
    border-radius: 50%;
    border: 1.5px solid var(--kiosk-line);
    color: var(--kiosk-accent);
    font-size: 2.2rem;
    position: relative;
}

.terminal__scan-ring[b-0ns7n97a2j]::before {
    content: "";
    position: absolute;
    inset: -1.5px;
    border-radius: 50%;
    border: 1.5px solid var(--kiosk-accent);
    opacity: 0;
    animation: kiosk-breathe-b-0ns7n97a2j 3.2s ease-in-out infinite;
}

@keyframes kiosk-breathe-b-0ns7n97a2j {
    0%, 100% { transform: scale(1); opacity: 0; }
    50%      { transform: scale(1.28); opacity: 0.55; }
}

.terminal__scan-text[b-0ns7n97a2j] {
    font-size: clamp(1.15rem, 2.6vw, 1.7rem);
    font-weight: 500;
    color: var(--kiosk-ink);
    letter-spacing: 0.01em;
}

/* Anwesenheit: nur Vornamen als Pills (Datenschutz — keine Zeiten) */
.terminal__presence[b-0ns7n97a2j] {
    margin-top: clamp(1.5rem, 5vh, 3rem);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-2);
    max-width: min(90vw, 900px);
}

.terminal__presence-label[b-0ns7n97a2j] {
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: var(--kiosk-muted);
}

.terminal__presence-pills[b-0ns7n97a2j] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--dp-space-2);
}

.terminal__presence-pill[b-0ns7n97a2j] {
    display: inline-flex;
    align-items: center;
    gap: 0.5em;
    padding: 0.45em 1em;
    border-radius: 999px;
    background: var(--kiosk-pill);
    border: 1px solid var(--kiosk-line);
    font-size: clamp(0.95rem, 1.8vw, 1.15rem);
    font-weight: 600;
    color: var(--kiosk-ink);
}

.terminal__presence-dot[b-0ns7n97a2j] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #3fbf7f;
    flex-shrink: 0;
}

/* Heute geplant: Schichtplan des Tages (Examinierte + Betreuungskräfte), Früh/Spät */
.terminal__planned[b-0ns7n97a2j] {
    margin-top: clamp(1rem, 3.5vh, 2rem);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-2);
    max-width: min(90vw, 900px);
}

.terminal__planned-label[b-0ns7n97a2j] {
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: var(--kiosk-muted);
}

.terminal__planned-row[b-0ns7n97a2j] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
}

.terminal__planned-shift[b-0ns7n97a2j] {
    font-size: clamp(0.9rem, 1.6vw, 1.05rem);
    font-weight: 700;
    color: var(--kiosk-muted);
    min-width: 3.2em;
    text-align: right;
}

.terminal__planned-pills[b-0ns7n97a2j] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-2);
}

.terminal__planned-pill[b-0ns7n97a2j] {
    display: inline-flex;
    align-items: center;
    gap: 0.5em;
    padding: 0.35em 0.9em;
    border-radius: 999px;
    background: var(--kiosk-pill);
    border: 1px solid var(--kiosk-line);
    font-size: clamp(0.9rem, 1.6vw, 1.05rem);
    font-weight: 500;
    color: var(--kiosk-ink);
}

.terminal__planned-pill--ex[b-0ns7n97a2j] {
    border-color: var(--kiosk-accent);
    font-weight: 600;
}

.terminal__planned-ex-dot[b-0ns7n97a2j] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--kiosk-accent);
    flex-shrink: 0;
}

.terminal__planned-legend[b-0ns7n97a2j] {
    display: inline-flex;
    align-items: center;
    gap: 0.45em;
    font-size: 0.78rem;
    color: var(--kiosk-muted);
}

/* ---------------------------------------------------------------- Farbflut-Feedback */
.terminal__flood[b-0ns7n97a2j] {
    position: fixed;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    animation: kiosk-flood-in-b-0ns7n97a2j 260ms ease-out;
}

@keyframes kiosk-flood-in-b-0ns7n97a2j {
    from { opacity: 0; transform: scale(1.015); }
    to   { opacity: 1; transform: scale(1); }
}

.terminal__flood--in[b-0ns7n97a2j]      { background: radial-gradient(ellipse 120% 90% at 50% 35%, #178a54, #0c5636 75%); }
.terminal__flood--out[b-0ns7n97a2j]     { background: radial-gradient(ellipse 120% 90% at 50% 35%, #2458d6, #142f7a 75%); }
.terminal__flood--unknown[b-0ns7n97a2j] { background: radial-gradient(ellipse 120% 90% at 50% 35%, #b3620d, #7d4004 75%); }
.terminal__flood--neutral[b-0ns7n97a2j] { background: radial-gradient(ellipse 120% 90% at 50% 35%, #3b4a63, #222d40 75%); }
.terminal__flood--error[b-0ns7n97a2j]   { background: radial-gradient(ellipse 120% 90% at 50% 35%, #bb2323, #791313 75%); }

.terminal__flood-inner[b-0ns7n97a2j] {
    text-align: center;
    padding: var(--dp-space-4);
    max-width: min(92vw, 860px);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-2);
}

.terminal__flood-icon[b-0ns7n97a2j] { font-size: clamp(2.6rem, 6vw, 4rem); opacity: 0.9; }

.terminal__flood-title[b-0ns7n97a2j] {
    font-size: clamp(1.6rem, 4vw, 2.6rem);
    font-weight: 700;
    line-height: 1.25;
    text-wrap: balance;
}

.terminal__flood-time[b-0ns7n97a2j] {
    font-size: clamp(4rem, 12vw, 8rem);
    font-weight: 200;
    line-height: 1;
    letter-spacing: -0.02em;
    font-variant-numeric: tabular-nums;
}

.terminal__flood-sub[b-0ns7n97a2j] {
    font-size: clamp(1.15rem, 2.6vw, 1.6rem);
    font-weight: 500;
    opacity: 0.85;
}

.terminal__flood-shift[b-0ns7n97a2j] {
    font-size: clamp(1.05rem, 2.2vw, 1.35rem);
    font-weight: 500;
    padding: 0.4em 1.1em;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
}

/* Heutige Stempelungen — auch mehrere Kommen/Gehen-Paare pro Tag */
.terminal__today[b-0ns7n97a2j] {
    margin-top: var(--dp-space-3);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-2);
}

.terminal__today-label[b-0ns7n97a2j] {
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    opacity: 0.7;
}

.terminal__today-pills[b-0ns7n97a2j] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--dp-space-2);
}

.terminal__today-pill[b-0ns7n97a2j] {
    padding: 0.4em 0.95em;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
    font-size: clamp(1.05rem, 2.2vw, 1.4rem);
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}

.terminal__today-pill--out[b-0ns7n97a2j] { background: rgba(0, 0, 0, 0.22); }

/* Wochenübersicht als translucent Kacheln auf der Farbfläche */
.terminal__week[b-0ns7n97a2j] {
    margin-top: var(--dp-space-3);
    display: flex;
    gap: var(--dp-space-2);
    justify-content: center;
    flex-wrap: wrap;
}

.terminal__week-day[b-0ns7n97a2j] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    padding: var(--dp-space-2) var(--dp-space-3);
    border-radius: var(--radius-md);
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.16);
    min-width: 58px;
}

.terminal__week-day--today[b-0ns7n97a2j] {
    background: rgba(255, 255, 255, 0.22);
    border-color: rgba(255, 255, 255, 0.55);
}

.terminal__week-name[b-0ns7n97a2j] { font-size: 0.85rem; font-weight: 600; opacity: 0.75; }
.terminal__week-hours[b-0ns7n97a2j] { font-size: 1.05rem; font-weight: 700; font-variant-numeric: tabular-nums; }

/* Urlaub/Krank: Kürzel statt Stunden, Kachel dezent abgesetzt */
.terminal__week-day--leave[b-0ns7n97a2j] { background: rgba(0, 0, 0, 0.18); border-style: dashed; }
.terminal__week-leave[b-0ns7n97a2j] { font-size: 1.05rem; font-weight: 700; letter-spacing: 0.05em; }

/* Hinweis auf unvollständige Stempelung (z.B. vergessenes Gehen) — auffällig, nicht alarmierend */
.terminal__flood-hint[b-0ns7n97a2j] {
    font-size: clamp(1rem, 2vw, 1.25rem);
    font-weight: 500;
    padding: 0.5em 1.1em;
    border-radius: var(--radius-md);
    background: rgba(0, 0, 0, 0.28);
    border: 1px dashed rgba(255, 255, 255, 0.5);
    max-width: 560px;
}

/* ---------------------------------------------------------------- Ausstempel-Rückfrage */
.terminal__confirm[b-0ns7n97a2j] {
    text-align: center;
    padding: var(--dp-space-4);
    max-width: min(92vw, 820px);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-3);
}

.terminal__confirm-title[b-0ns7n97a2j] {
    font-size: clamp(1.4rem, 3.2vw, 2rem);
    font-weight: 500;
    color: var(--kiosk-ink);
    line-height: 1.3;
    text-wrap: balance;
}

.terminal__confirm-question[b-0ns7n97a2j] {
    font-size: clamp(1.9rem, 4.5vw, 2.9rem);
    font-weight: 700;
    color: var(--kiosk-ink);
}

.terminal__confirm-buttons[b-0ns7n97a2j] {
    display: flex;
    gap: var(--dp-space-3);
    justify-content: center;
    flex-wrap: wrap;
    margin-top: var(--dp-space-2);
}

.terminal__btn[b-0ns7n97a2j] {
    font-size: clamp(1.15rem, 2.4vw, 1.5rem);
    font-weight: 600;
    padding: var(--dp-space-3) var(--dp-space-4);
    border-radius: var(--radius-md);
    cursor: pointer;
    min-width: 280px;
    min-height: 76px;
}

.terminal__btn--yes[b-0ns7n97a2j] {
    background: var(--kiosk-accent);
    color: #0d1524;
    border: none;
}

.terminal__btn--no[b-0ns7n97a2j] {
    background: transparent;
    color: var(--kiosk-ink);
    border: 1.5px solid var(--kiosk-line);
}

.terminal__confirm-hint[b-0ns7n97a2j] {
    font-size: clamp(0.95rem, 1.8vw, 1.1rem);
    color: var(--kiosk-muted);
}

.terminal__btn:focus-visible[b-0ns7n97a2j] {
    outline: 3px solid var(--kiosk-accent);
    outline-offset: 3px;
}

/* ---------------------------------------------------------------- Mein Urlaub */
.terminal__vacation-btn[b-0ns7n97a2j] {
    margin-top: var(--dp-space-3);
    display: inline-flex; align-items: center; gap: 0.5em;
    font-size: clamp(1rem, 2vw, 1.25rem); font-weight: 600;
    padding: 0.55em 1.3em; border-radius: 999px;
    background: rgba(255, 255, 255, 0.14); color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.35); cursor: pointer;
}

.terminal__vacation[b-0ns7n97a2j] {
    text-align: center; padding: var(--dp-space-4);
    max-width: min(92vw, 760px);
    display: flex; flex-direction: column; align-items: center; gap: var(--dp-space-3);
}

.terminal__vacation-title[b-0ns7n97a2j] { font-size: clamp(1.3rem, 3vw, 1.8rem); font-weight: 600; color: var(--kiosk-ink); }

.terminal__vacation-rest[b-0ns7n97a2j] { display: flex; flex-direction: column; align-items: center; }
.terminal__vacation-rest-value[b-0ns7n97a2j] {
    font-size: clamp(4rem, 12vw, 7rem); font-weight: 200; line-height: 1;
    color: var(--kiosk-accent); font-variant-numeric: tabular-nums;
}
.terminal__vacation-rest-label[b-0ns7n97a2j] { font-size: clamp(1rem, 2vw, 1.3rem); color: var(--kiosk-muted); font-weight: 500; }

.terminal__vacation-stats[b-0ns7n97a2j] { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--dp-space-2); }
.terminal__vacation-stat[b-0ns7n97a2j] {
    padding: 0.4em 1em; border-radius: 999px;
    background: var(--kiosk-pill); border: 1px solid var(--kiosk-line);
    font-size: clamp(0.95rem, 1.9vw, 1.15rem); font-weight: 500; color: var(--kiosk-ink);
}

.terminal__vacation-periods[b-0ns7n97a2j] {
    display: flex; flex-direction: column; gap: var(--dp-space-1);
    max-height: 38vh; overflow-y: auto; min-width: min(80vw, 420px);
}
.terminal__vacation-period[b-0ns7n97a2j] {
    display: flex; align-items: center; justify-content: space-between; gap: var(--dp-space-3);
    padding: 0.5em 1em; border-radius: var(--radius-md);
    background: var(--kiosk-pill); border: 1px dashed var(--kiosk-line);
    color: var(--kiosk-ink); font-size: clamp(0.95rem, 1.9vw, 1.15rem);
}
.terminal__vacation-period--used[b-0ns7n97a2j] { border-style: solid; opacity: 0.75; }
.terminal__vacation-period-mark[b-0ns7n97a2j] { color: var(--kiosk-accent); font-weight: 700; }
.terminal__vacation-period-range[b-0ns7n97a2j] { font-variant-numeric: tabular-nums; font-weight: 600; }
.terminal__vacation-period-days[b-0ns7n97a2j] { color: var(--kiosk-muted); }
.terminal__vacation-legend[b-0ns7n97a2j] { font-size: 0.8rem; color: var(--kiosk-muted); }
.terminal__vacation-hint[b-0ns7n97a2j] { font-size: clamp(0.95rem, 1.9vw, 1.15rem); color: var(--kiosk-muted); }

/* ---------------------------------------------------------------- Barrierefreiheit */
@media (prefers-reduced-motion: reduce) {
    .terminal__scan-ring[b-0ns7n97a2j]::before { animation: none; opacity: 0.35; }
    .terminal__flood[b-0ns7n97a2j] { animation: none; }
}
/* _content/FRP.Web/Components/Pages/Transport/TransportSchedule.razor.rz.scp.css */
.transport-schedule-page[b-7d4tlor9gf] {
    padding: 1rem;
}

.page-header[b-7d4tlor9gf] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1rem;
    flex-wrap: wrap;
    gap: 1rem;
}

.header-left h1[b-7d4tlor9gf] {
    margin: 0;
    font-size: 1.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.date-navigation[b-7d4tlor9gf] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.current-date[b-7d4tlor9gf] {
    font-size: 1.1rem;
    font-weight: 600;
    min-width: 200px;
    text-align: center;
}

.filter-panel[b-7d4tlor9gf] {
    background: var(--bs-light);
    border-radius: 8px;
    padding: 1rem;
    margin-bottom: 1rem;
}

.filter-row[b-7d4tlor9gf] {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
    align-items: center;
}

.filter-checkbox[b-7d4tlor9gf] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
}

.filter-checkbox input[type="checkbox"][b-7d4tlor9gf] {
    width: 18px;
    height: 18px;
}

.filter-select[b-7d4tlor9gf] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.filter-select select[b-7d4tlor9gf] {
    padding: 0.375rem 0.75rem;
    border: 1px solid var(--bs-border-color);
    border-radius: 4px;
}

.loading-container[b-7d4tlor9gf] {
    display: flex;
    justify-content: center;
    padding: 3rem;
}

.schedule-summary[b-7d4tlor9gf] {
    display: flex;
    gap: 2rem;
    padding: 1rem;
    background: var(--bs-light);
    border-radius: 8px;
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
}

.summary-item[b-7d4tlor9gf] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1.1rem;
}

.summary-item i[b-7d4tlor9gf] {
    font-size: 1.3rem;
}

.schedule-sections[b-7d4tlor9gf] {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.time-section[b-7d4tlor9gf] {
    background: white;
    border: 1px solid var(--bs-border-color);
    border-radius: 8px;
    overflow: hidden;
}

.section-title[b-7d4tlor9gf] {
    background: var(--bs-secondary-bg);
    padding: 0.75rem 1rem;
    margin: 0;
    font-size: 1.2rem;
    font-weight: 600;
    border-bottom: 1px solid var(--bs-border-color);
}

.trip-columns[b-7d4tlor9gf] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1px;
    background: var(--bs-border-color);
}

.trip-column[b-7d4tlor9gf] {
    background: white;
    min-height: 200px;
}

.column-title[b-7d4tlor9gf] {
    padding: 0.75rem 1rem;
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    border-bottom: 2px solid;
}

.column-title.pickup[b-7d4tlor9gf] {
    border-color: var(--bs-success);
    color: var(--bs-success);
}

.column-title.dropoff[b-7d4tlor9gf] {
    border-color: var(--bs-warning);
    color: var(--bs-warning);
}

.column-title .count[b-7d4tlor9gf] {
    margin-left: auto;
    background: var(--bs-secondary-bg);
    padding: 0.2rem 0.6rem;
    border-radius: 12px;
    font-size: 0.9rem;
    color: var(--bs-body-color);
}

.no-trips[b-7d4tlor9gf] {
    padding: 2rem;
    text-align: center;
    color: var(--bs-secondary);
    font-style: italic;
}

@media (max-width: 768px) {
    .trip-columns[b-7d4tlor9gf] {
        grid-template-columns: 1fr;
    }

    .page-header[b-7d4tlor9gf] {
        flex-direction: column;
    }

    .filter-row[b-7d4tlor9gf] {
        flex-direction: column;
        align-items: flex-start;
    }
}
/* _content/FRP.Web/Components/Pages/Transport/TripList.razor.rz.scp.css */
.trip-list[b-zi9f9kl62m] {
    padding: 0;
}

.route-header[b-zi9f9kl62m] {
    --route-color: var(--bs-secondary);
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: color-mix(in srgb, var(--route-color) 10%, white);
    border-left: 4px solid var(--route-color);
    font-weight: 600;
    font-size: 0.9rem;
}

.route-indicator[b-zi9f9kl62m] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: var(--route-color);
}

.route-count[b-zi9f9kl62m] {
    color: var(--bs-secondary);
    font-weight: normal;
}

.trip-item[b-zi9f9kl62m] {
    padding: 0.75rem 1rem 0.75rem 1.5rem;
    border-bottom: 1px solid var(--bs-border-color);
}

.trip-item:last-child[b-zi9f9kl62m] {
    border-bottom: none;
}

.trip-item.wheelchair[b-zi9f9kl62m] {
    background: color-mix(in srgb, var(--bs-primary) 5%, white);
}

.trip-main[b-zi9f9kl62m] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.wheelchair-icon[b-zi9f9kl62m] {
    color: var(--bs-primary);
    font-size: 1.1rem;
}

.guest-name[b-zi9f9kl62m] {
    font-weight: 500;
}

.trip-address[b-zi9f9kl62m] {
    font-size: 0.85rem;
    color: var(--bs-secondary);
    margin-top: 0.25rem;
    padding-left: 1.5rem;
}

.trip-notes[b-zi9f9kl62m] {
    font-size: 0.85rem;
    color: var(--bs-info);
    font-style: italic;
    margin-top: 0.25rem;
    padding-left: 1.5rem;
}
/* _content/FRP.Web/Components/Shared/Billing/BillingAddressManager.razor.rz.scp.css */
/* Billing Address Manager
   Karten-Hülle (.guest-card / .guest-card__head / __body) kommt aus
   components/_guest-card.css — hier nur inhaltsspezifische Stile. */

/* Loading State */
.loading-state[b-ewsosl9m2s] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-2);
    color: var(--text-secondary);
    font-size: var(--text-md);
}

/* Address List — Padding kommt von .guest-card__body */
.address-list[b-ewsosl9m2s] {
    list-style: none;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.address-item[b-ewsosl9m2s] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-2) var(--dp-space-3);
    border: 1px solid var(--border-subtle);
    border-radius: var(--dp-radius-4);
    background: var(--dp-slate-50);
    transition: all 0.2s ease;
}

.address-item:hover[b-ewsosl9m2s] {
    border-color: var(--accent);
    box-shadow: var(--shadow-sm);
    transform: translateY(-1px);
}

.address-item.is-default[b-ewsosl9m2s] {
    border-color: var(--status-success);
    border-left: 3px solid var(--status-success);
    background: rgba(var(--status-success-rgb), 0.08);
}

.address-main[b-ewsosl9m2s] {
    flex: 1;
    min-width: 0;
}

.address-title[b-ewsosl9m2s] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    margin-bottom: var(--dp-space-1);
}

.address-name[b-ewsosl9m2s] {
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
    color: var(--text-primary);
}

.default-tag[b-ewsosl9m2s] {
    font-size: var(--text-sm-plus);
    padding: 1px var(--dp-space-2);
    background: var(--status-success);
    color: var(--text-inverse);
    border-radius: var(--dp-radius-full);
    font-weight: var(--font-medium);
}

.address-details[b-ewsosl9m2s] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.address-contact[b-ewsosl9m2s] {
    display: flex;
    gap: var(--dp-space-3);
    margin-top: 2px;
}

.address-contact i[b-ewsosl9m2s] {
    margin-right: 2px;
}

/* Action Buttons */
.address-actions[b-ewsosl9m2s] {
    display: flex;
    gap: var(--dp-space-1);
    flex-shrink: 0;
}

.icon-btn[b-ewsosl9m2s] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--border-subtle);
    border-radius: var(--dp-radius-4);
    cursor: pointer;
    transition: all 0.2s ease;
    background: transparent;
    color: var(--text-secondary);
}

.icon-btn:hover[b-ewsosl9m2s] {
    transform: scale(1.05);
}

.icon-btn.default:hover[b-ewsosl9m2s] {
    background: var(--status-warning);
    color: var(--text-inverse);
    border-color: var(--status-warning);
}

.icon-btn.edit:hover[b-ewsosl9m2s] {
    background: var(--status-info);
    color: var(--text-inverse);
    border-color: var(--status-info);
}

.icon-btn.delete:hover[b-ewsosl9m2s] {
    background: var(--status-danger);
    color: var(--text-inverse);
    border-color: var(--status-danger);
}

/* Empty State */
.empty-state[b-ewsosl9m2s] {
    text-align: center;
    padding: var(--dp-space-6) var(--dp-space-4);
    color: var(--text-secondary);
}

.empty-state i[b-ewsosl9m2s] {
    font-size: var(--text-3xl);
    margin-bottom: var(--dp-space-2);
    display: block;
    opacity: 0.5;
}

.empty-state p[b-ewsosl9m2s] {
    margin: 0;
    font-weight: var(--font-medium);
}

.empty-state small[b-ewsosl9m2s] {
    font-size: var(--text-sm-plus);
}

/* Dialog Overlay */
.dialog-overlay[b-ewsosl9m2s] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    animation: fadeIn-b-ewsosl9m2s 0.2s ease;
}

@keyframes fadeIn-b-ewsosl9m2s {
    from { opacity: 0; }
    to { opacity: 1; }
}

.dialog-content[b-ewsosl9m2s] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-xl);
    width: 100%;
    max-width: 500px;
    max-height: 90vh;
    overflow: auto;
    animation: slideUp-b-ewsosl9m2s 0.25s ease;
}

@keyframes slideUp-b-ewsosl9m2s {
    from { opacity: 0; transform: translateY(16px) scale(0.98); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

.dialog-header[b-ewsosl9m2s] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-3) var(--dp-space-4);
    border-bottom: 1px solid var(--border-subtle);
    background: linear-gradient(180deg, var(--dp-slate-50) 0%, transparent 100%);
}

.dialog-header h4[b-ewsosl9m2s] {
    margin: 0;
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
}

.close-btn[b-ewsosl9m2s] {
    background: none;
    border: none;
    cursor: pointer;
    color: var(--text-secondary);
    padding: var(--dp-space-1);
    border-radius: var(--dp-radius-2);
}

.close-btn:hover[b-ewsosl9m2s] {
    background: var(--surface-canvas);
    color: var(--text-primary);
}

.dialog-body[b-ewsosl9m2s] {
    padding: var(--dp-space-4);
}

.form-grid[b-ewsosl9m2s] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-3);
}

.form-group[b-ewsosl9m2s] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.form-group.full[b-ewsosl9m2s] {
    grid-column: 1 / -1;
}

.form-group label[b-ewsosl9m2s] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--dp-slate-700);
}

.form-group input[type="text"][b-ewsosl9m2s],
.form-group input[type="email"][b-ewsosl9m2s] {
    padding: var(--dp-space-2) var(--dp-space-3);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-md);
    transition: var(--transition-fast);
}

.form-group input:focus[b-ewsosl9m2s] {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.1);
}

.checkbox-label[b-ewsosl9m2s] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    cursor: pointer;
    font-size: var(--text-md);
}

.checkbox-label input[type="checkbox"][b-ewsosl9m2s] {
    width: 16px;
    height: 16px;
    cursor: pointer;
}

.form-group.checkbox-group[b-ewsosl9m2s] {
    display: flex;
    align-items: flex-end;
    padding-bottom: var(--dp-space-2);
}

.dialog-footer[b-ewsosl9m2s] {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3) var(--dp-space-4);
    border-top: 1px solid var(--border-subtle);
    background: var(--surface-canvas);
}

/* Responsive */
@media (max-width: 600px) {
    .dialog-content[b-ewsosl9m2s] {
        margin: var(--dp-space-4);
        max-width: calc(100% - var(--dp-space-8));
    }

    .form-grid[b-ewsosl9m2s] {
        grid-template-columns: 1fr;
    }

    .form-group.full[b-ewsosl9m2s] {
        grid-column: 1;
    }
}
/* _content/FRP.Web/Components/Shared/Billing/CareLevelDifferenceDialog.razor.rz.scp.css */
/* Care Level Difference Dialog */

[b-flpatv1nmb] .care-level-difference-dialog .e-dlg-header {
    background: linear-gradient(135deg, #e65100, #f57c00);
    color: white;
    border-radius: var(--dp-radius-4) var(--dp-radius-4) 0 0;
}

.dialog-header[b-flpatv1nmb] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    font-size: var(--text-xl);
    font-weight: var(--font-medium);
}

.dialog-content[b-flpatv1nmb] {
    padding: var(--dp-space-5);
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
    position: relative;
    min-height: 300px;
}

/* Configuration Phase */
.config-phase[b-flpatv1nmb] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}

.care-level-history-section h4[b-flpatv1nmb] {
    margin: 0 0 var(--dp-space-2) 0;
    font-size: var(--text-md);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-700);
}

.history-list[b-flpatv1nmb] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-2);
}

.history-entry[b-flpatv1nmb] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-1) var(--dp-space-3);
    background: var(--dp-slate-50);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
}

.care-level-badge[b-flpatv1nmb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 2px 8px;
    border-radius: var(--dp-radius-2);
    font-weight: var(--font-semibold);
    font-size: var(--text-sm-plus);
    color: white;
}

.care-level-badge.level-1[b-flpatv1nmb] { background: #78909c; }
.care-level-badge.level-2[b-flpatv1nmb] { background: #42a5f5; }
.care-level-badge.level-3[b-flpatv1nmb] { background: #66bb6a; }
.care-level-badge.level-4[b-flpatv1nmb] { background: #ffa726; }
.care-level-badge.level-5[b-flpatv1nmb] { background: #ef5350; }

.history-dates[b-flpatv1nmb] {
    color: var(--text-secondary);
    font-size: var(--text-sm-plus);
}

.care-level-selectors[b-flpatv1nmb] {
    display: flex;
    align-items: flex-end;
    gap: var(--dp-space-3);
}

.care-level-selectors .form-group[b-flpatv1nmb] {
    flex: 1;
}

.arrow-icon[b-flpatv1nmb] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-bottom: var(--dp-space-2);
    font-size: var(--text-2xl);
    color: var(--dp-slate-500);
}

.month-selectors[b-flpatv1nmb] {
    display: flex;
    gap: var(--dp-space-4);
}

.month-selectors .form-group[b-flpatv1nmb] {
    flex: 1;
}

.form-label[b-flpatv1nmb] {
    display: block;
    margin-bottom: var(--dp-space-1);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--dp-slate-700);
}

.form-label.required[b-flpatv1nmb]::after {
    content: " *";
    color: var(--status-danger);
}

/* Preview Phase */
.preview-phase[b-flpatv1nmb] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}

.preview-header[b-flpatv1nmb] {
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--dp-slate-50);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-2);
}

.preview-info[b-flpatv1nmb] {
    font-size: var(--text-lg);
    color: var(--dp-slate-800);
}

.warnings-section[b-flpatv1nmb] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.total-section[b-flpatv1nmb] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-4);
    background: #e8f5e9;
    border: 1px solid #c8e6c9;
    border-radius: var(--dp-radius-4);
    margin-top: var(--dp-space-3);
}

.total-label[b-flpatv1nmb] {
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-800);
}

.total-amount[b-flpatv1nmb] {
    font-size: var(--text-2xl);
    font-weight: var(--font-bold);
    color: #2e7d32;
}

/* Result Phase */
.result-phase[b-flpatv1nmb] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}

.success-message[b-flpatv1nmb] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-4);
    background: #e8f5e9;
    border: 1px solid #c8e6c9;
    border-radius: var(--dp-radius-4);
    color: #2e7d32;
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
}

.created-invoices-list[b-flpatv1nmb] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.created-invoice-item[b-flpatv1nmb] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--dp-slate-50);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-2);
}

.invoice-number[b-flpatv1nmb] {
    font-weight: var(--font-semibold);
    color: var(--accent);
    min-width: 120px;
}

.invoice-period[b-flpatv1nmb] {
    color: var(--text-secondary);
    font-size: var(--text-md);
    flex: 1;
}

.invoice-amount[b-flpatv1nmb] {
    font-weight: var(--font-semibold);
    color: var(--dp-slate-800);
}

/* Alerts */
.alert[b-flpatv1nmb] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3) var(--dp-space-4);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
}

.alert-warning[b-flpatv1nmb] {
    background: #fff3e0;
    border: 1px solid #ffe0b2;
    color: #e65100;
}

.alert-danger[b-flpatv1nmb] {
    background: #fce4ec;
    border: 1px solid #f8bbd0;
    color: #c62828;
}

/* Loading Overlay */
.loading-overlay[b-flpatv1nmb] {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-3);
    background: rgba(255, 255, 255, 0.9);
    z-index: 10;
    font-size: var(--text-lg);
    color: var(--dp-slate-600);
}

/* Dialog Footer */
.dialog-footer[b-flpatv1nmb] {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-3);
    padding: var(--dp-space-4) var(--dp-space-5);
    border-top: 1px solid var(--border-default);
    background: var(--dp-slate-50);
}

[b-flpatv1nmb] .dialog-footer .e-btn {
    padding: var(--dp-space-2) var(--dp-space-5);
    font-weight: var(--font-medium);
}

/* Responsive */
@media (max-width: 768px) {
    .care-level-selectors[b-flpatv1nmb],
    .month-selectors[b-flpatv1nmb] {
        flex-direction: column;
    }

    .arrow-icon[b-flpatv1nmb] {
        padding: 0;
        transform: rotate(90deg);
    }

    [b-flpatv1nmb] .care-level-difference-dialog {
        width: 95% !important;
    }
}
/* _content/FRP.Web/Components/Shared/Billing/CheckInBillingTimeline.razor.rz.scp.css */
/* Haupt-Container */
.checkin-billing-calendar[b-3a737afz59] {
    max-width: 1200px;
    margin: 0 auto;
    background: white;
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-lg);
    overflow: hidden;
}

/* Header */
.calendar-header[b-3a737afz59] {
    background: linear-gradient(135deg, var(--dp-blue-600) 0%, #764ba2 100%);
    color: white;
    padding: var(--dp-space-4) var(--dp-space-5);
}

.calendar-title[b-3a737afz59] {
    margin: 0 0 var(--dp-space-3) 0;
    font-size: var(--text-2xl);
    font-weight: var(--font-semibold);
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.calendar-summary[b-3a737afz59] {
    display: flex;
    gap: var(--dp-space-8);
    flex-wrap: wrap;
}

.summary-item[b-3a737afz59] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.summary-label[b-3a737afz59] {
    font-size: var(--text-md);
    opacity: 0.9;
    font-weight: var(--font-medium);
}

.summary-value[b-3a737afz59] {
    font-size: var(--text-2xl);
    font-weight: var(--font-bold);
}

.summary-value.success[b-3a737afz59] {
    color: #4ade80;
}

.summary-value.highlight[b-3a737afz59] {
    color: #fbbf24;
}

/* Kalender Container */
.calendar-container[b-3a737afz59] {
    padding: var(--dp-space-4);
}

/* Header Row mit Wochentagen */
.calendar-header-row[b-3a737afz59] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
    margin-bottom: var(--dp-space-2);
}

.calendar-day-header[b-3a737afz59] {
    text-align: center;
    font-weight: var(--font-semibold);
    color: var(--dp-slate-500);
    padding: var(--dp-space-3) var(--dp-space-2);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-6);
    font-size: var(--text-md);
}

/* Kalender Grid */
.calendar-grid[b-3a737afz59] {
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    overflow: hidden;
    background: white;
}

.calendar-week[b-3a737afz59] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    border-bottom: 1px solid var(--dp-slate-200);
}

.calendar-week:last-child[b-3a737afz59] {
    border-bottom: none;
}

/* Kalender Tage */
.calendar-day[b-3a737afz59] {
    min-height: 100px;
    border-right: 1px solid var(--dp-slate-200);
    position: relative;
    background: white;
    transition: all var(--transition-fast);
}

.calendar-day:last-child[b-3a737afz59] {
    border-right: none;
}

.calendar-day:hover[b-3a737afz59] {
    background: var(--dp-slate-50);
}

.calendar-day.other-month[b-3a737afz59] {
    background: var(--dp-slate-50);
    opacity: 0.6;
}

.calendar-day.today[b-3a737afz59] {
    background: #fef3c7;
}

.calendar-day.has-present-checkin[b-3a737afz59] {
    background: #ecfdf5;
    border-left: 4px solid #10b981;
}

.calendar-day.has-absent-checkin[b-3a737afz59] {
    background: #fef2f2;
    border-left: 4px solid #ef4444;
}

.calendar-day.has-planned-absent-checkin[b-3a737afz59] {
    background: #fefbeb;
    border-left: 4px solid #f59e0b;
}

/* Tag Nummer */
.day-number[b-3a737afz59] {
    position: absolute;
    top: var(--dp-space-2);
    left: var(--dp-space-3);
    font-weight: var(--font-semibold);
    font-size: var(--text-lg);
    color: var(--dp-slate-700);
}

.calendar-day.other-month .day-number[b-3a737afz59] {
    color: var(--dp-slate-400);
}

.calendar-day.today .day-number[b-3a737afz59] {
    color: #d97706;
    font-weight: var(--font-bold);
}

/* CheckIn Indikatoren */
.checkin-indicator[b-3a737afz59] {
    position: absolute;
    top: 32px;
    left: var(--dp-space-2);
    right: var(--dp-space-2);
    bottom: var(--dp-space-2);
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.checkin-status-icon[b-3a737afz59] {
    font-size: var(--text-2xl);
    display: flex;
    justify-content: center;
}

.checkin-indicator.checkin-present .checkin-status-icon[b-3a737afz59] {
    color: #10b981;
}

.checkin-indicator.checkin-absent .checkin-status-icon[b-3a737afz59] {
    color: #ef4444;
}

.checkin-indicator.checkin-planned .checkin-status-icon[b-3a737afz59] {
    color: #f59e0b;
}

/* Billing Amount */
.billing-amount-small[b-3a737afz59] {
    text-align: center;
    font-weight: var(--font-bold);
    font-size: var(--text-md);
    color: #059669;
    background: #d1fae5;
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-4);
    margin: var(--dp-space-1) 0;
}

/* Transport Indikatoren */
.transport-indicators[b-3a737afz59] {
    display: flex;
    justify-content: center;
    gap: var(--dp-space-2);
    margin-top: var(--dp-space-1);
}

.transport-icon[b-3a737afz59] {
    color: var(--accent);
    font-size: var(--text-lg);
}

.wheelchair-icon[b-3a737afz59] {
    color: var(--dp-blue-600);
    font-size: var(--text-lg);
}

/* Abwesenheits-Indikator */
.absence-indicator[b-3a737afz59] {
    text-align: center;
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-500);
    background: var(--dp-slate-100);
    padding: var(--dp-space-1) var(--dp-space-1);
    border-radius: var(--dp-radius-2);
    margin-top: var(--dp-space-2);
}

/* Kein CheckIn */
.no-checkin[b-3a737afz59] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: var(--dp-slate-300);
    font-size: var(--text-3xl);
}

/* Legende */
.calendar-legend[b-3a737afz59] {
    background: var(--dp-slate-50);
    padding: var(--dp-space-4) var(--dp-space-5);
    border-top: 1px solid var(--dp-slate-200);
}

.calendar-legend h5[b-3a737afz59] {
    margin: 0 0 var(--dp-space-4) 0;
    color: var(--dp-slate-700);
    font-weight: var(--font-semibold);
}

.legend-items[b-3a737afz59] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-5);
}

.legend-item[b-3a737afz59] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-md);
    color: var(--dp-slate-500);
}

.legend-icon[b-3a737afz59] {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
}

.legend-icon.present[b-3a737afz59] {
    color: #10b981;
    background: #ecfdf5;
}

.legend-icon.absent[b-3a737afz59] {
    color: #ef4444;
    background: #fef2f2;
}

.legend-icon.planned[b-3a737afz59] {
    color: #f59e0b;
    background: #fefbeb;
}

.legend-icon.no-checkin[b-3a737afz59] {
    color: var(--dp-slate-300);
    background: var(--dp-slate-50);
}

/* Responsive Design */
@media (max-width: 768px) {
    .calendar-container[b-3a737afz59] {
        padding: var(--dp-space-4);
    }

    .calendar-day[b-3a737afz59] {
        min-height: 80px;
    }

    .calendar-summary[b-3a737afz59] {
        gap: var(--dp-space-4);
    }

    .legend-items[b-3a737afz59] {
        gap: var(--dp-space-3);
    }

    .billing-amount-small[b-3a737afz59] {
        font-size: var(--text-sm-plus);
        padding: 2px var(--dp-space-1);
    }
}

@media (max-width: 480px) {
    .calendar-day[b-3a737afz59] {
        min-height: 60px;
    }

    .day-number[b-3a737afz59] {
        font-size: var(--text-md);
    }

    .checkin-status-icon[b-3a737afz59] {
        font-size: var(--text-lg);
    }
}
/* _content/FRP.Web/Components/Shared/Billing/CheckInOverviewCard.razor.rz.scp.css */
.checkin-overview-card[b-4aom8iwxbb] {
    margin-bottom: var(--dp-space-4);
}

.overview-header[b-4aom8iwxbb] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: var(--dp-space-4);
}

.overview-title[b-4aom8iwxbb] {
    margin: 0;
    color: var(--text-primary);
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.overview-stats[b-4aom8iwxbb] {
    display: flex;
    gap: var(--dp-space-4);
    flex-wrap: wrap;
}

.stat-item[b-4aom8iwxbb] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
}

.stat-item.total[b-4aom8iwxbb] {
    background-color: #e3f2fd;
    color: #1976d2;
}

.stat-item.warning[b-4aom8iwxbb] {
    background-color: #fff3e0;
    color: #f57c00;
}

.stat-item.success[b-4aom8iwxbb] {
    background-color: #e8f5e8;
    color: #388e3c;
}

.batch-actions[b-4aom8iwxbb] {
    margin-bottom: var(--dp-space-4);
    padding: var(--dp-space-4);
    background-color: #fff8e1;
    border: 1px solid var(--status-warning);
    border-radius: var(--dp-radius-4);
}

.checkin-list[b-4aom8iwxbb] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
}

.checkin-item[b-4aom8iwxbb] {
    border: 1px solid var(--dp-slate-300);
    border-radius: var(--dp-radius-6);
    padding: var(--dp-space-4);
    background-color: var(--dp-slate-50);
    transition: all var(--transition-fast);
}

.checkin-item:hover[b-4aom8iwxbb] {
    box-shadow: var(--shadow-sm);
}

.checkin-item.status-no-items[b-4aom8iwxbb] {
    border-left: 4px solid #ff9800;
    background-color: #fffbf0;
}

.checkin-item.status-ready[b-4aom8iwxbb] {
    border-left: 4px solid var(--status-success);
    background-color: #f1f8e9;
}

.checkin-item.status-billed[b-4aom8iwxbb] {
    border-left: 4px solid var(--accent);
    background-color: #e3f2fd;
}

.checkin-item.status-partial[b-4aom8iwxbb] {
    border-left: 4px solid #ff5722;
    background-color: #fce4ec;
}

.checkin-main-info[b-4aom8iwxbb] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
    flex-wrap: wrap;
    margin-bottom: var(--dp-space-2);
}

.checkin-date[b-4aom8iwxbb] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    min-width: 150px;
}

.checkin-date strong[b-4aom8iwxbb] {
    color: var(--text-primary);
}

.weekday[b-4aom8iwxbb] {
    color: var(--text-secondary);
    font-size: var(--text-md);
}

.checkin-status[b-4aom8iwxbb] {
    flex-shrink: 0;
}

.status-badge[b-4aom8iwxbb] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
    padding: var(--dp-space-1) var(--dp-space-3);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    text-transform: uppercase;
}

.badge-warning[b-4aom8iwxbb] {
    background-color: #fff3cd;
    color: #856404;
    border: 1px solid #ffeaa7;
}

.badge-success[b-4aom8iwxbb] {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.badge-info[b-4aom8iwxbb] {
    background-color: #cce5ff;
    color: #004085;
    border: 1px solid #b8daff;
}

.badge-secondary[b-4aom8iwxbb] {
    background-color: var(--dp-slate-200);
    color: var(--dp-slate-700);
    border: 1px solid var(--dp-slate-300);
}

.checkin-details[b-4aom8iwxbb] {
    display: flex;
    gap: var(--dp-space-4);
    flex-wrap: wrap;
}

.timeslot-info[b-4aom8iwxbb], .transport-info[b-4aom8iwxbb] {
    font-size: var(--text-md);
    color: var(--text-secondary);
}

.checkin-amount[b-4aom8iwxbb] {
    margin-left: auto;
    text-align: right;
    color: var(--text-primary);
}

.checkin-amount small[b-4aom8iwxbb] {
    display: block;
    color: var(--text-secondary);
    font-size: var(--text-sm-plus);
}

.checkin-actions[b-4aom8iwxbb] {
    display: flex;
    gap: var(--dp-space-2);
    flex-wrap: wrap;
    margin-top: var(--dp-space-2);
}

.service-items-details[b-4aom8iwxbb] {
    margin-top: var(--dp-space-4);
    padding-top: var(--dp-space-4);
    border-top: 1px solid var(--dp-slate-300);
}

.service-items-details h6[b-4aom8iwxbb] {
    margin: 0 0 var(--dp-space-2) 0;
    color: var(--text-primary);
}

.service-items-list[b-4aom8iwxbb] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.service-item[b-4aom8iwxbb] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-2);
    background-color: var(--dp-slate-50);
    border-radius: var(--dp-radius-2);
    border: 1px solid var(--dp-slate-200);
}

.service-item.already-billed[b-4aom8iwxbb] {
    background-color: #e8f4f8;
    border-color: #b8e6f0;
    opacity: 0.8;
}

.service-item-main[b-4aom8iwxbb] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.service-name[b-4aom8iwxbb] {
    font-weight: var(--font-medium);
    color: var(--text-primary);
}

.service-category[b-4aom8iwxbb] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    background-color: var(--dp-slate-200);
    padding: 0.125rem var(--dp-space-1);
    border-radius: var(--dp-radius-full);
}

.service-item-details[b-4aom8iwxbb] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-md);
}

.quantity[b-4aom8iwxbb], .unit-price[b-4aom8iwxbb] {
    color: var(--text-secondary);
}

.total[b-4aom8iwxbb] {
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}

.billed-indicator[b-4aom8iwxbb] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
    color: #155724;
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    background-color: #d4edda;
    padding: 0.125rem var(--dp-space-2);
    border-radius: var(--dp-radius-full);
}

.no-checkins[b-4aom8iwxbb] {
    text-align: center;
    padding: var(--dp-space-8);
    color: var(--text-secondary);
}

.no-checkins i[b-4aom8iwxbb] {
    font-size: var(--text-4xl);
    color: var(--dp-slate-300);
    margin-bottom: var(--dp-space-4);
}

.no-checkins h5[b-4aom8iwxbb] {
    color: var(--text-primary);
    margin-bottom: var(--dp-space-2);
}

@media (max-width: 768px) {
    .overview-header[b-4aom8iwxbb] {
        flex-direction: column;
        align-items: flex-start;
    }

    .checkin-main-info[b-4aom8iwxbb] {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--dp-space-2);
    }

    .checkin-amount[b-4aom8iwxbb] {
        margin-left: 0;
        text-align: left;
    }

    .service-item[b-4aom8iwxbb] {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--dp-space-2);
    }
}
/* _content/FRP.Web/Components/Shared/Billing/DavasoAbgleichDialog.razor.rz.scp.css */
/* Dialog Header */
.davaso-dialog-header[b-rbuh9zzohl] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
}

.davaso-header-icon[b-rbuh9zzohl] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #6366f1, #818cf8);
    border-radius: var(--dp-radius-4);
    color: white;
    font-size: 18px;
    flex-shrink: 0;
}

.davaso-header-text[b-rbuh9zzohl] {
    display: flex;
    flex-direction: column;
    gap: 1px;
}

.davaso-header-title[b-rbuh9zzohl] {
    font-size: var(--text-lg);
    font-weight: 700;
    color: var(--text-primary);
    letter-spacing: -0.01em;
}

.davaso-header-period[b-rbuh9zzohl] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    font-weight: 500;
    font-variant-numeric: tabular-nums;
}

/* Preview Container */
.davaso-preview[b-rbuh9zzohl] {
    padding: var(--dp-space-4) var(--dp-space-5);
}

/* Stats Row */
.davaso-stats-row[b-rbuh9zzohl] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--dp-space-3);
    margin-bottom: var(--dp-space-5);
}

.davaso-stat[b-rbuh9zzohl] {
    text-align: center;
    padding: var(--dp-space-3) var(--dp-space-2);
    border-radius: var(--dp-radius-4);
    background: var(--dp-slate-50);
    border: 1px solid var(--dp-slate-200);
    transition: all 0.2s ease;
}

.davaso-stat-number[b-rbuh9zzohl] {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
    font-variant-numeric: tabular-nums;
    letter-spacing: -0.02em;
    margin-bottom: 4px;
}

.davaso-stat-label[b-rbuh9zzohl] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-secondary);
}

.davaso-stat-total .davaso-stat-number[b-rbuh9zzohl] { color: var(--text-primary); }
.davaso-stat-action .davaso-stat-number[b-rbuh9zzohl] { color: var(--dp-slate-400); }
.davaso-stat-action.has-value[b-rbuh9zzohl] { background: rgba(34, 197, 94, 0.06); border-color: rgba(34, 197, 94, 0.2); }
.davaso-stat-action.has-value .davaso-stat-number[b-rbuh9zzohl] { color: var(--status-success); }
.davaso-stat-action.has-value .davaso-stat-label[b-rbuh9zzohl] { color: #065f46; }
.davaso-stat-done .davaso-stat-number[b-rbuh9zzohl] { color: var(--status-info); }
.davaso-stat-skip .davaso-stat-number[b-rbuh9zzohl] { color: var(--dp-slate-400); }

/* Section Headers */
.davaso-section[b-rbuh9zzohl] {
    margin-bottom: var(--dp-space-4);
}

.davaso-section-header[b-rbuh9zzohl] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2) 0;
    margin-bottom: var(--dp-space-2);
}

.davaso-section-dot[b-rbuh9zzohl] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}

.dot-success[b-rbuh9zzohl] { background: var(--status-success); }
.dot-neutral[b-rbuh9zzohl] { background: var(--dp-slate-400); }

.davaso-section-title[b-rbuh9zzohl] {
    font-size: var(--text-md);
    font-weight: 700;
    color: var(--text-primary);
    letter-spacing: -0.01em;
}

.davaso-section-count[b-rbuh9zzohl] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    border-radius: var(--dp-radius-full);
    background: var(--dp-slate-100);
    color: var(--text-secondary);
    font-size: 11px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.davaso-section-action .davaso-section-count[b-rbuh9zzohl] {
    background: rgba(34, 197, 94, 0.1);
    color: #065f46;
}

.davaso-section-sum[b-rbuh9zzohl] {
    margin-left: auto;
    font-size: var(--text-md);
    font-weight: 700;
    color: var(--status-success);
    font-variant-numeric: tabular-nums;
}

/* Collapsible toggle */
.davaso-section-toggle[b-rbuh9zzohl] {
    cursor: pointer;
    user-select: none;
    border-radius: var(--dp-radius-2);
    padding: var(--dp-space-2) var(--dp-space-2);
    margin: 0 calc(-1 * var(--dp-space-2));
    transition: background 0.15s ease;
    list-style: none;
}

.davaso-section-toggle[b-rbuh9zzohl]::-webkit-details-marker { display: none; }

.davaso-section-toggle:hover[b-rbuh9zzohl] {
    background: var(--dp-slate-50);
}

.davaso-section-expand[b-rbuh9zzohl] {
    margin-left: auto;
    color: var(--dp-slate-400);
    font-size: 14px;
    transition: transform 0.2s ease;
}

details[open] > .davaso-section-toggle .davaso-section-expand[b-rbuh9zzohl] {
    transform: rotate(180deg);
}

/* Table */
.davaso-table-wrap[b-rbuh9zzohl] {
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-4);
    overflow: hidden;
    max-height: 320px;
    overflow-y: auto;
}

.davaso-table[b-rbuh9zzohl] {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
}

.davaso-table thead[b-rbuh9zzohl] {
    position: sticky;
    top: 0;
    z-index: 1;
}

.davaso-table th[b-rbuh9zzohl] {
    padding: var(--dp-space-2) var(--dp-space-3);
    background: var(--dp-slate-50);
    border-bottom: 2px solid var(--dp-slate-200);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-secondary);
    white-space: nowrap;
}

.davaso-table td[b-rbuh9zzohl] {
    padding: var(--dp-space-2) var(--dp-space-3);
    border-bottom: 1px solid var(--dp-slate-100);
    color: var(--text-primary);
    white-space: nowrap;
}

.davaso-table tbody tr:last-child td[b-rbuh9zzohl] {
    border-bottom: none;
}

.davaso-table tbody tr:hover[b-rbuh9zzohl] {
    background: rgba(var(--accent-rgb), 0.03);
}

.davaso-table-muted td[b-rbuh9zzohl] {
    color: var(--text-secondary);
}

/* Table column helpers */
.col-right[b-rbuh9zzohl] { text-align: right; }
.col-mono[b-rbuh9zzohl] { font-variant-numeric: tabular-nums; font-family: inherit; }
.col-invoice[b-rbuh9zzohl] { font-weight: 600; color: var(--text-primary); }
.col-date[b-rbuh9zzohl] { color: var(--text-secondary); font-variant-numeric: tabular-nums; }

.col-highlight[b-rbuh9zzohl] {
    font-weight: 700;
    color: var(--status-success) !important;
}

/* FRP status mini tag */
.davaso-frp-status[b-rbuh9zzohl] {
    display: inline-block;
    padding: 1px 6px;
    border-radius: var(--dp-radius-2);
    background: var(--dp-slate-100);
    color: var(--text-secondary);
    font-size: 11px;
    font-weight: 600;
}

/* Badge system */
.davaso-badge[b-rbuh9zzohl] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    border-radius: var(--dp-radius-full);
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
}

.davaso-badge :deep(i)[b-rbuh9zzohl] { font-size: 12px; }

.davaso-badge-pay[b-rbuh9zzohl] {
    background: rgba(34, 197, 94, 0.1);
    color: #065f46;
    border: 1px solid rgba(34, 197, 94, 0.2);
}

.davaso-badge-partial[b-rbuh9zzohl] {
    background: rgba(245, 158, 11, 0.1);
    color: #92400e;
    border: 1px solid rgba(245, 158, 11, 0.2);
}

.davaso-badge-done[b-rbuh9zzohl] {
    background: rgba(14, 165, 233, 0.08);
    color: #0e7490;
    border: 1px solid rgba(14, 165, 233, 0.15);
}

.davaso-badge-miss[b-rbuh9zzohl] {
    background: rgba(239, 68, 68, 0.08);
    color: #991b1b;
    border: 1px solid rgba(239, 68, 68, 0.15);
}

.davaso-badge-cancel[b-rbuh9zzohl] {
    background: var(--dp-slate-100);
    color: var(--dp-slate-600);
    border: 1px solid var(--dp-slate-200);
}

/* Empty state */
.davaso-empty[b-rbuh9zzohl] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-5);
    background: var(--dp-slate-50);
    border: 1px dashed var(--dp-slate-300);
    border-radius: var(--dp-radius-4);
    color: var(--text-secondary);
    font-size: var(--text-md);
}

.davaso-empty :deep(i)[b-rbuh9zzohl] {
    font-size: 20px;
    color: var(--status-info);
}

/* Footer */
.davaso-dialog-footer[b-rbuh9zzohl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--dp-space-3) var(--dp-space-5);
    background: var(--dp-slate-50);
    border-top: 1px solid var(--dp-slate-200);
    gap: var(--dp-space-3);
}

.davaso-footer-info[b-rbuh9zzohl] {
    flex: 1;
    min-width: 0;
}

.davaso-footer-summary[b-rbuh9zzohl] {
    font-size: var(--text-md);
    color: var(--text-secondary);
}

.davaso-footer-summary strong[b-rbuh9zzohl] {
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}

.davaso-footer-actions[b-rbuh9zzohl] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    flex-shrink: 0;
}

.davaso-spinner[b-rbuh9zzohl] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255,255,255,0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: davaso-spin-b-rbuh9zzohl 0.6s linear infinite;
    margin-right: 4px;
}

@keyframes davaso-spin-b-rbuh9zzohl {
    to { transform: rotate(360deg); }
}
/* _content/FRP.Web/Components/Shared/Billing/InvoiceDeliveryDialog.razor.rz.scp.css */
/* Invoice Delivery Dialog Styles */

[b-608813gyim] .invoice-delivery-dialog .e-dlg-header {
    background: linear-gradient(135deg, #1976d2, #1565c0);
    color: white;
    border-radius: var(--dp-radius-4) var(--dp-radius-4) 0 0;
}

[b-608813gyim] .invoice-delivery-dialog .e-dlg-header .e-dlg-header-content {
    padding: var(--dp-space-4) var(--dp-space-5);
}

.dialog-header[b-608813gyim] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    font-size: var(--text-xl);
    font-weight: var(--font-medium);
}

.dialog-header i[b-608813gyim] {
    font-size: var(--text-2xl);
}

.dialog-content[b-608813gyim] {
    padding: var(--dp-space-5);
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-5);
}

/* Invoice Info Card */
.invoice-info-card[b-608813gyim] {
    background: var(--dp-slate-50);
    border: 1px solid var(--border-default);
}

.invoice-info[b-608813gyim] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.invoice-detail[b-608813gyim] {
    font-size: var(--text-md);
    color: var(--dp-slate-700);
}

.invoice-detail strong[b-608813gyim] {
    color: var(--dp-slate-900);
    min-width: 80px;
    display: inline-block;
}

/* Delivery Methods */
.delivery-methods h4[b-608813gyim] {
    margin: 0 0 var(--dp-space-4) 0;
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-900);
}

.delivery-option[b-608813gyim] {
    display: flex;
    align-items: flex-start;
    gap: var(--dp-space-3);
    padding: var(--dp-space-4);
    border: 2px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    margin-bottom: var(--dp-space-3);
    transition: var(--transition-base);
    cursor: pointer;
}

.delivery-option:hover[b-608813gyim] {
    border-color: var(--accent);
    background-color: #f8f9ff;
}

.delivery-option.selected[b-608813gyim] {
    border-color: var(--accent);
    background-color: #e7f3ff;
}

.delivery-info[b-608813gyim] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.delivery-title[b-608813gyim] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-900);
}

.delivery-title i[b-608813gyim] {
    font-size: var(--text-xl);
    width: 20px;
}

.delivery-details[b-608813gyim] {
    font-size: var(--text-md);
    color: var(--text-secondary);
}

.email-address[b-608813gyim] {
    color: var(--accent);
    font-weight: var(--font-medium);
}

.no-email[b-608813gyim] {
    color: var(--status-danger);
    font-style: italic;
}

.postal-address[b-608813gyim] {
    line-height: 1.4;
    margin-bottom: var(--dp-space-1);
}

.delivery-note[b-608813gyim] {
    color: var(--status-success);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
}

.delivery-note[b-608813gyim]::before {
    content: "";
    margin-right: var(--dp-space-1);
}

/* Manual Notes */
[b-608813gyim] .manual-notes .e-input {
    min-height: 60px;
    resize: vertical;
}

/* Attachments Section */
.attachments-section h4[b-608813gyim] {
    margin: 0 0 var(--dp-space-3) 0;
    font-size: var(--text-md);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-900);
}

.attachment-list[b-608813gyim] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.attachment-item[b-608813gyim] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2) var(--dp-space-3);
    background: var(--dp-slate-50);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
    color: var(--dp-slate-700);
}

.attachment-item i[b-608813gyim] {
    color: var(--status-danger);
    font-size: var(--text-lg);
}

/* Status Messages */
.status-message[b-608813gyim] {
    padding: var(--dp-space-3) var(--dp-space-4);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.status-message.success[b-608813gyim] {
    background: #d4edda;
    border: 1px solid #c3e6cb;
    color: #155724;
}

.status-message.error[b-608813gyim] {
    background: #f8d7da;
    border: 1px solid #f5c6cb;
    color: #721c24;
}

.status-message i[b-608813gyim] {
    font-size: var(--text-lg);
}

/* Dialog Footer */
.dialog-footer[b-608813gyim] {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-3);
    padding: var(--dp-space-5);
    border-top: 1px solid var(--border-default);
    background: var(--dp-slate-50);
}

[b-608813gyim] .dialog-footer .e-btn {
    padding: var(--dp-space-2) var(--dp-space-5);
    font-weight: var(--font-medium);
}

/* Radio Button Styling */
[b-608813gyim] .delivery-option .e-radio-wrapper {
    margin-top: 2px;
}

[b-608813gyim] .delivery-option .e-radio + label::before {
    border-width: 2px;
}

[b-608813gyim] .delivery-option.selected .e-radio + label::before {
    border-color: var(--accent);
}

[b-608813gyim] .delivery-option.selected .e-radio:checked + label::after {
    background-color: var(--accent);
}

/* Responsive Design */
@media (max-width: 768px) {
    .dialog-content[b-608813gyim] {
        padding: var(--dp-space-4);
    }

    .delivery-option[b-608813gyim] {
        padding: var(--dp-space-3);
    }

    .dialog-footer[b-608813gyim] {
        padding: var(--dp-space-4);
    }

    [b-608813gyim] .invoice-delivery-dialog {
        width: 90% !important;
        height: auto !important;
        max-height: 90vh;
    }
}
/* _content/FRP.Web/Components/Shared/Billing/InvoiceFilterBuilder.razor.rz.scp.css */
.query-builder[b-2uaa045ugo] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
}

.query-builder__mode[b-2uaa045ugo] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.query-builder__mode-label[b-2uaa045ugo] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    font-weight: var(--font-medium);
}

.query-builder__rows[b-2uaa045ugo] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.query-builder__row[b-2uaa045ugo] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    flex-wrap: wrap;
}

.query-builder__value[b-2uaa045ugo] {
    min-width: 160px;
}

.query-builder__remove[b-2uaa045ugo],
.query-builder__add[b-2uaa045ugo] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
    border: 1px solid var(--dp-slate-200);
    background: var(--surface-primary);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-1) var(--dp-space-2);
    color: var(--text-secondary);
    cursor: pointer;
    transition: all var(--transition-fast);
}

.query-builder__remove:hover[b-2uaa045ugo] {
    color: var(--status-danger);
    border-color: var(--status-danger);
}

.query-builder__add:hover[b-2uaa045ugo] {
    color: var(--accent);
    border-color: var(--accent);
}
/* _content/FRP.Web/Components/Shared/Billing/InvoiceLetters.razor.rz.scp.css */
.letters-section[b-e0icq0uceh] {
    margin-bottom: var(--dp-space-8);
}

.letters-empty[b-e0icq0uceh] {
    color: var(--dp-slate-500);
    font-size: var(--text-sm);
    margin: 0;
    padding: var(--dp-space-4) var(--dp-space-5);
}

.letters-list[b-e0icq0uceh] {
    display: flex;
    flex-direction: column;
}

.letter-entry[b-e0icq0uceh] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
    padding: var(--dp-space-4) var(--dp-space-5);
    border-bottom: 1px solid var(--dp-slate-100);
    transition: background-color var(--transition-fast);
}

.letter-entry:last-child[b-e0icq0uceh] {
    border-bottom: none;
}

.letter-entry:hover[b-e0icq0uceh] {
    background-color: var(--dp-slate-50);
}

.letter-main[b-e0icq0uceh] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    flex-wrap: wrap;
}

.letter-kind[b-e0icq0uceh] {
    padding: 2px var(--dp-space-2);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-xs);
    font-weight: var(--font-semibold);
    background-color: var(--dp-slate-100);
    color: var(--dp-slate-600);
}

.letter-kind--kuerzung[b-e0icq0uceh] {
    background-color: color-mix(in srgb, var(--status-warning) 15%, transparent);
    color: var(--status-warning);
}

.letter-kind--ablehnung[b-e0icq0uceh] {
    background-color: color-mix(in srgb, var(--status-danger) 15%, transparent);
    color: var(--status-danger);
}

.letter-kind--widerspruch[b-e0icq0uceh] {
    background-color: color-mix(in srgb, var(--status-info) 15%, transparent);
    color: var(--status-info);
}

.letter-file-link[b-e0icq0uceh] {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    color: var(--accent);
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
    font: inherit;
    font-weight: var(--font-medium);
}

.letter-file-link:hover[b-e0icq0uceh] {
    text-decoration: underline;
}

.letter-date[b-e0icq0uceh] {
    color: var(--dp-slate-500);
    font-size: var(--text-sm);
    margin-left: auto;
}

.letter-notes[b-e0icq0uceh] {
    color: var(--dp-slate-600);
    font-size: var(--text-sm);
    white-space: pre-wrap;
}

.letter-others[b-e0icq0uceh] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    flex-wrap: wrap;
    font-size: var(--text-sm);
}

.letter-others__label[b-e0icq0uceh] {
    color: var(--dp-slate-500);
}

.letter-other-link[b-e0icq0uceh] {
    color: var(--accent);
    text-decoration: none;
    font-weight: var(--font-medium);
}

.letter-other-link:hover[b-e0icq0uceh] {
    text-decoration: underline;
}

.letter-other-guest[b-e0icq0uceh] {
    color: var(--dp-slate-500);
    font-weight: 400;
    margin-left: var(--dp-space-1);
}

.letter-actions[b-e0icq0uceh] {
    display: flex;
    gap: var(--dp-space-2);
    flex-wrap: wrap;
    margin-top: var(--dp-space-1);
}

.letter-error[b-e0icq0uceh] {
    color: var(--status-danger);
    font-size: var(--text-sm);
    margin: var(--dp-space-2) 0 0;
}

.letter-file-chosen[b-e0icq0uceh] {
    color: var(--dp-slate-600);
    font-size: var(--text-sm);
    margin: var(--dp-space-1) 0 0;
}

.letter-search-hits[b-e0icq0uceh] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
    margin-top: var(--dp-space-3);
    max-height: 320px;
    overflow-y: auto;
}

.letter-search-hit[b-e0icq0uceh] {
    display: grid;
    grid-template-columns: 120px 1fr auto;
    gap: var(--dp-space-3);
    align-items: center;
    padding: var(--dp-space-2) var(--dp-space-3);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-2);
    background-color: var(--surface-primary);
    text-align: left;
    color: var(--dp-slate-900);
    cursor: pointer;
    font: inherit;
}

.letter-search-hit:hover[b-e0icq0uceh] {
    background-color: var(--dp-slate-50);
    border-color: var(--accent);
}

.letter-search-hit__number[b-e0icq0uceh] {
    font-weight: var(--font-semibold);
}

.letter-search-hit__meta[b-e0icq0uceh] {
    color: var(--dp-slate-500);
    font-size: var(--text-sm);
}

.letter-pdf-frame[b-e0icq0uceh] {
    width: 100%;
    height: 100%;
    min-height: 70vh;
    border: none;
}
/* _content/FRP.Web/Components/Shared/Billing/LimitProgressIndicator.razor.rz.scp.css */
.limit-progress-container[b-4vvzt40o5n] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-4);
    border: 1px solid var(--border-default);
    overflow: hidden;
}

.limit-header[b-4vvzt40o5n] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: var(--dp-space-4) var(--dp-space-5);
    background: linear-gradient(135deg, var(--dp-slate-50) 0%, var(--dp-slate-100) 100%);
    border-bottom: 1px solid var(--border-default);
    gap: var(--dp-space-4);
}

.limit-info[b-4vvzt40o5n] {
    flex: 1;
}

.limit-title[b-4vvzt40o5n] {
    margin: 0 0 var(--dp-space-2) 0;
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-700);
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.limit-details[b-4vvzt40o5n] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-2);
    align-items: center;
}

.limit-amount[b-4vvzt40o5n] {
    font-size: var(--text-md);
    color: var(--dp-slate-500);
}

.care-level-note[b-4vvzt40o5n] {
    font-size: var(--text-sm-plus);
    color: var(--accent);
    font-weight: var(--font-medium);
    background: var(--accent-light);
    padding: 2px var(--dp-space-2);
    border-radius: var(--dp-radius-full);
    margin-left: var(--dp-space-1);
}

.unlimited-badge[b-4vvzt40o5n] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    background: linear-gradient(45deg, var(--status-success), #20c997);
    color: var(--text-inverse);
    padding: var(--dp-space-2) var(--dp-space-3);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-md);
    font-weight: var(--font-semibold);
    box-shadow: 0 2px 4px rgba(16, 185, 129, 0.2);
}

.no-limit-badge[b-4vvzt40o5n] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    background: var(--status-warning-light);
    color: #856404;
    border: 1px solid rgba(245, 158, 11, 0.3);
    padding: var(--dp-space-2) var(--dp-space-3);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
}

.usage-percentage[b-4vvzt40o5n] {
    flex-shrink: 0;
}

.percentage-value[b-4vvzt40o5n] {
    font-size: 2rem;
    font-weight: var(--font-bold);
    padding: var(--dp-space-2) var(--dp-space-4);
    border-radius: var(--dp-radius-8);
    border: 2px solid;
    background: var(--surface-primary);
    min-width: 100px;
    text-align: center;
    display: block;
}

.percentage-value.safe[b-4vvzt40o5n] {
    color: var(--status-success);
    border-color: var(--status-success);
    background: rgba(16, 185, 129, 0.05);
}

.percentage-value.warning[b-4vvzt40o5n] {
    color: var(--status-warning);
    border-color: var(--status-warning);
    background: rgba(245, 158, 11, 0.05);
}

.percentage-value.danger[b-4vvzt40o5n] {
    color: var(--status-danger);
    border-color: var(--status-danger);
    background: rgba(239, 68, 68, 0.05);
}

.percentage-value.exceeded[b-4vvzt40o5n] {
    color: #721c24;
    border-color: #721c24;
    background: rgba(114, 28, 36, 0.05);
    animation: pulse-danger-b-4vvzt40o5n 2s infinite;
}

@keyframes pulse-danger-b-4vvzt40o5n {
    0%, 100% { box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.4); }
    50% { box-shadow: 0 0 0 8px rgba(239, 68, 68, 0); }
}

.progress-section[b-4vvzt40o5n] {
    padding: var(--dp-space-5);
}

[b-4vvzt40o5n] .progress-section .e-progressbar {
    margin-bottom: var(--dp-space-4);
}

.progress-labels[b-4vvzt40o5n] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: var(--dp-space-4);
    margin-top: var(--dp-space-3);
}

.amount-breakdown[b-4vvzt40o5n] {
    display: flex;
    gap: var(--dp-space-6);
    flex: 1;
}

.insurance-amount[b-4vvzt40o5n],
.private-amount[b-4vvzt40o5n] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.amount-label[b-4vvzt40o5n] {
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-500);
    font-weight: var(--font-medium);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.amount-value[b-4vvzt40o5n] {
    font-weight: var(--font-bold);
    font-size: var(--text-md);
}

.amount-value.insurance[b-4vvzt40o5n] {
    color: var(--accent);
}

.amount-value.private[b-4vvzt40o5n] {
    color: var(--status-danger);
}

.total-vs-limit[b-4vvzt40o5n] {
    text-align: right;
    flex-shrink: 0;
}

.total-amount[b-4vvzt40o5n] {
    font-size: var(--text-md);
    color: var(--dp-slate-700);
}

/* Unlimited Section */
.unlimited-section[b-4vvzt40o5n] {
    padding: var(--dp-space-5);
}

.unlimited-visual[b-4vvzt40o5n] {
    position: relative;
    margin-bottom: var(--dp-space-4);
}

.unlimited-bar[b-4vvzt40o5n] {
    height: 12px;
    background: linear-gradient(90deg, var(--status-success), #20c997, var(--status-info), var(--accent));
    border-radius: var(--dp-radius-2);
    overflow: hidden;
    position: relative;
}

.unlimited-fill[b-4vvzt40o5n] {
    height: 100%;
    background: linear-gradient(90deg, rgba(255,255,255,0.3), rgba(255,255,255,0.1));
    animation: unlimited-shimmer-b-4vvzt40o5n 2s infinite;
}

@keyframes unlimited-shimmer-b-4vvzt40o5n {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}

.unlimited-icon[b-4vvzt40o5n] {
    position: absolute;
    top: 50%;
    right: -5px;
    transform: translateY(-50%);
    background: var(--surface-primary);
    border-radius: var(--dp-radius-full);
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--status-success);
    font-size: var(--text-sm-plus);
    box-shadow: var(--shadow-sm);
}

.unlimited-info[b-4vvzt40o5n] {
    background: rgba(16, 185, 129, 0.05);
    border: 1px solid rgba(16, 185, 129, 0.2);
    border-radius: var(--dp-radius-2);
    padding: var(--dp-space-4);
}

.unlimited-description[b-4vvzt40o5n] {
    margin: 0 0 var(--dp-space-3) 0;
    font-size: var(--text-md);
    color: var(--dp-slate-700);
    line-height: var(--leading-normal);
}

.unlimited-amount[b-4vvzt40o5n] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* No Limit Section */
.no-limit-section[b-4vvzt40o5n] {
    padding: var(--dp-space-5);
}

.warning-box[b-4vvzt40o5n] {
    background: rgba(245, 158, 11, 0.05);
    border: 1px solid rgba(245, 158, 11, 0.3);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-4);
    display: flex;
    gap: var(--dp-space-4);
    align-items: flex-start;
}

.warning-box i[b-4vvzt40o5n] {
    color: var(--status-warning);
    font-size: var(--text-xl);
    flex-shrink: 0;
    margin-top: 2px;
}

.warning-content[b-4vvzt40o5n] {
    flex: 1;
}

.warning-content p[b-4vvzt40o5n] {
    margin: 0 0 var(--dp-space-2) 0;
    font-size: var(--text-md);
    line-height: var(--leading-normal);
}

.warning-content p:last-of-type[b-4vvzt40o5n] {
    margin-bottom: var(--dp-space-3);
}

.private-amount-display[b-4vvzt40o5n] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: var(--dp-space-3);
    border-top: 1px dashed rgba(245, 158, 11, 0.3);
}

/* Responsive Design */
@media (max-width: 768px) {
    .limit-header[b-4vvzt40o5n] {
        flex-direction: column;
        gap: var(--dp-space-3);
    }

    .usage-percentage[b-4vvzt40o5n] {
        align-self: stretch;
    }

    .percentage-value[b-4vvzt40o5n] {
        font-size: var(--text-xl);
        padding: var(--dp-space-2) var(--dp-space-3);
    }

    .progress-labels[b-4vvzt40o5n] {
        flex-direction: column;
        align-items: stretch;
        gap: var(--dp-space-3);
    }

    .amount-breakdown[b-4vvzt40o5n] {
        justify-content: space-around;
    }

    .warning-box[b-4vvzt40o5n] {
        flex-direction: column;
        text-align: center;
    }

    .private-amount-display[b-4vvzt40o5n] {
        flex-direction: column;
        gap: var(--dp-space-2);
        text-align: center;
    }
}

@media (max-width: 480px) {
    .limit-header[b-4vvzt40o5n],
    .progress-section[b-4vvzt40o5n],
    .unlimited-section[b-4vvzt40o5n],
    .no-limit-section[b-4vvzt40o5n] {
        padding: var(--dp-space-4);
    }

    .amount-breakdown[b-4vvzt40o5n] {
        flex-direction: column;
        gap: var(--dp-space-3);
    }

    .insurance-amount[b-4vvzt40o5n],
    .private-amount[b-4vvzt40o5n] {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }
}
/* _content/FRP.Web/Components/Shared/Billing/ServiceCategoryCard.razor.rz.scp.css */
[b-2bqw0hc135] .service-category-card {
    border: none;
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-md);
    transition: all var(--transition-slow);
    overflow: hidden;
}

[b-2bqw0hc135] .service-category-card:hover {
    box-shadow: var(--shadow-lg);
    transform: translateY(-2px);
}

[b-2bqw0hc135] .service-category-card .e-card-header {
    background: linear-gradient(135deg, var(--dp-slate-50) 0%, var(--dp-slate-100) 100%);
    border-bottom: 1px solid var(--border-default);
    padding: var(--dp-space-6);
}

.card-header-content[b-2bqw0hc135] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: var(--dp-space-4);
}

.category-info[b-2bqw0hc135] {
    flex: 1;
}

.category-title[b-2bqw0hc135] {
    margin: 0 0 var(--dp-space-3) 0;
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-900);
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.category-code[b-2bqw0hc135] {
    background: linear-gradient(45deg, var(--accent), var(--accent-hover));
    color: var(--text-inverse);
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
    font-weight: var(--font-bold);
    letter-spacing: 0.5px;
}

.care-level-info[b-2bqw0hc135] {
    margin-top: var(--dp-space-2);
}

.care-level-badge[b-2bqw0hc135] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2) var(--dp-space-3);
    border-radius: var(--dp-radius-8);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    background: rgba(16, 185, 129, 0.1);
    color: #155724;
    border: 1px solid rgba(16, 185, 129, 0.2);
}

.care-level-badge.no-care-level[b-2bqw0hc135] {
    background: rgba(245, 158, 11, 0.1);
    color: #856404;
    border-color: rgba(245, 158, 11, 0.2);
}

.amount-summary[b-2bqw0hc135] {
    text-align: right;
    flex-shrink: 0;
}

.total-amount[b-2bqw0hc135] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: var(--dp-space-1);
    margin-bottom: var(--dp-space-2);
}

.amount-label[b-2bqw0hc135] {
    font-size: var(--text-md);
    color: var(--text-secondary);
    font-weight: var(--font-medium);
}

.amount-value[b-2bqw0hc135] {
    font-size: var(--text-2xl);
    font-weight: var(--font-bold);
    color: var(--status-success);
    background: linear-gradient(45deg, var(--status-success), #20c997);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.split-info[b-2bqw0hc135] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-md);
    color: var(--status-warning);
}

.split-text[b-2bqw0hc135] {
    font-weight: var(--font-medium);
}

/* Card Content Sections */
[b-2bqw0hc135] .service-category-card .e-card-content {
    padding: var(--dp-space-6);
}

.limit-section[b-2bqw0hc135] {
    margin-bottom: var(--dp-space-8);
}

.service-summary-section[b-2bqw0hc135],
.split-preview-section[b-2bqw0hc135] {
    margin-bottom: var(--dp-space-6);
}

.section-header[b-2bqw0hc135] {
    display: flex;
    justify-content: between;
    align-items: center;
    margin-bottom: var(--dp-space-4);
    gap: var(--dp-space-4);
}

.section-header h5[b-2bqw0hc135] {
    margin: 0;
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-700);
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    flex: 1;
}

.service-count[b-2bqw0hc135] {
    font-size: var(--text-md);
    color: var(--text-secondary);
    font-weight: var(--font-normal);
}

.service-items-summary[b-2bqw0hc135] {
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-4);
}

.service-item-row[b-2bqw0hc135] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-2) 0;
    border-bottom: 1px solid var(--border-default);
}

.service-item-row:last-child[b-2bqw0hc135] {
    border-bottom: none;
}

.service-info[b-2bqw0hc135] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
    flex: 1;
}

.service-name[b-2bqw0hc135] {
    font-weight: var(--font-medium);
    color: var(--dp-slate-700);
}

.service-quantity[b-2bqw0hc135] {
    font-size: var(--text-md);
    color: var(--text-secondary);
}

.service-total[b-2bqw0hc135] {
    font-weight: var(--font-semibold);
    color: var(--status-success);
}

.more-services-indicator[b-2bqw0hc135] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3) 0;
    color: var(--text-secondary);
    font-style: italic;
    border-top: 1px dashed var(--border-default);
    margin-top: var(--dp-space-2);
    justify-content: center;
}

.no-services[b-2bqw0hc135] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    justify-content: center;
    padding: var(--dp-space-4);
    color: var(--text-secondary);
    font-style: italic;
}

/* Split Preview */
.split-amounts[b-2bqw0hc135] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
    padding: var(--dp-space-4);
    background: linear-gradient(135deg, var(--dp-slate-50) 0%, var(--dp-slate-100) 100%);
    border-radius: var(--dp-radius-4);
    border: 1px solid var(--border-default);
}

.split-amount[b-2bqw0hc135] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    flex: 1;
}

.split-amount.insurance[b-2bqw0hc135] {
    color: var(--accent);
}

.split-amount.private[b-2bqw0hc135] {
    color: var(--status-danger);
}

.split-icon[b-2bqw0hc135] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: var(--dp-radius-full);
    font-size: var(--text-xl);
}

.split-amount.insurance .split-icon[b-2bqw0hc135] {
    background: var(--accent-light);
    color: var(--accent);
}

.split-amount.private .split-icon[b-2bqw0hc135] {
    background: var(--status-danger-light);
    color: var(--status-danger);
}

.split-details[b-2bqw0hc135] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.split-label[b-2bqw0hc135] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    opacity: 0.8;
}

.split-value[b-2bqw0hc135] {
    font-size: var(--text-xl);
    font-weight: var(--font-bold);
}

.split-divider[b-2bqw0hc135] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    color: var(--text-secondary);
    font-size: var(--text-md);
}

/* Responsive Design */
@media (max-width: 768px) {
    .card-header-content[b-2bqw0hc135] {
        flex-direction: column;
        gap: var(--dp-space-4);
    }

    .amount-summary[b-2bqw0hc135] {
        align-self: stretch;
        text-align: left;
    }

    .total-amount[b-2bqw0hc135] {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }

    .section-header[b-2bqw0hc135] {
        flex-direction: column;
        align-items: stretch;
        gap: var(--dp-space-3);
    }

    .split-amounts[b-2bqw0hc135] {
        flex-direction: column;
        gap: var(--dp-space-4);
    }

    .split-divider[b-2bqw0hc135] {
        transform: rotate(90deg);
        height: 20px;
    }
}

@media (max-width: 480px) {
    [b-2bqw0hc135] .service-category-card .e-card-header,
    [b-2bqw0hc135] .service-category-card .e-card-content {
        padding: var(--dp-space-4);
    }

    .category-title[b-2bqw0hc135] {
        font-size: var(--text-xl);
        flex-direction: column;
        align-items: flex-start;
        gap: var(--dp-space-2);
    }

    .service-item-row[b-2bqw0hc135] {
        flex-direction: column;
        align-items: flex-start;
        gap: var(--dp-space-2);
    }
}
/* _content/FRP.Web/Components/Shared/Billing/ServiceCategoryTabs.razor.rz.scp.css */
.service-category-tabs-container[b-5apcqr4dy9] {
    width: 100%;
    margin-bottom: var(--dp-space-6);
}

[b-5apcqr4dy9] .modern-billing-tabs {
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
    background: white;
}

[b-5apcqr4dy9] .modern-billing-tabs .e-tab-header {
    background: linear-gradient(135deg, var(--dp-slate-50) 0%, var(--dp-slate-200) 100%);
    border-bottom: 2px solid var(--dp-slate-300);
    border-radius: var(--dp-radius-6) var(--dp-radius-6) 0 0;
    padding: var(--dp-space-2) var(--dp-space-4);
}

[b-5apcqr4dy9] .modern-billing-tabs .e-tab-header .e-toolbar-item {
    margin-right: var(--dp-space-2);
    border-radius: var(--dp-radius-4);
    transition: all var(--transition-slow);
}

[b-5apcqr4dy9] .modern-billing-tabs .e-tab-header .e-toolbar-item.e-active {
    background: white;
    box-shadow: var(--shadow-sm);
    transform: translateY(-1px);
}

.tab-header-content[b-5apcqr4dy9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-1);
    padding: var(--dp-space-2) var(--dp-space-3);
}

.tab-title[b-5apcqr4dy9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.125rem;
}

.category-code[b-5apcqr4dy9] {
    font-weight: var(--font-bold);
    font-size: var(--text-md);
    color: var(--dp-slate-600);
    background: linear-gradient(45deg, var(--accent), #0056b3);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.category-name[b-5apcqr4dy9] {
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-500);
    text-align: center;
    line-height: 1.2;
    max-width: 120px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.tab-amount[b-5apcqr4dy9] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
}

.total-amount[b-5apcqr4dy9] {
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
    color: var(--status-success);
    background: rgba(40, 167, 69, 0.1);
    padding: 0.125rem var(--dp-space-1);
    border-radius: var(--dp-radius-full);
}

.split-indicator[b-5apcqr4dy9] {
    color: var(--status-warning);
    font-size: var(--text-sm-plus);
    animation: pulse-b-5apcqr4dy9 2s infinite;
}

@keyframes pulse-b-5apcqr4dy9 {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

[b-5apcqr4dy9] .modern-billing-tabs .e-content {
    padding: var(--dp-space-6);
    min-height: 250px;
}

.tab-content-container[b-5apcqr4dy9] {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.no-services-message[b-5apcqr4dy9] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 200px;
    padding: var(--dp-space-8);
}

.no-services-message .alert[b-5apcqr4dy9] {
    max-width: 500px;
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-5) var(--dp-space-6);
    border-radius: var(--dp-radius-6);
    background: linear-gradient(135deg, #d1ecf1 0%, #bee5eb 100%);
    border: 1px solid #abdde5;
    color: #0c5460;
}

.no-services-message .alert i[b-5apcqr4dy9] {
    font-size: var(--text-2xl);
    color: var(--status-info);
}

/* Responsive Design */
@media (max-width: 768px) {
    .tab-header-content[b-5apcqr4dy9] {
        padding: var(--dp-space-1) var(--dp-space-2);
    }

    .category-name[b-5apcqr4dy9] {
        font-size: var(--text-sm-plus);
        max-width: 80px;
    }

    .total-amount[b-5apcqr4dy9] {
        font-size: var(--text-sm-plus);
        padding: 0.125rem var(--dp-space-1);
    }

    [b-5apcqr4dy9] .modern-billing-tabs .e-content {
        padding: var(--dp-space-4);
    }
}

@media (max-width: 480px) {
    .tab-header-content[b-5apcqr4dy9] {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }

    .tab-title[b-5apcqr4dy9] {
        flex-direction: row;
        gap: var(--dp-space-2);
    }

    .category-name[b-5apcqr4dy9] {
        display: none; /* Hide long names on very small screens */
    }
}
/* _content/FRP.Web/Components/Shared/Billing/ServiceDetailsCalendar.razor.rz.scp.css */
.service-details-calendar[b-okomwz72g4] {
    display: flex;
    gap: var(--dp-space-5);
    height: 100%;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

.calendar-container[b-okomwz72g4] {
    flex: 1;
    min-width: 700px;
}

/* Custom Calendar Styling */
.custom-calendar[b-okomwz72g4] {
    background: white;
    border-radius: var(--dp-radius-8);
    box-shadow: var(--shadow-lg);
    border: 1px solid var(--border-default);
    overflow: hidden;
}

.calendar-header[b-okomwz72g4] {
    background: linear-gradient(135deg, var(--dp-blue-600) 0%, #764ba2 100%);
    color: white;
    padding: var(--dp-space-5) var(--dp-space-6);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.calendar-nav-btn[b-okomwz72g4] {
    background: rgba(255,255,255,0.2);
    border: none;
    color: white;
    width: 40px;
    height: 40px;
    border-radius: var(--dp-radius-full);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all var(--transition-fast);
    font-size: var(--text-lg);
}

.calendar-nav-btn:hover[b-okomwz72g4] {
    background: rgba(255,255,255,0.3);
    transform: scale(1.1);
}

.calendar-title[b-okomwz72g4] {
    margin: 0;
    font-size: var(--text-2xl);
    font-weight: var(--font-semibold);
    text-align: center;
}

.calendar-body[b-okomwz72g4] {
    padding: 0;
}

.calendar-weekdays[b-okomwz72g4] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    background: var(--dp-slate-50);
    border-bottom: 2px solid var(--dp-slate-200);
}

.weekday[b-okomwz72g4] {
    padding: var(--dp-space-4) var(--dp-space-2);
    text-align: center;
    font-weight: var(--font-bold);
    color: var(--dp-slate-600);
    text-transform: uppercase;
    font-size: var(--text-sm-plus);
    letter-spacing: 0.5px;
}

.calendar-days[b-okomwz72g4] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 1px;
    background: var(--dp-slate-200);
    padding: 1px;
}

.calendar-day[b-okomwz72g4] {
    background: white;
    min-height: 110px;
    position: relative;
    transition: all var(--transition-fast);
    overflow: hidden;
}

.calendar-day:hover[b-okomwz72g4] {
    background: var(--dp-slate-50);
    transform: scale(1.02);
    z-index: 10;
    box-shadow: var(--shadow-md);
}

.calendar-day.other-month[b-okomwz72g4] {
    background: var(--dp-slate-50);
    opacity: 0.5;
}

.calendar-day.today[b-okomwz72g4] {
    background: linear-gradient(135deg, #fff3cd 0%, #ffeeba 100%);
    border: 2px solid var(--status-warning);
}

.calendar-day.has-checkin.present[b-okomwz72g4] {
    background: linear-gradient(135deg, #d4edda 0%, #c3e6cb 100%);
    border-left: 4px solid var(--status-success);
}

.calendar-day.has-checkin.absent[b-okomwz72g4] {
    background: linear-gradient(135deg, #f8d7da 0%, #f5c6cb 100%);
    border-left: 4px solid var(--status-danger);
}

.calendar-day.has-checkin.planned-absent[b-okomwz72g4] {
    background: linear-gradient(135deg, #fff3cd 0%, #ffeeba 100%);
    border-left: 4px solid var(--status-warning);
}

.calendar-day.no-category-services[b-okomwz72g4] {
    background: var(--dp-slate-50);
    border-left: 4px solid var(--dp-slate-500);
}

.calendar-day.no-checkin[b-okomwz72g4] {
    background: white;
}

.day-content[b-okomwz72g4] {
    padding: var(--dp-space-2);
    height: 100%;
    position: relative;
}

.day-number[b-okomwz72g4] {
    font-weight: var(--font-bold);
    font-size: var(--text-xl);
    color: var(--dp-slate-600);
    margin-bottom: var(--dp-space-1);
}

.calendar-day.has-checkin.present .day-number[b-okomwz72g4] {
    color: #155724;
}

.calendar-day.has-checkin.absent .day-number[b-okomwz72g4] {
    color: #721c24;
}

.calendar-day.has-checkin.planned-absent .day-number[b-okomwz72g4] {
    color: #856404;
}

.day-number.other-month[b-okomwz72g4] {
    color: var(--dp-slate-400);
    font-weight: var(--font-normal);
}

.day-status[b-okomwz72g4] {
    position: absolute;
    top: var(--dp-space-2);
    right: var(--dp-space-2);
    width: 20px;
    height: 20px;
    border-radius: var(--dp-radius-full);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--text-sm-plus);
    font-weight: bold;
    color: white;
    box-shadow: var(--shadow-sm);
}

.day-status.present[b-okomwz72g4] {
    background: var(--status-success);
}

.day-status.absent[b-okomwz72g4] {
    background: var(--status-danger);
}

.day-status.planned-absent[b-okomwz72g4] {
    background: var(--status-warning);
    color: var(--dp-slate-900);
}

.transport-indicator[b-okomwz72g4] {
    position: absolute;
    top: 32px;
    right: var(--dp-space-2);
    background: var(--accent);
    color: white;
    border-radius: var(--dp-radius-2);
    padding: 2px var(--dp-space-1);
    font-size: var(--text-sm-plus);
    font-weight: bold;
    box-shadow: var(--shadow-sm);
}

.wheelchair-indicator[b-okomwz72g4] {
    position: absolute;
    bottom: var(--dp-space-1);
    right: var(--dp-space-1);
    font-size: var(--text-md);
    opacity: 0.8;
    background: rgba(0,0,0,0.1);
    border-radius: var(--dp-radius-full);
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.services-summary[b-okomwz72g4] {
    margin-top: var(--dp-space-2);
    font-size: var(--text-sm-plus);
    line-height: 1.3;
}

.service-mini[b-okomwz72g4] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 3px;
    padding: 2px var(--dp-space-1);
    background: rgba(255,255,255,0.8);
    border-radius: var(--dp-radius-2);
    border: 1px solid rgba(0,0,0,0.1);
}

.service-name[b-okomwz72g4] {
    font-weight: var(--font-semibold);
    color: var(--dp-slate-600);
    font-size: var(--text-sm-plus);
    flex: 1;
    margin-right: var(--dp-space-1);
}

.service-amount[b-okomwz72g4] {
    font-weight: var(--font-bold);
    color: var(--dp-blue-600);
    font-size: var(--text-sm-plus);
    white-space: nowrap;
}

.more-services[b-okomwz72g4] {
    font-size: 0.65rem;
    color: var(--dp-slate-500);
    font-style: italic;
    text-align: center;
    margin-top: var(--dp-space-1);
    padding: 2px var(--dp-space-1);
    background: rgba(108,117,125,0.15);
    border-radius: var(--dp-radius-2);
}

.no-services-indicator[b-okomwz72g4] {
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-500);
    text-align: center;
    margin-top: var(--dp-space-5);
    font-style: italic;
    opacity: 0.8;
}

/* Legend - Kompakter und eleganter */
.calendar-legend[b-okomwz72g4] {
    width: 200px;
    background: linear-gradient(135deg, var(--dp-slate-50) 0%, var(--dp-slate-200) 100%);
    padding: var(--dp-space-5);
    border-radius: var(--dp-radius-8);
    border: 1px solid var(--dp-slate-300);
    box-shadow: var(--shadow-md);
    height: fit-content;
}

.legend-title[b-okomwz72g4] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-weight: var(--font-bold);
    margin-bottom: var(--dp-space-5);
    color: var(--dp-slate-600);
    font-size: var(--text-lg);
}

.legend-title i[b-okomwz72g4] {
    color: var(--dp-blue-600);
    font-size: var(--text-xl);
}

.legend-items[b-okomwz72g4] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
}

.legend-item[b-okomwz72g4] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    font-size: var(--text-md);
    color: var(--dp-slate-600);
}

.legend-color[b-okomwz72g4] {
    width: 16px;
    height: 16px;
    border-radius: var(--dp-radius-2);
    border: 1px solid rgba(0,0,0,0.1);
    flex-shrink: 0;
}

.legend-color.present[b-okomwz72g4] {
    background: linear-gradient(135deg, #d4edda 0%, #c3e6cb 100%);
    border-color: var(--status-success);
}

.legend-color.absent[b-okomwz72g4] {
    background: linear-gradient(135deg, #f8d7da 0%, #f5c6cb 100%);
    border-color: var(--status-danger);
}

.legend-color.planned-absent[b-okomwz72g4] {
    background: linear-gradient(135deg, #fff3cd 0%, #ffeeba 100%);
    border-color: var(--status-warning);
}

.legend-color.transport[b-okomwz72g4] {
    background: var(--accent);
}

.legend-text[b-okomwz72g4] {
    font-weight: var(--font-semibold);
}

/* Responsive Design */
@media (max-width: 1200px) {
    .service-details-calendar[b-okomwz72g4] {
        flex-direction: column;
        gap: var(--dp-space-5);
    }

    .calendar-legend[b-okomwz72g4] {
        width: 100%;
        order: -1;
    }

    .legend-items[b-okomwz72g4] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: var(--dp-space-4);
    }

    .calendar-container[b-okomwz72g4] {
        min-width: unset;
    }
}

@media (max-width: 768px) {
    .calendar-day[b-okomwz72g4] {
        min-height: 90px;
    }

    .day-content[b-okomwz72g4] {
        padding: var(--dp-space-1);
    }

    .services-summary[b-okomwz72g4] {
        font-size: 0.65rem;
    }

    .service-name[b-okomwz72g4] {
        font-size: 0.6rem;
        max-width: 40px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .service-amount[b-okomwz72g4] {
        font-size: 0.6rem;
    }

    .calendar-header[b-okomwz72g4] {
        padding: var(--dp-space-4) var(--dp-space-5);
    }

    .calendar-title[b-okomwz72g4] {
        font-size: var(--text-xl);
    }

    .weekday[b-okomwz72g4] {
        padding: var(--dp-space-3) var(--dp-space-1);
        font-size: var(--text-sm-plus);
    }
}

@media (max-width: 480px) {
    .calendar-day[b-okomwz72g4] {
        min-height: 70px;
    }

    .day-number[b-okomwz72g4] {
        font-size: var(--text-md);
    }

    .services-summary[b-okomwz72g4] {
        margin-top: var(--dp-space-1);
    }

    .service-mini[b-okomwz72g4] {
        margin-bottom: 2px;
        padding: 1px 2px;
    }
}

/* Neue kompakte und elegante CheckIn-Info Styles */
.checkin-info[b-okomwz72g4] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
    height: calc(100% - 30px);
    overflow: hidden;
}

.status-row[b-okomwz72g4] {
    display: flex;
    align-items: center;
    gap: 3px;
    flex-wrap: wrap;
    margin-bottom: var(--dp-space-1);
}

.status-badge[b-okomwz72g4], .transport-badge[b-okomwz72g4], .wheelchair-badge[b-okomwz72g4], .care-level-badge[b-okomwz72g4] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    border-radius: var(--dp-radius-4);
    padding: 2px var(--dp-space-1);
    line-height: 1;
    border: 1px solid rgba(0,0,0,0.1);
    transition: all var(--transition-fast);
}

.status-badge[b-okomwz72g4] {
    min-width: 20px;
    height: 16px;
}

.status-badge.present[b-okomwz72g4] {
    background: linear-gradient(135deg, var(--status-success), #20c997);
    color: white;
    border-color: #155724;
}

.status-badge.absent[b-okomwz72g4] {
    background: linear-gradient(135deg, var(--status-danger), #e74c3c);
    color: white;
    border-color: #721c24;
}

.status-badge.planned-absent[b-okomwz72g4] {
    background: linear-gradient(135deg, var(--status-warning), #fd7e14);
    color: var(--dp-slate-900);
    border-color: #856404;
}

.transport-badge[b-okomwz72g4] {
    background: linear-gradient(135deg, var(--accent), #0056b3);
    color: white;
    border-color: #004085;
    font-size: 0.6rem;
    padding: 1px 3px;
}

.wheelchair-badge[b-okomwz72g4] {
    background: linear-gradient(135deg, var(--dp-slate-500), var(--dp-slate-600));
    color: white;
    border-color: var(--dp-slate-700);
    font-size: 0.6rem;
    padding: 1px 3px;
}

.care-level-badge[b-okomwz72g4] {
    background: linear-gradient(135deg, var(--status-info), #138496);
    color: white;
    border-color: #0c5460;
    font-size: 0.6rem;
    font-weight: var(--font-bold);
}

.notes-info[b-okomwz72g4] {
    flex: 1;
    margin-top: 2px;
    overflow: hidden;
}

.notes-text[b-okomwz72g4] {
    display: block;
    font-size: 0.65rem;
    line-height: 1.2;
    color: var(--dp-slate-600);
    background: rgba(255, 255, 255, 0.9);
    padding: 3px 5px;
    border-radius: var(--dp-radius-2);
    border: 1px solid rgba(0,0,0,0.05);
    font-weight: var(--font-medium);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
}

/* Hover-Effekte für bessere Interaktion */
.calendar-day:hover .status-badge[b-okomwz72g4],
.calendar-day:hover .transport-badge[b-okomwz72g4],
.calendar-day:hover .wheelchair-badge[b-okomwz72g4],
.calendar-day:hover .care-level-badge[b-okomwz72g4] {
    transform: scale(1.05);
    box-shadow: var(--shadow-sm);
}

.calendar-day:hover .notes-text[b-okomwz72g4] {
    background: white;
    border-color: rgba(0,0,0,0.15);
    box-shadow: var(--shadow-sm);
}

/* Tooltip-ähnlicher Effekt für vollständige Notes */
.notes-info:hover .notes-text[b-okomwz72g4] {
    white-space: normal;
    overflow: visible;
    position: relative;
    z-index: 1000;
    background: var(--dp-slate-600);
    color: white;
    box-shadow: var(--shadow-md);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-1) var(--dp-space-2);
    max-width: 200px;
    word-wrap: break-word;
}

/* Verbesserte mobile Darstellung */
@media (max-width: 768px) {
    .status-row[b-okomwz72g4] {
        gap: 2px;
    }

    .status-badge[b-okomwz72g4], .transport-badge[b-okomwz72g4], .wheelchair-badge[b-okomwz72g4], .care-level-badge[b-okomwz72g4] {
        font-size: 0.6rem;
        padding: 1px 3px;
    }

    .notes-text[b-okomwz72g4] {
        font-size: 0.6rem;
        padding: 2px var(--dp-space-1);
    }

    .checkin-info[b-okomwz72g4] {
        gap: 3px;
    }
}
/* _content/FRP.Web/Components/Shared/CareOptimization/GuestPotentialDetailDialog.razor.rz.scp.css */
/* ===========================
   GUEST POTENTIAL DETAIL DIALOG
   =========================== */

.dialog-header[b-anx8jfu0b5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 600;
    color: var(--color-text-primary);
}

.dialog-footer[b-anx8jfu0b5] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
}

.btn[b-anx8jfu0b5] {
    padding: 0.5rem 1.25rem;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    border: none;
    transition: all 0.15s;
}

.btn-outline[b-anx8jfu0b5] {
    background: var(--color-surface);
    border: 1px solid var(--border-strong);
    color: var(--color-text-primary);
}

.btn-outline:hover[b-anx8jfu0b5] {
    background: var(--color-bg);
}

/* Loading & Error */
.dialog-loading[b-anx8jfu0b5],
.dialog-error[b-anx8jfu0b5] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    padding: 3rem;
    color: var(--color-text-secondary);
}

.dialog-error[b-anx8jfu0b5] {
    color: var(--color-danger);
}

.loading-spinner[b-anx8jfu0b5] {
    width: 36px;
    height: 36px;
    border: 3px solid var(--color-border);
    border-top-color: var(--color-primary);
    border-radius: 50%;
    animation: spin-b-anx8jfu0b5 0.8s linear infinite;
}

@keyframes spin-b-anx8jfu0b5 {
    to { transform: rotate(360deg); }
}

/* Private Warning Banners */
.private-warning-banner[b-anx8jfu0b5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: var(--color-danger-light);
    border: 1px solid #fecaca;
    border-left: 4px solid var(--color-danger);
    border-radius: 8px;
    color: var(--color-danger);
    font-size: 0.85rem;
}

.entlastung-private-banner[b-anx8jfu0b5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: var(--color-warning-light);
    border: 1px solid #fde68a;
    border-left: 4px solid var(--color-warning);
    border-radius: 8px;
    color: var(--color-warning);
    font-size: 0.85rem;
}

.badge-fully-private[b-anx8jfu0b5] {
    display: inline-flex;
    align-items: center;
    padding: 0.15rem 0.5rem;
    border-radius: 4px;
    font-size: 0.7rem;
    font-weight: 600;
    background: var(--color-danger-light);
    color: var(--color-danger);
    border: 1px solid #fecaca;
}

.badge-45b-private[b-anx8jfu0b5] {
    display: inline-flex;
    align-items: center;
    padding: 0.1rem 0.4rem;
    border-radius: 3px;
    font-size: 0.65rem;
    font-weight: 600;
    background: var(--color-warning-light);
    color: var(--color-warning);
    border: 1px solid #fde68a;
}

.private-tag[b-anx8jfu0b5] {
    font-size: 0.65rem;
    padding: 0.1rem 0.4rem;
    border-radius: 4px;
    background: var(--color-danger-light);
    color: var(--color-danger);
    font-weight: 600;
    border: 1px solid #fecaca;
}

.budget-private-notice[b-anx8jfu0b5] {
    font-size: 0.75rem;
    color: var(--text-tertiary);
    font-style: italic;
    padding-top: 0.25rem;
}

/* Budget card with private §45b */
.budget-45b-private[b-anx8jfu0b5] {
    border-top: 3px solid var(--color-danger);
    background: var(--color-surface);
}

/* Detail Content */
.detail-content[b-anx8jfu0b5] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* Guest Header */
.guest-header[b-anx8jfu0b5] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--color-border);
}

.guest-info h3[b-anx8jfu0b5] {
    margin: 0 0 0.5rem;
    font-size: 1.125rem;
    color: var(--color-text-primary);
}

.guest-meta[b-anx8jfu0b5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.meta-separator[b-anx8jfu0b5] {
    width: 1px;
    height: 16px;
    background: var(--border-strong);
}

.meta-text[b-anx8jfu0b5] {
    font-size: 0.85rem;
    color: var(--color-text-secondary);
}

.private-badge[b-anx8jfu0b5],
.wheelchair-badge[b-anx8jfu0b5] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.15rem 0.5rem;
    border-radius: 4px;
    font-size: 0.7rem;
    font-weight: 600;
}

.private-badge[b-anx8jfu0b5] {
    background: var(--color-warning-light);
    color: var(--color-warning);
}

.wheelchair-badge[b-anx8jfu0b5] {
    background: var(--accent-light);
    color: var(--color-primary);
}

.guest-days[b-anx8jfu0b5] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.25rem;
}

.days-actual[b-anx8jfu0b5] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--color-text-primary);
}

.days-planned[b-anx8jfu0b5] {
    font-size: 0.8rem;
    color: var(--color-text-secondary);
}

/* PG Badges */
.pg-badge[b-anx8jfu0b5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    min-width: 40px;
}

.pg-1[b-anx8jfu0b5] { background: #f3f4f6; color: var(--color-text-secondary); }
.pg-2[b-anx8jfu0b5] { background: var(--accent-light); color: var(--color-primary); }
.pg-3[b-anx8jfu0b5] { background: var(--color-warning-light); color: var(--color-warning); }
.pg-4[b-anx8jfu0b5] { background: #fed7aa; color: #c2410c; }
.pg-5[b-anx8jfu0b5] { background: #fecaca; color: var(--color-danger); }
.pg-none[b-anx8jfu0b5] { background: #f3f4f6; color: var(--text-tertiary); }

/* Budget Cards */
.budget-cards[b-anx8jfu0b5] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.75rem;
}

.budget-card[b-anx8jfu0b5] {
    background: var(--color-bg);
    border: 1px solid var(--color-border);
    border-radius: 12px;
    overflow: hidden;
}

.budget-card-header[b-anx8jfu0b5] {
    padding: 0.625rem 0.875rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid var(--color-border);
}

.budget-title[b-anx8jfu0b5] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--color-text-primary);
}

.no-budget-tag[b-anx8jfu0b5] {
    font-size: 0.7rem;
    padding: 0.1rem 0.4rem;
    border-radius: 4px;
    background: var(--color-bg);
    color: var(--text-tertiary);
}

.budget-card-body[b-anx8jfu0b5] {
    padding: 0.75rem 0.875rem;
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.budget-row[b-anx8jfu0b5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.budget-label[b-anx8jfu0b5] {
    font-size: 0.8rem;
    color: var(--color-text-secondary);
}

.budget-value[b-anx8jfu0b5] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--color-text-primary);
}

.budget-insurance[b-anx8jfu0b5] {
    color: var(--color-success);
}

.budget-private[b-anx8jfu0b5] {
    color: var(--color-danger);
}

.budget-utilization[b-anx8jfu0b5] {
    margin-top: 0.375rem;
    padding-top: 0.375rem;
    border-top: 1px solid var(--color-border);
}

.utilization-bar-lg[b-anx8jfu0b5] {
    height: 10px;
    background: var(--color-border);
    border-radius: 5px;
    overflow: hidden;
    margin-bottom: 0.25rem;
}

.utilization-fill-lg[b-anx8jfu0b5] {
    height: 100%;
    border-radius: 5px;
    transition: width 0.5s ease;
}

.utilization-fill-lg.utilization-optimal[b-anx8jfu0b5] { background: var(--color-success); }
.utilization-fill-lg.utilization-good[b-anx8jfu0b5] { background: var(--color-primary); }
.utilization-fill-lg.utilization-medium[b-anx8jfu0b5] { background: var(--color-warning); }
.utilization-fill-lg.utilization-low[b-anx8jfu0b5] { background: var(--color-danger); }

.utilization-label[b-anx8jfu0b5] {
    font-size: 0.7rem;
    color: var(--color-text-secondary);
}

/* Budget card color accents */
.budget-41[b-anx8jfu0b5] { border-top: 3px solid var(--color-primary); }
.budget-43b[b-anx8jfu0b5] { border-top: 3px solid #8b5cf6; }
.budget-45b[b-anx8jfu0b5] { border-top: 3px solid var(--color-success); }

/* Section Blocks */
.section-block[b-anx8jfu0b5] {
    padding-top: 0.5rem;
}

.section-title[b-anx8jfu0b5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--color-text-primary);
    margin: 0 0 0.75rem;
}

/* Weekly Schedule */
.weekly-schedule[b-anx8jfu0b5] {
    display: flex;
    gap: 0.5rem;
}

.schedule-day[b-anx8jfu0b5] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    padding: 0.625rem 0.5rem;
    border-radius: 10px;
    border: 1px solid var(--color-border);
    transition: all 0.15s;
}

.day-planned[b-anx8jfu0b5] {
    background: var(--color-success-light);
    border-color: #bbf7d0;
    color: var(--color-success);
}

.day-off[b-anx8jfu0b5] {
    background: var(--color-bg);
    color: var(--text-tertiary);
}

.day-name[b-anx8jfu0b5] {
    font-size: 0.75rem;
    font-weight: 600;
}

.transport-tag[b-anx8jfu0b5] {
    font-size: 0.65rem;
    padding: 0.1rem 0.3rem;
    background: var(--accent-light);
    color: var(--color-primary);
    border-radius: 3px;
}

/* Simulation */
.simulation-input[b-anx8jfu0b5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
    font-size: 0.875rem;
    color: var(--color-text-primary);
}

.simulation-result[b-anx8jfu0b5] {
    background: var(--color-bg);
    border: 1px solid var(--color-border);
    border-radius: 10px;
    padding: 0.75rem;
}

.sim-row[b-anx8jfu0b5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.375rem 0;
    border-bottom: 1px solid var(--border-subtle);
}

.sim-row:last-child[b-anx8jfu0b5] {
    border-bottom: none;
}

.sim-total[b-anx8jfu0b5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0 0;
    margin-top: 0.25rem;
    border-top: 2px solid var(--color-border);
    font-weight: 600;
}

.sim-label[b-anx8jfu0b5] {
    min-width: 160px;
    font-size: 0.8rem;
    color: var(--color-text-primary);
}

.sim-insurance[b-anx8jfu0b5] {
    font-size: 0.8rem;
    color: var(--color-success);
    font-weight: 500;
}

.sim-private[b-anx8jfu0b5] {
    font-size: 0.8rem;
    color: var(--color-danger);
    font-weight: 500;
}

.sim-util[b-anx8jfu0b5] {
    font-size: 0.8rem;
    font-weight: 600;
    margin-left: auto;
}

/* Utilization classes (reused) */
.utilization-optimal[b-anx8jfu0b5] { color: var(--color-success); }
.utilization-good[b-anx8jfu0b5] { color: var(--color-primary); }
.utilization-medium[b-anx8jfu0b5] { color: var(--color-warning); }
.utilization-low[b-anx8jfu0b5] { color: var(--color-danger); }

/* Scenarios Table */
.scenarios-table-wrapper[b-anx8jfu0b5] {
    max-height: 300px;
    overflow-y: auto;
    border: 1px solid var(--color-border);
    border-radius: 10px;
}

.scenarios-table[b-anx8jfu0b5] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8rem;
}

.scenarios-table th[b-anx8jfu0b5] {
    position: sticky;
    top: 0;
    background: var(--color-bg);
    padding: 0.5rem 0.625rem;
    text-align: left;
    font-weight: 600;
    color: var(--color-text-secondary);
    border-bottom: 2px solid var(--color-border);
    font-size: 0.75rem;
}

.scenarios-table td[b-anx8jfu0b5] {
    padding: 0.375rem 0.625rem;
    border-bottom: 1px solid var(--border-subtle);
}

.scenarios-table .text-right[b-anx8jfu0b5] {
    text-align: right;
}

.scenarios-table .text-danger[b-anx8jfu0b5] {
    color: var(--color-danger);
}

.scenarios-table .text-muted[b-anx8jfu0b5] {
    color: var(--text-tertiary);
}

.row-current[b-anx8jfu0b5] {
    background: var(--accent-light) !important;
}

.row-current td[b-anx8jfu0b5] {
    border-bottom-color: #bfdbfe;
}

.row-optimal[b-anx8jfu0b5] {
    background: var(--color-success-light) !important;
}

.row-optimal td[b-anx8jfu0b5] {
    border-bottom-color: #bbf7d0;
}

.tag-current[b-anx8jfu0b5] {
    display: inline-block;
    padding: 0.05rem 0.35rem;
    font-size: 0.65rem;
    font-weight: 600;
    border-radius: 3px;
    background: var(--color-primary);
    color: var(--text-inverse);
    margin-left: 0.25rem;
}

.tag-optimal[b-anx8jfu0b5] {
    display: inline-block;
    padding: 0.05rem 0.35rem;
    font-size: 0.65rem;
    font-weight: 600;
    border-radius: 3px;
    background: var(--color-success);
    color: var(--text-inverse);
    margin-left: 0.25rem;
}

/* Recommendation */
.recommendation-block[b-anx8jfu0b5] {
    display: flex;
    gap: 0.75rem;
    padding: 1rem;
    background: linear-gradient(135deg, var(--color-warning-light) 0%, var(--color-warning-light) 100%);
    border: 1px solid #fde68a;
    border-radius: 10px;
    align-items: flex-start;
    color: var(--color-warning);
}

.recommendation-block p[b-anx8jfu0b5] {
    margin: 0;
    font-size: 0.85rem;
    line-height: 1.5;
}
/* _content/FRP.Web/Components/Shared/CheckIns/CheckInCalendar.razor.rz.scp.css */
/* Calendar Card Styles */
.checkin-calendar-card[b-d0xf1nq1dk] {
    margin-bottom: var(--dp-space-4);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    box-shadow: var(--shadow-sm);
}

.checkin-calendar-card.collapsed[b-d0xf1nq1dk] {
    margin-bottom: var(--dp-space-2);
}

.card-header-content[b-d0xf1nq1dk] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-3);
    cursor: pointer;
    user-select: none;
    transition: var(--transition-base);
}

.card-header-content:hover[b-d0xf1nq1dk] {
    background-color: var(--dp-slate-100);
}

/* Summary Badges */
.checkin-summary-badges[b-d0xf1nq1dk] {
    display: flex;
    gap: var(--dp-space-2);
    flex-wrap: wrap;
}

.badge[b-d0xf1nq1dk] {
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    white-space: nowrap;
}

.badge-success[b-d0xf1nq1dk] {
    background-color: #d4edda;
    color: #155724;
}

.badge-info[b-d0xf1nq1dk] {
    background-color: #d1ecf1;
    color: #0c5460;
}

.badge-warning[b-d0xf1nq1dk] {
    background-color: #fff3cd;
    color: #856404;
}

.badge-danger[b-d0xf1nq1dk] {
    background-color: #f8d7da;
    color: #721c24;
}

/* Calendar Grid */
.checkin-calendar-compact[b-d0xf1nq1dk] {
    padding: var(--dp-space-4);
}

.calendar-grid[b-d0xf1nq1dk] {
    margin-bottom: var(--dp-space-4);
}

.calendar-weekdays[b-d0xf1nq1dk] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
    margin-bottom: 4px;
}

.weekday[b-d0xf1nq1dk] {
    text-align: center;
    font-weight: var(--font-semibold);
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-600);
    padding: var(--dp-space-2) 0;
    background-color: var(--dp-slate-50);
}

.calendar-days[b-d0xf1nq1dk] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
}

/* Calendar Day Styles */
.calendar-day[b-d0xf1nq1dk] {
    aspect-ratio: 1;
    border: 1px solid var(--border-default);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    background-color: var(--surface-primary);
    transition: var(--transition-base);
    min-height: 60px;
}

.calendar-day.clickable[b-d0xf1nq1dk] {
    cursor: pointer;
}

.calendar-day.clickable:hover[b-d0xf1nq1dk] {
    background-color: var(--dp-slate-200);
    transform: scale(1.05);
    z-index: 1;
    box-shadow: var(--shadow-md);
}

.calendar-day.empty-day[b-d0xf1nq1dk] {
    background-color: var(--dp-slate-50);
    border-color: transparent;
}

.calendar-day.present-day[b-d0xf1nq1dk] {
    background-color: #d4edda;
    border-color: #c3e6cb;
}

.calendar-day.absent-day[b-d0xf1nq1dk] {
    background-color: #f8d7da;
    border-color: #f5c6cb;
}

.calendar-day.planned-absent-day[b-d0xf1nq1dk] {
    background-color: #fff3cd;
    border-color: #ffeaa7;
}

.calendar-day.no-checkin-day[b-d0xf1nq1dk] {
    background-color: #fdfdfd;
}

.calendar-day.weekend-day[b-d0xf1nq1dk] {
    background-color: var(--dp-slate-50);
}

.calendar-day.today[b-d0xf1nq1dk] {
    border: 2px solid var(--accent);
    font-weight: var(--font-bold);
}

.day-number[b-d0xf1nq1dk] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    margin-bottom: 2px;
}

.checkin-status[b-d0xf1nq1dk] {
    display: flex;
    gap: 2px;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    font-size: var(--text-sm-plus);
}

.checkin-status i[b-d0xf1nq1dk] {
    font-size: var(--text-sm-plus);
}

/* Fahrten-Anzeige: Auto + Richtungspfeil (→ Hin, ← Rück, ⇄ beide = 2 Fahrten) */
.transport-trip[b-d0xf1nq1dk] {
    display: inline-flex;
    align-items: center;
    gap: 1px;
}

.transport-trip__arrow[b-d0xf1nq1dk] {
    font-size: var(--text-sm-plus);
    font-weight: 700;
    color: var(--accent);
    line-height: 1;
}

/* Summary Section */
.calendar-summary[b-d0xf1nq1dk] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: var(--dp-space-3);
    padding: var(--dp-space-4);
    background-color: var(--dp-slate-50);
    border-radius: var(--dp-radius-2);
    margin-top: var(--dp-space-4);
}

.summary-item[b-d0xf1nq1dk] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-md);
}

.summary-item i[b-d0xf1nq1dk] {
    width: 20px;
    text-align: center;
}

/* Responsive Design */
@media (max-width: 768px) {
    .calendar-days[b-d0xf1nq1dk] {
        gap: 1px;
    }

    .calendar-day[b-d0xf1nq1dk] {
        min-height: 50px;
        font-size: var(--text-sm-plus);
    }

    .checkin-status i[b-d0xf1nq1dk] {
        font-size: 0.7rem;
    }

    .checkin-summary-badges[b-d0xf1nq1dk] {
        flex-direction: column;
        align-items: flex-start;
    }

    .badge[b-d0xf1nq1dk] {
        font-size: var(--text-sm-plus);
    }
}

@media (max-width: 480px) {
    .calendar-summary[b-d0xf1nq1dk] {
        grid-template-columns: 1fr;
        gap: var(--dp-space-2);
    }

    .day-number[b-d0xf1nq1dk] {
        font-size: var(--text-sm-plus);
    }

    .calendar-day[b-d0xf1nq1dk] {
        min-height: 40px;
    }
}
/* _content/FRP.Web/Components/Shared/Common/CalendarOverview.razor.rz.scp.css */
/* Calendar Overview Container */
.calendar-overview[b-p8qfr3y1xn] {
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
}

.calendar-overview.collapsed[b-p8qfr3y1xn] {
    margin-bottom: var(--dp-space-4);
}

/* Header */
.overview-header[b-p8qfr3y1xn] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-4);
    background: var(--dp-slate-50);
    border-bottom: 1px solid var(--border-default);
    cursor: pointer;
    user-select: none;
    transition: background-color var(--transition-fast);
}

.calendar-overview.collapsed .overview-header[b-p8qfr3y1xn] {
    border-bottom: none;
}

.overview-header:hover[b-p8qfr3y1xn] {
    background-color: var(--dp-slate-100);
}

.header-left[b-p8qfr3y1xn] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.header-title[b-p8qfr3y1xn] {
    font-size: var(--text-xl);
    font-weight: var(--font-medium);
    color: var(--text-primary);
}

/* Statistics Badges */
.statistics-badges[b-p8qfr3y1xn] {
    display: flex;
    gap: var(--dp-space-2);
    flex-wrap: wrap;
}

.statistics-badges .badge[b-p8qfr3y1xn] {
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    white-space: nowrap;
}

.statistics-badges .badge-success[b-p8qfr3y1xn] {
    background-color: #d4edda;
    color: #155724;
}

.statistics-badges .badge-info[b-p8qfr3y1xn] {
    background-color: #d1ecf1;
    color: #0c5460;
}

.statistics-badges .badge-warning[b-p8qfr3y1xn] {
    background-color: #fff3cd;
    color: #856404;
}

.statistics-badges .badge-danger[b-p8qfr3y1xn] {
    background-color: #f8d7da;
    color: #721c24;
}

.statistics-badges .badge-primary[b-p8qfr3y1xn] {
    background-color: #cce5ff;
    color: #004085;
}

/* Calendar Content */
.calendar-content[b-p8qfr3y1xn] {
    padding: var(--dp-space-4);
}

/* Calendar Grid */
.calendar-grid[b-p8qfr3y1xn] {
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    overflow: hidden;
    background-color: var(--surface-primary);
    box-shadow: var(--shadow-sm);
}

.calendar-weekdays[b-p8qfr3y1xn] {
    display: grid;
    background-color: var(--dp-slate-50);
    border-bottom: 1px solid var(--border-default);
}

.weekday[b-p8qfr3y1xn] {
    padding: var(--dp-space-3) var(--dp-space-1);
    text-align: center;
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-right: 1px solid var(--border-default);
}

.weekday:last-child[b-p8qfr3y1xn] {
    border-right: none;
}

.calendar-days[b-p8qfr3y1xn] {
    display: grid;
}

/* Calendar Day Cells */
.calendar-day[b-p8qfr3y1xn] {
    position: relative;
    min-height: 3.5rem;
    border-right: 1px solid var(--border-default);
    border-bottom: 1px solid var(--border-default);
    background-color: var(--surface-primary);
    display: flex;
    flex-direction: column;
    transition: var(--transition-fast);
    padding: var(--dp-space-2);
}

.calendar-day:hover:not(.empty-day)[b-p8qfr3y1xn] {
    background-color: var(--dp-slate-50);
}

/* Empty days */
.calendar-day.empty-day[b-p8qfr3y1xn] {
    background-color: var(--dp-slate-50);
    color: var(--dp-slate-400);
}

/* Status-based styling */
.calendar-day.present-day[b-p8qfr3y1xn] {
    background-color: #d1f2eb;
    border-color: #7dcea0;
}

.calendar-day.present-day:hover[b-p8qfr3y1xn] {
    background-color: #a3e4d7;
}

.calendar-day.absent-day[b-p8qfr3y1xn] {
    background-color: #fadbd8;
    border-color: #ec7063;
}

.calendar-day.absent-day:hover[b-p8qfr3y1xn] {
    background-color: #f5b7b1;
}

.calendar-day.planned-absent-day[b-p8qfr3y1xn] {
    background-color: #fdf2e9;
    border-color: #f8c471;
}

.calendar-day.planned-absent-day:hover[b-p8qfr3y1xn] {
    background-color: #fae5d3;
}

.calendar-day.no-checkin-day[b-p8qfr3y1xn] {
    background-color: #fdfdfe;
}

/* Day Number */
.day-number[b-p8qfr3y1xn] {
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-900);
    line-height: 1;
    margin-bottom: var(--dp-space-1);
}

/* Day Icons */
.day-icons[b-p8qfr3y1xn] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-1);
    align-items: center;
    justify-content: flex-start;
    margin-top: auto;
}

.day-icons :deep(i)[b-p8qfr3y1xn] {
    font-size: var(--text-md);
}

/* Icon Colors */
.day-icons :deep(.text-success)[b-p8qfr3y1xn] {
    color: var(--status-success) !important;
}

.day-icons :deep(.text-danger)[b-p8qfr3y1xn] {
    color: var(--status-danger) !important;
}

.day-icons :deep(.text-warning)[b-p8qfr3y1xn] {
    color: var(--status-warning) !important;
}

.day-icons :deep(.text-primary)[b-p8qfr3y1xn] {
    color: var(--accent) !important;
}

.day-icons :deep(.text-info)[b-p8qfr3y1xn] {
    color: var(--status-info) !important;
}

.day-icons :deep(.text-purple)[b-p8qfr3y1xn] {
    color: var(--dp-blue-600) !important;
}

/* Status Icon (top right) */
.day-icons :deep(.status-icon)[b-p8qfr3y1xn] {
    position: absolute;
    top: var(--dp-space-1);
    right: var(--dp-space-1);
    font-size: var(--text-lg);
}

/* Transport Indicator */
.day-icons :deep(.transport-indicator)[b-p8qfr3y1xn] {
    display: inline-flex;
    align-items: center;
    gap: 0.125rem;
    background-color: var(--accent);
    color: white;
    padding: 0.125rem var(--dp-space-1);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    line-height: 1;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 123, 255, 0.3);
}

.day-icons :deep(.transport-indicator.wheelchair)[b-p8qfr3y1xn] {
    background-color: var(--dp-blue-600);
    box-shadow: 0 0.125rem 0.25rem rgba(111, 66, 193, 0.3);
}

/* Responsive Design */
@media (max-width: 768px) {
    .overview-header[b-p8qfr3y1xn] {
        flex-direction: column;
        gap: var(--dp-space-2);
        align-items: flex-start;
    }

    .statistics-badges[b-p8qfr3y1xn] {
        width: 100%;
        justify-content: flex-start;
    }

    .calendar-day[b-p8qfr3y1xn] {
        min-height: 3rem;
        padding: var(--dp-space-1);
    }

    .day-number[b-p8qfr3y1xn] {
        font-size: var(--text-md);
    }

    .weekday[b-p8qfr3y1xn] {
        padding: var(--dp-space-2) var(--dp-space-1);
        font-size: var(--text-sm-plus);
    }
}

@media (max-width: 480px) {
    .calendar-day[b-p8qfr3y1xn] {
        min-height: 2.5rem;
        padding: var(--dp-space-1);
    }

    .day-number[b-p8qfr3y1xn] {
        font-size: var(--text-sm-plus);
    }

    .weekday[b-p8qfr3y1xn] {
        padding: var(--dp-space-1) 0.125rem;
        font-size: 0.625rem;
    }
}

/* Print Styles */
@media print {
    .calendar-grid[b-p8qfr3y1xn] {
        border: 2px solid #000;
    }

    .calendar-day[b-p8qfr3y1xn] {
        border-color: #000;
        background-color: transparent !important;
    }

    .calendar-day.present-day[b-p8qfr3y1xn] {
        background-color: #f0f0f0 !important;
    }
}
/* _content/FRP.Web/Components/Shared/Common/SimpleCalendar.razor.rz.scp.css */
/* Calendar Container */
.simple-calendar-container[b-ku5r5yka1p] {
    width: 100%;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.simple-calendar-compact[b-ku5r5yka1p] {
    padding: 0;
}

/* Calendar Grid */
.calendar-grid[b-ku5r5yka1p] {
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    overflow: hidden;
    background-color: var(--surface-primary);
    box-shadow: var(--shadow-sm);
}

.calendar-weekdays[b-ku5r5yka1p] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    background-color: var(--dp-slate-50);
    border-bottom: 1px solid var(--border-default);
}

.weekday[b-ku5r5yka1p] {
    padding: var(--dp-space-3) var(--dp-space-1);
    text-align: center;
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-right: 1px solid var(--border-default);
}

.weekday:last-child[b-ku5r5yka1p] {
    border-right: none;
}

.calendar-days[b-ku5r5yka1p] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
}

/* Calendar Day Cells */
.calendar-day[b-ku5r5yka1p] {
    position: relative;
    min-height: 3.5rem;
    border-right: 1px solid var(--border-default);
    border-bottom: 1px solid var(--border-default);
    background-color: var(--surface-primary);
    display: flex;
    flex-direction: column;
    transition: var(--transition-fast);
    padding: var(--dp-space-2);
}

.calendar-day:nth-child(5n)[b-ku5r5yka1p] {
    border-right: none;
}

.calendar-day:hover[b-ku5r5yka1p] {
    background-color: var(--dp-slate-50);
}

.calendar-day.clickable[b-ku5r5yka1p] {
    cursor: pointer;
}

.calendar-day.clickable:hover[b-ku5r5yka1p] {
    background-color: var(--dp-slate-200);
    transform: translateY(-1px);
    box-shadow: var(--shadow-sm);
}

/* Empty days */
.calendar-day.empty-day[b-ku5r5yka1p] {
    background-color: var(--dp-slate-50);
    color: var(--dp-slate-400);
}

/* Status-based styling */
.calendar-day.present-day[b-ku5r5yka1p] {
    background-color: var(--status-success-light);
    border-color: var(--dp-emerald-500);
}

.calendar-day.present-day:hover[b-ku5r5yka1p] {
    background-color: var(--dp-emerald-50);
}

.calendar-day.absent-day[b-ku5r5yka1p] {
    background-color: var(--status-danger-light);
    border-color: var(--dp-red-500);
}

.calendar-day.absent-day:hover[b-ku5r5yka1p] {
    background-color: var(--dp-red-50);
}

.calendar-day.planned-absent-day[b-ku5r5yka1p] {
    background-color: var(--status-warning-light);
    border-color: var(--dp-amber-500);
}

.calendar-day.planned-absent-day:hover[b-ku5r5yka1p] {
    background-color: var(--dp-amber-50);
}

.calendar-day.no-checkin-day[b-ku5r5yka1p] {
    background-color: var(--surface-primary);
}

.calendar-day.weekend-day[b-ku5r5yka1p] {
    background-color: var(--dp-slate-100);
}

.calendar-day.today[b-ku5r5yka1p] {
    border: 2px solid var(--accent);
    border-radius: var(--dp-radius-2);
    margin: 1px;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

/* Day Number */
.day-number[b-ku5r5yka1p] {
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-900);
    line-height: 1;
    margin-bottom: var(--dp-space-1);
}

/* Status Icon */
.status-icon[b-ku5r5yka1p] {
    position: absolute;
    top: var(--dp-space-1);
    right: var(--dp-space-1);
    font-size: var(--text-lg);
}

.status-icon .fa-check-circle[b-ku5r5yka1p] {
    color: var(--status-success);
}

.status-icon .fa-calendar-times[b-ku5r5yka1p] {
    color: var(--status-warning);
}

.status-icon .fa-times-circle[b-ku5r5yka1p] {
    color: var(--status-danger);
}

.calendar-day.empty-day .day-number[b-ku5r5yka1p] {
    color: var(--dp-slate-400);
}

.calendar-day.weekend-day .day-number[b-ku5r5yka1p] {
    color: var(--text-secondary);
}

/* Day Indicators */
.day-indicators[b-ku5r5yka1p] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-1);
    align-items: center;
    justify-content: flex-start;
    margin-top: auto;
}

.day-indicators.empty .no-checkin[b-ku5r5yka1p] {
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-400);
    font-weight: var(--font-weight-light);
}

/* Transport Badge */
.transport-badge[b-ku5r5yka1p] {
    display: inline-flex;
    align-items: center;
    gap: 0.125rem;
    background-color: var(--accent);
    color: white;
    padding: 0.125rem var(--dp-space-1);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    line-height: 1;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 123, 255, 0.3);
}

.transport-badge.wheelchair[b-ku5r5yka1p] {
    background-color: var(--dp-blue-600);
    box-shadow: 0 0.125rem 0.25rem rgba(111, 66, 193, 0.3);
}

.transport-badge i[b-ku5r5yka1p] {
    font-size: var(--text-sm-plus);
}

.transport-count[b-ku5r5yka1p] {
    font-weight: var(--font-bold);
    margin-left: 0.125rem;
}

.wheelchair-icon[b-ku5r5yka1p] {
    margin-left: 0.125rem;
    font-size: 0.625rem !important;
}

/* Wheelchair Only Badge */
.wheelchair-badge[b-ku5r5yka1p] {
    display: inline-flex;
    align-items: center;
    background-color: var(--dp-blue-600);
    color: white;
    padding: 0.125rem var(--dp-space-1);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-sm-plus);
    box-shadow: 0 0.125rem 0.25rem rgba(111, 66, 193, 0.3);
}

.wheelchair-badge i[b-ku5r5yka1p] {
    font-size: var(--text-sm-plus);
}

/* Calendar Summary */
.calendar-summary[b-ku5r5yka1p] {
    margin-top: var(--dp-space-4);
    padding: var(--dp-space-4);
    background-color: var(--dp-slate-50);
    border-radius: var(--dp-radius-4);
    border: 1px solid var(--border-default);
}

.summary-row[b-ku5r5yka1p] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-4);
    justify-content: center;
    align-items: center;
}

.summary-item[b-ku5r5yka1p] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-md);
    color: var(--dp-slate-700);
    white-space: nowrap;
}

.summary-item i[b-ku5r5yka1p] {
    font-size: var(--text-lg);
    width: 1.25rem;
    text-align: center;
}

/* Responsive Design */
@media (max-width: 768px) {
    .calendar-day[b-ku5r5yka1p] {
        min-height: 3rem;
        padding: var(--dp-space-1);
    }

    .day-number[b-ku5r5yka1p] {
        font-size: var(--text-md);
    }

    .weekday[b-ku5r5yka1p] {
        padding: var(--dp-space-2) var(--dp-space-1);
        font-size: var(--text-sm-plus);
    }

    .transport-badge[b-ku5r5yka1p],
    .wheelchair-badge[b-ku5r5yka1p] {
        font-size: 0.625rem;
        padding: 0.125rem var(--dp-space-1);
    }

    .transport-badge i[b-ku5r5yka1p],
    .wheelchair-badge i[b-ku5r5yka1p] {
        font-size: 0.625rem;
    }

    .wheelchair-icon[b-ku5r5yka1p] {
        font-size: 0.5rem !important;
    }
}

@media (max-width: 480px) {
    .calendar-day[b-ku5r5yka1p] {
        min-height: 2.5rem;
        padding: var(--dp-space-1);
    }

    .day-number[b-ku5r5yka1p] {
        font-size: var(--text-sm-plus);
    }

    .weekday[b-ku5r5yka1p] {
        padding: var(--dp-space-1) 0.125rem;
        font-size: 0.625rem;
    }

    .summary-row[b-ku5r5yka1p] {
        flex-direction: column;
        gap: var(--dp-space-2);
    }

    .summary-item[b-ku5r5yka1p] {
        font-size: var(--text-sm-plus);
    }
}

/* Print Styles */
@media print {
    .calendar-grid[b-ku5r5yka1p] {
        border: 2px solid #000;
    }

    .calendar-day[b-ku5r5yka1p] {
        border-color: #000;
        background-color: transparent !important;
    }

    .calendar-day.present-day[b-ku5r5yka1p] {
        background-color: var(--dp-slate-100) !important;
    }

    .transport-badge[b-ku5r5yka1p],
    .wheelchair-badge[b-ku5r5yka1p] {
        background-color: #000 !important;
        color: white !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}
/* _content/FRP.Web/Components/Shared/Dashboard/BirthdaysList.razor.rz.scp.css */
.widget-list[b-zu3qumj5v5] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.birthday-list[b-zu3qumj5v5] {
    max-height: 400px;
    overflow-y: auto;
}

.birthday-list .birthday-group[b-zu3qumj5v5] {
    margin-bottom: var(--dp-space-2);
}

.birthday-list .birthday-group:last-child[b-zu3qumj5v5] {
    margin-bottom: 0;
}

.group-header[b-zu3qumj5v5] {
    margin-bottom: var(--dp-space-1);
}

.group-label[b-zu3qumj5v5] {
    display: inline-block;
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-secondary);
    padding: var(--dp-space-1) var(--dp-space-2);
    background: var(--dp-slate-100);
    border-radius: var(--dp-radius-2);
}

.group-label.today[b-zu3qumj5v5] {
    background: var(--status-success-light);
    color: var(--dp-emerald-700);
}

.group-label.tomorrow[b-zu3qumj5v5] {
    background: var(--accent-light);
    color: var(--dp-blue-800);
}

.widget-list-item[b-zu3qumj5v5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-2);
    border-radius: var(--dp-radius-4);
    background: var(--dp-slate-50);
    border: 1px solid transparent;
    transition: all var(--transition-fast);
}

.widget-list-item.clickable[b-zu3qumj5v5] {
    cursor: pointer;
}

.widget-list-item.clickable:hover[b-zu3qumj5v5] {
    background: var(--accent-light);
    border-color: var(--accent);
}

.item-main[b-zu3qumj5v5] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
    flex: 1;
    min-width: 0;
}

.item-name[b-zu3qumj5v5] {
    font-weight: var(--font-medium);
    font-size: var(--text-md);
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.item-detail[b-zu3qumj5v5] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

.birthday-emoji[b-zu3qumj5v5] {
    margin-right: var(--dp-space-1);
}
/* _content/FRP.Web/Components/Shared/Dashboard/CareLevelDonutChart.razor.rz.scp.css */
/* ==========================================================================
   Care Level Donut Chart
   ========================================================================== */

.care-donut[b-ll71t9bpxq] {
    position: relative;
    height: 280px;
    width: 100%;
}

.care-donut[b-ll71t9bpxq]  .e-accumulationchart {
    width: 100% !important;
}

/* Zentrierter Gesamt-Zähler im Donut-Loch */
.care-donut__center[b-ll71t9bpxq] {
    position: absolute;
    top: 44%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    pointer-events: none;
}

.care-donut__total[b-ll71t9bpxq] {
    font-size: var(--text-3xl);
    font-weight: 700;
    line-height: 1;
    color: var(--text-primary);
    letter-spacing: -0.025em;
}

.care-donut__total-label[b-ll71t9bpxq] {
    font-size: var(--text-sm-plus);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-tertiary);
    margin-top: var(--dp-space-1);
}
/* _content/FRP.Web/Components/Shared/Dashboard/DashboardWidget.razor.rz.scp.css */
/* ==========================================================================
   Dashboard Widget - Refined Card Component
   ========================================================================== */

.dashboard-widget[b-v5wb1xss8x] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    border: 1px solid var(--dp-slate-200);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    animation: widget-appear-b-v5wb1xss8x 0.5s ease-out backwards;
}

@keyframes widget-appear-b-v5wb1xss8x {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.dashboard-widget:hover[b-v5wb1xss8x] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
}

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

.widget-header[b-v5wb1xss8x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-4);
    border-bottom: 1px solid var(--dp-slate-100);
    background: linear-gradient(180deg, var(--dp-slate-50) 0%, transparent 100%);
}

.widget-title[b-v5wb1xss8x] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
}

.widget-icon-badge[b-v5wb1xss8x] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: var(--dp-radius-4);
    background: var(--widget-color, var(--accent));
    flex-shrink: 0;
}

.widget-icon-badge :deep(.widget-icon)[b-v5wb1xss8x] {
    color: white;
    font-size: 16px;
}

.widget-title-text[b-v5wb1xss8x] {
    font-size: var(--text-md);
    font-weight: 600;
    color: var(--text-primary);
    letter-spacing: -0.01em;
}

.widget-actions[b-v5wb1xss8x] {
    display: flex;
    gap: var(--dp-space-2);
}

/* ==========================================================================
   Widget Variants
   ========================================================================== */

.widget-primary[b-v5wb1xss8x] {
    --widget-color: var(--accent);
}

.widget-success[b-v5wb1xss8x] {
    --widget-color: var(--status-success);
}

.widget-danger[b-v5wb1xss8x] {
    --widget-color: var(--status-danger);
}

.widget-warning[b-v5wb1xss8x] {
    --widget-color: var(--status-warning);
}

.widget-info[b-v5wb1xss8x] {
    --widget-color: var(--status-info);
}

.widget-purple[b-v5wb1xss8x] {
    --widget-color: var(--dp-purple-500);
}

/* ==========================================================================
   Widget Content
   ========================================================================== */

.widget-content[b-v5wb1xss8x] {
    padding: var(--dp-space-4);
    max-height: 300px;
    overflow-y: auto;
}

/* Custom Scrollbar */
.widget-content[b-v5wb1xss8x]::-webkit-scrollbar {
    width: 6px;
}

.widget-content[b-v5wb1xss8x]::-webkit-scrollbar-track {
    background: transparent;
}

.widget-content[b-v5wb1xss8x]::-webkit-scrollbar-thumb {
    background: var(--dp-slate-300);
    border-radius: var(--dp-radius-full);
}

.widget-content[b-v5wb1xss8x]::-webkit-scrollbar-thumb:hover {
    background: var(--dp-slate-400);
}

/* ==========================================================================
   Loading State
   ========================================================================== */

.widget-loading[b-v5wb1xss8x] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-8);
}

.loading-spinner[b-v5wb1xss8x] {
    position: relative;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.loading-spinner[b-v5wb1xss8x]::before {
    content: '';
    position: absolute;
    inset: 0;
    border: 2px solid var(--dp-slate-200);
    border-top-color: var(--widget-color, var(--accent));
    border-radius: 50%;
    animation: spin-b-v5wb1xss8x 1s linear infinite;
}

@keyframes spin-b-v5wb1xss8x {
    to { transform: rotate(360deg); }
}

.loading-spinner :deep(.spinner-icon)[b-v5wb1xss8x] {
    font-size: 20px;
    color: var(--widget-color, var(--accent));
    opacity: 0;
}

.loading-text[b-v5wb1xss8x] {
    font-size: var(--text-md);
    color: var(--text-secondary);
    animation: pulse-b-v5wb1xss8x 1.5s ease-in-out infinite;
}

@keyframes pulse-b-v5wb1xss8x {
    0%, 100% { opacity: 0.6; }
    50% { opacity: 1; }
}

/* ==========================================================================
   Empty State
   ========================================================================== */

.widget-empty[b-v5wb1xss8x] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-8);
    text-align: center;
}

.empty-icon-wrapper[b-v5wb1xss8x] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    background: rgba(var(--status-success-rgb), 0.1);
    border-radius: 50%;
}

.empty-icon-wrapper :deep(.empty-icon)[b-v5wb1xss8x] {
    font-size: 28px;
    color: var(--status-success);
}

.empty-message[b-v5wb1xss8x] {
    font-size: var(--text-md);
    color: var(--text-secondary);
    max-width: 200px;
    line-height: 1.5;
}
/* _content/FRP.Web/Components/Shared/Dashboard/IncompleteDataList.razor.rz.scp.css */
.widget-list[b-4oz6xr20xy] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.widget-list-item[b-4oz6xr20xy] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-2);
    border-radius: var(--dp-radius-4);
    background: var(--dp-slate-50);
    border: 1px solid transparent;
    transition: all var(--transition-fast);
}

.widget-list-item.clickable[b-4oz6xr20xy] {
    cursor: pointer;
}

.widget-list-item.clickable:hover[b-4oz6xr20xy] {
    background: var(--accent-light);
    border-color: var(--accent);
}

.item-main[b-4oz6xr20xy] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
    flex: 1;
    min-width: 0;
}

.item-name[b-4oz6xr20xy] {
    font-weight: var(--font-medium);
    font-size: var(--text-md);
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.item-detail[b-4oz6xr20xy] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

.item-detail.item-missing[b-4oz6xr20xy] {
    color: var(--dp-amber-600);
}

.item-actions[b-4oz6xr20xy] {
    display: flex;
    gap: var(--dp-space-2);
    margin-left: var(--dp-space-3);
}

[b-4oz6xr20xy] .warning-icon {
    color: var(--status-warning);
}
/* _content/FRP.Web/Components/Shared/Dashboard/MissingCheckInsList.razor.rz.scp.css */
.widget-list[b-ku34abzfow] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.widget-list-item[b-ku34abzfow] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-2);
    border-radius: var(--dp-radius-4);
    background: var(--dp-slate-50);
    border: 1px solid transparent;
    transition: all var(--transition-fast);
}

.widget-list-item.clickable[b-ku34abzfow] {
    cursor: pointer;
}

.widget-list-item.clickable:hover[b-ku34abzfow] {
    background: var(--accent-light);
    border-color: var(--accent);
}

.item-main[b-ku34abzfow] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
    flex: 1;
    min-width: 0;
}

.item-name[b-ku34abzfow] {
    font-weight: var(--font-medium);
    font-size: var(--text-md);
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.item-detail[b-ku34abzfow] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

.item-actions[b-ku34abzfow] {
    display: flex;
    gap: var(--dp-space-2);
    margin-left: var(--dp-space-3);
}

.phone-link[b-ku34abzfow] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: var(--dp-radius-full);
    background: var(--status-success-light);
    color: var(--status-success);
    transition: all var(--transition-fast);
    text-decoration: none;
}

.phone-link:hover[b-ku34abzfow] {
    background: var(--status-success);
    color: white;
}
/* _content/FRP.Web/Components/Shared/Dashboard/PendingServiceRecordsList.razor.rz.scp.css */
.widget-list[b-m3t2c5oafk] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.widget-list-item[b-m3t2c5oafk] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-2);
    border-radius: var(--dp-radius-4);
    background: var(--dp-slate-50);
    border: 1px solid transparent;
    transition: all var(--transition-fast);
}

.widget-list-item.clickable[b-m3t2c5oafk] {
    cursor: pointer;
}

.widget-list-item.clickable:hover[b-m3t2c5oafk] {
    background: var(--accent-light);
    border-color: var(--accent);
}

.item-main[b-m3t2c5oafk] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
    flex: 1;
    min-width: 0;
}

.item-name[b-m3t2c5oafk] {
    font-weight: var(--font-medium);
    font-size: var(--text-md);
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.item-detail[b-m3t2c5oafk] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

.item-actions[b-m3t2c5oafk] {
    display: flex;
    gap: var(--dp-space-2);
    margin-left: var(--dp-space-3);
}

[b-m3t2c5oafk] .action-icon {
    color: var(--accent);
}
/* _content/FRP.Web/Components/Shared/Dashboard/PflegedokuStatusDonut.razor.rz.scp.css */
.status-donut[b-qnq57w46m6] {
    position: relative;
    width: 138px;
    height: 138px;
    margin: 0 auto;
}

.status-donut__center[b-qnq57w46m6] {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}

.status-donut__total[b-qnq57w46m6] {
    font-size: 1.55rem;
    font-weight: 800;
    line-height: 1;
    color: var(--text-primary);
    letter-spacing: -0.02em;
}

.status-donut__label[b-qnq57w46m6] {
    margin-top: 1px;
    font-size: .6rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--text-tertiary);
}
/* _content/FRP.Web/Components/Shared/Dashboard/ProcessPipeline.razor.rz.scp.css */
.pipe[b-zcb5x1ejph] {
    display: inline-flex;
    align-items: center;
    gap: 0;
}

.pipe__step[b-zcb5x1ejph] {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    width: 44px;
}

.pipe__node[b-zcb5x1ejph] {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--dp-slate-300);
    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.9), 0 0 0 4px var(--dp-slate-200);
    position: relative;
}

.pipe__node.is-green[b-zcb5x1ejph] { background: var(--status-success); box-shadow: 0 0 0 3px rgba(255,255,255,.9), 0 0 0 4px rgba(var(--status-success-rgb), .35); }
.pipe__node.is-yellow[b-zcb5x1ejph] { background: var(--status-warning); box-shadow: 0 0 0 3px rgba(255,255,255,.9), 0 0 0 4px rgba(var(--status-warning-rgb), .35); }
.pipe__node.is-orange[b-zcb5x1ejph] { background: #ea780e; box-shadow: 0 0 0 3px rgba(255,255,255,.9), 0 0 0 4px rgba(234,120,14,.30); }
.pipe__node.is-red[b-zcb5x1ejph] { background: var(--status-danger); box-shadow: 0 0 0 3px rgba(255,255,255,.9), 0 0 0 4px rgba(var(--status-danger-rgb), .35); }
.pipe__node.is-grey[b-zcb5x1ejph] { background: var(--dp-slate-300); }

.pipe__label[b-zcb5x1ejph] {
    font-size: .68rem;
    font-weight: 600;
    letter-spacing: .02em;
    color: var(--text-tertiary);
    text-transform: uppercase;
}

.pipe__line[b-zcb5x1ejph] {
    flex: 1;
    min-width: 18px;
    height: 2px;
    margin: 0 -6px 14px;
    background: var(--dp-slate-200);
    border-radius: 2px;
}

.pipe__line.is-done[b-zcb5x1ejph] {
    background: linear-gradient(90deg, rgba(var(--status-success-rgb), .55), rgba(var(--status-success-rgb), .25));
}
/* _content/FRP.Web/Components/Shared/Dashboard/QuickActions.razor.rz.scp.css */
/* ==========================================================================
   Quick Actions - Refined Navigation Component
   ========================================================================== */

.quick-actions[b-oe75uoc5rs] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
    padding: var(--dp-space-5);
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    border: 1px solid var(--dp-slate-200);
    animation: quick-actions-appear-b-oe75uoc5rs 0.5s ease-out 0.3s backwards;
}

@keyframes quick-actions-appear-b-oe75uoc5rs {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.quick-actions-header[b-oe75uoc5rs] {
    display: flex;
    align-items: baseline;
    gap: var(--dp-space-3);
}

.quick-actions-label[b-oe75uoc5rs] {
    font-size: var(--text-md);
    font-weight: 700;
    color: var(--text-primary);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.quick-actions-hint[b-oe75uoc5rs] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

.quick-actions-grid[b-oe75uoc5rs] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--dp-space-3);
}

.quick-action[b-oe75uoc5rs] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-4);
    border-radius: var(--dp-radius-6);
    background: var(--dp-slate-50);
    border: 1px solid var(--dp-slate-200);
    color: var(--text-primary);
    text-decoration: none;
    cursor: pointer;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    animation: quick-action-appear-b-oe75uoc5rs 0.4s ease-out backwards;
    animation-delay: calc(var(--delay, 0) * 0.08s);
}

@keyframes quick-action-appear-b-oe75uoc5rs {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.quick-action:hover[b-oe75uoc5rs] {
    background: var(--surface-primary);
    border-color: var(--accent);
    box-shadow: 0 4px 12px rgba(var(--accent-rgb), 0.12);
    transform: translateY(-2px);
}

.quick-action-icon[b-oe75uoc5rs] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background: linear-gradient(135deg, var(--accent) 0%, var(--dp-blue-800) 100%);
    border-radius: var(--dp-radius-4);
    color: white;
    font-size: 20px;
    flex-shrink: 0;
    transition: transform 0.25s ease;
}

.quick-action:hover .quick-action-icon[b-oe75uoc5rs] {
    transform: scale(1.05);
}

.quick-action-icon.icon-success[b-oe75uoc5rs] {
    background: linear-gradient(135deg, var(--status-success) 0%, var(--dp-emerald-700) 100%);
}

.quick-action-icon.icon-info[b-oe75uoc5rs] {
    background: linear-gradient(135deg, var(--status-info) 0%, #2563eb 100%);
}

.quick-action-icon.icon-warning[b-oe75uoc5rs] {
    background: linear-gradient(135deg, var(--status-warning) 0%, var(--dp-amber-600) 100%);
}

.quick-action-content[b-oe75uoc5rs] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.quick-action-title[b-oe75uoc5rs] {
    font-size: var(--text-md);
    font-weight: 600;
    color: var(--text-primary);
    line-height: 1.2;
}

.quick-action-desc[b-oe75uoc5rs] {
    font-size: 11px;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

.quick-action-arrow[b-oe75uoc5rs] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: var(--dp-radius-full);
    background: var(--dp-slate-100);
    color: var(--text-secondary);
    font-size: 14px;
    flex-shrink: 0;
    transition: all 0.25s ease;
    opacity: 0;
    transform: translateX(-5px);
}

.quick-action:hover .quick-action-arrow[b-oe75uoc5rs] {
    opacity: 1;
    transform: translateX(0);
    background: var(--accent);
    color: white;
}

/* ==========================================================================
   Responsive Design
   ========================================================================== */

@media (max-width: 1200px) {
    .quick-actions-grid[b-oe75uoc5rs] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .quick-actions[b-oe75uoc5rs] {
        padding: var(--dp-space-4);
    }

    .quick-actions-grid[b-oe75uoc5rs] {
        grid-template-columns: 1fr;
    }

    .quick-action[b-oe75uoc5rs] {
        padding: var(--dp-space-3);
    }

    .quick-action-icon[b-oe75uoc5rs] {
        width: 40px;
        height: 40px;
        font-size: 18px;
    }

    .quick-action-arrow[b-oe75uoc5rs] {
        opacity: 1;
        transform: translateX(0);
    }
}
/* _content/FRP.Web/Components/Shared/Dashboard/WeeklyCapacityChart.razor.rz.scp.css */
/* ==========================================================================
   Weekly Capacity Chart
   ========================================================================== */

.capacity-chart[b-hhdf07gezw] {
    height: 280px;
    width: 100%;
}

.capacity-chart[b-hhdf07gezw]  .e-chart {
    width: 100% !important;
}
/* _content/FRP.Web/Components/Shared/Email/SendEmailDialog.razor.rz.scp.css */
/* Send Email Dialog Styles */

[b-h3qh6rquow] .send-email-dialog .e-dlg-header {
    background: linear-gradient(135deg, #1976d2, #1565c0);
    color: white;
    border-radius: var(--dp-radius-4) var(--dp-radius-4) 0 0;
}

[b-h3qh6rquow] .send-email-dialog .e-dlg-header .e-dlg-header-content {
    padding: var(--dp-space-4) var(--dp-space-5);
}

.dialog-header[b-h3qh6rquow] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    font-size: var(--text-xl);
    font-weight: var(--font-medium);
}

.dialog-header i[b-h3qh6rquow] {
    font-size: var(--text-2xl);
}

.dialog-content[b-h3qh6rquow] {
    padding: var(--dp-space-5);
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}

/* Form Fields */
.form-field[b-h3qh6rquow] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.field-label[b-h3qh6rquow] {
    font-size: var(--text-md);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-700);
}

.field-error[b-h3qh6rquow] {
    font-size: var(--text-sm-plus);
    color: var(--status-danger);
}

/* Email body textarea */
[b-h3qh6rquow] .email-body-input .e-input {
    min-height: 260px;
    resize: vertical;
    font-family: inherit;
    line-height: 1.5;
    white-space: pre-wrap;
}

/* Attachments Section */
.attachments-section[b-h3qh6rquow] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.attachment-list[b-h3qh6rquow] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.attachment-item[b-h3qh6rquow] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2) var(--dp-space-3);
    background: var(--dp-slate-50);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
    color: var(--dp-slate-700);
}

.attachment-item i[b-h3qh6rquow] {
    color: var(--status-danger);
    font-size: var(--text-lg);
}

/* Status Messages */
.status-message[b-h3qh6rquow] {
    padding: var(--dp-space-3) var(--dp-space-4);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.status-message.success[b-h3qh6rquow] {
    background: #d4edda;
    border: 1px solid #c3e6cb;
    color: #155724;
}

.status-message.error[b-h3qh6rquow] {
    background: #f8d7da;
    border: 1px solid #f5c6cb;
    color: #721c24;
}

/* Dialog Footer */
.dialog-footer[b-h3qh6rquow] {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-3);
    padding: var(--dp-space-5);
    border-top: 1px solid var(--border-default);
    background: var(--dp-slate-50);
}

[b-h3qh6rquow] .dialog-footer .e-btn {
    padding: var(--dp-space-2) var(--dp-space-5);
    font-weight: var(--font-medium);
}

/* Responsive Design */
@media (max-width: 768px) {
    .dialog-content[b-h3qh6rquow] {
        padding: var(--dp-space-4);
    }

    .dialog-footer[b-h3qh6rquow] {
        padding: var(--dp-space-4);
    }

    [b-h3qh6rquow] .send-email-dialog {
        width: 90% !important;
        max-height: 90vh;
    }
}
/* _content/FRP.Web/Components/Shared/Employees/EmployeeTabsLayout.razor.rz.scp.css */
/* ==========================================================================
   Employee Detail – Redesign
   Key-Facts-Hero (ohne Avatar) · schlanke Tabs · thematische Sektionen ·
   Inline-Edit. Nutzt ausschließlich echte UiKit-Tokens (--dp-*, --accent,
   --status-*, --surface-*, --text-*).
   ========================================================================== */

.emp-root[b-rasvw1kdnc] { display: flex; flex-direction: column; }

/* ==========================================================================
   Key-Facts (Signature) – kompakte Kennzahlen statt Avatar
   ========================================================================== */
.emp-facts[b-rasvw1kdnc] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-6);
    overflow: hidden;
}

.emp-fact[b-rasvw1kdnc] {
    padding: var(--dp-space-4) var(--dp-space-5);
    border-right: 1px solid var(--border-subtle);
}
.emp-fact:last-child[b-rasvw1kdnc] { border-right: none; }

.emp-fact__label[b-rasvw1kdnc] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--dp-slate-400);
    margin-bottom: var(--dp-space-2);
}
.emp-fact__label i[b-rasvw1kdnc] { font-size: 0.95em; opacity: 0.85; }

.emp-fact__value[b-rasvw1kdnc] {
    display: flex;
    align-items: baseline;
    gap: 5px;
    font-size: 1.35rem;
    font-weight: 640;
    letter-spacing: -0.01em;
    color: var(--text-primary);
    line-height: 1.15;
    font-variant-numeric: tabular-nums;
}
.emp-fact__value small[b-rasvw1kdnc] { font-size: 0.8rem; font-weight: 500; color: var(--dp-slate-400); }
.emp-fact__sub[b-rasvw1kdnc] { font-size: var(--text-sm-plus); color: var(--dp-slate-400); margin-top: 3px; }
.emp-fact--accent .emp-fact__value[b-rasvw1kdnc] { color: var(--accent); }

/* ==========================================================================
   Tabs
   ========================================================================== */
.emp-tabs[b-rasvw1kdnc] {
    display: flex;
    gap: 2px;
    margin: var(--dp-space-5) 0 var(--dp-space-4);
    border-bottom: 1px solid var(--border-default);
}
.emp-tab[b-rasvw1kdnc] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3) var(--dp-space-4);
    font-size: var(--text-md);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-400);
    background: none;
    border: none;
    border-bottom: 2.5px solid transparent;
    margin-bottom: -1px;
    cursor: pointer;
    transition: color 0.15s, border-color 0.15s;
    font-family: inherit;
}
.emp-tab:hover[b-rasvw1kdnc] { color: var(--text-secondary); }
.emp-tab.is-active[b-rasvw1kdnc] { color: var(--accent); border-bottom-color: var(--accent); }
.emp-tab i[b-rasvw1kdnc] { font-size: 1.05em; }
.emp-tab__count[b-rasvw1kdnc] {
    font-size: 11.5px;
    font-weight: var(--font-bold);
    background: var(--dp-slate-100);
    color: var(--dp-slate-400);
    padding: 1px 7px;
    border-radius: var(--dp-radius-full);
    line-height: 1.5;
}
.emp-tab.is-active .emp-tab__count[b-rasvw1kdnc] { background: var(--accent-light); color: var(--accent); }

.emp-panel[b-rasvw1kdnc] { animation: emp-fade-b-rasvw1kdnc 0.22s ease; }
@keyframes emp-fade-b-rasvw1kdnc { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }

/* ==========================================================================
   Sektionen (Stammdaten)
   ========================================================================== */
.emp-grid[b-rasvw1kdnc] { display: grid; grid-template-columns: 1fr 1fr; gap: var(--dp-space-4); }

.emp-section[b-rasvw1kdnc] {
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-6);
    overflow: hidden;
}
.emp-section--wide[b-rasvw1kdnc] { grid-column: 1 / -1; }

.emp-section__head[b-rasvw1kdnc] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-4) var(--dp-space-4) var(--dp-space-3);
    border-bottom: 1px solid var(--border-subtle);
}
.emp-section__ico[b-rasvw1kdnc] {
    width: 34px;
    height: 34px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--dp-radius-4);
    background: var(--accent-light);
    color: var(--accent);
    font-size: 18px;
}
.emp-section__ico--muted[b-rasvw1kdnc] { background: var(--dp-slate-100); color: var(--dp-slate-400); }
.emp-section__title[b-rasvw1kdnc] { font-size: var(--text-lg); font-weight: var(--font-semibold); letter-spacing: -0.01em; }
.emp-section__title--muted[b-rasvw1kdnc] { color: var(--text-secondary); }

.emp-section__body[b-rasvw1kdnc] { padding: var(--dp-space-1) var(--dp-space-4) var(--dp-space-3); }
.emp-section__body--split[b-rasvw1kdnc] { display: grid; grid-template-columns: 1fr 1fr; gap: 0 var(--dp-space-5); }

/* Label-Value-Reihe */
.emp-field[b-rasvw1kdnc] {
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: var(--dp-space-4);
    align-items: center;
    padding: var(--dp-space-3) 0;
    border-bottom: 1px solid var(--border-subtle);
    min-height: 46px;
}
.emp-field:last-child[b-rasvw1kdnc] { border-bottom: none; }
.emp-field__label[b-rasvw1kdnc] { font-size: var(--text-md); font-weight: var(--font-medium); color: var(--dp-slate-400); }
.emp-field__label--req[b-rasvw1kdnc]::after { content: " *"; color: var(--status-danger); }
.emp-field__value[b-rasvw1kdnc] { font-size: var(--text-md); font-weight: 520; color: var(--text-primary); }
.emp-field__value--muted[b-rasvw1kdnc] { color: var(--dp-slate-400); font-weight: var(--font-medium); }
.emp-field__value--mono[b-rasvw1kdnc] { font-variant-numeric: tabular-nums; letter-spacing: 0.01em; }

.emp-dept[b-rasvw1kdnc] { display: inline-flex; align-items: center; gap: var(--dp-space-2); }
.emp-dept__dot[b-rasvw1kdnc] { width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; }

/* Ja/Nein-Pille */
.emp-pill[b-rasvw1kdnc] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    padding: 3px 10px;
    border-radius: var(--dp-radius-full);
    background: rgba(var(--status-success-rgb), 0.10);
    color: var(--status-success);
    border: 1px solid rgba(var(--status-success-rgb), 0.25);
}
.emp-pill--no[b-rasvw1kdnc] { background: var(--dp-slate-50); color: var(--dp-slate-400); border-color: var(--border-default); }

/* Status-Badge (neben Name / im Grid) */
.emp-badge[b-rasvw1kdnc] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    padding: 3px 10px;
    border-radius: var(--dp-radius-full);
    border: 1px solid transparent;
    white-space: nowrap;
}
.emp-badge__pip[b-rasvw1kdnc] { width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.emp-badge--ok[b-rasvw1kdnc] { background: rgba(var(--status-success-rgb), 0.10); color: var(--status-success); border-color: rgba(var(--status-success-rgb), 0.25); }
.emp-badge--warn[b-rasvw1kdnc] { background: rgba(var(--status-warning-rgb), 0.12); color: var(--status-warning); border-color: rgba(var(--status-warning-rgb), 0.28); }
.emp-badge--muted[b-rasvw1kdnc] { background: var(--dp-slate-100); color: var(--dp-slate-500); border-color: var(--border-default); }

/* ==========================================================================
   NFC-Kartenverwaltung (Stempeluhr)
   ========================================================================== */
.emp-editing .emp-field--nfc[b-rasvw1kdnc] { display: none; }
.emp-nfc[b-rasvw1kdnc] { display: flex; align-items: center; gap: var(--dp-space-3); flex-wrap: wrap; }
.emp-nfc__code[b-rasvw1kdnc] {
    font-family: inherit;
    font-size: var(--text-md);
    font-weight: var(--font-semibold);
    letter-spacing: 0.03em;
    color: var(--text-primary);
    background: var(--dp-slate-50);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    padding: 4px 10px;
}
.emp-nfc__input[b-rasvw1kdnc] { max-width: 260px; }
.emp-nfc__hint[b-rasvw1kdnc] { font-size: var(--text-sm-plus); color: var(--dp-slate-400); margin-top: var(--dp-space-2); }
.emp-nfc__error[b-rasvw1kdnc] { font-size: var(--text-sm-plus); color: var(--status-danger); margin-top: var(--dp-space-2); }

/* ==========================================================================
   Inline-Edit
   ========================================================================== */
.emp-field__edit[b-rasvw1kdnc] { display: none; }
.emp-editing .emp-field__value[b-rasvw1kdnc] { display: none; }
.emp-editing .emp-field__edit[b-rasvw1kdnc] { display: block; }
.emp-editing .emp-field__edit--row[b-rasvw1kdnc] { display: grid; grid-template-columns: 1fr 1fr; gap: var(--dp-space-2); }
.emp-editing .emp-field__edit--grid[b-rasvw1kdnc] { display: grid; gap: var(--dp-space-2); }
.emp-addr-row[b-rasvw1kdnc] { display: grid; grid-template-columns: 110px 1fr; gap: var(--dp-space-2); }
.emp-editing .emp-field[b-rasvw1kdnc] { align-items: start; }
.emp-editing .emp-field__label[b-rasvw1kdnc] { padding-top: 9px; }

/* Inputs im Edit-Modus – Syncfusion-Felder erben grösstenteils App-Styles;
   eigene Eingaben nutzen .emp-inp */
.emp-inp[b-rasvw1kdnc] {
    width: 100%;
    font-family: inherit;
    font-size: var(--text-md);
    color: var(--text-primary);
    padding: 8px 11px;
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    background: var(--surface-primary);
    transition: border-color 0.15s, box-shadow 0.15s;
}
.emp-inp:focus[b-rasvw1kdnc] {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 3px var(--accent-light);
}

.emp-check[b-rasvw1kdnc] { display: inline-flex; align-items: center; gap: var(--dp-space-2); font-size: var(--text-md); color: var(--text-primary); cursor: pointer; }

/* Save-Bar */
.emp-savebar[b-rasvw1kdnc] {
    position: sticky;
    bottom: var(--dp-space-3);
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    margin-top: var(--dp-space-4);
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-6);
    box-shadow: 0 6px 22px rgba(15, 23, 42, 0.10);
}
.emp-savebar__hint[b-rasvw1kdnc] {
    margin-right: auto;
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-400);
}
.emp-savebar__hint i[b-rasvw1kdnc] { color: var(--status-info); font-size: 1.1em; }

/* ==========================================================================
   Urlaub
   ========================================================================== */
.emp-vac-grid[b-rasvw1kdnc] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: var(--dp-space-4);
    margin-bottom: var(--dp-space-5);
}
.emp-vcard[b-rasvw1kdnc] {
    position: relative;
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-6);
    padding: var(--dp-space-4);
}
.emp-vcard--hl[b-rasvw1kdnc] { border-color: rgba(var(--accent-rgb), 0.4); }
.emp-vcard__ico[b-rasvw1kdnc] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--dp-radius-4);
    font-size: 20px;
    margin-bottom: var(--dp-space-3);
}
.emp-vico--1[b-rasvw1kdnc] { background: var(--accent-light); color: var(--accent); }
.emp-vico--2[b-rasvw1kdnc] { background: rgba(var(--status-info-rgb), 0.12); color: var(--status-info); }
.emp-vico--3[b-rasvw1kdnc] { background: rgba(var(--status-warning-rgb), 0.14); color: var(--status-warning); }
.emp-vico--4[b-rasvw1kdnc] { background: rgba(var(--status-success-rgb), 0.12); color: var(--status-success); }
.emp-vcard__val[b-rasvw1kdnc] { font-size: 1.7rem; font-weight: 680; letter-spacing: -0.02em; line-height: 1; color: var(--text-primary); font-variant-numeric: tabular-nums; }
.emp-vcard__val small[b-rasvw1kdnc] { font-size: 0.8rem; font-weight: 500; color: var(--dp-slate-400); }
.emp-vcard__lbl[b-rasvw1kdnc] { font-size: var(--text-md); color: var(--text-secondary); font-weight: var(--font-medium); margin-top: 5px; }
.emp-vcard__bar[b-rasvw1kdnc] { height: 7px; border-radius: var(--dp-radius-full); background: var(--dp-slate-100); margin-top: var(--dp-space-3); overflow: hidden; }
.emp-vcard__bar > i[b-rasvw1kdnc] { display: block; height: 100%; border-radius: var(--dp-radius-full); background: var(--status-success); }
.emp-vcard__edit[b-rasvw1kdnc] {
    position: absolute; top: var(--dp-space-2); right: var(--dp-space-2);
    width: 28px; height: 28px; display: flex; align-items: center; justify-content: center;
    background: none; border: none; color: var(--dp-slate-400); cursor: pointer;
    border-radius: var(--dp-radius-2); opacity: 0; transition: opacity 0.15s, background 0.15s, color 0.15s;
}
.emp-vcard:hover .emp-vcard__edit[b-rasvw1kdnc] { opacity: 1; }
.emp-vcard__edit:hover[b-rasvw1kdnc] { background: var(--dp-slate-100); color: var(--accent); }

.emp-listhead[b-rasvw1kdnc] {
    display: flex; align-items: center; gap: var(--dp-space-2);
    font-size: var(--text-lg); font-weight: var(--font-semibold); color: var(--text-primary);
    margin: var(--dp-space-2) 0 var(--dp-space-3);
}

/* Urlaubsanträge-Tabelle */
.emp-table[b-rasvw1kdnc] {
    width: 100%;
    border-collapse: collapse;
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-6);
    overflow: hidden;
    font-size: var(--text-md);
}
.emp-table thead th[b-rasvw1kdnc] {
    text-align: left;
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: var(--dp-slate-400);
    padding: var(--dp-space-3) var(--dp-space-4);
    border-bottom: 1px solid var(--border-default);
    background: var(--dp-slate-50);
    white-space: nowrap;
}
.emp-table tbody td[b-rasvw1kdnc] {
    padding: var(--dp-space-3) var(--dp-space-4);
    border-bottom: 1px solid var(--border-subtle);
    color: var(--text-primary);
    vertical-align: middle;
}
.emp-table tbody tr:last-child td[b-rasvw1kdnc] { border-bottom: none; }
.emp-table tbody tr:hover[b-rasvw1kdnc] { background: var(--dp-slate-50); }
.emp-table__num[b-rasvw1kdnc] { font-variant-numeric: tabular-nums; }

/* ==========================================================================
   Empty / Loading in Panels
   ========================================================================== */
.emp-panel-empty[b-rasvw1kdnc] { padding: var(--dp-space-5) 0; }
.emp-system-hide[b-rasvw1kdnc] { }
.emp-editing .emp-system-hide[b-rasvw1kdnc] { display: none; }

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 900px) {
    .emp-facts[b-rasvw1kdnc] { grid-template-columns: 1fr 1fr; }
    .emp-fact[b-rasvw1kdnc] { border-bottom: 1px solid var(--border-subtle); }
    .emp-vac-grid[b-rasvw1kdnc] { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 720px) {
    .emp-grid[b-rasvw1kdnc] { grid-template-columns: 1fr; }
    .emp-section__body--split[b-rasvw1kdnc] { grid-template-columns: 1fr; }
    .emp-field[b-rasvw1kdnc] { grid-template-columns: 1fr; gap: 4px; align-items: start; }
    .emp-ctr[b-rasvw1kdnc] { flex-wrap: wrap; }
}

@media (prefers-reduced-motion: reduce) {
    .emp-panel[b-rasvw1kdnc] { animation: none; }
    .emp-vcard__bar > i[b-rasvw1kdnc] { transition: none; }
}
/* _content/FRP.Web/Components/Shared/Employees/ScheduleExcerpt.razor.rz.scp.css */
.schedule-excerpt[b-s3elqrhehz] {
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    background: var(--surface-primary);
    overflow: hidden;
}

.schedule-header[b-s3elqrhehz] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-3);
    background: var(--dp-slate-50);
    border-bottom: 1px solid var(--border-default);
    cursor: pointer;
    user-select: none;
}

.schedule-header:hover[b-s3elqrhehz] {
    background: var(--dp-slate-100);
}

.schedule-title[b-s3elqrhehz] {
    display: flex;
    align-items: center;
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
    color: var(--dp-slate-700);
}

.schedule-count[b-s3elqrhehz] {
    margin-left: var(--dp-space-2);
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    font-weight: var(--font-normal);
    background: var(--dp-slate-200);
    padding: 1px 8px;
    border-radius: var(--dp-radius-full);
}

.toggle-btn[b-s3elqrhehz] {
    background: none;
    border: none;
    padding: var(--dp-space-1);
    color: var(--text-secondary);
    cursor: pointer;
    border-radius: var(--dp-radius-2);
    display: flex;
    align-items: center;
}

.toggle-btn:hover[b-s3elqrhehz] {
    background: var(--dp-slate-200);
}

/* Loading & Empty */
.schedule-loading[b-s3elqrhehz],
.schedule-empty[b-s3elqrhehz] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-4);
    color: var(--text-secondary);
    font-size: var(--text-md);
}

/* Grid */
.schedule-grid-wrapper[b-s3elqrhehz] {
    overflow-x: auto;
    padding: var(--dp-space-2);
}

.schedule-grid[b-s3elqrhehz] {
    display: grid;
    gap: 1px;
    min-width: max-content;
}

/* Header cells */
.grid-header-cell[b-s3elqrhehz] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4px 2px;
    font-size: 10px;
    font-weight: var(--font-medium);
    color: var(--text-secondary);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-2) var(--dp-radius-2) 0 0;
}

.grid-header-cell.weekend[b-s3elqrhehz] {
    background: var(--dp-slate-100);
    color: var(--dp-slate-400);
}

.grid-header-cell.today[b-s3elqrhehz] {
    background: var(--dp-blue-100);
    color: var(--accent);
    font-weight: var(--font-bold);
}

.grid-header-name[b-s3elqrhehz] {
    align-items: flex-start;
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-600);
    padding: 4px 8px;
}

.day-abbr[b-s3elqrhehz] {
    line-height: 1;
    text-transform: uppercase;
    font-size: 9px;
    letter-spacing: 0.5px;
}

.day-num[b-s3elqrhehz] {
    line-height: 1;
    font-size: 11px;
    font-weight: var(--font-semibold);
}

/* Name cells */
.grid-name-cell[b-s3elqrhehz] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
    padding: 4px 8px;
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-700);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    border-bottom: 1px solid var(--border-subtle);
}

.dept-dot[b-s3elqrhehz] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}

.emp-name[b-s3elqrhehz] {
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Data cells */
.grid-data-cell[b-s3elqrhehz] {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 28px;
    font-size: 10px;
    font-weight: var(--font-semibold);
    border-radius: 3px;
    border-bottom: 1px solid var(--border-subtle);
    transition: transform 0.1s ease;
}

.grid-data-cell:hover[b-s3elqrhehz] {
    transform: scale(1.1);
    z-index: 1;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
}

.cell-empty[b-s3elqrhehz] {
    background: transparent;
}

.cell-vacation-approved[b-s3elqrhehz] {
    background: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.cell-vacation-pending[b-s3elqrhehz] {
    background: #fff3cd;
    color: #856404;
    border: 1px solid #ffeeba;
}

.cell-sick[b-s3elqrhehz] {
    background: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

.cell-shift[b-s3elqrhehz] {
    background: #d1ecf1;
    color: #0c5460;
    border: 1px solid #bee5eb;
}

.cell-weekend[b-s3elqrhehz] {
    background: var(--dp-slate-100);
    color: var(--dp-slate-400);
}

/* Legend */
.schedule-legend[b-s3elqrhehz] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-3);
    padding: var(--dp-space-2) var(--dp-space-3);
    border-top: 1px solid var(--border-subtle);
    background: var(--dp-slate-50);
}

.legend-item[b-s3elqrhehz] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
    font-size: 11px;
    color: var(--text-secondary);
}

.legend-dot[b-s3elqrhehz] {
    width: 14px;
    height: 14px;
    border-radius: 3px;
    flex-shrink: 0;
}

/* Compact mode */
.schedule-excerpt.compact .grid-data-cell[b-s3elqrhehz] {
    height: 24px;
    font-size: 9px;
}

.schedule-excerpt.compact .grid-header-cell[b-s3elqrhehz] {
    font-size: 9px;
}

.schedule-excerpt.compact .grid-name-cell[b-s3elqrhehz] {
    font-size: 11px;
}

.schedule-excerpt.compact .schedule-grid[b-s3elqrhehz] {
    grid-template-columns: 150px repeat(auto-fill, 30px);
}
/* _content/FRP.Web/Components/Shared/Guests/CareLevelChangeDialog.razor.rz.scp.css */
/* Care Level Change Dialog Styles */

.dialog-header[b-7c12o485ig] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    font-size: var(--text-2xl);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}

.dialog-header i[b-7c12o485ig] {
    color: #667eea;
    font-size: var(--text-xl);
}

.care-level-change-form[b-7c12o485ig] {
    padding: var(--dp-space-5) 0;
}

.current-info[b-7c12o485ig] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-4);
    margin-bottom: var(--dp-space-6);
    padding: var(--dp-space-4);
    background: linear-gradient(135deg, #667eea10 0%, #764ba210 100%);
    border-radius: var(--dp-radius-6);
    border: 1px solid var(--dp-slate-200);
}

.info-card[b-7c12o485ig] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.info-card label[b-7c12o485ig] {
    font-size: var(--text-md);
    color: var(--text-secondary);
    font-weight: var(--font-medium);
}

.info-card span[b-7c12o485ig] {
    font-size: var(--text-lg);
    color: var(--text-primary);
    font-weight: var(--font-semibold);
}

.care-level-badge[b-7c12o485ig] {
    display: inline-flex;
    align-items: center;
    padding: var(--dp-space-2) var(--dp-space-3);
    border-radius: var(--dp-radius-8);
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
}

.care-level-badge.level-0[b-7c12o485ig] {
    background: var(--dp-slate-200);
    color: var(--text-secondary);
}

.care-level-badge.level-1[b-7c12o485ig] {
    background: #c6f6d5;
    color: #22543d;
}

.care-level-badge.level-2[b-7c12o485ig] {
    background: #bee3f8;
    color: #2c5282;
}

.care-level-badge.level-3[b-7c12o485ig] {
    background: #fef5e7;
    color: #744210;
}

.care-level-badge.level-4[b-7c12o485ig] {
    background: #fed7e2;
    color: #742a2a;
}

.care-level-badge.level-5[b-7c12o485ig] {
    background: #e9d8fd;
    color: #44337a;
}

.form-group[b-7c12o485ig] {
    margin-bottom: var(--dp-space-5);
}

.form-label[b-7c12o485ig] {
    display: block;
    margin-bottom: var(--dp-space-2);
    font-size: var(--text-md);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-700);
}

.form-label.required[b-7c12o485ig]::after {
    content: " *";
    color: var(--status-danger);
}

.validation-message[b-7c12o485ig] {
    display: block;
    margin-top: var(--dp-space-1);
    color: var(--status-danger);
    font-size: var(--text-sm-plus);
}

.form-text[b-7c12o485ig] {
    display: block;
    margin-top: var(--dp-space-1);
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

.alert[b-7c12o485ig] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-3) var(--dp-space-4);
    border-radius: var(--dp-radius-4);
    margin-top: var(--dp-space-5);
}

.alert-warning[b-7c12o485ig] {
    background: #fef5e7;
    border: 1px solid #f6e05e;
    color: #744210;
}

.alert-info[b-7c12o485ig] {
    background: #e6f4ff;
    border: 1px solid #91d5ff;
    color: #0050b3;
}

.alert i[b-7c12o485ig] {
    font-size: var(--text-xl);
}

/* Syncfusion Component Overrides */
[b-7c12o485ig] .e-dropdown {
    border: 2px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-4);
}

[b-7c12o485ig] .e-dropdown:hover {
    border-color: var(--dp-slate-400);
}

[b-7c12o485ig] .e-dropdown.e-input-focus {
    border-color: #667eea;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

[b-7c12o485ig] .e-datepicker .e-input-group {
    border: 2px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-4);
}

[b-7c12o485ig] .e-datepicker .e-input-group:hover {
    border-color: var(--dp-slate-400);
}

[b-7c12o485ig] .e-datepicker .e-input-group.e-input-focus {
    border-color: #667eea;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

[b-7c12o485ig] .e-textbox {
    border: 2px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-4);
}

[b-7c12o485ig] .e-textbox:hover {
    border-color: var(--dp-slate-400);
}

[b-7c12o485ig] .e-textbox.e-input-focus {
    border-color: #667eea;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

[b-7c12o485ig] textarea.e-textbox {
    min-height: 80px;
    resize: vertical;
}

/* Responsive Design */
@media (max-width: 576px) {
    .current-info[b-7c12o485ig] {
        grid-template-columns: 1fr;
    }
}
/* _content/FRP.Web/Components/Shared/Guests/CareLevelHistory.razor.rz.scp.css */
/* Care Level History Component Styles
   Karten-Hülle kommt aus components/_guest-card.css */

/* Loading State */
.loading-state[b-p8u0bqebng] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-2);
    color: var(--text-secondary);
    font-size: var(--text-md);
}

/* Empty State */
.empty-state[b-p8u0bqebng] {
    text-align: center;
    padding: var(--dp-space-6) var(--dp-space-4);
    color: var(--text-secondary);
}

.empty-state i[b-p8u0bqebng] {
    font-size: var(--text-3xl);
    margin-bottom: var(--dp-space-2);
    display: block;
    opacity: 0.5;
}

.empty-state p[b-p8u0bqebng] {
    margin: 0;
    font-weight: var(--font-medium);
}

.empty-state small[b-p8u0bqebng] {
    font-size: var(--text-sm-plus);
}

/* Pflegegrad-Badges kommen global aus components/_badges.css (einheitliche Farben). */

/* Syncfusion Grid Customizations */
[b-p8u0bqebng] .e-grid .e-gridheader {
    background: var(--dp-slate-100);
    border-bottom: 1px solid var(--border-subtle);
}

[b-p8u0bqebng] .e-grid .e-headercell {
    color: var(--dp-slate-700);
    font-weight: var(--font-semibold);
}

[b-p8u0bqebng] .e-grid .e-row {
    transition: var(--transition-base);
}

[b-p8u0bqebng] .e-grid .e-row:hover {
    background-color: var(--dp-slate-50);
}

[b-p8u0bqebng] .e-grid .e-altrow {
    background-color: var(--dp-slate-50);
}

[b-p8u0bqebng] .e-grid .e-altrow:hover {
    background-color: var(--dp-slate-100);
}

/* Make sure text doesn't wrap in grid cells */
[b-p8u0bqebng] .e-grid td {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* _content/FRP.Web/Components/Shared/Guests/ExcelExportColumnDialog.razor.rz.scp.css */
/* Excel Export Dialog */

[b-vzo08ponmy] .excel-export-dialog .e-dlg-header {
    background: linear-gradient(135deg, #2e7d32, #1b5e20);
    color: white;
    border-radius: var(--dp-radius-4) var(--dp-radius-4) 0 0;
}

[b-vzo08ponmy] .excel-export-dialog .e-dlg-header .e-dlg-header-content {
    padding: var(--dp-space-4) var(--dp-space-5);
}

[b-vzo08ponmy] .excel-export-dialog .e-icon-dlg-close {
    color: rgba(255, 255, 255, 0.8);
}

[b-vzo08ponmy] .excel-export-dialog .e-icon-dlg-close:hover {
    color: white;
}

.dialog-header[b-vzo08ponmy] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    font-size: var(--text-xl);
    font-weight: var(--font-medium);
}

.dialog-header i[b-vzo08ponmy] {
    font-size: var(--text-2xl);
}

.dialog-content[b-vzo08ponmy] {
    padding: var(--dp-space-5);
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}

/* Intro line */
.dialog-intro[b-vzo08ponmy] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-md);
    color: var(--dp-slate-600);
}

.dialog-intro .intro-icon[b-vzo08ponmy] {
    font-size: var(--text-lg);
    color: var(--dp-slate-500);
}

/* Column options list */
.column-options[b-vzo08ponmy] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.column-option[b-vzo08ponmy] {
    display: flex;
    align-items: center;
    padding: var(--dp-space-3) var(--dp-space-4);
    border: 1.5px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    cursor: pointer;
    transition: all 0.15s ease;
    user-select: none;
}

.column-option:hover:not(.locked)[b-vzo08ponmy] {
    border-color: var(--accent-light);
    background-color: rgba(46, 125, 50, 0.04);
}

.column-option.selected[b-vzo08ponmy] {
    border-color: #2e7d32;
    background-color: rgba(46, 125, 50, 0.06);
}

.column-option.locked[b-vzo08ponmy] {
    cursor: default;
    opacity: 0.55;
    background-color: var(--dp-slate-50);
}

.column-option-inner[b-vzo08ponmy] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    width: 100%;
    pointer-events: none;
}

/* Icon next to each option */
.column-icon[b-vzo08ponmy] {
    font-size: var(--text-xl);
    color: var(--dp-slate-500);
    width: 22px;
    text-align: center;
    flex-shrink: 0;
}

.column-option.selected .column-icon[b-vzo08ponmy] {
    color: #2e7d32;
}

/* Text block */
.column-info[b-vzo08ponmy] {
    display: flex;
    flex-direction: column;
    gap: 1px;
}

.column-label[b-vzo08ponmy] {
    font-size: var(--text-md);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-900);
}

.column-hint[b-vzo08ponmy] {
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-500);
}

/* Alle / Keine links */
.select-actions[b-vzo08ponmy] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    justify-content: flex-end;
}

.link-button[b-vzo08ponmy] {
    background: none;
    border: none;
    padding: 0;
    font-size: var(--text-sm-plus);
    color: var(--accent);
    cursor: pointer;
    text-decoration: none;
    font-weight: var(--font-medium);
}

.link-button:hover[b-vzo08ponmy] {
    text-decoration: underline;
}

.link-separator[b-vzo08ponmy] {
    color: var(--dp-slate-300);
    font-size: var(--text-sm-plus);
}

/* Checkbox override – hide Syncfusion label padding */
[b-vzo08ponmy] .column-option .e-checkbox-wrapper {
    margin: 0;
}

[b-vzo08ponmy] .column-option .e-checkbox-wrapper .e-label {
    display: none;
}

/* Checked state green tint */
[b-vzo08ponmy] .column-option.selected .e-checkbox-wrapper .e-frame.e-check {
    background-color: #2e7d32;
    border-color: #2e7d32;
}

/* Dialog Footer */
.dialog-footer[b-vzo08ponmy] {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-3);
    padding: var(--dp-space-4) var(--dp-space-5);
    border-top: 1px solid var(--border-default);
    background: var(--dp-slate-50);
}

[b-vzo08ponmy] .dialog-footer .e-btn {
    padding: var(--dp-space-2) var(--dp-space-5);
    font-weight: var(--font-medium);
}

[b-vzo08ponmy] .dialog-footer .e-btn.e-success {
    background-color: #2e7d32;
    border-color: #2e7d32;
}

[b-vzo08ponmy] .dialog-footer .e-btn.e-success:hover {
    background-color: #1b5e20;
    border-color: #1b5e20;
}

/* Responsive */
@media (max-width: 768px) {
    .dialog-content[b-vzo08ponmy] {
        padding: var(--dp-space-4);
    }

    .dialog-footer[b-vzo08ponmy] {
        padding: var(--dp-space-4);
    }

    [b-vzo08ponmy] .excel-export-dialog {
        width: 90% !important;
    }
}
/* _content/FRP.Web/Components/Shared/Guests/GuestContacts.razor.rz.scp.css */
/* Guest Contacts Component
   Karten-Hülle (.guest-card/__head/__body) kommt aus components/_guest-card.css */

/* Loading State */
.loading-state[b-coofy7vxd5] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-2);
    color: var(--text-secondary);
    font-size: var(--text-md);
}

/* Empty State */
.empty-state[b-coofy7vxd5] {
    text-align: center;
    padding: var(--dp-space-6) var(--dp-space-4);
    color: var(--text-secondary);
}

.empty-state i[b-coofy7vxd5] {
    font-size: var(--text-3xl);
    margin-bottom: var(--dp-space-2);
    display: block;
    opacity: 0.5;
}

.empty-state p[b-coofy7vxd5] {
    margin: 0;
    font-weight: var(--font-medium);
}

.empty-state small[b-coofy7vxd5] {
    font-size: var(--text-sm-plus);
}

/* Contact List */
.contact-list[b-coofy7vxd5] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.contact-item[b-coofy7vxd5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-2) var(--dp-space-3);
    border: 1px solid var(--border-subtle);
    border-radius: var(--dp-radius-4);
    background: var(--dp-slate-50);
    transition: all 0.2s ease;
}

.contact-item:hover[b-coofy7vxd5] {
    border-color: var(--accent);
    box-shadow: var(--shadow-sm);
    transform: translateY(-1px);
}

.contact-item.emergency[b-coofy7vxd5] {
    border-color: rgba(var(--status-danger-rgb), 0.35);
    border-left: 3px solid var(--status-danger);
    background: rgba(var(--status-danger-rgb), 0.06);
}

.contact-main[b-coofy7vxd5] {
    flex: 1;
    min-width: 0;
}

.contact-title[b-coofy7vxd5] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    margin-bottom: var(--dp-space-1);
    flex-wrap: wrap;
}

.contact-name[b-coofy7vxd5] {
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
    color: var(--text-primary);
}

.emergency-tag[b-coofy7vxd5] {
    font-size: var(--text-sm-plus);
    padding: 1px var(--dp-space-2);
    background: rgba(var(--status-danger-rgb), 0.12);
    color: var(--status-danger);
    border-radius: var(--dp-radius-full);
    font-weight: var(--font-medium);
}

.contact-type[b-coofy7vxd5] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
}

.contact-details[b-coofy7vxd5] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    display: flex;
    flex-wrap: wrap;
    gap: var(--dp-space-3);
}

.contact-details span[b-coofy7vxd5] {
    display: flex;
    align-items: center;
    gap: 2px;
}

.contact-details i[b-coofy7vxd5] {
    font-size: 10px;
}

/* Action Buttons */
.contact-actions[b-coofy7vxd5] {
    display: flex;
    gap: var(--dp-space-1);
    flex-shrink: 0;
}

.icon-btn[b-coofy7vxd5] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--border-subtle);
    border-radius: var(--dp-radius-4);
    cursor: pointer;
    transition: all 0.2s ease;
    background: transparent;
    color: var(--text-secondary);
}

.icon-btn:hover[b-coofy7vxd5] {
    transform: scale(1.05);
}

.icon-btn.edit:hover[b-coofy7vxd5] {
    background: var(--status-info);
    color: white;
    border-color: var(--status-info);
}

.icon-btn.delete:hover[b-coofy7vxd5] {
    background: var(--status-danger);
    color: white;
    border-color: var(--status-danger);
}

/* Dialog Overlay */
.dialog-overlay[b-coofy7vxd5] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    animation: fadeIn-b-coofy7vxd5 0.2s ease;
}

@keyframes fadeIn-b-coofy7vxd5 {
    from { opacity: 0; }
    to { opacity: 1; }
}

.dialog-content[b-coofy7vxd5] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-xl);
    width: 100%;
    max-width: 450px;
    max-height: 90vh;
    overflow: auto;
    animation: slideUp-b-coofy7vxd5 0.25s ease;
}

@keyframes slideUp-b-coofy7vxd5 {
    from { opacity: 0; transform: translateY(16px) scale(0.98); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

.dialog-header[b-coofy7vxd5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-3) var(--dp-space-4);
    border-bottom: 1px solid var(--border-subtle);
    background: linear-gradient(180deg, var(--dp-slate-50) 0%, transparent 100%);
}

.dialog-header h4[b-coofy7vxd5] {
    margin: 0;
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
}

.close-btn[b-coofy7vxd5] {
    background: none;
    border: none;
    cursor: pointer;
    color: var(--text-secondary);
    padding: var(--dp-space-1);
    border-radius: var(--dp-radius-2);
}

.close-btn:hover[b-coofy7vxd5] {
    background: var(--surface-canvas);
    color: var(--text-primary);
}

.dialog-body[b-coofy7vxd5] {
    padding: var(--dp-space-4);
}

.form-grid[b-coofy7vxd5] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-3);
}

.form-group[b-coofy7vxd5] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.form-group.full[b-coofy7vxd5] {
    grid-column: 1 / -1;
}

.form-group label[b-coofy7vxd5] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--dp-slate-700);
}

.form-group input[type="text"][b-coofy7vxd5],
.form-group input[type="tel"][b-coofy7vxd5],
.form-group input[type="email"][b-coofy7vxd5],
.form-group select[b-coofy7vxd5] {
    padding: var(--dp-space-2) var(--dp-space-3);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-md);
    transition: var(--transition-fast);
}

.form-group input:focus[b-coofy7vxd5],
.form-group select:focus[b-coofy7vxd5] {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.1);
}

.checkbox-label[b-coofy7vxd5] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    cursor: pointer;
    font-size: var(--text-md);
    padding: var(--dp-space-2);
    background: rgba(var(--status-danger-rgb), 0.06);
    border-radius: var(--dp-radius-4);
    border: 1px solid rgba(var(--status-danger-rgb), 0.35);
}

.checkbox-label input[type="checkbox"][b-coofy7vxd5] {
    width: 16px;
    height: 16px;
    cursor: pointer;
}

.dialog-footer[b-coofy7vxd5] {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3) var(--dp-space-4);
    border-top: 1px solid var(--border-subtle);
    background: var(--surface-canvas);
}

/* Responsive */
@media (max-width: 500px) {
    .dialog-content[b-coofy7vxd5] {
        margin: var(--dp-space-4);
        max-width: calc(100% - var(--dp-space-8));
    }

    .form-grid[b-coofy7vxd5] {
        grid-template-columns: 1fr;
    }

    .form-group.full[b-coofy7vxd5] {
        grid-column: 1;
    }
}
/* _content/FRP.Web/Components/Shared/Guests/GuestDocuments.razor.rz.scp.css */
/* Guest Documents Component — Karten-Hülle kommt aus _guest-card.css */

/* Loading State */
.loading-state[b-mf6uoj0uly] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-4);
    color: var(--text-secondary);
    font-size: var(--text-md);
}

/* Empty State */
.empty-state[b-mf6uoj0uly] {
    text-align: center;
    padding: var(--dp-space-6) var(--dp-space-4);
    color: var(--text-secondary);
}

.empty-state :deep(i)[b-mf6uoj0uly] {
    font-size: var(--text-3xl);
    margin-bottom: var(--dp-space-2);
    display: block;
    opacity: 0.5;
}

.empty-state p[b-mf6uoj0uly] {
    margin: 0;
    font-weight: var(--font-medium);
}

.empty-state small[b-mf6uoj0uly] {
    font-size: var(--text-sm-plus);
}

/* ==========================================================================
   Dokumenten-Hub: Fortschritt + Soll-Liste + Datei-Zeilen
   ========================================================================== */

/* Fortschritt im Kartenkopf */
.dochub-progress[b-mf6uoj0uly] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    margin-left: var(--dp-space-3);
    min-width: 160px;
}

.dochub-progress__bar[b-mf6uoj0uly] {
    flex: 1;
    height: 8px;
    min-width: 80px;
    border-radius: var(--dp-radius-full);
    background: var(--dp-slate-200);
    overflow: hidden;
}

.dochub-progress__fill[b-mf6uoj0uly] {
    display: block;
    height: 100%;
    border-radius: var(--dp-radius-full);
    background: var(--status-warning);
    transition: width 0.4s ease;
}

.dochub-progress__fill.is-complete[b-mf6uoj0uly] { background: var(--status-success); }

.dochub-progress__text[b-mf6uoj0uly] {
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    color: var(--text-secondary);
    white-space: nowrap;
    font-variant-numeric: tabular-nums;
}

/* Soll-Liste */
.dochub-list[b-mf6uoj0uly] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.dochub-row[b-mf6uoj0uly] {
    border: 1px solid var(--border-subtle);
    border-left-width: 4px;
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-2) var(--dp-space-3);
    background: var(--surface-primary);
}

.dochub-row--missing[b-mf6uoj0uly]     { border-left-color: var(--status-danger); background: rgba(var(--status-danger-rgb), 0.03); }
.dochub-row--issued[b-mf6uoj0uly]      { border-left-color: var(--status-warning); background: rgba(var(--status-warning-rgb), 0.05); }
.dochub-row--present[b-mf6uoj0uly]     { border-left-color: var(--status-success); background: rgba(var(--status-success-rgb), 0.05); }
.dochub-row--notrelevant[b-mf6uoj0uly] { border-left-color: var(--dp-slate-400); background: var(--dp-slate-50); opacity: 0.75; }
.dochub-row--optional[b-mf6uoj0uly]    { border-left-color: var(--dp-slate-200); }

.dochub-row__head[b-mf6uoj0uly] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    flex-wrap: wrap;
}

.dochub-badge[b-mf6uoj0uly] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 1px var(--dp-space-2);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    white-space: nowrap;
    flex-shrink: 0;
    min-width: 90px;
    justify-content: center;
}

.dochub-badge :deep(svg)[b-mf6uoj0uly] { font-size: 13px; }

.dochub-badge--missing[b-mf6uoj0uly]     { background: rgba(var(--status-danger-rgb), 0.12); color: var(--status-danger); }
.dochub-badge--issued[b-mf6uoj0uly]      { background: rgba(var(--status-warning-rgb), 0.16); color: #92400e; }
.dochub-badge--present[b-mf6uoj0uly]     { background: rgba(var(--status-success-rgb), 0.14); color: var(--status-success); }
.dochub-badge--notrelevant[b-mf6uoj0uly] { background: var(--dp-slate-100); color: var(--text-tertiary); }
.dochub-badge--optional[b-mf6uoj0uly]    { background: var(--dp-slate-50); color: var(--text-tertiary); border: 1px dashed var(--dp-slate-200); }

.dochub-row__name[b-mf6uoj0uly] {
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
    color: var(--text-primary);
}

.dochub-required[b-mf6uoj0uly] {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-weight: var(--font-bold);
    color: var(--text-tertiary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-2);
    padding: 0 4px;
}

.dochub-row__actions[b-mf6uoj0uly] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
    margin-left: auto;
    flex-wrap: wrap;
}

.dochub-row__note[b-mf6uoj0uly] {
    margin-top: var(--dp-space-1);
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
    font-style: italic;
}

/* Aktions-Buttons in der Zeile */
.dochub-btn[b-mf6uoj0uly] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    height: 26px;
    padding: 0 var(--dp-space-2);
    border: 1px solid var(--border-subtle);
    border-radius: var(--dp-radius-4);
    background: var(--surface-primary);
    color: var(--text-secondary);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-medium);
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.15s ease;
}

.dochub-btn:hover:not(:disabled)[b-mf6uoj0uly] { border-color: var(--accent); color: var(--accent); }
.dochub-btn:disabled[b-mf6uoj0uly] { opacity: 0.5; cursor: not-allowed; }

.dochub-btn--primary[b-mf6uoj0uly] {
    border-color: rgba(var(--accent-rgb), 0.4);
    color: var(--accent);
    background: rgba(var(--accent-rgb), 0.06);
}

.dochub-btn--muted[b-mf6uoj0uly] { color: var(--text-tertiary); }

/* Datei-Zeilen */
.dochub-files[b-mf6uoj0uly] {
    list-style: none;
    margin: var(--dp-space-2) 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.dochub-file[b-mf6uoj0uly] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-1) var(--dp-space-2);
    border: 1px solid var(--border-subtle);
    border-radius: var(--dp-radius-4);
    background: var(--surface-primary);
    font-size: var(--text-sm-plus);
}

.dochub-file :deep(.dochub-file__icon)[b-mf6uoj0uly] { color: var(--status-danger); font-size: 15px; flex-shrink: 0; }

.dochub-file__name[b-mf6uoj0uly] {
    font-weight: var(--font-medium);
    color: var(--text-primary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 260px;
}

.dochub-file__meta[b-mf6uoj0uly] { color: var(--text-tertiary); white-space: nowrap; }

.dochub-file__notes[b-mf6uoj0uly] {
    color: var(--text-tertiary);
    font-style: italic;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 180px;
}

.dochub-file__actions[b-mf6uoj0uly] {
    display: inline-flex;
    gap: 2px;
    margin-left: auto;
}

.dochub-iconbtn[b-mf6uoj0uly] {
    width: 26px;
    height: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: var(--dp-radius-4);
    background: transparent;
    color: var(--text-tertiary);
    cursor: pointer;
    font-size: 14px;
    transition: all 0.15s ease;
}

.dochub-iconbtn:hover[b-mf6uoj0uly] { background: var(--dp-slate-100); color: var(--accent); }
.dochub-iconbtn--danger:hover[b-mf6uoj0uly] { background: rgba(var(--status-danger-rgb), 0.1); color: var(--status-danger); }

/* Eingebetteter Aufnahme-Bereich */
.dochub-intake[b-mf6uoj0uly] {
    margin-top: var(--dp-space-3);
    padding-top: var(--dp-space-3);
    border-top: 1px dashed var(--border-subtle);
}

/* Sonstige Dokumente */
.dochub-other[b-mf6uoj0uly] { margin-top: var(--dp-space-4); }

.dochub-other__title[b-mf6uoj0uly] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-sm-plus);
    font-weight: var(--font-semibold);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-tertiary);
    margin-bottom: var(--dp-space-2);
}

/* Dialog */
.dialog-overlay[b-mf6uoj0uly] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    animation: fadeIn-b-mf6uoj0uly 0.2s ease;
}

@keyframes fadeIn-b-mf6uoj0uly {
    from { opacity: 0; }
    to { opacity: 1; }
}

.dialog-content[b-mf6uoj0uly] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-xl);
    width: 100%;
    max-width: 450px;
    max-height: 90vh;
    overflow: auto;
    animation: slideUp-b-mf6uoj0uly 0.25s ease;
}

@keyframes slideUp-b-mf6uoj0uly {
    from { opacity: 0; transform: translateY(16px) scale(0.98); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}

.dialog-header[b-mf6uoj0uly] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--dp-space-3) var(--dp-space-4);
    border-bottom: 1px solid var(--border-subtle);
    background: linear-gradient(180deg, var(--dp-slate-50) 0%, transparent 100%);
}

.dialog-header h4[b-mf6uoj0uly] {
    margin: 0;
    font-size: var(--text-lg);
    font-weight: var(--font-semibold);
}

.close-btn[b-mf6uoj0uly] {
    background: none;
    border: none;
    cursor: pointer;
    color: var(--text-secondary);
    padding: var(--dp-space-1);
    border-radius: var(--dp-radius-2);
}

.close-btn:hover[b-mf6uoj0uly] {
    background: var(--surface-canvas);
    color: var(--text-primary);
}

.dialog-body[b-mf6uoj0uly] {
    padding: var(--dp-space-4);
}

.form-stack[b-mf6uoj0uly] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
}

.form-group[b-mf6uoj0uly] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-1);
}

.form-group label[b-mf6uoj0uly] {
    font-size: var(--text-md);
    font-weight: var(--font-medium);
    color: var(--dp-slate-700);
}

.form-group select[b-mf6uoj0uly],
.form-group textarea[b-mf6uoj0uly] {
    padding: var(--dp-space-2) var(--dp-space-3);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    font-size: var(--text-md);
    transition: var(--transition-fast);
    font-family: inherit;
}

.form-group select:focus[b-mf6uoj0uly],
.form-group textarea:focus[b-mf6uoj0uly] {
    outline: none;
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(var(--accent-rgb), 0.1);
}

.form-group textarea[b-mf6uoj0uly] {
    resize: vertical;
    min-height: 60px;
}

/* File Upload Area */
.file-upload-area[b-mf6uoj0uly] {
    position: relative;
    border: 2px dashed var(--border-default);
    border-radius: var(--dp-radius-6);
    padding: var(--dp-space-4);
    text-align: center;
    transition: all 0.2s ease;
}

.file-upload-area:hover[b-mf6uoj0uly] {
    border-color: var(--accent);
    background: rgba(var(--accent-rgb), 0.04);
}

.file-upload-area :deep(input[type="file"])[b-mf6uoj0uly] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.file-placeholder[b-mf6uoj0uly] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--dp-space-1);
    color: var(--text-secondary);
    font-size: var(--text-md);
}

.file-placeholder :deep(i)[b-mf6uoj0uly] {
    font-size: var(--text-2xl);
}

.file-info[b-mf6uoj0uly] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-md);
    color: var(--text-primary);
    font-weight: var(--font-medium);
}

.upload-error[b-mf6uoj0uly] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-2) var(--dp-space-3);
    background: rgba(var(--status-danger-rgb), 0.1);
    border: 1px solid rgba(var(--status-danger-rgb), 0.25);
    border-radius: var(--dp-radius-4);
    color: var(--status-danger);
    font-size: var(--text-md);
}

.dialog-footer[b-mf6uoj0uly] {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3) var(--dp-space-4);
    border-top: 1px solid var(--border-subtle);
    background: var(--surface-canvas);
}

/* Responsive */
@media (max-width: 500px) {
    .dialog-content[b-mf6uoj0uly] {
        margin: var(--dp-space-4);
        max-width: calc(100% - var(--dp-space-8));
    }

    .document-name[b-mf6uoj0uly] {
        max-width: 150px;
    }
}
/* _content/FRP.Web/Components/Shared/Guests/GuestFilter.razor.rz.scp.css */
.filter-section[b-q59o691u2e] {
    background: var(--surface-secondary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    padding: var(--dp-space-4);
    margin-bottom: var(--dp-space-4);
}

/* Responsive */
@media (max-width: 768px) {
    .filter-section .row > div[b-q59o691u2e] {
        margin-bottom: var(--dp-space-2);
    }
}
/* _content/FRP.Web/Components/Shared/Guests/GuestProfileHeader.razor.rz.scp.css */
/* ==========================================================================
   Guest Profile Header — Key-Facts-Kacheln (ohne Avatar) + medizinische Alarme
   ========================================================================== */

.gph[b-pmfisyistr] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-3);
    margin-bottom: var(--dp-space-5);
}

/* ----- Status-Zeile ----- */
.gph__meta[b-pmfisyistr] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-3);
    flex-wrap: wrap;
}

.gph__status[b-pmfisyistr] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
    padding: var(--dp-space-1) var(--dp-space-3);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-sm-plus);
    font-weight: 600;
}
.gph__status-dot[b-pmfisyistr] { width: 8px; height: 8px; border-radius: var(--dp-radius-full); background: currentColor; }
.gph__status--active[b-pmfisyistr] { background: rgba(var(--status-success-rgb), 0.12); color: var(--status-success); }
.gph__status--inactive[b-pmfisyistr] { background: var(--dp-slate-100); color: var(--text-secondary); }
.gph__since[b-pmfisyistr] { font-size: var(--text-sm-plus); color: var(--text-tertiary); }

/* ----- Key-Facts-Kacheln ----- */
.gph__facts[b-pmfisyistr] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
}

.gph__fact[b-pmfisyistr] {
    padding: var(--dp-space-4) var(--dp-space-5);
    border-right: 1px solid var(--dp-slate-100);
}
.gph__fact:last-child[b-pmfisyistr] { border-right: none; }

.gph__fact-label[b-pmfisyistr] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-1);
    font-size: var(--text-sm-plus);
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--text-tertiary);
    margin-bottom: var(--dp-space-2);
}
.gph__fact-label :deep(.ph)[b-pmfisyistr] { font-size: 14px; opacity: 0.8; }

.gph__fact-value[b-pmfisyistr] {
    display: flex;
    align-items: baseline;
    gap: 5px;
    font-size: 1.35rem;
    font-weight: 640;
    letter-spacing: -0.01em;
    line-height: 1.15;
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}
.gph__fact-value small[b-pmfisyistr] { font-size: 0.8rem; font-weight: 500; color: var(--text-tertiary); }
.gph__fact-value--sm[b-pmfisyistr] { font-size: 1.05rem; }
.gph__fact-value--muted[b-pmfisyistr] { color: var(--text-tertiary); }
.gph__fact-sub[b-pmfisyistr] { font-size: var(--text-sm-plus); color: var(--text-tertiary); margin-top: 3px; }

.gph__fact--care .gph__fact-value[b-pmfisyistr] { color: var(--cl); }
.gph__fact-dot[b-pmfisyistr] { width: 11px; height: 11px; border-radius: 50%; background: var(--cl, var(--accent)); display: inline-block; }

/* ----- Medizinische Alarm-Chips ----- */
.gph__alerts[b-pmfisyistr] { display: flex; flex-wrap: wrap; gap: var(--dp-space-2); }

.gph__chip[b-pmfisyistr] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-1);
    padding: 5px var(--dp-space-3);
    border-radius: var(--dp-radius-full);
    font-size: var(--text-sm-plus);
    font-weight: 600;
    white-space: nowrap;
}
.gph__chip :deep(.gph__chip-icon)[b-pmfisyistr] { font-size: 14px; }
.gph__chip--alert[b-pmfisyistr] {
    background: rgba(var(--status-warning-rgb), 0.10);
    border: 1px solid rgba(var(--status-warning-rgb), 0.30);
    color: #92400e;
}

/* ----- Responsive ----- */
@media (max-width: 820px) {
    .gph__facts[b-pmfisyistr] { grid-template-columns: 1fr 1fr; }
    .gph__fact:nth-child(odd)[b-pmfisyistr] { border-right: 1px solid var(--dp-slate-100); }
    .gph__fact:nth-child(-n+2)[b-pmfisyistr] { border-bottom: 1px solid var(--dp-slate-100); }
}
@media (max-width: 480px) {
    .gph__facts[b-pmfisyistr] { grid-template-columns: 1fr; }
    .gph__fact[b-pmfisyistr] { border-right: none; border-bottom: 1px solid var(--dp-slate-100); }
}
/* _content/FRP.Web/Components/Shared/Guests/GuestSchedule.razor.rz.scp.css */
/* Guest Schedule Component Styles */

.schedule-container[b-4hmbmp0mt1] {
    padding: var(--dp-space-4);
}

.schedule-header[b-4hmbmp0mt1] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--dp-space-6);
    padding-bottom: var(--dp-space-3);
    border-bottom: 2px solid var(--border-default);
}

.schedule-header h4[b-4hmbmp0mt1] {
    margin: 0;
    color: var(--text-primary);
    font-weight: var(--font-semibold);
    display: flex;
    align-items: center;
}

.loading-container[b-4hmbmp0mt1] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: var(--dp-space-12);
    text-align: center;
}

.loading-spinner[b-4hmbmp0mt1] {
    width: 30px;
    height: 30px;
    border: 3px solid var(--dp-slate-100);
    border-radius: var(--dp-radius-full);
    border-top: 3px solid var(--accent);
    animation: spin-b-4hmbmp0mt1 1s linear infinite;
    margin-bottom: var(--dp-space-4);
}

@keyframes spin-b-4hmbmp0mt1 {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.empty-state[b-4hmbmp0mt1] {
    text-align: center;
    padding: var(--dp-space-12);
    background: var(--dp-slate-50);
    border-radius: var(--dp-radius-6);
    border: 2px dashed var(--border-default);
}

.empty-state i[b-4hmbmp0mt1] {
    color: var(--text-secondary);
}

.empty-state h5[b-4hmbmp0mt1] {
    color: var(--dp-slate-700);
    margin-bottom: var(--dp-space-2);
}

.schedule-view[b-4hmbmp0mt1] {
    margin-top: var(--dp-space-4);
}

.week-overview[b-4hmbmp0mt1] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: var(--dp-space-4);
    min-height: 400px;
}

.day-column[b-4hmbmp0mt1] {
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-4);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}

.day-header[b-4hmbmp0mt1] {
    background: linear-gradient(135deg, var(--dp-slate-50) 0%, var(--dp-slate-200) 100%);
    padding: var(--dp-space-3);
    border-bottom: 1px solid var(--border-default);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.day-header h6[b-4hmbmp0mt1] {
    margin: 0;
    color: var(--text-primary);
    font-weight: var(--font-semibold);
    font-size: var(--text-md);
}

.day-content[b-4hmbmp0mt1] {
    padding: var(--dp-space-2);
    min-height: 300px;
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.no-schedule[b-4hmbmp0mt1] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: var(--text-secondary);
    font-size: var(--text-sm-plus);
    text-align: center;
}

.no-schedule i[b-4hmbmp0mt1] {
    font-size: var(--text-3xl);
    margin-bottom: var(--dp-space-2);
}

.schedule-item[b-4hmbmp0mt1] {
    background: var(--surface-primary);
    border: 1px solid var(--border-default);
    border-radius: var(--dp-radius-2);
    padding: var(--dp-space-3);
    position: relative;
    transition: var(--transition-base);
}

.schedule-item:hover[b-4hmbmp0mt1] {
    box-shadow: var(--shadow-md);
    transform: translateY(-1px);
}

.schedule-item.slot-present[b-4hmbmp0mt1] {
    border-left: 4px solid var(--status-success);
    background: linear-gradient(135deg, #f8fff9 0%, var(--surface-primary) 100%);
}

.schedule-item.slot-absent[b-4hmbmp0mt1] {
    border-left: 4px solid var(--status-danger);
    background: linear-gradient(135deg, #fff5f5 0%, var(--surface-primary) 100%);
}

.schedule-item.slot-planned-absent[b-4hmbmp0mt1] {
    border-left: 4px solid var(--status-warning);
    background: linear-gradient(135deg, #fffef8 0%, var(--surface-primary) 100%);
}


.schedule-slot[b-4hmbmp0mt1] {
    font-size: var(--text-sm-plus);
    color: var(--dp-slate-700);
    font-weight: var(--font-medium);
    margin-bottom: var(--dp-space-2);
}

.schedule-notes[b-4hmbmp0mt1] {
    font-size: var(--text-sm-plus);
    color: var(--text-secondary);
    font-style: italic;
    margin-bottom: var(--dp-space-2);
    background: var(--dp-slate-50);
    padding: var(--dp-space-1);
    border-radius: var(--dp-radius-2);
}

.schedule-actions[b-4hmbmp0mt1] {
    display: flex;
    gap: var(--dp-space-1);
    justify-content: flex-end;
    margin-top: var(--dp-space-2);
}

/* Dialog Styles */
.dialog-form[b-4hmbmp0mt1] {
    padding: var(--dp-space-4) 0;
}

.form-row[b-4hmbmp0mt1] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-4);
    margin-bottom: var(--dp-space-4);
}

.form-group[b-4hmbmp0mt1] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-2);
}

.form-group label[b-4hmbmp0mt1] {
    font-weight: var(--font-semibold);
    color: var(--text-primary);
    font-size: var(--text-md);
    margin: 0;
}

.checkbox-group[b-4hmbmp0mt1] {
    flex-direction: row;
    align-items: center;
    gap: var(--dp-space-3);
    padding: var(--dp-space-2) 0;
}

.checkbox-group label[b-4hmbmp0mt1] {
    font-weight: var(--font-medium);
    margin: 0;
}

.dialog-footer[b-4hmbmp0mt1] {
    display: flex;
    justify-content: flex-end;
    gap: var(--dp-space-4);
    padding-top: var(--dp-space-4);
}

/* Validation Messages */
[b-4hmbmp0mt1] .validation-message {
    color: var(--status-danger);
    font-size: var(--text-sm-plus);
    margin-top: var(--dp-space-1);
}

/* Syncfusion Customizations */
[b-4hmbmp0mt1] .e-input-group {
    border-radius: var(--dp-radius-2);
    border: 1px solid var(--border-default);
}

[b-4hmbmp0mt1] .e-input-group:hover {
    border-color: var(--accent);
}

[b-4hmbmp0mt1] .e-input-group.e-input-focus {
    border-color: var(--accent);
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

[b-4hmbmp0mt1] .e-btn.e-small {
    padding: var(--dp-space-1) var(--dp-space-3);
    font-size: var(--text-sm-plus);
}

[b-4hmbmp0mt1] .e-dialog .e-dlg-header {
    background: linear-gradient(135deg, var(--dp-slate-50) 0%, var(--dp-slate-200) 100%);
    border-bottom: 1px solid var(--border-default);
}

[b-4hmbmp0mt1] .e-dialog .e-dlg-content {
    padding: var(--dp-space-4);
}

/* Time Slot Color Classes */
.slot-present .schedule-slot[b-4hmbmp0mt1] {
    color: var(--status-success);
    font-weight: var(--font-semibold);
}

.slot-absent .schedule-slot[b-4hmbmp0mt1] {
    color: var(--status-danger);
    font-weight: var(--font-semibold);
}

.slot-planned-absent .schedule-slot[b-4hmbmp0mt1] {
    color: var(--status-warning);
    font-weight: var(--font-semibold);
}

/* Responsive Design */
@media (max-width: 1200px) {
    .week-overview[b-4hmbmp0mt1] {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 768px) {
    .week-overview[b-4hmbmp0mt1] {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--dp-space-3);
    }

    .schedule-header[b-4hmbmp0mt1] {
        flex-direction: column;
        gap: var(--dp-space-4);
        align-items: stretch;
        text-align: center;
    }

    .form-row[b-4hmbmp0mt1] {
        grid-template-columns: 1fr;
    }

    .day-content[b-4hmbmp0mt1] {
        min-height: 200px;
    }
}

@media (max-width: 576px) {
    .week-overview[b-4hmbmp0mt1] {
        grid-template-columns: 1fr;
    }

    .schedule-container[b-4hmbmp0mt1] {
        padding: var(--dp-space-2);
    }

    .schedule-item[b-4hmbmp0mt1] {
        padding: var(--dp-space-2);
    }

    .dialog-footer[b-4hmbmp0mt1] {
        flex-direction: column;
    }

    .day-header[b-4hmbmp0mt1] {
        padding: var(--dp-space-2);
    }

    .day-content[b-4hmbmp0mt1] {
        padding: var(--dp-space-2);
        min-height: 150px;
    }
}
/* _content/FRP.Web/Components/Shared/Guests/GuestSwitcher.razor.rz.scp.css */
.guest-switcher[b-t34clg0299] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.guest-switcher__label[b-t34clg0299] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    font-size: .8rem;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
}

.guest-switcher__box[b-t34clg0299] {
    min-width: 220px;
}
/* _content/FRP.Web/Components/Shared/Guests/GuestTabsLayout.razor.rz.scp.css */
/* Guest Tabs Layout — schlanke custom Tabs + Tab-Panel-Layouts.
   Karten-/Feld-Sprache liegt global in components/_guest-card.css. */

.guest-tabs-container[b-c2zrhdgncp] {
    width: 100%;
}

/* ===== Custom Tabs (ersetzen SfTab) ===== */
.guest-tabs[b-c2zrhdgncp] {
    display: flex;
    gap: 2px;
    margin-bottom: var(--dp-space-4);
    border-bottom: 1px solid var(--dp-slate-200);
    overflow-x: auto;
}

.guest-tab[b-c2zrhdgncp] {
    display: inline-flex;
    align-items: center;
    gap: var(--dp-space-2);
    padding: var(--dp-space-3) var(--dp-space-4);
    font-size: var(--text-md);
    font-weight: 600;
    color: var(--text-tertiary);
    background: none;
    border: none;
    border-bottom: 2.5px solid transparent;
    margin-bottom: -1px;
    cursor: pointer;
    white-space: nowrap;
    font-family: inherit;
    transition: color 0.15s, border-color 0.15s;
}
.guest-tab:hover[b-c2zrhdgncp] { color: var(--text-secondary); }
.guest-tab.is-active[b-c2zrhdgncp] { color: var(--accent); border-bottom-color: var(--accent); }
.guest-tab i[b-c2zrhdgncp] { font-size: 1.05em; }

.guest-tab__count[b-c2zrhdgncp] {
    font-size: 11.5px;
    font-weight: 700;
    background: var(--dp-slate-100);
    color: var(--text-tertiary);
    padding: 1px 7px;
    border-radius: var(--dp-radius-full);
    line-height: 1.5;
    font-variant-numeric: tabular-nums;
}
.guest-tab.is-active .guest-tab__count[b-c2zrhdgncp] { background: var(--accent-light); color: var(--accent); }

.tab-content-padding[b-c2zrhdgncp] {
    padding: var(--dp-space-1) 0 0;
    animation: guest-fade-b-c2zrhdgncp 0.22s ease;
}
@keyframes guest-fade-b-c2zrhdgncp { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }

/* ===== Medizin & Kontakte: 2-Spalten ===== */
.medical-contacts-grid[b-c2zrhdgncp] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-4);
    align-items: start;
}
.medical-column[b-c2zrhdgncp] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}
.contacts-column[b-c2zrhdgncp] { min-height: 100%; }
.contacts-column[b-c2zrhdgncp] (.contacts-container) { padding: 0; }

/* ===== Verwaltung: 2-Spalten ===== */
.verwaltung-grid[b-c2zrhdgncp] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--dp-space-4);
    align-items: start;
}
.verwaltung-column[b-c2zrhdgncp] {
    display: flex;
    flex-direction: column;
    gap: var(--dp-space-4);
}

.radio-group[b-c2zrhdgncp] {
    display: flex;
    gap: var(--dp-space-4);
    margin-bottom: var(--dp-space-1);
}

/* Badge-Basis (Pflegegrad-/Status-/Abrechnungs-Badges nutzen globale Farbklassen) */
.badge[b-c2zrhdgncp] {
    font-size: var(--text-sm-plus);
    font-weight: 600;
    padding: 3px var(--dp-space-2);
    border-radius: var(--dp-radius-full);
}

.text-success[b-c2zrhdgncp] { color: var(--status-success) !important; }
.text-warning[b-c2zrhdgncp] { color: var(--status-warning) !important; }
.text-muted[b-c2zrhdgncp] { color: var(--text-secondary) !important; }

/* ===== Responsive ===== */
@media (max-width: 992px) {
    .medical-contacts-grid[b-c2zrhdgncp],
    .verwaltung-grid[b-c2zrhdgncp] {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    .tab-content-padding[b-c2zrhdgncp] { animation: none; }
}
/* _content/FRP.Web/Components/Shared/Guests/GuestWeeklyPlanner.razor.rz.scp.css */
/* Guest Weekly Planner (edit mode)
   Karten-Hülle kommt aus components/_guest-card.css.
   Kachel-Optik bewusst an GuestWeeklyScheduleView (Ansicht) angeglichen. */

/* Loading State */
.loading-state[b-qvao2k5bgf] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-2);
    color: var(--text-secondary);
    font-size: var(--text-md);
}

/* Grid Layout */
.weekdays-elegant-grid[b-qvao2k5bgf] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: var(--dp-space-4);
}

/* Weekday Cards */
.weekday-card[b-qvao2k5bgf] {
    background: var(--dp-slate-50);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    padding: var(--dp-space-4);
    cursor: pointer;
    transition: var(--transition-base);
    position: relative;
}

.weekday-card:hover[b-qvao2k5bgf] {
    border-color: var(--accent);
    box-shadow: var(--shadow-sm);
}

.weekday-card.scheduled[b-qvao2k5bgf] {
    background: var(--surface-primary);
    border-color: rgba(var(--status-success-rgb), 0.45);
    box-shadow: var(--shadow-sm);
}

.weekday-card.scheduled:hover[b-qvao2k5bgf] {
    border-color: var(--status-success);
    box-shadow: var(--shadow-md);
}

/* Card Content */
.weekday-content[b-qvao2k5bgf] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-4);
}

.weekday-icon[b-qvao2k5bgf] {
    font-size: var(--text-2xl);
    color: var(--dp-slate-400);
    transition: var(--transition-base);
    flex-shrink: 0;
}

.weekday-card.scheduled .weekday-icon[b-qvao2k5bgf] {
    color: var(--status-success);
}

.weekday-card:hover .weekday-icon[b-qvao2k5bgf] {
    color: var(--accent);
}

.weekday-card.scheduled:hover .weekday-icon[b-qvao2k5bgf] {
    color: var(--status-success);
}

.weekday-info[b-qvao2k5bgf] {
    flex: 1;
}

.weekday-name[b-qvao2k5bgf] {
    font-weight: var(--font-semibold);
    color: var(--text-primary);
    font-size: var(--text-lg);
    margin-bottom: var(--dp-space-1);
}

.weekday-short[b-qvao2k5bgf] {
    font-size: var(--text-sm-plus);
    color: var(--text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.weekday-status[b-qvao2k5bgf] {
    text-align: right;
}

.status-badge[b-qvao2k5bgf] {
    font-size: var(--text-sm-plus);
    padding: var(--dp-space-1) var(--dp-space-2);
    border-radius: var(--dp-radius-full);
    font-weight: var(--font-medium);
    transition: var(--transition-base);
}

.status-badge.active[b-qvao2k5bgf] {
    background-color: rgba(var(--status-success-rgb), 0.12);
    color: var(--status-success);
}

.status-badge.inactive[b-qvao2k5bgf] {
    background-color: var(--dp-slate-100);
    color: var(--text-tertiary);
}

/* Notes */
.weekday-notes[b-qvao2k5bgf] {
    margin-top: var(--dp-space-3);
    padding: var(--dp-space-2);
    background: var(--accent-light);
    border-radius: var(--dp-radius-2);
    font-size: var(--text-md);
    color: var(--accent);
    border-left: 3px solid var(--accent);
}

/* Actions */
.planner-actions[b-qvao2k5bgf] {
    display: flex;
    align-items: center;
    margin-top: var(--dp-space-4);
    padding-top: var(--dp-space-4);
    border-top: 1px solid var(--dp-slate-100);
    gap: var(--dp-space-2);
}

/* Responsive */
@media (max-width: 768px) {
    .weekdays-elegant-grid[b-qvao2k5bgf] {
        grid-template-columns: 1fr;
    }

    .weekday-content[b-qvao2k5bgf] {
        gap: var(--dp-space-3);
    }

    .weekday-icon[b-qvao2k5bgf] {
        font-size: var(--text-xl);
    }
}

/* Group Selection */
.group-selection[b-qvao2k5bgf] {
    margin-top: var(--dp-space-3);
    padding: var(--dp-space-3);
    background: var(--surface-primary);
    border-radius: var(--dp-radius-2);
    border: 1px solid var(--dp-slate-200);
}

.group-label[b-qvao2k5bgf] {
    display: flex;
    align-items: center;
    margin-bottom: var(--dp-space-2);
    color: var(--text-secondary);
    font-weight: var(--font-medium);
}

/* Transport Selection */
.transport-selection[b-qvao2k5bgf] {
    margin-top: var(--dp-space-3);
    padding: var(--dp-space-3);
    background: var(--surface-primary);
    border-radius: var(--dp-radius-2);
    border: 1px solid var(--dp-slate-200);
}

.transport-label[b-qvao2k5bgf] {
    display: flex;
    align-items: center;
    margin-bottom: var(--dp-space-2);
    color: var(--text-secondary);
    font-weight: var(--font-medium);
}

.transport-buttons[b-qvao2k5bgf] {
    display: flex;
    gap: var(--dp-space-1);
    flex-wrap: wrap;
}

.transport-buttons .e-btn[b-qvao2k5bgf] {
    min-width: 32px;
    height: 32px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.transport-buttons .e-btn i[b-qvao2k5bgf] {
    font-size: var(--text-md);
}

.transport-buttons .e-btn:hover[b-qvao2k5bgf] {
    box-shadow: var(--shadow-sm);
}

/* Attendance Selection */
.attendance-selection[b-qvao2k5bgf] {
    margin-top: var(--dp-space-3);
    padding: var(--dp-space-3);
    background: var(--surface-primary);
    border-radius: var(--dp-radius-2);
    border: 1px solid var(--dp-slate-200);
}

.attendance-label[b-qvao2k5bgf] {
    display: flex;
    align-items: center;
    margin-bottom: var(--dp-space-2);
    color: var(--text-secondary);
    font-weight: var(--font-medium);
}

@media (max-width: 576px) {
    .planner-actions[b-qvao2k5bgf] {
        flex-direction: column;
        align-items: stretch;
    }

    .planner-actions .e-btn[b-qvao2k5bgf] {
        width: 100%;
        margin: var(--dp-space-1) 0;
    }

    .transport-buttons[b-qvao2k5bgf] {
        justify-content: center;
    }

    .transport-buttons .e-btn[b-qvao2k5bgf] {
        min-width: 36px;
        height: 36px;
    }
}
/* _content/FRP.Web/Components/Shared/Guests/GuestWeeklyScheduleView.razor.rz.scp.css */
/* Guest Weekly Schedule (read-only view)
   Karten-Hülle kommt aus components/_guest-card.css */

/* Loading State */
.loading-state[b-osbrvzba7g] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--dp-space-2);
    color: var(--text-secondary);
    font-size: var(--text-md);
}

/* Empty State */
.empty-state[b-osbrvzba7g] {
    text-align: center;
    padding: var(--dp-space-6) var(--dp-space-4);
    color: var(--text-secondary);
}

.empty-state i[b-osbrvzba7g] {
    font-size: var(--text-3xl);
    margin-bottom: var(--dp-space-2);
    display: block;
    opacity: 0.5;
}

.empty-state p[b-osbrvzba7g] {
    margin: 0;
    font-weight: var(--font-medium);
}

.empty-state small[b-osbrvzba7g] {
    font-size: var(--text-sm-plus);
}

/* Weekday Tiles */
.schedule-grid[b-osbrvzba7g] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: var(--dp-space-4);
}

.schedule-day[b-osbrvzba7g] {
    background: var(--dp-slate-50);
    border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-6);
    padding: var(--dp-space-4);
    transition: var(--transition-base);
}

.schedule-day.scheduled[b-osbrvzba7g] {
    background: var(--surface-primary);
    border-color: rgba(var(--status-success-rgb), 0.45);
    box-shadow: var(--shadow-sm);
}

.schedule-day.not-scheduled[b-osbrvzba7g] {
    opacity: 0.65;
}

.day-header[b-osbrvzba7g] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--dp-space-2);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}

.day-status-icon[b-osbrvzba7g] {
    font-size: var(--text-lg);
}

.day-status-icon--on[b-osbrvzba7g] {
    color: var(--status-success);
}

.day-status-icon--off[b-osbrvzba7g] {
    color: var(--dp-slate-400);
}

.day-details[b-osbrvzba7g] {
    font-size: var(--text-md);
}

.day-info[b-osbrvzba7g] {
    display: flex;
    align-items: center;
    padding: var(--dp-space-1) 0;
    color: var(--text-secondary);
}

.day-info i[b-osbrvzba7g] {
    color: var(--accent);
}

.attendance-info[b-osbrvzba7g] {
    font-weight: var(--font-medium);
}

@media (max-width: 768px) {
    .schedule-grid[b-osbrvzba7g] {
        grid-template-columns: 1fr;
    }
}
/* _content/FRP.Web/Components/Shared/Guests/GuestWeekSchedule.razor.rz.scp.css */
.week-schedule-container[b-6eigv8i02y] {
    padding: var(--dp-space-4);
    background-color: var(--dp-slate-50);
    border-radius: var(--dp-radius-4);
}

.schedule-header[b-6eigv8i02y] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: var(--dp-space-4);
    border-bottom: 2px solid var(--border-default);
}

.schedule-header h4[b-6eigv8i02y] {
    color: var(--dp-slate-700);
    font-weight: var(--font-semibold);
}

/* Week Grid Layout */
.week-grid[b-6eigv8i02y] {
    background: var(--surface-primary);
    border-radius: var(--dp-radius-4);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
}

.week-grid-header[b-6eigv8i02y] {
    display: grid;
    grid-template-columns: 180px repeat(5, 1fr);
    background-color: var(--dp-slate-50);
    border-bottom: 2px solid var(--border-default);
}

.time-slot-header[b-6eigv8i02y] {
    padding: var(--dp-space-4);
    font-weight: var(--font-semibold);
    color: var(--text-secondary);
    border-right: 1px solid var(--border-default);
}

.day-header[b-6eigv8i02y] {
    padding: var(--dp-space-4);
    text-align: center;
    font-weight: var(--font-semibold);
    color: var(--dp-slate-700);
    border-right: 1px solid var(--border-default);
}

.day-header:last-child[b-6eigv8i02y] {
    border-right: none;
}

/* Grid Body */
.week-grid-body[b-6eigv8i02y] {
    background: var(--surface-primary);
}

.time-slot-row[b-6eigv8i02y] {
    display: grid;
    grid-template-columns: 180px repeat(5, 1fr);
    border-bottom: 1px solid var(--border-default);
}

.time-slot-row:last-child[b-6eigv8i02y] {
    border-bottom: none;
}

.time-slot-label[b-6eigv8i02y] {
    padding: var(--dp-space-4);
    font-weight: var(--font-medium);
    color: var(--text-secondary);
    background-color: var(--dp-slate-50);
    border-right: 1px solid var(--border-default);
    display: flex;
    align-items: center;
}

/* Schedule Cells */
.schedule-cell[b-6eigv8i02y] {
    padding: var(--dp-space-4);
    min-height: 80px;
    border-right: 1px solid var(--border-default);
    cursor: pointer;
    transition: var(--transition-base);
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.schedule-cell:last-child[b-6eigv8i02y] {
    border-right: none;
}

.schedule-cell:hover[b-6eigv8i02y] {
    background-color: var(--dp-slate-50);
}

.schedule-cell.has-schedule[b-6eigv8i02y] {
    background-color: var(--status-info);
}

/* Schedule Indicators */
.schedule-indicator[b-6eigv8i02y] {
    font-size: var(--text-2xl);
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
}

.add-schedule-hint[b-6eigv8i02y] {
    opacity: 0;
    transition: var(--transition-base);
    color: var(--text-secondary);
    font-size: var(--text-xl);
}

.schedule-cell:hover .add-schedule-hint[b-6eigv8i02y] {
    opacity: 0.5;
}

/* Time Slot Colors */
.slot-present[b-6eigv8i02y] {
    color: var(--status-success);
}

.slot-absent[b-6eigv8i02y] {
    color: var(--status-danger);
}

.slot-planned-absent[b-6eigv8i02y] {
    color: var(--status-warning);
}

/* Legend */
.schedule-legend[b-6eigv8i02y] {
    display: flex;
    gap: var(--dp-space-8);
    justify-content: center;
    padding: var(--dp-space-4);
    background: var(--surface-primary);
    border-radius: var(--dp-radius-4);
}

.legend-item[b-6eigv8i02y] {
    display: flex;
    align-items: center;
    gap: var(--dp-space-2);
    font-size: var(--text-md);
    color: var(--text-secondary);
}

.legend-color[b-6eigv8i02y] {
    width: 20px;
    height: 20px;
    border-radius: var(--dp-radius-full);
    display: inline-block;
}

.legend-color.slot-present[b-6eigv8i02y] {
    background-color: var(--status-success);
}

.legend-color.slot-absent[b-6eigv8i02y] {
    background-color: var(--status-danger);
}

.legend-color.slot-planned-absent[b-6eigv8i02y] {
    background-color: var(--status-warning);
}

/* Dialog Styles */
.dialog-header[b-6eigv8i02y] {
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--dp-slate-700);
}

.schedule-form[b-6eigv8i02y] {
    padding: var(--dp-space-4) 0;
}

.form-info[b-6eigv8i02y] {
    margin-bottom: var(--dp-space-4);
}

.form-info .alert[b-6eigv8i02y] {
    margin-bottom: 0;
    padding: var(--dp-space-3);
    font-size: var(--text-md);
}

.time-slot-item[b-6eigv8i02y] {
    display: flex;
    align-items: center;
    padding: var(--dp-space-2);
}

.dialog-footer[b-6eigv8i02y] {
    display: flex;
    gap: var(--dp-space-2);
    justify-content: flex-end;
}

/* Responsive Design */
@media (max-width: 768px) {
    .week-grid-header[b-6eigv8i02y],
    .time-slot-row[b-6eigv8i02y] {
        grid-template-columns: 120px repeat(5, 1fr);
    }

    .time-slot-label[b-6eigv8i02y] {
        font-size: var(--text-md);
        padding: var(--dp-space-3);
    }

    .schedule-cell[b-6eigv8i02y] {
        min-height: 60px;
        padding: var(--dp-space-3);
    }

    .schedule-indicator[b-6eigv8i02y] {
        font-size: var(--text-xl);
    }
}
/* _content/FRP.Web/Components/Shared/PdfPreview/PdfPreviewDialog.razor.rz.scp.css */
[b-i1elbxzm8k] .pdf-preview-dialog {
    max-width: 95vw;
}

[b-i1elbxzm8k] .pdf-preview-dialog .e-dlg-content {
    padding: 0;
    overflow: hidden;
}

.pdf-preview-header[b-i1elbxzm8k] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
}

.pdf-preview-content[b-i1elbxzm8k] {
    height: calc(90vh - 130px);
    width: 100%;
    position: relative;
}

.pdf-loading[b-i1elbxzm8k] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.85);
    z-index: 10;
}

.pdf-preview-footer[b-i1elbxzm8k] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

.pdf-preview-footer .e-btn[b-i1elbxzm8k] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
/* _content/FRP.Web/Components/Shared/Sis/BerichteblattPanel.razor.rz.scp.css */
.rep-panel[b-qluurdae27] { display: flex; flex-direction: column; gap: var(--dp-space-4); }

.rep-filter[b-qluurdae27] { display: flex; flex-wrap: wrap; gap: var(--dp-space-2); }
.rep-chip[b-qluurdae27] {
    border: 1px solid var(--dp-slate-300); background: transparent; cursor: pointer;
    font-size: .78rem; font-weight: 600; padding: .2rem .6rem; border-radius: var(--dp-radius-pill, 999px);
    color: var(--text-secondary);
}
.rep-chip--on[b-qluurdae27] { outline: 2px solid var(--accent); }
.rep-chip--warning[b-qluurdae27] { background: rgba(var(--status-warning-rgb), .15); color: var(--status-warning); border-color: transparent; }
.rep-chip--info[b-qluurdae27]    { background: rgba(var(--status-info-rgb), .15);    color: var(--status-info);    border-color: transparent; }
.rep-chip--danger[b-qluurdae27]  { background: rgba(var(--status-danger-rgb), .15);  color: var(--status-danger);  border-color: transparent; }
.rep-chip--success[b-qluurdae27] { background: rgba(var(--status-success-rgb), .15); color: var(--status-success); border-color: transparent; }
.rep-chip--accent[b-qluurdae27]  { background: var(--accent-light); color: var(--dp-blue-800); border-color: transparent; }
.rep-chip--muted[b-qluurdae27]   { background: var(--dp-slate-100, rgba(0,0,0,.05)); color: var(--text-secondary); border-color: transparent; }

.rep-timeline[b-qluurdae27] { display: flex; flex-direction: column; gap: var(--dp-space-3); }
.rep-entry[b-qluurdae27] {
    border: 1px solid var(--dp-slate-200); border-left: 3px solid var(--accent);
    border-radius: var(--dp-radius-md); padding: var(--dp-space-3); background: var(--surface-primary);
}
.rep-entry__head[b-qluurdae27] { display: flex; align-items: center; gap: var(--dp-space-2); flex-wrap: wrap; margin-bottom: var(--dp-space-2); }
.rep-entry__date[b-qluurdae27] { font-weight: 600; color: var(--text-primary); }
.rep-entry__author[b-qluurdae27] { color: var(--text-tertiary); font-size: .85rem; }
.rep-entry__bezug[b-qluurdae27], .rep-entry__related[b-qluurdae27] { font-size: .82rem; color: var(--text-secondary); margin-bottom: var(--dp-space-1); }
.rep-entry__text[b-qluurdae27] { color: var(--text-primary); white-space: pre-wrap; }
/* _content/FRP.Web/Components/Shared/Sis/EvaluationEditor.razor.rz.scp.css */
.eval-editor[b-rcdc61evak] { display: flex; flex-direction: column; gap: var(--dp-space-4); }
.eval-editor__bar[b-rcdc61evak] { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: var(--dp-space-3); }
.eval-editor__title[b-rcdc61evak] { display: flex; align-items: center; gap: var(--dp-space-3); font-weight: 600; color: var(--text-primary); flex-wrap: wrap; }
.eval-editor__actions[b-rcdc61evak] { display: flex; gap: var(--dp-space-2); flex-wrap: wrap; }
.eval-editor__status[b-rcdc61evak] { font-size: .75rem; font-weight: 700; padding: .15rem .5rem; border-radius: var(--dp-radius-sm); text-transform: uppercase; letter-spacing: .02em; }
.eval-editor__status--draft[b-rcdc61evak] { background: rgba(var(--status-warning-rgb), .15); color: var(--status-warning); }
.eval-editor__status--done[b-rcdc61evak] { background: rgba(var(--status-success-rgb), .15); color: var(--status-success); }
.eval-editor__chip[b-rcdc61evak] { font-size: .75rem; padding: .15rem .5rem; border-radius: var(--dp-radius-sm); background: var(--accent-light); color: var(--dp-blue-800); }
.eval-editor__chip--warn[b-rcdc61evak] { background: rgba(var(--status-warning-rgb), .15); color: var(--status-warning); }
.eval-editor__layout[b-rcdc61evak] { display: grid; grid-template-columns: 220px 1fr; gap: var(--dp-space-5); align-items: start; }
@media (max-width: 900px) { .eval-editor__layout[b-rcdc61evak] { grid-template-columns: 1fr; } }
.eval-switch[b-rcdc61evak] { display: inline-flex; align-items: center; gap: .4rem; font-size: .9rem; color: var(--text-secondary); }
.eval-item[b-rcdc61evak] { border: 1px solid var(--dp-slate-200); border-radius: var(--dp-radius-md); padding: var(--dp-space-3); margin-bottom: var(--dp-space-3); background: var(--surface-primary); }
.eval-item__measure[b-rcdc61evak] { font-weight: 600; color: var(--text-primary); margin-bottom: var(--dp-space-2); }
.eval-chip--success[b-rcdc61evak] { color: var(--status-success); }
.eval-chip--warning[b-rcdc61evak] { color: var(--status-warning); }
.eval-chip--danger[b-rcdc61evak] { color: var(--status-danger); }
.eval-chip--muted[b-rcdc61evak] { color: var(--text-secondary); }
.eval-editor__chip--ok[b-rcdc61evak] { background: rgba(var(--status-success-rgb), .15); color: var(--status-success); }
.eval-item__deviation-hint[b-rcdc61evak] { display: inline-flex; align-items: center; gap: .3rem; margin-top: var(--dp-space-2); margin-bottom: var(--dp-space-1); padding: .2rem .55rem; border-radius: var(--dp-radius-sm); font-size: .8rem; font-weight: 600; background: rgba(var(--status-warning-rgb), .13); color: var(--status-warning); }
.eval-reports[b-rcdc61evak] { margin-top: var(--dp-space-2); }
.eval-reports summary[b-rcdc61evak] { cursor: pointer; font-size: .82rem; color: var(--text-secondary); font-weight: 600; }
.eval-reports__list[b-rcdc61evak] { list-style: none; margin: var(--dp-space-2) 0 0; padding: 0; display: flex; flex-direction: column; gap: var(--dp-space-1); }
.eval-reports__list li[b-rcdc61evak] { display: flex; gap: var(--dp-space-2); font-size: .82rem; }
.eval-reports__date[b-rcdc61evak] { color: var(--text-tertiary); white-space: nowrap; }
.eval-reports__cat[b-rcdc61evak] { color: var(--accent); font-weight: 600; white-space: nowrap; }
.eval-reports__text[b-rcdc61evak] { color: var(--text-primary); }
/* _content/FRP.Web/Components/Shared/Sis/EvaluationPanel.razor.rz.scp.css */
.eval-panel[b-5wxh6u2gnm] { display: flex; flex-direction: column; gap: var(--dp-space-3); }
.eval-panel__bar[b-5wxh6u2gnm] { display: flex; align-items: center; justify-content: space-between; }
.eval-panel__title[b-5wxh6u2gnm] { font-weight: 600; color: var(--text-primary); font-size: 1.05rem; }
.eval-history[b-5wxh6u2gnm] { display: flex; flex-direction: column; gap: var(--dp-space-2); }
.eval-history__item[b-5wxh6u2gnm] { width: 100%; text-align: left; cursor: pointer; border: 1px solid var(--dp-slate-200); border-radius: var(--dp-radius-md); padding: var(--dp-space-3); background: var(--surface-primary); }
.eval-history__item:hover[b-5wxh6u2gnm] { border-color: var(--accent); }
.eval-history__main[b-5wxh6u2gnm] { display: flex; align-items: center; gap: var(--dp-space-3); margin-bottom: var(--dp-space-1); }
.eval-history__date[b-5wxh6u2gnm] { font-weight: 600; color: var(--text-primary); }
.eval-history__status[b-5wxh6u2gnm] { font-size: .75rem; font-weight: 700; padding: .15rem .5rem; border-radius: var(--dp-radius-sm); }
.eval-history__status.is-draft[b-5wxh6u2gnm] { background: rgba(var(--status-warning-rgb), .15); color: var(--status-warning); }
.eval-history__status.is-done[b-5wxh6u2gnm] { background: rgba(var(--status-success-rgb), .15); color: var(--status-success); }
.eval-history__reason[b-5wxh6u2gnm] { color: var(--text-tertiary); font-size: .85rem; }
.eval-history__meta[b-5wxh6u2gnm] { display: flex; gap: var(--dp-space-3); color: var(--text-tertiary); font-size: .85rem; }
.eval-history__warn[b-5wxh6u2gnm] { color: var(--status-warning); font-weight: 600; }
/* _content/FRP.Web/Components/Shared/Sis/MeasurePlanEditor.razor.rz.scp.css */
.mp-editor[b-ioea9wpotl] { display: flex; flex-direction: column; gap: var(--dp-space-4); }

.mp-editor__bar[b-ioea9wpotl] {
    display: flex; align-items: center; justify-content: space-between;
    flex-wrap: wrap; gap: var(--dp-space-3);
}
.mp-editor__title[b-ioea9wpotl] { display: flex; align-items: center; gap: var(--dp-space-3); font-weight: 600; color: var(--text-primary); }
.mp-editor__actions[b-ioea9wpotl] { display: flex; gap: var(--dp-space-2); flex-wrap: wrap; }

.mp-editor__status[b-ioea9wpotl] {
    font-size: .75rem; font-weight: 700; padding: .15rem .5rem;
    border-radius: var(--dp-radius-sm); text-transform: uppercase; letter-spacing: .02em;
}
.mp-editor__status--draft[b-ioea9wpotl] { background: rgba(var(--status-warning-rgb), .15); color: var(--status-warning); }
.mp-editor__status--done[b-ioea9wpotl] { background: rgba(var(--status-success-rgb), .15); color: var(--status-success); }

.mp-editor__chip[b-ioea9wpotl] {
    font-size: .75rem; padding: .15rem .5rem; border-radius: var(--dp-radius-sm);
    background: var(--accent-light); color: var(--dp-blue-800);
}

.mp-editor__single[b-ioea9wpotl] { display: flex; flex-direction: column; gap: var(--dp-space-4); max-width: 960px; }
.mp-coremessage__hint[b-ioea9wpotl] { color: var(--text-tertiary); font-size: var(--text-sm); margin: 0 0 var(--dp-space-2); }
.mp-row[b-ioea9wpotl] { border: 1px solid var(--dp-slate-100); border-radius: var(--dp-radius-4); padding: var(--dp-space-3); margin-bottom: var(--dp-space-3); }
.mp-row--suggestion[b-ioea9wpotl] { border-style: dashed; background: var(--dp-slate-100); }
.mp-row__grid[b-ioea9wpotl] { display: grid; grid-template-columns: 140px 1fr 180px; gap: var(--dp-space-3); align-items: start; }
.mp-row__actions[b-ioea9wpotl] { display: flex; gap: var(--dp-space-2); margin-top: var(--dp-space-2); }
.mp-select[b-ioea9wpotl] { width: 100%; padding: var(--dp-space-2); border: 1px solid var(--dp-slate-200); border-radius: var(--dp-radius-4); background: var(--surface-primary); }
@media (max-width: 720px) { .mp-row__grid[b-ioea9wpotl] { grid-template-columns: 1fr; } }

.mp-row__suggestion-head[b-ioea9wpotl] {
    display: flex; align-items: center; justify-content: space-between;
    margin-bottom: var(--dp-space-2);
}

.mp-item__chip[b-ioea9wpotl] {
    font-size: .7rem; font-weight: 600; padding: .1rem .45rem;
    border-radius: var(--dp-radius-sm); background: var(--accent-light); color: var(--dp-blue-800);
}
.mp-item__suggestion-actions[b-ioea9wpotl] { display: flex; gap: var(--dp-space-2); }
.mp-item__btn[b-ioea9wpotl] {
    border: none; cursor: pointer; font-size: .8rem; font-weight: 600;
    padding: .25rem .6rem; border-radius: var(--dp-radius-sm);
    background: var(--accent); color: #fff;
}
.mp-item__btn--ghost[b-ioea9wpotl] { background: transparent; color: var(--text-secondary); }
.mp-item__remove[b-ioea9wpotl] {
    margin-top: var(--dp-space-2); border: none; background: transparent; cursor: pointer;
    color: var(--status-danger); font-size: .8rem; display: inline-flex; align-items: center; gap: .3rem;
}
.mp-add[b-ioea9wpotl] {
    border: 1px dashed var(--dp-slate-300); background: transparent; cursor: pointer;
    width: 100%; padding: var(--dp-space-2); border-radius: var(--dp-radius-md);
    color: var(--text-secondary); font-size: .85rem;
    display: inline-flex; align-items: center; justify-content: center; gap: .35rem;
}
.mp-add:hover[b-ioea9wpotl] { color: var(--accent); border-color: var(--accent); }
/* _content/FRP.Web/Components/Shared/Sis/MeasurePlanPanel.razor.rz.scp.css */
.mp-panel[b-zool54cd3s] {
    margin-top: var(--dp-space-5);
    border-top: 2px solid var(--dp-slate-200);
    padding-top: var(--dp-space-4);
}
.mp-panel__head[b-zool54cd3s] { display: flex; align-items: center; gap: var(--dp-space-2); margin-bottom: var(--dp-space-3); }
.mp-panel__head-icon[b-zool54cd3s] { color: var(--accent); display: inline-flex; }
.mp-panel__title[b-zool54cd3s] { font-weight: 600; color: var(--text-primary); font-size: 1.05rem; }

.mp-panel__hint[b-zool54cd3s] {
    display: flex; align-items: center; gap: var(--dp-space-2);
    color: var(--text-tertiary); font-size: .9rem;
    background: var(--dp-slate-100, rgba(0,0,0,.03)); padding: var(--dp-space-3);
    border-radius: var(--dp-radius-md);
}
.mp-panel__empty[b-zool54cd3s] {
    display: flex; flex-direction: column; align-items: flex-start; gap: var(--dp-space-3);
    color: var(--text-secondary); padding: var(--dp-space-3);
}
.mp-panel__open[b-zool54cd3s] {
    width: 100%; text-align: left; cursor: pointer; border: 1px solid var(--dp-slate-200);
    border-radius: var(--dp-radius-md); padding: var(--dp-space-3); background: var(--surface-primary);
    display: flex; align-items: center; justify-content: space-between;
}
.mp-panel__open:hover[b-zool54cd3s] { border-color: var(--accent); }
.mp-panel__open-main[b-zool54cd3s] { display: flex; align-items: center; gap: var(--dp-space-3); }
.mp-panel__open-date[b-zool54cd3s] { font-weight: 600; color: var(--text-primary); }
.mp-panel__open-status[b-zool54cd3s] { font-size: .75rem; font-weight: 700; padding: .15rem .5rem; border-radius: var(--dp-radius-sm); }
.mp-panel__open-status.is-draft[b-zool54cd3s] { background: rgba(var(--status-warning-rgb), .15); color: var(--status-warning); }
.mp-panel__open-status.is-done[b-zool54cd3s] { background: rgba(var(--status-success-rgb), .15); color: var(--status-success); }
.mp-panel__open-count[b-zool54cd3s] { color: var(--text-tertiary); font-size: .85rem; }
/* _content/FRP.Web/Components/Shared/Sis/ObservationCloseDialog.razor.rz.scp.css */
/* Abschluss-Dialog für offene Beobachtungen */
.rep-obs-dialog__title[b-3g7uimke8q] { display: inline-flex; align-items: center; gap: var(--dp-space-2); }
.rep-obs-dialog__meta[b-3g7uimke8q] {
    display: flex; align-items: baseline; flex-wrap: wrap; gap: var(--dp-space-2);
    margin-bottom: var(--dp-space-3);
}
.rep-obs-dialog__topic[b-3g7uimke8q] { font-weight: 600; color: var(--text-primary); }
.rep-obs-dialog__since[b-3g7uimke8q] { font-size: .8rem; color: var(--text-secondary); }
.rep-obs-dialog__footer[b-3g7uimke8q] { display: flex; justify-content: flex-end; gap: var(--dp-space-2); }
/* _content/FRP.Web/Components/Shared/Sis/ReportEntryForm.razor.rz.scp.css */
.rep-form__actions[b-mcbd1pgi7a] { margin-top: var(--dp-space-3); display: flex; justify-content: flex-end; }

/* Chip-Grundstil (analog BerichteblattPanel.razor.css — CSS-Isolation erfordert Duplikation) */
.rep-chip[b-mcbd1pgi7a] {
    border: 1px solid var(--dp-slate-300); background: transparent; cursor: pointer;
    font-size: .78rem; font-weight: 600; padding: .2rem .6rem; border-radius: var(--dp-radius-pill, 999px);
    color: var(--text-secondary);
    display: inline-flex; align-items: center; gap: .25rem;
}

/* Template-Modifier: gestrichelter Rand + Akzentfärbung via Design-Tokens */
.rep-chip--template[b-mcbd1pgi7a] {
    border-style: dashed;
    border-color: var(--accent);
    color: var(--accent);
}
.rep-chip--template:hover[b-mcbd1pgi7a] {
    background: var(--accent-light);
}

.rep-chip-row[b-mcbd1pgi7a] { display: flex; flex-wrap: wrap; gap: var(--dp-space-2); }

/* Offene Beobachtungen über dem Formular — warmer Warnton (analog EvaluationEditor-Hinweis),
   damit sie sich klar von den akzentfarbenen Template-Chips abheben. */
.rep-obs-row[b-mcbd1pgi7a] { margin-bottom: var(--dp-space-3); }
.rep-chip--observation[b-mcbd1pgi7a] {
    background: rgba(var(--status-warning-rgb), .13);
    border-color: transparent;
    color: var(--status-warning);
}
.rep-chip--observation:hover[b-mcbd1pgi7a] {
    background: rgba(var(--status-warning-rgb), .22);
}

/* Checkbox „Beobachtung fortsetzen" + Thema-Feld unter dem Textfeld */
.rep-obs-start[b-mcbd1pgi7a] {
    margin-top: var(--dp-space-3);
    display: flex; flex-wrap: wrap; align-items: center; gap: var(--dp-space-3);
}
.rep-obs-start__topic[b-mcbd1pgi7a] { flex: 1 1 240px; }
/* _content/FRP.Web/Components/Shared/Sis/SisEditor.razor.rz.scp.css */
.sis-editor[b-zu6p11e7ih] { display: flex; flex-direction: column; gap: var(--dp-space-4); }

.sis-editor__bar[b-zu6p11e7ih] {
    display: flex; align-items: center; justify-content: space-between; gap: var(--dp-space-3);
    flex-wrap: wrap;
}
.sis-editor__title[b-zu6p11e7ih] { display: flex; align-items: center; gap: var(--dp-space-2); font-weight: 600; color: var(--text-primary); }
.sis-editor__status[b-zu6p11e7ih] { padding: 2px var(--dp-space-2); border-radius: var(--dp-radius-full); font-size: var(--text-sm-plus); font-weight: 600; }
.sis-editor__status--draft[b-zu6p11e7ih] { background: var(--dp-slate-100); color: var(--text-secondary); }
.sis-editor__status--done[b-zu6p11e7ih] { background: rgba(var(--status-success-rgb), 0.12); color: var(--status-success); }
.sis-editor__chip[b-zu6p11e7ih] {
    padding: 2px var(--dp-space-2); border-radius: var(--dp-radius-full);
    background: var(--accent-light); color: var(--dp-blue-800); font-size: var(--text-sm-plus); font-weight: 600;
}
.sis-editor__actions[b-zu6p11e7ih] { display: flex; gap: var(--dp-space-2); flex-wrap: wrap; }

.sis-editor__layout[b-zu6p11e7ih] { display: grid; grid-template-columns: 220px 1fr; gap: var(--dp-space-5); align-items: start; }

/* .sis-nav / .sis-nav__item / .sis-content liegen jetzt global in
   wwwroot/css/components/_sis-doc.css (geteilt mit Maßnahmenplan-/Evaluations-Editor). */

/* „nicht relevant"/Risiko-Schalter */
.sis-switch[b-zu6p11e7ih] {
    display: inline-flex; align-items: center; gap: var(--dp-space-1);
    font-size: var(--text-sm-plus); color: var(--text-secondary); cursor: pointer;
}
.sis-switch input[b-zu6p11e7ih] { width: 15px; height: 15px; accent-color: var(--accent); }

/* Leitfragen */
.sis-guidance[b-zu6p11e7ih] { margin-bottom: var(--dp-space-3); font-size: var(--text-sm-plus); }
.sis-guidance summary[b-zu6p11e7ih] { cursor: pointer; color: var(--accent); font-weight: 500; }
.sis-guidance ul[b-zu6p11e7ih] { margin: var(--dp-space-2) 0 0; padding-left: var(--dp-space-5); color: var(--text-secondary); }

/* Vorbefüllungs-Vorschlag */
.sis-prefill[b-zu6p11e7ih] {
    display: flex; align-items: center; gap: var(--dp-space-2); flex-wrap: wrap;
    margin-bottom: var(--dp-space-2); padding: var(--dp-space-2) var(--dp-space-3);
    background: var(--accent-light); border-radius: var(--dp-radius-4);
}
.sis-prefill__label[b-zu6p11e7ih] {
    font-size: var(--text-sm-plus); font-weight: 600; text-transform: uppercase; letter-spacing: 0.03em;
    color: var(--dp-blue-800);
}
.sis-prefill__text[b-zu6p11e7ih] { flex: 1; min-width: 120px; font-size: var(--text-md); color: var(--text-primary); }
.sis-prefill__btn[b-zu6p11e7ih] {
    border: 1px solid var(--accent); background: var(--surface-primary); color: var(--accent);
    border-radius: var(--dp-radius-4); padding: 2px var(--dp-space-3); font-size: var(--text-sm-plus);
    font-weight: 600; cursor: pointer;
}
.sis-prefill__btn:hover[b-zu6p11e7ih] { background: var(--accent); color: #fff; }

/* .sis-callout liegt jetzt global in _sis-doc.css */

@media (max-width: 900px) {
    .sis-editor__layout[b-zu6p11e7ih] { grid-template-columns: 1fr; }
}

/* Risikomatrix (Kreuztabelle) */
.sis-riskmatrix-scroll[b-zu6p11e7ih] { overflow-x: auto; }
.sis-riskmatrix[b-zu6p11e7ih] { border-collapse: collapse; width: 100%; font-size: var(--text-sm); }
.sis-riskmatrix th[b-zu6p11e7ih], .sis-riskmatrix td[b-zu6p11e7ih] { border: 1px solid var(--dp-slate-200); padding: var(--dp-space-1) var(--dp-space-2); text-align: center; }
.sis-riskmatrix__corner[b-zu6p11e7ih], .sis-riskmatrix__rowhead[b-zu6p11e7ih] { text-align: left; background: var(--dp-slate-100); font-weight: 600; white-space: nowrap; }
.sis-riskmatrix__riskhead[b-zu6p11e7ih] { background: var(--dp-slate-100); font-weight: 600; }
.sis-riskmatrix__subhead th[b-zu6p11e7ih] { font-weight: 400; color: var(--text-tertiary); font-size: var(--text-sm-plus); }
.sis-riskmatrix__cell.is-active[b-zu6p11e7ih] { background: rgba(var(--status-warning-rgb), 0.12); }
.sis-risknotes[b-zu6p11e7ih] { margin-top: var(--dp-space-4); display: grid; gap: var(--dp-space-2); }
.sis-risknotes__title[b-zu6p11e7ih] { font-weight: 600; margin-bottom: var(--dp-space-1); display: flex; align-items: center; gap: var(--dp-space-2); }
.sis-risknotes__req[b-zu6p11e7ih] {
    padding: 1px var(--dp-space-2); border-radius: var(--dp-radius-full);
    background: rgba(var(--status-warning-rgb), 0.15); color: var(--status-warning);
    font-size: var(--text-sm-plus); font-weight: 600;
}
.sis-risknotes__row[b-zu6p11e7ih] { display: grid; grid-template-columns: 180px 1fr; align-items: center; gap: var(--dp-space-3); }
.sis-risknotes__label[b-zu6p11e7ih] { color: var(--text-secondary); }
.sis-risknotes__star[b-zu6p11e7ih] { color: var(--status-warning); font-weight: 700; }
.sis-risknotes__row--missing .sis-risknotes__label[b-zu6p11e7ih] { color: var(--status-warning); font-weight: 600; }
/* _content/FRP.Web/Components/Shared/Sis/SisPanel.razor.rz.scp.css */
.sis-panel[b-et2gidkfxr] { display: flex; flex-direction: column; gap: var(--dp-space-4); }

.sis-panel__bar[b-et2gidkfxr] {
    display: flex; align-items: center; justify-content: space-between; gap: var(--dp-space-3);
}
.sis-panel__title[b-et2gidkfxr] {
    font-size: var(--text-lg); font-weight: 600; color: var(--text-primary);
}
.sis-panel__actions[b-et2gidkfxr] { display: flex; gap: var(--dp-space-2); }

.sis-history[b-et2gidkfxr] { display: flex; flex-direction: column; gap: var(--dp-space-2); }

.sis-history__item[b-et2gidkfxr] {
    display: flex; flex-direction: column; gap: var(--dp-space-1);
    width: 100%; text-align: left; cursor: pointer;
    padding: var(--dp-space-3) var(--dp-space-4);
    background: var(--surface-primary);
    border: 1px solid var(--dp-slate-200);
    border-left: 4px solid var(--accent);
    border-radius: var(--dp-radius-6);
    box-shadow: var(--shadow-sm);
    transition: box-shadow var(--transition-fast), transform var(--transition-fast);
}
.sis-history__item:hover[b-et2gidkfxr] { box-shadow: var(--shadow-md); transform: translateY(-1px); }

.sis-history__main[b-et2gidkfxr] { display: flex; align-items: center; gap: var(--dp-space-3); }
.sis-history__date[b-et2gidkfxr] { font-weight: 600; color: var(--text-primary); font-variant-numeric: tabular-nums; }
.sis-history__status[b-et2gidkfxr] {
    padding: 2px var(--dp-space-2); border-radius: var(--dp-radius-full);
    font-size: var(--text-sm-plus); font-weight: 600;
}
.sis-history__status.is-done[b-et2gidkfxr] { background: rgba(var(--status-success-rgb), 0.12); color: var(--status-success); }
.sis-history__status.is-draft[b-et2gidkfxr] { background: var(--dp-slate-100); color: var(--text-secondary); }

.sis-history__meta[b-et2gidkfxr] { display: flex; gap: var(--dp-space-3); font-size: var(--text-sm-plus); color: var(--text-tertiary); }
.sis-history__risk[b-et2gidkfxr] { color: var(--status-warning); font-weight: 500; }

.sis-empty[b-et2gidkfxr] {
    display: flex; flex-direction: column; align-items: center; gap: var(--dp-space-2);
    padding: var(--dp-space-8); color: var(--text-tertiary);
}
.sis-empty[b-et2gidkfxr]  svg { font-size: 28px; opacity: 0.6; }
