/* _content/FRP.Web/Components/Layout/ContentLayout.razor.rz.scp.css */
.content-layout[b-pa8b0xur9u] {
    min-height: 100vh;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
}

.content-body[b-pa8b0xur9u] {
    padding: 0;
    background: white;
    margin: 0;
    border-radius: 0;
}

.content-header[b-pa8b0xur9u] {
    background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
    padding: 1.5rem 2rem;
    border-bottom: 1px solid #dee2e6;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1rem;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

.page-title[b-pa8b0xur9u] {
    margin: 0;
    font-size: 1.75rem;
    font-weight: 700;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.page-subtitle[b-pa8b0xur9u] {
    margin: 0.25rem 0 0 0;
    color: #6c757d;
    font-size: 0.95rem;
}

.header-actions[b-pa8b0xur9u] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.breadcrumb-nav[b-pa8b0xur9u] {
    background-color: white;
    padding: 0.75rem 2rem;
    border-bottom: 1px solid #dee2e6;
}

.breadcrumb[b-pa8b0xur9u] {
    margin: 0;
    background: none;
    padding: 0;
}

.breadcrumb-item[b-pa8b0xur9u] {
    font-size: 0.9rem;
}

    .breadcrumb-item a[b-pa8b0xur9u] {
        color: #007bff;
        text-decoration: none;
    }

        .breadcrumb-item a:hover[b-pa8b0xur9u] {
            text-decoration: underline;
        }

    .breadcrumb-item.active[b-pa8b0xur9u] {
        color: #6c757d;
    }

.loading-container[b-pa8b0xur9u] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem 2rem;
    gap: 1rem;
}

.loading-text[b-pa8b0xur9u] {
    color: #6c757d;
    font-size: 0.95rem;
}

.content-main[b-pa8b0xur9u] {
    padding: 2rem;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .content-header[b-pa8b0xur9u] {
        padding: 1rem;
        flex-direction: column;
        align-items: flex-start;
    }

    .breadcrumb-nav[b-pa8b0xur9u] {
        padding: 0.75rem 1rem;
    }

    .content-main[b-pa8b0xur9u] {
        padding: 1rem;
    }

    .page-title[b-pa8b0xur9u] {
        font-size: 1.5rem;
    }
}
/* _content/FRP.Web/Components/Navigation/AppSidebar.razor.rz.scp.css */
/* Sidebar Container */
[b-h50fry9184] .app-sidebar {
    background: #ffffff;
    border-right: 1px solid #e5e7eb;
    box-shadow: 2px 0 8px rgba(0, 0, 0, 0.1);
    width: 280px !important;
    min-width: 280px;
    max-width: 280px;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    height: 100vh !important;
    transform: none !important;
    transition: none !important;
    z-index: 1000;
}

/* Disable all Syncfusion sidebar animations */
[b-h50fry9184] .app-sidebar * {
    transition: none !important;
    animation: none !important;
}

[b-h50fry9184] .app-sidebar .e-sidebar-overlay {
    display: none !important;
}

/* Sidebar Header */
.sidebar-header[b-h50fry9184] {
    padding: 1.5rem 1rem;
    border-bottom: 1px solid #e5e7eb;
    background: #f9fafb;
}

.brand-area[b-h50fry9184] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.brand-icon[b-h50fry9184] {
    color: #3b82f6;
    font-size: 1.5rem;
}

.brand-text[b-h50fry9184] {
    font-weight: 600;
    font-size: 1.125rem;
    color: #1f2937;
}

/* Sidebar Content */
.sidebar-content[b-h50fry9184] {
    flex: 1;
    padding: 1rem 0;
}

/* Menu Styling */
[b-h50fry9184] .sidebar-menu {
    border: none;
    background: transparent;
}

/* Main Menu Items */
[b-h50fry9184] .sidebar-menu > .e-ul > .e-menu-item {
    margin: 0.5rem 1rem;
    padding: 1rem;
    border-radius: 0.5rem;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 1rem;
    font-size: 0.9rem;
    font-weight: 500;
    color: #374151;
}

[b-h50fry9184] .sidebar-menu > .e-ul > .e-menu-item:hover {
    background: #f3f4f6;
    color: #1f2937;
}

[b-h50fry9184] .sidebar-menu > .e-ul > .e-menu-item.e-selected {
    background: #dbeafe;
    color: #1d4ed8;
    border-left: 4px solid #3b82f6;
}

/* Menu Icons */
[b-h50fry9184] .sidebar-menu .e-menu-icon {
    font-size: 1.125rem;
    width: 1.5rem;
    height: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

/* Icon Colors */
[b-h50fry9184] .sidebar-menu .fa-tachometer-alt { color: #10b981; }
[b-h50fry9184] .sidebar-menu .fa-user-friends { color: #f59e0b; }
[b-h50fry9184] .sidebar-menu .fa-clipboard-check { color: #3b82f6; }
[b-h50fry9184] .sidebar-menu .fa-hands-helping { color: #8b5cf6; }
[b-h50fry9184] .sidebar-menu .fa-file-invoice-dollar { color: #ef4444; }
[b-h50fry9184] .sidebar-menu .fa-hospital { color: #06b6d4; }
[b-h50fry9184] .sidebar-menu .fa-chart-bar { color: #84cc16; }
[b-h50fry9184] .sidebar-menu .fa-cogs { color: #6b7280; }

/* Submenu Container */
[b-h50fry9184] .sidebar-menu .e-ul .e-ul {
    background: #f9fafb;
    border-radius: 0.375rem;
    margin: 0.5rem 1rem 0.75rem 1rem;
    padding: 0.5rem 0;
}

/* Submenu Items */
[b-h50fry9184] .sidebar-menu .e-ul .e-ul .e-menu-item {
    margin: 0.125rem 0.5rem;
    padding: 0.625rem 0.75rem;
    border-radius: 0.25rem;
    font-size: 0.825rem;
    color: #6b7280;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

[b-h50fry9184] .sidebar-menu .e-ul .e-ul .e-menu-item:hover {
    background: #e5e7eb;
    color: #374151;
}

[b-h50fry9184] .sidebar-menu .e-ul .e-ul .e-menu-item.e-selected {
    background: #dbeafe;
    color: #1d4ed8;
}

/* Submenu Icons */
[b-h50fry9184] .sidebar-menu .e-ul .e-ul .e-menu-icon {
    font-size: 0.875rem;
    width: 1rem;
    height: 1rem;
    color: #9ca3af;
}

/* Submenu Icon Colors */
[b-h50fry9184] .sidebar-menu .fa-list { color: #10b981; }
[b-h50fry9184] .sidebar-menu .fa-user-plus { color: #3b82f6; }
[b-h50fry9184] .sidebar-menu .fa-notes-medical { color: #ef4444; }
[b-h50fry9184] .sidebar-menu .fa-address-book { color: #f59e0b; }
[b-h50fry9184] .sidebar-menu .fa-calendar-week { color: #8b5cf6; }
[b-h50fry9184] .sidebar-menu .fa-calendar-day { color: #06b6d4; }
[b-h50fry9184] .sidebar-menu .fa-users-cog { color: #84cc16; }
[b-h50fry9184] .sidebar-menu .fa-bus { color: #f59e0b; }
[b-h50fry9184] .sidebar-menu .fa-calendar-alt { color: #8b5cf6; }
[b-h50fry9184] .sidebar-menu .fa-tags { color: #10b981; }
[b-h50fry9184] .sidebar-menu .fa-clipboard-list { color: #3b82f6; }
[b-h50fry9184] .sidebar-menu .fa-euro-sign { color: #ef4444; }
[b-h50fry9184] .sidebar-menu .fa-history { color: #6b7280; }
[b-h50fry9184] .sidebar-menu .fa-exclamation-triangle { color: #f59e0b; }
[b-h50fry9184] .sidebar-menu .fa-file-invoice { color: #ef4444; }
[b-h50fry9184] .sidebar-menu .fa-clock { color: #f59e0b; }
[b-h50fry9184] .sidebar-menu .fa-credit-card { color: #10b981; }
[b-h50fry9184] .sidebar-menu .fa-calendar-check { color: #3b82f6; }
[b-h50fry9184] .sidebar-menu .fa-eye { color: #8b5cf6; }
[b-h50fry9184] .sidebar-menu .fa-building { color: #06b6d4; }
[b-h50fry9184] .sidebar-menu .fa-map-marker-alt { color: #ef4444; }
[b-h50fry9184] .sidebar-menu .fa-link { color: #8b5cf6; }
[b-h50fry9184] .sidebar-menu .fa-chart-pie { color: #84cc16; }
[b-h50fry9184] .sidebar-menu .fa-chart-line { color: #10b981; }
[b-h50fry9184] .sidebar-menu .fa-percentage { color: #f59e0b; }
[b-h50fry9184] .sidebar-menu .fa-shield-alt { color: #3b82f6; }
[b-h50fry9184] .sidebar-menu .fa-search { color: #6b7280; }
[b-h50fry9184] .sidebar-menu .fa-desktop { color: #8b5cf6; }
[b-h50fry9184] .sidebar-menu .fa-sliders-h { color: #6b7280; }
[b-h50fry9184] .sidebar-menu .fa-users { color: #10b981; }
[b-h50fry9184] .sidebar-menu .fa-heartbeat { color: #ef4444; }
[b-h50fry9184] .sidebar-menu .fa-download { color: #3b82f6; }

/* Caret Icon */
[b-h50fry9184] .sidebar-menu .e-caret {
    margin-left: auto;
    color: #9ca3af;
    font-size: 0.75rem;
    transition: transform 0.2s ease;
}

[b-h50fry9184] .sidebar-menu .e-menu-item.e-expanded .e-caret {
    transform: rotate(90deg);
}

/* Sidebar Footer */
.sidebar-footer[b-h50fry9184] {
    padding: 1rem;
    border-top: 1px solid #e5e7eb;
    background: #f9fafb;
}

.user-info[b-h50fry9184] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    border-radius: 0.5rem;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid #e5e7eb;
}

.user-avatar[b-h50fry9184] {
    color: #6b7280;
    font-size: 1.25rem;
}

.user-name[b-h50fry9184] {
    font-weight: 500;
    color: #374151;
    font-size: 0.875rem;
}
/* _content/FRP.Web/Components/Navigation/Footer.razor.rz.scp.css */
.app-footer[b-k9xog3znus] {
    background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
    border-top: 1px solid #e5e7eb;
    padding: 1rem 2rem;
    position: fixed;
    bottom: 0;
    right: 0;
    left: 280px; /* Sidebar width */
    width: calc(100vw - 280px); /* Full content width */
    z-index: 100;
    backdrop-filter: blur(10px);
    height: 60px;
    box-sizing: border-box;
}

.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;
    gap: 0.75rem;
}

.footer-text[b-k9xog3znus] {
    font-size: 0.875rem;
    color: #6b7280;
    font-weight: 500;
}

.footer-separator[b-k9xog3znus] {
    color: #d1d5db;
    font-weight: 400;
}

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

.version-info[b-k9xog3znus] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.375rem 0.75rem;
    background: rgba(59, 130, 246, 0.1);
    border-radius: 0.5rem;
    border: 1px solid rgba(59, 130, 246, 0.2);
}

.version-info i[b-k9xog3znus] {
    color: #3b82f6;
    font-size: 0.75rem;
}

.version-text[b-k9xog3znus] {
    font-size: 0.8125rem;
    color: #1e40af;
    font-weight: 600;
}

.build-info[b-k9xog3znus] {
    display: flex;
    align-items: center;
    padding: 0.375rem 0.75rem;
    background: rgba(107, 114, 128, 0.1);
    border-radius: 0.5rem;
    border: 1px solid rgba(107, 114, 128, 0.2);
}

.build-text[b-k9xog3znus] {
    font-size: 0.75rem;
    color: #4b5563;
    font-weight: 500;
}

/* Responsive */
@media (max-width: 768px) {
    .app-footer[b-k9xog3znus] {
        padding: 1rem;
        left: 0; /* Full width on mobile */
        width: 100vw; /* Full viewport width on mobile */
    }
    
    .footer-content[b-k9xog3znus] {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }
    
    .footer-left[b-k9xog3znus] {
        flex-direction: column;
        gap: 0.25rem;
    }
    
    .footer-separator[b-k9xog3znus] {
        display: none;
    }
    
    .footer-right[b-k9xog3znus] {
        gap: 0.5rem;
    }
}
/* _content/FRP.Web/Components/Navigation/SyncfusionNavBar.razor.rz.scp.css */
[b-2nwftd788b] .e-toolbar {
    background-color: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
    padding: 0.5rem 1rem;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

    [b-2nwftd788b] .e-toolbar .e-toolbar-item {
        padding: 0.5rem 1rem;
        border-radius: 0.375rem;
        margin: 0 0.25rem;
        transition: all 0.2s ease-in-out;
    }

        [b-2nwftd788b] .e-toolbar .e-toolbar-item:hover {
            background-color: rgba(0, 123, 255, 0.1);
            color: #0056b3;
        }

        [b-2nwftd788b] .e-toolbar .e-toolbar-item.e-active {
            background-color: #007bff;
            color: white;
        }

        [b-2nwftd788b] .e-toolbar .e-toolbar-item .e-tbar-btn-text {
            font-weight: 500;
            font-size: 0.9rem;
        }

        [b-2nwftd788b] .e-toolbar .e-toolbar-item .e-icons {
            margin-right: 0.5rem;
            font-size: 1rem;
        }

[b-2nwftd788b] .e-separator {
    background-color: #dee2e6;
    width: 1px;
    height: 2rem;
    margin: 0 0.5rem;
}

.modern-syncfusion-nav[b-2nwftd788b] {
    display: flex;
    align-items: center;
    background-color: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
    padding: 0.5rem 1rem;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.nav-brand[b-2nwftd788b] {
    display: flex;
    align-items: center;
    margin-right: 2rem;
    font-weight: bold;
    font-size: 1.25rem;
    color: #495057;
}

.brand-icon[b-2nwftd788b] {
    margin-right: 0.5rem;
    color: #007bff;
}

.nav-item[b-2nwftd788b] {
    display: flex;
    align-items: center;
    padding: 0.5rem 1rem;
    border-radius: 0.375rem;
    transition: all 0.2s ease-in-out;
}

.nav-icon[b-2nwftd788b] {
    margin-right: 0.5rem;
}

.nav-disabled[b-2nwftd788b] {
    opacity: 0.5;
    cursor: not-allowed;
}

.nav-dev[b-2nwftd788b] {
    color: #fd7e14;
    border: 1px dashed #fd7e14;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    [b-2nwftd788b] .e-toolbar .e-toolbar-item .e-tbar-btn-text {
        display: none;
    }

    [b-2nwftd788b] .e-toolbar .e-toolbar-item {
        padding: 0.5rem;
        min-width: 2.5rem;
    }
    
    .nav-brand .brand-title[b-2nwftd788b] {
        display: none;
    }
}
/* _content/FRP.Web/Components/Navigation/TopBar.razor.rz.scp.css */
.topbar[b-5x145zomys] {
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    border-bottom: 1px solid #e5e7eb;
    padding: 1rem 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    height: 75px;
    position: fixed;
    top: 0;
    right: 0;
    left: 280px; /* Sidebar width */
    width: calc(100vw - 280px); /* Full content width */
    z-index: 100;
    backdrop-filter: blur(10px);
}

.topbar-left[b-5x145zomys] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.title-area[b-5x145zomys] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.page-title[b-5x145zomys] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1f2937;
    margin: 0;
    line-height: 1.2;
    background: linear-gradient(135deg, #1f2937 0%, #374151 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.breadcrumb-nav[b-5x145zomys] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.breadcrumb-separator[b-5x145zomys] {
    color: #9ca3af;
    font-size: 0.75rem;
}

.breadcrumb[b-5x145zomys] {
    font-size: 0.875rem;
    color: #6b7280;
    font-weight: 500;
}

.status-indicator[b-5x145zomys] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.375rem 0.75rem;
    background: rgba(16, 185, 129, 0.1);
    border-radius: 1rem;
    border: 1px solid rgba(16, 185, 129, 0.2);
}

.status-dot[b-5x145zomys] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #10b981;
    animation: pulse-green-b-5x145zomys 2s infinite;
}

.status-text[b-5x145zomys] {
    font-size: 0.75rem;
    color: #065f46;
    font-weight: 600;
}

.topbar-center[b-5x145zomys] {
    flex: 1;
    max-width: 600px;
    margin: 0 2rem;
}

.search-container[b-5x145zomys] {
    width: 100%;
}

.search-box[b-5x145zomys] {
    position: relative;
    display: flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid #e5e7eb;
    border-radius: 0.75rem;
    padding: 0.75rem 1rem;
    transition: all 0.2s ease;
    backdrop-filter: blur(10px);
}

.search-box:hover[b-5x145zomys] {
    border-color: #3b82f6;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.search-box:focus-within[b-5x145zomys] {
    border-color: #3b82f6;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.search-box i[b-5x145zomys] {
    color: #9ca3af;
    margin-right: 0.75rem;
    font-size: 0.875rem;
}

.search-input[b-5x145zomys] {
    flex: 1;
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.875rem;
    color: #374151;
    font-weight: 500;
}

.search-input[b-5x145zomys]::placeholder {
    color: #9ca3af;
}

.search-shortcut[b-5x145zomys] {
    background: #f3f4f6;
    color: #6b7280;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 0.5rem;
    border-radius: 0.375rem;
    border: 1px solid #e5e7eb;
}

.topbar-right[b-5x145zomys] {
    display: flex;
    align-items: center;
}

.topbar-actions[b-5x145zomys] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.action-btn[b-5x145zomys] {
    position: relative;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid #e5e7eb;
    padding: 0.625rem;
    border-radius: 0.75rem;
    color: #6b7280;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    backdrop-filter: blur(10px);
}

.action-btn:hover[b-5x145zomys] {
    background: rgba(255, 255, 255, 0.95);
    color: #374151;
    border-color: #3b82f6;
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.15);
    transform: translateY(-1px);
}

.action-btn.pulse[b-5x145zomys] {
    animation: subtle-pulse-b-5x145zomys 3s infinite;
}

.action-btn i[b-5x145zomys] {
    font-size: 1rem;
}

.spin-on-hover[b-5x145zomys] {
    transition: transform 0.3s ease;
}

.action-btn:hover .spin-on-hover[b-5x145zomys] {
    transform: rotate(90deg);
}

.notification-badge[b-5x145zomys] {
    position: absolute;
    top: -0.125rem;
    right: -0.125rem;
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
    color: white;
    font-size: 0.7rem;
    font-weight: 700;
    padding: 0.125rem 0.375rem;
    border-radius: 0.75rem;
    min-width: 1.125rem;
    height: 1.125rem;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border: 2px solid white;
    box-shadow: 0 2px 4px rgba(239, 68, 68, 0.3);
}

.animate-bounce[b-5x145zomys] {
    animation: gentle-bounce-b-5x145zomys 2s infinite;
}

.user-menu[b-5x145zomys] {
    position: relative;
    margin-left: 1rem;
}

.user-btn[b-5x145zomys] {
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid #e5e7eb;
    padding: 0.5rem 1rem;
    border-radius: 0.75rem;
    color: #374151;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.875rem;
    font-weight: 500;
    backdrop-filter: blur(10px);
}

.user-btn:hover[b-5x145zomys] {
    background: rgba(255, 255, 255, 0.95);
    border-color: #3b82f6;
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.15);
    transform: translateY(-1px);
}

.user-avatar[b-5x145zomys] {
    position: relative;
}

.user-avatar .fa-user-circle[b-5x145zomys] {
    font-size: 2rem;
    color: #3b82f6;
    filter: drop-shadow(0 2px 4px rgba(59, 130, 246, 0.2));
}

.online-indicator[b-5x145zomys] {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 12px;
    height: 12px;
    background: #10b981;
    border: 2px solid white;
    border-radius: 50%;
    animation: pulse-green-b-5x145zomys 2s infinite;
}

.user-info[b-5x145zomys] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.user-name[b-5x145zomys] {
    font-weight: 600;
    color: #1f2937;
    line-height: 1.2;
}

.user-role[b-5x145zomys] {
    font-size: 0.75rem;
    color: #6b7280;
    font-weight: 500;
}

.user-btn .fa-chevron-down[b-5x145zomys] {
    font-size: 0.75rem;
    color: #9ca3af;
    transition: transform 0.2s ease;
}

.user-btn:hover .fa-chevron-down[b-5x145zomys] {
    transform: rotate(180deg);
}

/* Animations */
@keyframes pulse-green-b-5x145zomys {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

@keyframes subtle-pulse-b-5x145zomys {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.05); }
}

@keyframes gentle-bounce-b-5x145zomys {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-2px); }
}

/* Responsive */
@media (max-width: 1024px) {
    .topbar-center[b-5x145zomys] {
        max-width: 300px;
        margin: 0 1rem;
    }
    
    .search-shortcut[b-5x145zomys] {
        display: none;
    }
}

@media (max-width: 768px) {
    .topbar[b-5x145zomys] {
        padding: 1rem;
        height: auto;
        min-height: 70px;
        left: 0; /* Full width on mobile */
        width: 100vw; /* Full viewport width on mobile */
    }
    
    .topbar-center[b-5x145zomys] {
        display: none;
    }
    
    .status-indicator[b-5x145zomys] {
        display: none;
    }
    
    .user-info[b-5x145zomys] {
        display: none;
    }
    
    .topbar-actions[b-5x145zomys] {
        gap: 0.25rem;
    }
    
    .action-btn[b-5x145zomys] {
        width: 40px;
        height: 40px;
        padding: 0.5rem;
    }
}
/* _content/FRP.Web/Components/Pages/Administration/InsuranceCompanies/InsuranceCompanyDetails.razor.rz.scp.css */
/* Container */
.insurance-details-container[b-zavt0sxqga] {
    height: calc(100vh - 60px);
    display: flex;
    flex-direction: column;
    background: #f8f9fa;
    overflow: hidden;
}

/* Breadcrumb */
.breadcrumb-section[b-zavt0sxqga] {
    background: white;
    padding: 1rem 2rem;
    border-bottom: 1px solid #e9ecef;
    flex-shrink: 0;
}

.breadcrumb[b-zavt0sxqga] {
    margin: 0;
    background: none;
    padding: 0;
}

.breadcrumb-link[b-zavt0sxqga] {
    color: #6c757d;
    text-decoration: none;
    transition: color 0.2s ease;
}

.breadcrumb-link:hover[b-zavt0sxqga] {
    color: #495057;
    text-decoration: underline;
}

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

/* Page Header */
.page-header[b-zavt0sxqga] {
    background: white;
    padding: 1.5rem 2rem;
    border-bottom: 2px solid #e9ecef;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-shrink: 0;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.header-content[b-zavt0sxqga] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.company-info[b-zavt0sxqga] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.page-title[b-zavt0sxqga] {
    font-size: 1.75rem;
    font-weight: 600;
    color: #2c3e50;
    margin: 0;
    display: flex;
    align-items: center;
}

.company-meta[b-zavt0sxqga] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.header-actions[b-zavt0sxqga] {
    display: flex;
    gap: 0.75rem;
}

/* Statistics Row */
.stats-row[b-zavt0sxqga] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
    padding: 1.5rem 2rem;
    background: #f8f9fa;
    flex-shrink: 0;
}

.stat-card[b-zavt0sxqga] {
    background: white;
    border-radius: 12px;
    padding: 1.5rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.stat-card:hover[b-zavt0sxqga] {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0,0,0,0.12);
}

.stat-icon[b-zavt0sxqga] {
    width: 60px;
    height: 60px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.stat-content[b-zavt0sxqga] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.stat-value[b-zavt0sxqga] {
    font-size: 2rem;
    font-weight: 700;
    color: #2c3e50;
    line-height: 1;
}

.stat-label[b-zavt0sxqga] {
    font-size: 0.875rem;
    color: #6c757d;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Tabs Container */
.tabs-container[b-zavt0sxqga] {
    flex: 1;
    padding: 0 2rem 2rem 2rem;
    display: flex;
    flex-direction: column;
    height: calc(100vh - 200px);
    min-height: 600px;
}

/* Tab Customization */
[b-zavt0sxqga] .insurance-tabs {
    height: 100%;
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    overflow: hidden;
}

[b-zavt0sxqga] .insurance-tabs .e-tab-header {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-bottom: 2px solid #dee2e6;
    padding: 0 1rem;
}

[b-zavt0sxqga] .insurance-tabs .e-tab-header .e-toolbar-item {
    margin: 0;
    border-radius: 0;
}

[b-zavt0sxqga] .insurance-tabs .e-tab-header .e-toolbar-item.e-active {
    background: white;
    border-bottom: 3px solid #667eea;
    font-weight: 600;
}

[b-zavt0sxqga] .insurance-tabs .e-tab-header .e-toolbar-item:hover:not(.e-active) {
    background: rgba(102, 126, 234, 0.1);
}

[b-zavt0sxqga] .insurance-tabs .e-content {
    flex: 1;
    min-height: 500px;
    overflow: visible;
}

[b-zavt0sxqga] .insurance-tabs .e-content .e-item {
    height: 100%;
}

[b-zavt0sxqga] .insurance-tabs .e-content .e-item.e-active {
    display: flex;
    flex-direction: column;
}

/* Tab Content */
.tab-content-wrapper[b-zavt0sxqga] {
    padding: 2rem;
    height: 100%;
}

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

.detail-card[b-zavt0sxqga] {
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 8px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
    height: fit-content;
}

.detail-card .card-title[b-zavt0sxqga] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #495057;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #e9ecef;
}

.detail-row[b-zavt0sxqga] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0;
    border-bottom: 1px solid #e9ecef;
}

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

.detail-row strong[b-zavt0sxqga] {
    color: #495057;
    font-weight: 500;
    min-width: 100px;
}

.detail-row span[b-zavt0sxqga] {
    color: #6c757d;
    text-align: right;
    flex: 1;
}

.address-content[b-zavt0sxqga] {
    color: #6c757d;
    line-height: 1.5;
}

.notes-content[b-zavt0sxqga] {
    background: white;
    border: 1px solid #e9ecef;
    border-radius: 4px;
    padding: 0.75rem;
    margin-top: 0.5rem;
    color: #495057;
    white-space: pre-wrap;
}

/* Billing Addresses Content */
.billing-addresses-content[b-zavt0sxqga] {
    flex: 1;
    overflow-y: auto;
    padding-right: 0.5rem;
    min-height: 400px;
}

.billing-header[b-zavt0sxqga] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 2rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid #e9ecef;
}

.billing-title h4[b-zavt0sxqga] {
    margin: 0;
    color: #2c3e50;
    font-weight: 600;
    display: flex;
    align-items: center;
}

.billing-title p[b-zavt0sxqga] {
    margin: 0.5rem 0 0 0;
    color: #6c757d;
    font-size: 0.9rem;
}

.billing-actions[b-zavt0sxqga] {
    display: flex;
    gap: 0.75rem;
}

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

.billing-address-card[b-zavt0sxqga] {
    background: white;
    border: 1px solid #e9ecef;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.3s ease;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.billing-address-card:hover[b-zavt0sxqga] {
    border-color: #667eea;
    box-shadow: 0 4px 16px rgba(0,0,0,0.12);
    transform: translateY(-2px);
}

.billing-address-card.inactive[b-zavt0sxqga] {
    opacity: 0.7;
    background: #f8f9fa;
}

.billing-address-card .card-header[b-zavt0sxqga] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 1.25rem;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-bottom: 1px solid #dee2e6;
}

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

.address-name[b-zavt0sxqga] {
    margin: 0 0 0.5rem 0;
    font-size: 1.125rem;
    font-weight: 600;
    color: #2c3e50;
}

.address-status[b-zavt0sxqga] {
    /* Status badge styles handled by Bootstrap */
}

.card-actions[b-zavt0sxqga] {
    display: flex;
    gap: 0.5rem;
}

.billing-address-card .card-body[b-zavt0sxqga] {
    padding: 1.25rem;
}

.address-details[b-zavt0sxqga] {
    margin-bottom: 1.5rem;
}

.address-details .detail-row[b-zavt0sxqga] {
    display: flex;
    align-items: center;
    margin-bottom: 0.75rem;
    color: #495057;
    font-size: 0.9rem;
    border-bottom: none;
    padding: 0;
}

.address-details .detail-row i[b-zavt0sxqga] {
    width: 1.5rem;
    color: #6c757d;
    font-size: 0.875rem;
}

/* Service Categories in Cards */
.service-categories[b-zavt0sxqga] {
    margin-bottom: 1rem;
}

.service-badges[b-zavt0sxqga] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
}

.service-badges .badge[b-zavt0sxqga] {
    font-size: 0.75rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
}

.address-notes[b-zavt0sxqga] {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #e9ecef;
    color: #6c757d;
    font-size: 0.875rem;
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}

.address-notes i[b-zavt0sxqga] {
    width: 1.5rem;
    color: #6c757d;
    margin-top: 0.125rem;
}

/* Empty State */
.empty-state[b-zavt0sxqga] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    text-align: center;
    height: 100%;
}

.empty-icon[b-zavt0sxqga] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
    font-size: 2rem;
    color: #1976d2;
}

.empty-state h5[b-zavt0sxqga] {
    margin-bottom: 0.5rem;
    color: #2c3e50;
    font-weight: 600;
}

.empty-state p[b-zavt0sxqga] {
    margin-bottom: 2rem;
    max-width: 400px;
    color: #6c757d;
    line-height: 1.5;
}

/* Other Tab Content */
.guests-content[b-zavt0sxqga],
.statistics-content[b-zavt0sxqga] {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Badge Styles */
.badge[b-zavt0sxqga] {
    font-size: 0.8rem;
    padding: 0.375rem 0.75rem;
    border-radius: 6px;
    font-weight: 500;
}

.badge i[b-zavt0sxqga] {
    font-size: 0.75rem;
}

/* Responsive Design */
@media (max-width: 1200px) {
    .stats-row[b-zavt0sxqga] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .page-header[b-zavt0sxqga] {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch;
    }
    
    .stats-row[b-zavt0sxqga] {
        grid-template-columns: 1fr;
        gap: 1rem;
        padding: 1rem;
    }
    
    .tabs-container[b-zavt0sxqga] {
        padding: 0 1rem 1rem;
    }
    
    .tab-content-wrapper[b-zavt0sxqga] {
        padding: 1rem;
    }
    
    .stat-card[b-zavt0sxqga] {
        padding: 1rem;
    }
    
    .stat-icon[b-zavt0sxqga] {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
    }
    
    .stat-value[b-zavt0sxqga] {
        font-size: 1.5rem;
    }
    
    .detail-row[b-zavt0sxqga] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.25rem;
    }
    
    .detail-row span[b-zavt0sxqga] {
        text-align: left;
    }
}

/* Modal Styles */
[b-zavt0sxqga] .e-dialog .e-dlg-header {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-bottom: 2px solid #dee2e6;
    padding: 1.25rem 1.5rem;
}

.modal-header-content[b-zavt0sxqga] {
    display: flex;
    align-items: center;
    font-size: 1.125rem;
    font-weight: 600;
    color: #2c3e50;
}

.billing-form-container[b-zavt0sxqga] {
    padding: 1.5rem;
    max-height: 500px;
    overflow-y: auto;
}

.billing-form-container .form-group[b-zavt0sxqga] {
    margin-bottom: 1.25rem;
}

.billing-form-container label[b-zavt0sxqga] {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 600;
    color: #495057;
    font-size: 0.875rem;
}

.billing-form-container .form-control[b-zavt0sxqga] {
    width: 100%;
    padding: 0.625rem 0.875rem;
    font-size: 0.875rem;
    border: 1px solid #ced4da;
    border-radius: 6px;
    transition: all 0.15s ease-in-out;
    background: white;
}

.billing-form-container .form-control:focus[b-zavt0sxqga] {
    border-color: #667eea;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(102, 126, 234, 0.25);
}

/* Service Category Selection */
.service-categories-selection[b-zavt0sxqga] {
    max-height: 280px;
    overflow-y: auto;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 1rem;
}

/* Company Edit Form */
.company-edit-form[b-zavt0sxqga] {
    padding: 0.5rem;
}

.company-edit-form .form-section[b-zavt0sxqga] {
    margin-bottom: 2rem;
    padding: 1.5rem;
    background: #f8f9fa;
    border-radius: 8px;
    border-left: 4px solid #007bff;
}

.company-edit-form .section-title[b-zavt0sxqga] {
    color: #495057;
    font-weight: 600;
    margin-bottom: 1rem;
    display: flex;
    align-items: center;
}

.company-edit-form .section-title i[b-zavt0sxqga] {
    color: #007bff;
    width: 1.5rem;
}

.company-edit-form .form-group[b-zavt0sxqga] {
    margin-bottom: 1rem;
}

.company-edit-form .form-group label[b-zavt0sxqga] {
    font-weight: 500;
    color: #495057;
    margin-bottom: 0.5rem;
}

.company-edit-form .form-control[readonly][b-zavt0sxqga] {
    background-color: #e9ecef;
    border-color: #ced4da;
    color: #6c757d;
}

.company-edit-form .form-text[b-zavt0sxqga] {
    font-size: 0.875rem;
    margin-top: 0.25rem;
}
    background: #f8f9fa;[b-zavt0sxqga]
}

.service-category-item[b-zavt0sxqga] {
    display: flex;
    align-items: flex-start;
    margin-bottom: 0.75rem;
    padding: 0.75rem;
    border-radius: 6px;
    transition: background-color 0.15s ease;
    background: white;
    border: 1px solid #e9ecef;
}

.service-category-item:hover[b-zavt0sxqga] {
    background: #e9ecef;
    border-color: #dee2e6;
}

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

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

.service-category-label[b-zavt0sxqga] {
    flex: 1;
    cursor: pointer;
    margin: 0;
    font-weight: normal;
    color: #495057;
}

.service-category-label .badge[b-zavt0sxqga] {
    font-size: 0.75rem;
    margin-right: 0.5rem;
}

.service-category-label small[b-zavt0sxqga] {
    font-size: 0.75rem;
    line-height: 1.4;
    color: #6c757d;
    margin-top: 0.25rem;
}

/* Form Check */
.form-check[b-zavt0sxqga] {
    display: flex;
    align-items: center;
    margin-top: 1.5rem;
    padding: 1rem;
    background: #f8f9fa;
    border-radius: 6px;
    border: 1px solid #e9ecef;
}

.form-check-input[b-zavt0sxqga] {
    margin-right: 0.75rem;
    width: 1rem;
    height: 1rem;
}

.form-check-label[b-zavt0sxqga] {
    margin: 0;
    font-weight: 600;
    color: #495057;
    cursor: pointer;
}

/* Responsive Enhancements for Billing Tab */
@media (max-width: 768px) {
    .billing-header[b-zavt0sxqga] {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch;
    }
    
    .billing-actions[b-zavt0sxqga] {
        justify-content: flex-start;
    }
    
    .billing-addresses-grid[b-zavt0sxqga] {
        grid-template-columns: 1fr;
    }
    
    .billing-form-container[b-zavt0sxqga] {
        padding: 1rem;
    }
    
    .billing-form-container .row[b-zavt0sxqga] {
        margin: 0;
    }
    
    .billing-form-container .col-md-6[b-zavt0sxqga],
    .billing-form-container .col-md-8[b-zavt0sxqga],
    .billing-form-container .col-md-4[b-zavt0sxqga],
    .billing-form-container .col-md-12[b-zavt0sxqga] {
        padding: 0;
        margin-bottom: 1rem;
    }
}

@media (max-width: 576px) {
    .billing-address-card .card-header[b-zavt0sxqga],
    .billing-address-card .card-body[b-zavt0sxqga] {
        padding: 1rem;
    }
    
    .address-name[b-zavt0sxqga] {
        font-size: 1rem;
    }
    
    .service-categories-selection[b-zavt0sxqga] {
        max-height: 200px;
        padding: 0.75rem;
    }
    
    .service-category-item[b-zavt0sxqga] {
        padding: 0.5rem;
    }
}

/* Toast Customization */
[b-zavt0sxqga] .e-toast-container .e-toast {
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

[b-zavt0sxqga] .e-toast-success {
    background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
}

[b-zavt0sxqga] .e-toast-error {
    background: linear-gradient(135deg, #dc3545 0%, #fd7e14 100%);
}

[b-zavt0sxqga] .e-toast-warning {
    background: linear-gradient(135deg, #ffc107 0%, #ff8c00 100%);
}
/* _content/FRP.Web/Components/Pages/Administration/InsuranceCompanies/InsuranceCompanyList.razor.rz.scp.css */
/* Container */
.insurance-companies-container[b-vklmo5hegv] {
    height: calc(100vh - 60px);
    display: flex;
    flex-direction: column;
    background: #f8f9fa;
    overflow: hidden;
}

/* Page Header */
.page-header[b-vklmo5hegv] {
    background: white;
    padding: 1.5rem 2rem;
    border-bottom: 2px solid #e9ecef;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-shrink: 0;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.header-content[b-vklmo5hegv] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.page-title[b-vklmo5hegv] {
    font-size: 1.75rem;
    font-weight: 600;
    color: #2c3e50;
    margin: 0;
}

.page-subtitle[b-vklmo5hegv] {
    color: #6c757d;
    font-size: 0.95rem;
    margin: 0;
}

.header-actions[b-vklmo5hegv] {
    display: flex;
    gap: 0.75rem;
}

/* Statistics Row */
.stats-row[b-vklmo5hegv] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
    padding: 1.5rem 2rem;
    background: #f8f9fa;
    flex-shrink: 0;
}

.stat-card[b-vklmo5hegv] {
    background: white;
    border-radius: 12px;
    padding: 1.5rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.stat-card:hover[b-vklmo5hegv] {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0,0,0,0.12);
}

.stat-icon[b-vklmo5hegv] {
    width: 60px;
    height: 60px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.stat-icon.active[b-vklmo5hegv] {
    background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
}

.stat-content[b-vklmo5hegv] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.stat-value[b-vklmo5hegv] {
    font-size: 2rem;
    font-weight: 700;
    color: #2c3e50;
    line-height: 1;
}

.stat-label[b-vklmo5hegv] {
    font-size: 0.875rem;
    color: #6c757d;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Grid Container */
.grid-container[b-vklmo5hegv] {
    flex: 1;
    padding: 0 2rem 2rem 2rem;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.loading-container[b-vklmo5hegv] {
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 1;
    min-height: 400px;
}

/* Grid Customizations */
[b-vklmo5hegv] .e-grid {
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    background: white;
}

[b-vklmo5hegv] .e-grid .e-gridheader {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-bottom: 2px solid #dee2e6;
}

[b-vklmo5hegv] .e-grid .e-headercell {
    font-weight: 600;
    color: #495057;
    border-right: 1px solid #dee2e6;
}

[b-vklmo5hegv] .e-grid .e-row:hover {
    background: #f8f9fa;
}

[b-vklmo5hegv] .e-grid .e-altrow {
    background: #fafbfc;
}

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

.company-name-cell strong[b-vklmo5hegv] {
    color: #2c3e50;
    font-weight: 600;
}

.company-name-cell small[b-vklmo5hegv] {
    font-size: 0.8rem;
    opacity: 0.8;
}

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

.action-buttons .e-btn[b-vklmo5hegv] {
    min-width: 32px;
    height: 32px;
    padding: 0;
    border-radius: 6px;
}

/* Modal Styles */
.modal-header-content[b-vklmo5hegv] {
    display: flex;
    align-items: center;
    font-weight: 600;
    color: #495057;
    font-size: 1.1rem;
}

.form-container[b-vklmo5hegv] {
    padding: 1rem 0;
}

.form-group[b-vklmo5hegv] {
    margin-bottom: 1.25rem;
}

.form-group label[b-vklmo5hegv] {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 500;
    color: #495057;
    font-size: 0.9rem;
}

.form-group input[b-vklmo5hegv],
.form-group textarea[b-vklmo5hegv] {
    width: 100%;
    padding: 0.75rem;
    border: 1px solid #ced4da;
    border-radius: 6px;
    font-size: 0.9rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.form-group input:focus[b-vklmo5hegv],
.form-group textarea:focus[b-vklmo5hegv] {
    border-color: #80bdff;
    outline: 0;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.form-check[b-vklmo5hegv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 1rem;
}

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

.form-check-label[b-vklmo5hegv] {
    font-weight: 500;
    color: #495057;
    margin: 0;
}

/* Badge Styles */
.badge[b-vklmo5hegv] {
    font-size: 0.8rem;
    padding: 0.375rem 0.75rem;
    border-radius: 6px;
    font-weight: 500;
}

.badge i[b-vklmo5hegv] {
    font-size: 0.75rem;
}

/* Responsive Design */
@media (max-width: 1200px) {
    .stats-row[b-vklmo5hegv] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .page-header[b-vklmo5hegv] {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch;
    }
    
    .stats-row[b-vklmo5hegv] {
        grid-template-columns: 1fr;
        gap: 1rem;
        padding: 1rem;
    }
    
    .grid-container[b-vklmo5hegv] {
        padding: 0 1rem 1rem 1rem;
    }
    
    .stat-card[b-vklmo5hegv] {
        padding: 1rem;
    }
    
    .stat-icon[b-vklmo5hegv] {
        width: 50px;
        height: 50px;
        font-size: 1.25rem;
    }
    
    .stat-value[b-vklmo5hegv] {
        font-size: 1.5rem;
    }
}

/* Toast Customization */
[b-vklmo5hegv] .e-toast-container .e-toast {
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

[b-vklmo5hegv] .e-toast-success {
    background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
}

[b-vklmo5hegv] .e-toast-error {
    background: linear-gradient(135deg, #dc3545 0%, #fd7e14 100%);
}

[b-vklmo5hegv] .e-toast-warning {
    background: linear-gradient(135deg, #ffc107 0%, #ff8c00 100%);
}
/* _content/FRP.Web/Components/Pages/Administration/Settings/SettingsList.razor.rz.scp.css */
/* Settings Container */
.settings-container[b-9rv72od11e] {
    padding: 20px;
    background: #f8f9fa;
    min-height: 100vh;
}

/* Page Header */
.page-header[b-9rv72od11e] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
    background: white;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.header-content h2.page-title[b-9rv72od11e] {
    color: #2c3e50;
    margin: 0;
    font-size: 1.8rem;
    font-weight: 600;
}

.page-subtitle[b-9rv72od11e] {
    color: #6c757d;
    margin: 5px 0 0 0;
    font-size: 0.95rem;
}

.header-actions[b-9rv72od11e] {
    display: flex;
    gap: 12px;
}

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

.stat-card[b-9rv72od11e] {
    background: white;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    display: flex;
    align-items: center;
    gap: 15px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.stat-card:hover[b-9rv72od11e] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.stat-icon[b-9rv72od11e] {
    width: 50px;
    height: 50px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #e3f2fd;
    color: #1976d2;
    font-size: 1.5rem;
}

.stat-icon.active[b-9rv72od11e] {
    background: #e8f5e8;
    color: #2e7d32;
}

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

.stat-value[b-9rv72od11e] {
    font-size: 2rem;
    font-weight: 700;
    color: #2c3e50;
    line-height: 1;
}

.stat-label[b-9rv72od11e] {
    color: #6c757d;
    font-size: 0.9rem;
    margin-top: 4px;
}

/* Settings Content */
.settings-content[b-9rv72od11e] {
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    overflow: hidden;
}

.loading-container[b-9rv72od11e] {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 60px;
}

/* Category Content */
.category-content[b-9rv72od11e] {
    padding: 20px;
}

.category-header[b-9rv72od11e] {
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid #e9ecef;
}

.category-header h4[b-9rv72od11e] {
    color: #2c3e50;
    margin: 0 0 5px 0;
    font-size: 1.3rem;
}

/* Setting Display */
.setting-display-name strong[b-9rv72od11e] {
    color: #2c3e50;
    font-size: 0.95rem;
}

.setting-display-name small[b-9rv72od11e] {
    display: block;
    margin-top: 2px;
    font-size: 0.8rem;
    line-height: 1.3;
}

.setting-value[b-9rv72od11e] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.value-text[b-9rv72od11e] {
    font-family: 'Segoe UI', monospace;
    font-size: 0.9rem;
    color: #495057;
}

.badge[b-9rv72od11e] {
    font-size: 0.7rem;
    padding: 2px 6px;
    border-radius: 4px;
}

/* Action Buttons */
.action-buttons[b-9rv72od11e] {
    display: flex;
    gap: 6px;
    align-items: center;
}

.action-buttons .e-btn[b-9rv72od11e] {
    padding: 6px 10px;
    min-width: auto;
    border-radius: 4px;
}

/* Modal Styling */
.modal-header-content[b-9rv72od11e] {
    display: flex;
    align-items: center;
    font-size: 1.1rem;
    font-weight: 600;
    color: #2c3e50;
}

.form-container[b-9rv72od11e] {
    padding: 15px 0;
}

.form-group[b-9rv72od11e] {
    margin-bottom: 20px;
}

.form-group label[b-9rv72od11e] {
    display: block;
    margin-bottom: 6px;
    color: #495057;
    font-weight: 500;
    font-size: 0.9rem;
}

.form-check[b-9rv72od11e] {
    display: flex;
    align-items: center;
    margin-top: 10px;
}

/* Tab Customization */
[b-9rv72od11e] .e-tab .e-tab-header {
    background: #f8f9fa;
    border-bottom: 2px solid #e9ecef;
}

[b-9rv72od11e] .e-tab .e-tab-header .e-toolbar-item {
    border-radius: 6px 6px 0 0;
    margin-right: 4px;
}

[b-9rv72od11e] .e-tab .e-tab-header .e-toolbar-item.e-active {
    background: white;
    border-bottom: 2px solid #007bff;
}

/* Grid Customization */
[b-9rv72od11e] .e-grid .e-gridheader {
    background: #f8f9fa;
    font-weight: 600;
}

[b-9rv72od11e] .e-grid .e-row:hover {
    background: #f8f9fa;
}

/* Toast Styling */
[b-9rv72od11e] .e-toast-container .e-toast {
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

[b-9rv72od11e] .e-toast.e-toast-success {
    border-left: 4px solid #28a745;
}

[b-9rv72od11e] .e-toast.e-toast-danger {
    border-left: 4px solid #dc3545;
}

[b-9rv72od11e] .e-toast.e-toast-warning {
    border-left: 4px solid #ffc107;
}

/* Responsive Design */
@media (max-width: 768px) {
    .page-header[b-9rv72od11e] {
        flex-direction: column;
        gap: 15px;
        align-items: stretch;
    }
    
    .header-actions[b-9rv72od11e] {
        justify-content: center;
    }
    
    .stats-row[b-9rv72od11e] {
        grid-template-columns: 1fr;
    }
    
    .stat-card[b-9rv72od11e] {
        padding: 15px;
    }
    
    .settings-container[b-9rv72od11e] {
        padding: 15px;
    }
    
    .category-content[b-9rv72od11e] {
        padding: 15px;
    }
}
/* _content/FRP.Web/Components/Pages/Billing/Index.razor.rz.scp.css */
/* Main Container */
.billing-container[b-7xr1a7j08i] {
    max-width: 1600px;
    margin: 0 auto;
    padding: 20px;
}

/* Page Header */
.page-header[b-7xr1a7j08i] {
    background: linear-gradient(135deg, #1976d2, #1565c0);
    color: white;
    padding: 25px;
    border-radius: 10px;
    margin-bottom: 30px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.header-content[b-7xr1a7j08i] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.page-title[b-7xr1a7j08i] {
    margin: 0;
    font-size: 28px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 15px;
}

.page-title i[b-7xr1a7j08i] {
    font-size: 32px;
}

/* Stats Section */
.stats-section[b-7xr1a7j08i] {
    margin-bottom: 30px;
}

.stats-grid[b-7xr1a7j08i] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
}

[b-7xr1a7j08i] .stat-card {
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border: 1px solid #e3e6f0;
    transition: transform 0.2s, box-shadow 0.2s;
}

[b-7xr1a7j08i] .stat-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

[b-7xr1a7j08i] .stat-card.open {
    border-left: 4px solid #007bff;
}

[b-7xr1a7j08i] .stat-card.overdue {
    border-left: 4px solid #dc3545;
}

[b-7xr1a7j08i] .stat-card.amount {
    border-left: 4px solid #28a745;
}

[b-7xr1a7j08i] .stat-card.monthly {
    border-left: 4px solid #6f42c1;
}

.stat-content[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    padding: 20px;
}

.stat-icon[b-7xr1a7j08i] {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 20px;
}

.stat-card.open .stat-icon[b-7xr1a7j08i] {
    background: #e3f2fd;
    color: #1976d2;
}

.stat-card.overdue .stat-icon[b-7xr1a7j08i] {
    background: #ffebee;
    color: #d32f2f;
}

.stat-card.amount .stat-icon[b-7xr1a7j08i] {
    background: #e8f5e8;
    color: #2e7d32;
}

.stat-card.monthly .stat-icon[b-7xr1a7j08i] {
    background: #f3e5f5;
    color: #7b1fa2;
}

.stat-icon i[b-7xr1a7j08i] {
    font-size: 24px;
}

.stat-details[b-7xr1a7j08i] {
    flex: 1;
}

.stat-value[b-7xr1a7j08i] {
    font-size: 32px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 5px;
    color: #2c3e50;
}

.stat-label[b-7xr1a7j08i] {
    font-size: 14px;
    color: #6c757d;
    font-weight: 500;
}

/* Filter Section */
.filter-section[b-7xr1a7j08i] {
    margin-bottom: 30px;
}

.filter-grid[b-7xr1a7j08i] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    align-items: end;
}

.filter-item[b-7xr1a7j08i] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.filter-item.date-range[b-7xr1a7j08i] {
    min-width: 250px;
}

.filter-item.filter-actions[b-7xr1a7j08i] {
    justify-content: end;
}

.filter-label[b-7xr1a7j08i] {
    font-size: 14px;
    font-weight: 600;
    color: #495057;
    margin-bottom: 5px;
}

/* Batch Actions Toolbar */
.batch-actions-toolbar[b-7xr1a7j08i] {
    background: linear-gradient(135deg, #28a745, #20c997);
    color: white;
    padding: 15px 20px;
    border-radius: 8px;
    margin-bottom: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: 0 2px 8px rgba(40, 167, 69, 0.3);
}

.selection-info[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
}

.selection-info i[b-7xr1a7j08i] {
    font-size: 18px;
}

.batch-actions[b-7xr1a7j08i] {
    display: flex;
    gap: 10px;
}

/* Grid Section */
.grid-section[b-7xr1a7j08i] {
    margin-bottom: 30px;
}

[b-7xr1a7j08i] .e-grid {
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

[b-7xr1a7j08i] .e-grid .e-gridheader {
    background: #f8f9fa;
    border-bottom: 2px solid #dee2e6;
}

[b-7xr1a7j08i] .e-grid .e-columnheader {
    font-weight: 600;
    color: #495057;
}

[b-7xr1a7j08i] .e-grid .e-row {
    transition: background-color 0.2s;
}

[b-7xr1a7j08i] .e-grid .e-row:hover {
    background-color: #f8f9fa;
}

[b-7xr1a7j08i] .e-grid .e-altrow {
    background-color: #fbfbfb;
}

/* Status Badges */
.status-badge[b-7xr1a7j08i] {
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.status-open[b-7xr1a7j08i] {
    background-color: #fff3cd;
    color: #856404;
    border: 1px solid #ffeaa7;
}

.status-sent[b-7xr1a7j08i] {
    background-color: #d1ecf1;
    color: #0c5460;
    border: 1px solid #b8daff;
}

.status-partial[b-7xr1a7j08i] {
    background-color: #ffeaa7;
    color: #856404;
    border: 1px solid #fab005;
}

.status-paid[b-7xr1a7j08i] {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.status-overdue[b-7xr1a7j08i] {
    background-color: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

.status-cancelled[b-7xr1a7j08i] {
    background-color: #e2e3e5;
    color: #495057;
    border: 1px solid #ced4da;
}

/* Badges */
.badge[b-7xr1a7j08i] {
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 11px;
    font-weight: 600;
    margin-right: 8px;
}

.badge-insurance[b-7xr1a7j08i] {
    background-color: #e3f2fd;
    color: #1976d2;
}

.badge-private[b-7xr1a7j08i] {
    background-color: #fff3e0;
    color: #f57c00;
}

/* ServiceRecord Badges */
.badge-secondary[b-7xr1a7j08i] {
    background-color: #e2e3e5;
    color: #495057;
    border: 1px solid #ced4da;
}

.badge-warning[b-7xr1a7j08i] {
    background-color: #fff3cd;
    color: #856404;
    border: 1px solid #ffeaa7;
}

.badge-success[b-7xr1a7j08i] {
    background-color: #d4edda;
    color: #155724;
    border: 1px solid #c3e6cb;
}

.badge-primary[b-7xr1a7j08i] {
    background-color: #d1ecf1;
    color: #0c5460;
    border: 1px solid #b8daff;
}

/* Links */
.invoice-link[b-7xr1a7j08i] {
    color: #007bff;
    text-decoration: none;
    font-weight: 600;
}

.invoice-link:hover[b-7xr1a7j08i] {
    color: #0056b3;
    text-decoration: underline;
}

/* Action Buttons */
.action-buttons[b-7xr1a7j08i] {
    display: flex;
    gap: 5px;
    justify-content: center;
}

[b-7xr1a7j08i] .e-btn-icon {
    width: 32px;
    height: 32px;
    border-radius: 4px;
}

/* Overdue and Due Soon Row Styling */
[b-7xr1a7j08i] .overdue-row {
    background-color: #ffebee !important;
    border-left: 4px solid #f44336 !important;
}

[b-7xr1a7j08i] .overdue-row:hover {
    background-color: #ffcdd2 !important;
}

[b-7xr1a7j08i] .due-soon-row {
    background-color: #fff3e0 !important;
    border-left: 4px solid #ff9800 !important;
}

[b-7xr1a7j08i] .due-soon-row:hover {
    background-color: #ffe0b2 !important;
}

/* Text Utilities */
.text-danger[b-7xr1a7j08i] {
    color: #dc3545 !important;
}

.text-success[b-7xr1a7j08i] {
    color: #28a745 !important;
}

.text-warning[b-7xr1a7j08i] {
    color: #ffc107 !important;
}

.text-muted[b-7xr1a7j08i] {
    color: #6c757d !important;
}

/* Payment Modal */
.dialog-header[b-7xr1a7j08i] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 18px;
    font-weight: 600;
}

.dialog-header i[b-7xr1a7j08i] {
    color: #007bff;
    font-size: 20px;
}

.payment-form[b-7xr1a7j08i] {
    padding: 20px;
}

.form-info[b-7xr1a7j08i] {
    background: #e3f2fd;
    border-left: 4px solid #2196f3;
    padding: 12px 15px;
    margin-bottom: 20px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #1976d2;
    font-weight: 500;
}

.form-info i[b-7xr1a7j08i] {
    font-size: 16px;
}

.form-group[b-7xr1a7j08i] {
    margin-bottom: 20px;
}

.form-group label[b-7xr1a7j08i] {
    display: block;
    margin-bottom: 5px;
    font-weight: 600;
    color: #495057;
}

.required[b-7xr1a7j08i] {
    color: #dc3545;
}

.dialog-footer[b-7xr1a7j08i] {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    padding: 15px 20px;
    background: #f8f9fa;
    border-top: 1px solid #dee2e6;
}

/* Card Styling */
[b-7xr1a7j08i] .e-card {
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border: 1px solid #e3e6f0;
}

[b-7xr1a7j08i] .e-card .e-card-content {
    padding: 20px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .billing-container[b-7xr1a7j08i] {
        padding: 10px;
    }

    .header-content[b-7xr1a7j08i] {
        flex-direction: column;
        gap: 15px;
        align-items: flex-start;
    }

    .stats-grid[b-7xr1a7j08i] {
        grid-template-columns: 1fr;
    }

    .filter-grid[b-7xr1a7j08i] {
        grid-template-columns: 1fr;
    }

    .batch-actions-toolbar[b-7xr1a7j08i] {
        flex-direction: column;
        gap: 15px;
        align-items: stretch;
    }

    .batch-actions[b-7xr1a7j08i] {
        justify-content: center;
        flex-wrap: wrap;
    }
}
/* _content/FRP.Web/Components/Pages/Billing/InvoiceDetail.razor.rz.scp.css */
/* Invoice Detail Container */
.invoice-detail-container[b-msojws3w7v] {
    padding: 20px;
    max-width: 1400px;
    margin: 0 auto;
}

/* Loading and Error States */
.loading-container[b-msojws3w7v] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 400px;
}

.loading-spinner[b-msojws3w7v] {
    text-align: center;
}

.loading-spinner i[b-msojws3w7v] {
    color: #6c757d;
    margin-bottom: 15px;
}

.loading-spinner p[b-msojws3w7v] {
    color: #6c757d;
    font-size: 1.1rem;
}

.error-container[b-msojws3w7v] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 400px;
}

.error-message[b-msojws3w7v] {
    text-align: center;
    color: #dc3545;
}

.error-message i[b-msojws3w7v] {
    margin-bottom: 15px;
}

.error-message h3[b-msojws3w7v] {
    margin-bottom: 10px;
}

.error-message p[b-msojws3w7v] {
    margin-bottom: 20px;
    color: #6c757d;
}

/* Header Styling */
.page-header[b-msojws3w7v] {
    margin-bottom: 30px;
    padding: 20px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 12px;
    color: white;
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
}

.header-content[b-msojws3w7v] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
}

.page-title[b-msojws3w7v] {
    font-size: 2rem;
    font-weight: 600;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 15px;
}

.page-title i[b-msojws3w7v] {
    font-size: 1.8rem;
}

.header-actions[b-msojws3w7v] {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

/* Info Cards Grid */
.invoice-info-section[b-msojws3w7v] {
    margin-bottom: 30px;
}

.info-grid[b-msojws3w7v] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
    margin-bottom: 20px;
}

/* 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: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
    padding: 15px 20px;
}

.card-header-content[b-msojws3w7v] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
    color: #495057;
}

.card-header-content i[b-msojws3w7v] {
    font-size: 1.1rem;
    color: #6c757d;
}

.header-actions[b-msojws3w7v] {
    margin-left: auto;
    display: flex;
    gap: 8px;
}

/* Info Details */
.info-details[b-msojws3w7v] {
    padding: 20px;
}

.info-row[b-msojws3w7v] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 0;
    border-bottom: 1px solid #f1f3f4;
}

.info-row:last-child[b-msojws3w7v] {
    border-bottom: none;
}

.info-row .label[b-msojws3w7v] {
    font-weight: 500;
    color: #6c757d;
}

/* Status Badges */
.status-badge[b-msojws3w7v] {
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 500;
    text-transform: uppercase;
}

.status-draft[b-msojws3w7v] { background: #e9ecef; color: #6c757d; }
.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: #f5f5f5; color: #6c757d; }

.billing-type[b-msojws3w7v] {
    padding: 4px 12px;
    border-radius: 15px;
    font-size: 0.85rem;
    font-weight: 500;
}

.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: 20px;
}

.amount-row[b-msojws3w7v] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid #f1f3f4;
}

.amount-row:last-child[b-msojws3w7v] {
    border-bottom: none;
    padding-top: 15px;
    border-top: 2px solid #dee2e6;
}

.amount-row.total .label[b-msojws3w7v],
.amount-row.total .amount[b-msojws3w7v] {
    font-weight: 600;
    font-size: 1.1rem;
    color: #212529;
}

.amount-row.paid .amount[b-msojws3w7v] {
    color: #28a745;
}

.amount-row.outstanding .amount[b-msojws3w7v] {
    color: #dc3545;
    font-weight: 600;
}

/* Recipient Card */
.recipient-details[b-msojws3w7v] {
    padding: 20px;
}

.recipient-name[b-msojws3w7v] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #212529;
    margin-bottom: 5px;
}

.guest-info[b-msojws3w7v] {
    font-size: 0.9rem;
    color: #6c757d;
}

/* Invoice Items Section */
.invoice-items-section[b-msojws3w7v] {
    margin-bottom: 30px;
}

.action-buttons[b-msojws3w7v] {
    display: flex;
    gap: 5px;
    justify-content: center;
}

/* Calendar Section */
.calendar-section[b-msojws3w7v] {
    margin-bottom: 30px;
}

.calendar-section .e-schedule[b-msojws3w7v] {
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

/* Notes Section */
.notes-section[b-msojws3w7v] {
    margin-bottom: 30px;
}

.notes-display[b-msojws3w7v] {
    padding: 20px;
    background: #f8f9fa;
    border-radius: 6px;
    border: 1px solid #e9ecef;
    white-space: pre-wrap;
    min-height: 60px;
    color: #495057;
}

/* Payment Modal */
.payment-form[b-msojws3w7v] {
    padding: 20px 0;
}

.form-group[b-msojws3w7v] {
    margin-bottom: 20px;
}

.form-group label[b-msojws3w7v] {
    display: block;
    margin-bottom: 5px;
    font-weight: 500;
    color: #495057;
}

.form-group .required[b-msojws3w7v] {
    color: #dc3545;
}

.form-help[b-msojws3w7v] {
    display: block;
    margin-top: 5px;
    font-size: 0.85rem;
    color: #6c757d;
}

.dialog-header[b-msojws3w7v] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-weight: 600;
}

.dialog-header i[b-msojws3w7v] {
    color: #007bff;
}

.dialog-footer[b-msojws3w7v] {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
}

/* Responsive Design */
@media (max-width: 768px) {
    .invoice-detail-container[b-msojws3w7v] {
        padding: 10px;
    }
    
    .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: 5px;
    }
    
    .amount-row[b-msojws3w7v] {
        flex-direction: column;
        align-items: flex-start;
        gap: 5px;
    }
    
    .page-title[b-msojws3w7v] {
        font-size: 1.5rem;
    }
}

/* Animation Effects */
.invoice-detail-container .e-card[b-msojws3w7v] {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.invoice-detail-container .e-card:hover[b-msojws3w7v] {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
}

/* Grid Styling */
.invoice-items-section .e-grid .e-gridheader[b-msojws3w7v] {
    background: #f8f9fa;
    border-bottom: 2px solid #dee2e6;
}

.invoice-items-section .e-grid .e-rowcell[b-msojws3w7v] {
    border-bottom: 1px solid #f1f3f4;
}

.invoice-items-section .e-grid .e-altrow[b-msojws3w7v] {
    background: #fafafa;
}

/* Calendar Event Colors */
[b-msojws3w7v] .e-schedule .e-appointment {
    border-radius: 6px;
    border: none;
    font-weight: 500;
}

[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: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 0.375rem;
    font-size: 0.75rem;
    font-weight: 500;
    color: white;
    white-space: nowrap;
}

.category-badge.category-43b[b-msojws3w7v] {
    background-color: #dc3545;
}

.category-badge.category-betreuung[b-msojws3w7v] {
    background-color: #28a745;
}

.category-badge.category-pflege[b-msojws3w7v] {
    background-color: #007bff;
}

.category-badge.category-therapie[b-msojws3w7v] {
    background-color: #fd7e14;
}

.category-badge.category-transport[b-msojws3w7v] {
    background-color: #6f42c1;
}

.category-badge.category-default[b-msojws3w7v] {
    background-color: #17a2b8;
}

.category-badge i[b-msojws3w7v] {
    font-size: 0.75rem;
}

/* Calendar Collapse Section */
.calendar-collapse-card[b-msojws3w7v] {
    transition: all 0.3s ease;
}

.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: 0.5rem 0;
    transition: all 0.3s ease;
}

.calendar-header-content:hover[b-msojws3w7v] {
    background-color: #f8f9fa;
    border-radius: 0.25rem;
    margin: -0.25rem;
    padding: 0.75rem;
}

.calendar-summary-badges[b-msojws3w7v] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
}

.badge[b-msojws3w7v] {
    padding: 0.25rem 0.5rem;
    border-radius: 0.375rem;
    font-size: 0.75rem;
    font-weight: 500;
    color: white;
}

.badge.badge-success[b-msojws3w7v] {
    background-color: #28a745;
}

.badge.badge-info[b-msojws3w7v] {
    background-color: #17a2b8;
}

.badge.badge-warning[b-msojws3w7v] {
    background-color: #ffc107;
    color: #212529;
}

.badge.badge-danger[b-msojws3w7v] {
    background-color: #dc3545;
}

/* Grouped Invoice Items */
.invoice-items-grouped[b-msojws3w7v] {
    max-height: 500px;
    overflow-y: auto;
}

.category-group[b-msojws3w7v] {
    margin-bottom: 1.5rem;
    border: 1px solid #e9ecef;
    border-radius: 0.375rem;
    overflow: hidden;
}

.category-header[b-msojws3w7v] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: #f8f9fa;
    border-bottom: 1px solid #e9ecef;
}

.category-title[b-msojws3w7v] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: #495057;
}

.category-summary[b-msojws3w7v] {
    color: #6c757d;
    font-size: 0.875rem;
    font-weight: 500;
}

.category-items[b-msojws3w7v] {
    background: white;
}

.invoice-item-row[b-msojws3w7v] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 1rem;
    border-bottom: 1px solid #f1f3f4;
    transition: background-color 0.2s ease;
}

.invoice-item-row:last-child[b-msojws3w7v] {
    border-bottom: none;
}

.invoice-item-row:hover[b-msojws3w7v] {
    background-color: #f8f9fa;
}

.item-main[b-msojws3w7v] {
    flex: 1;
    min-width: 0;
}

.item-name[b-msojws3w7v] {
    font-weight: 600;
    color: #212529;
    font-size: 0.95rem;
    margin-bottom: 0.25rem;
}

.item-description[b-msojws3w7v] {
    color: #6c757d;
    font-size: 0.85rem;
    line-height: 1.4;
}

.item-details[b-msojws3w7v] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex-shrink: 0;
    text-align: right;
}

.item-quantity[b-msojws3w7v],
.item-price[b-msojws3w7v],
.item-total[b-msojws3w7v] {
    min-width: 70px;
    font-weight: 500;
    color: #495057;
}

.item-total[b-msojws3w7v] {
    font-weight: 600;
    color: #28a745;
}

.item-actions[b-msojws3w7v] {
    min-width: 40px;
}

/* 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: 1.5rem;
    }
    
    .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 */
.invoice-creation-container[b-p7mtvwa6nj] {
    max-width: 1400px;
    margin: 0 auto;
    padding: 20px;
}

/* Guest Info Cards - First Row (5 cards) */
.guest-info-cards-row[b-p7mtvwa6nj] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1rem;
    margin-bottom: 1rem;
}

/* Guest Notes Row - Second Row (full width) */
.guest-notes-row[b-p7mtvwa6nj] {
    margin-bottom: 1.5rem;
}

.info-card[b-p7mtvwa6nj] {
    background: white;
    border: 1px solid #e9ecef;
    border-radius: 8px;
    padding: 1rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.2s;
}

.info-card:hover[b-p7mtvwa6nj] {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.info-card-icon[b-p7mtvwa6nj] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 18px;
    flex-shrink: 0;
}

.info-card:nth-child(1) .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, #dc3545, #c82333); /* Pflegegrad - Red */
}

.info-card:nth-child(2) .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, #28a745, #1e7e34); /* Entlastungsbetrag - Green */
}

.info-card:nth-child(3) .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, #007bff, #0056b3); /* Leistungsnachweis - Blue */
}

.info-card:nth-child(4) .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, #6f42c1, #5a2d91); /* Rollstuhl - Purple */
}

.info-card:nth-child(5) .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, #17a2b8, #117a8b); /* Versicherung - Teal */
}

.info-card:nth-child(6) .info-card-icon[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, #ffc107, #e0a800); /* Notizen - Yellow */
}

.info-card-content[b-p7mtvwa6nj] {
    flex: 1;
    min-width: 0;
}

.info-card-label[b-p7mtvwa6nj] {
    font-size: 12px;
    font-weight: 600;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 4px;
}

.info-card-value[b-p7mtvwa6nj] {
    font-size: 14px;
    font-weight: 500;
    color: #212529;
    word-wrap: break-word;
}

/* Card highlight classes for deviations from standard */
.info-card.card-attention[b-p7mtvwa6nj] {
    border-color: #ffc107;
    background: linear-gradient(135deg, #fff8e1, #ffffff);
    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, #ffc107, #e0a800) !important;
    box-shadow: 0 2px 4px rgba(255, 193, 7, 0.3);
}

.info-card.card-warning[b-p7mtvwa6nj] {
    border-color: #dc3545;
    background: linear-gradient(135deg, #ffebee, #ffffff);
    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, #dc3545, #c82333) !important;
    box-shadow: 0 2px 4px rgba(220, 53, 69, 0.3);
}

/* Notes Card Styling */
.notes-card[b-p7mtvwa6nj] {
    background: white;
    border: 1px solid #e9ecef;
    border-radius: 8px;
    padding: 1rem;
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    transition: box-shadow 0.2s;
}

.notes-card:hover[b-p7mtvwa6nj] {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.notes-card-icon[b-p7mtvwa6nj] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 18px;
    flex-shrink: 0;
    background: linear-gradient(135deg, #ffc107, #e0a800);
}

.notes-card-content[b-p7mtvwa6nj] {
    flex: 1;
    width: 100%;
}

.notes-card-label[b-p7mtvwa6nj] {
    font-size: 12px;
    font-weight: 600;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}

[b-p7mtvwa6nj] .notes-input-large {
    width: 100%;
}

[b-p7mtvwa6nj] .notes-input-large .e-input {
    border: 1px solid #ced4da;
    border-radius: 6px;
    padding: 8px 12px;
    font-size: 14px;
    min-height: 40px;
    background: #f8f9fa;
    transition: all 0.2s;
}

[b-p7mtvwa6nj] .notes-input-large .e-input:focus {
    border-color: #007bff;
    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: 0.75rem;
    }
    
    .info-card-icon[b-p7mtvwa6nj], .notes-card-icon[b-p7mtvwa6nj] {
        width: 35px;
        height: 35px;
        font-size: 16px;
    }
    
    .notes-card[b-p7mtvwa6nj] {
        padding: 0.75rem;
    }
}

@media (max-width: 480px) {
    .guest-info-cards-row[b-p7mtvwa6nj] {
        grid-template-columns: 1fr;
    }
    
    .notes-card[b-p7mtvwa6nj] {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    
    .notes-card-content[b-p7mtvwa6nj] {
        width: 100%;
    }
}


/* Parameter Card */
[b-p7mtvwa6nj] .parameter-card {
    margin-bottom: 30px;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border: 1px solid #e3e6f0;
}

/* Calendar Collapse Card */
[b-p7mtvwa6nj] .calendar-collapse-card {
    margin-bottom: 20px;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border: 1px solid #e3e6f0;
}

[b-p7mtvwa6nj] .calendar-collapse-card.collapsed {
    margin-bottom: 15px;
}

.calendar-header-content[b-p7mtvwa6nj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px;
    cursor: pointer;
    user-select: none;
    transition: background-color 0.2s;
    width: 100%;
}

.calendar-header-content:hover[b-p7mtvwa6nj] {
    background-color: #f5f5f5;
}

.calendar-summary-badges[b-p7mtvwa6nj] {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.calendar-summary-badges .badge[b-p7mtvwa6nj] {
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 500;
    white-space: nowrap;
}

.calendar-summary-badges .badge-success[b-p7mtvwa6nj] {
    background-color: #d4edda;
    color: #155724;
}

.calendar-summary-badges .badge-info[b-p7mtvwa6nj] {
    background-color: #d1ecf1;
    color: #0c5460;
}

.calendar-summary-badges .badge-warning[b-p7mtvwa6nj] {
    background-color: #fff3cd;
    color: #856404;
}

.calendar-summary-badges .badge-danger[b-p7mtvwa6nj] {
    background-color: #f8d7da;
    color: #721c24;
}

.card-header-content[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 18px;
    font-weight: 500;
    justify-content: space-between;
    width: 100%;
    transition: all 0.3s ease;
}

.card-header-content.collapsed[b-p7mtvwa6nj] {
    opacity: 0.95;
}

.checkin-summary-badges[b-p7mtvwa6nj] {
    display: flex;
    gap: 10px;
    align-items: center;
}

.badge[b-p7mtvwa6nj] {
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
    color: white;
}

.badge-success[b-p7mtvwa6nj] {
    background: #28a745;
}

.badge-info[b-p7mtvwa6nj] {
    background: #17a2b8;
}

.badge-warning[b-p7mtvwa6nj] {
    background: #ffc107;
    color: #212529;
}

.header-actions[b-p7mtvwa6nj] {
    display: flex;
    gap: 12px;
    margin-left: auto;
    flex-shrink: 0;
    align-items: center;
    min-width: fit-content;
}

.header-actions .e-btn[b-p7mtvwa6nj] {
    font-size: 13px;
    padding: 6px 12px;
    white-space: nowrap; /* Prevent text wrapping */
    min-width: auto;
    border-radius: 6px;
}

.header-actions .e-btn i[b-p7mtvwa6nj] {
    margin-right: 5px;
    font-size: 12px;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .header-actions[b-p7mtvwa6nj] {
        flex-direction: column;
        gap: 8px;
        margin-top: 10px;
    }
    
    .card-header-content[b-p7mtvwa6nj] {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
    }
}

.parameter-grid[b-p7mtvwa6nj] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: end;
}

.parameter-item[b-p7mtvwa6nj] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.parameter-item label[b-p7mtvwa6nj] {
    font-weight: 500;
    color: #5a5c69;
    font-size: 14px;
}

/* Guest Navigation */
.guest-navigation[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 10px;
    background: #f8f9fa;
    border: 1px solid #e3e6f0;
    border-radius: 8px;
}

.current-guest-info[b-p7mtvwa6nj] {
    flex: 1;
    text-align: center;
    padding: 0 15px;
}

.guest-name-display[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-bottom: 5px;
    font-size: 16px;
}

.guest-position[b-p7mtvwa6nj] {
    font-size: 12px;
    color: #6c757d;
    font-weight: 500;
}

.existing-invoice-warning[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(135deg, #fff3cd, #fff9e7);
    border-left: 4px solid #ffc107;
    padding: 12px 15px;
    margin-top: 15px;
    border-radius: 6px;
    color: #856404;
    font-size: 14px;
}

.existing-invoice-warning i[b-p7mtvwa6nj] {
    color: #ff9800;
    font-size: 18px;
}

.no-guest-selected[b-p7mtvwa6nj] {
    color: #6c757d;
    font-style: italic;
    font-size: 14px;
}

.guest-navigation .e-btn[b-p7mtvwa6nj] {
    min-width: 100px;
    display: flex;
    align-items: center;
    gap: 5px;
}

.guest-navigation .e-btn i[b-p7mtvwa6nj] {
    font-size: 12px;
}

/* Guest Dropdown Styling */
.guest-dropdown-item[b-p7mtvwa6nj] {
    padding: 10px 0;
    border-bottom: 1px solid #f0f0f0;
}

.guest-dropdown-item:last-child[b-p7mtvwa6nj] {
    border-bottom: none;
}

.guest-main-info[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 4px;
}

.guest-sub-info[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 12px;
    color: #6c757d;
}

.guest-value-display[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.private-billing-info[b-p7mtvwa6nj] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #e74a3b;
    font-weight: 500;
}

.private-billing-info i[b-p7mtvwa6nj] {
    font-size: 11px;
}

.insurance-info[b-p7mtvwa6nj] {
    color: #4e73df;
    font-weight: 500;
}

.guest-name[b-p7mtvwa6nj] {
    font-weight: 500;
    color: #2c3e50;
}

.care-level-badge[b-p7mtvwa6nj] {
    background: #4e73df;
    color: white;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
}

.private-billing-badge[b-p7mtvwa6nj] {
    background: #e74a3b;
    color: white;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.private-billing-badge i[b-p7mtvwa6nj] {
    font-size: 11px;
}

/* 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: 30px;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border: 1px solid #e3e6f0;
}

/* Compact Calendar */
.checkin-calendar-compact[b-p7mtvwa6nj] {
    padding: 20px;
}

.calendar-grid[b-p7mtvwa6nj] {
    max-width: 600px;
    margin: 0 auto;
}

.calendar-weekdays[b-p7mtvwa6nj] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 5px;
    margin-bottom: 10px;
}

.weekday[b-p7mtvwa6nj] {
    text-align: center;
    font-weight: 600;
    color: #6c757d;
    font-size: 14px;
    padding: 8px 0;
}

.calendar-days[b-p7mtvwa6nj] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 5px;
}

.calendar-day[b-p7mtvwa6nj] {
    aspect-ratio: 1;
    border: 1px solid #e3e6f0;
    border-radius: 8px;
    padding: 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    transition: all 0.2s ease;
    min-height: 60px;
}

.calendar-day:hover:not(.empty-day)[b-p7mtvwa6nj] {
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.empty-day[b-p7mtvwa6nj] {
    background: transparent;
    border: none;
}

.present-day[b-p7mtvwa6nj] {
    background: #d4edda;
    border-color: #28a745;
}

.absent-day[b-p7mtvwa6nj] {
    background: #f8d7da;
    border-color: #dc3545;
}

.planned-absent-day[b-p7mtvwa6nj] {
    background: #fff3cd;
    border-color: #ffc107;
}

.no-checkin-day[b-p7mtvwa6nj] {
    background: #f8f9fa;
}

.day-number[b-p7mtvwa6nj] {
    font-weight: 600;
    font-size: 14px;
    color: #2c3e50;
    margin-bottom: 4px;
}

.checkin-status[b-p7mtvwa6nj] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.checkin-status i[b-p7mtvwa6nj] {
    font-size: 14px;
}

.text-success[b-p7mtvwa6nj] {
    color: #28a745 !important;
}

.text-warning[b-p7mtvwa6nj] {
    color: #ffc107 !important;
}

.text-danger[b-p7mtvwa6nj] {
    color: #dc3545 !important;
}

.text-primary[b-p7mtvwa6nj] {
    color: #007bff !important;
}

.text-info[b-p7mtvwa6nj] {
    color: #17a2b8 !important;
}

/* Calendar Summary */
.calendar-summary[b-p7mtvwa6nj] {
    display: flex;
    justify-content: center;
    gap: 30px;
    margin-top: 30px;
    padding: 20px;
    background: #f8f9fa;
    border-radius: 8px;
}

.summary-item[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 500;
}

.summary-item i[b-p7mtvwa6nj] {
    font-size: 18px;
}

/* Service Selection Card */
[b-p7mtvwa6nj] .service-selection-card {
    margin-bottom: 30px;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border: 1px solid #e3e6f0;
}

/* Tab Styling */
[b-p7mtvwa6nj] .service-category-tabs .e-tab-header {
    background: #f8f9fa;
    border-bottom: 2px solid #e3e6f0;
}

.tab-header-content[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 5px 10px;
}

.category-code[b-p7mtvwa6nj] {
    background: #4e73df;
    color: white;
    padding: 4px 10px;
    border-radius: 6px;
    font-weight: 600;
    font-size: 14px;
}

.category-name[b-p7mtvwa6nj] {
    font-weight: 500;
    color: #2c3e50;
}

.category-total[b-p7mtvwa6nj] {
    margin-left: auto;
    font-weight: 600;
    color: #1cc88a;
}

/* Service Selection Content */
.service-selection-content[b-p7mtvwa6nj] {
    padding: 25px;
}

.billing-address-info[b-p7mtvwa6nj] {
    background: #e3f2fd;
    padding: 12px 20px;
    border-radius: 8px;
    margin-bottom: 25px;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #1565c0;
    font-weight: 500;
}

.billing-address-info i[b-p7mtvwa6nj] {
    font-size: 18px;
}

.private-entlastung-warning[b-p7mtvwa6nj] {
    background: #fff3cd;
    border: 1px solid #ffc107;
    padding: 12px 20px;
    border-radius: 8px;
    margin-bottom: 25px;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #856404;
    font-weight: 500;
}

.private-entlastung-warning i[b-p7mtvwa6nj] {
    font-size: 18px;
    color: #ffc107;
}

/* Add Service Row */
.add-service-row[b-p7mtvwa6nj] {
    margin-bottom: 20px;
}

/* Selected Services */
.selected-services[b-p7mtvwa6nj] {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-bottom: 30px;
}

.service-item-row[b-p7mtvwa6nj] {
    display: grid;
    grid-template-columns: 3fr 120px 20px 120px 20px 140px 40px;
    align-items: center;
    gap: 10px;
    padding: 15px;
    background: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #e3e6f0;
}

.service-name[b-p7mtvwa6nj] {
    font-weight: 500;
    color: #2c3e50;
    display: flex;
    align-items: center;
    gap: 10px;
}

.transport-info[b-p7mtvwa6nj] {
    font-size: 11px;
    color: #6c757d;
    font-weight: normal;
    font-style: italic;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.transport-info i[b-p7mtvwa6nj] {
    color: #17a2b8;
    font-size: 12px;
}

.spontaneous-absence-info[b-p7mtvwa6nj] {
    font-size: 11px;
    color: #6c757d;
    font-weight: normal;
    font-style: italic;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.spontaneous-absence-info i[b-p7mtvwa6nj] {
    color: #e74a3b;
    font-size: 12px;
}

.service-price[b-p7mtvwa6nj],
.service-total[b-p7mtvwa6nj] {
    text-align: right;
    font-weight: 600;
    color: #5a5c69;
}

.multiply-sign[b-p7mtvwa6nj],
.equals-sign[b-p7mtvwa6nj] {
    text-align: center;
    color: #6c757d;
    font-weight: 600;
}

/* Category Summary */
.category-summary[b-p7mtvwa6nj] {
    background: #f8f9fa;
    padding: 20px;
    border-radius: 8px;
    border: 1px solid #e3e6f0;
}

.summary-row[b-p7mtvwa6nj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    font-size: 18px;
    font-weight: 600;
}

.total-amount[b-p7mtvwa6nj] {
    color: #1cc88a;
}

.limit-info[b-p7mtvwa6nj] {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
    color: #5a5c69;
}

.limit-progress[b-p7mtvwa6nj] {
    margin-bottom: 15px;
    position: relative;
}

.progress-text[b-p7mtvwa6nj] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-weight: 600;
    font-size: 12px;
    color: #2c3e50;
    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: 15px;
    margin-top: 15px;
}

.split-item[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px;
    background: white;
    border-radius: 6px;
    border: 1px solid #e3e6f0;
}

.split-item i[b-p7mtvwa6nj] {
    font-size: 20px;
}

/* Invoice Preview Card */
[b-p7mtvwa6nj] .invoice-preview-card {
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border: 1px solid #e3e6f0;
}

/* Invoice Groups */
.invoice-groups h4[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #2c3e50;
    margin-bottom: 20px;
}

.invoice-group[b-p7mtvwa6nj] {
    background: #f8f9fa;
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 20px;
    border: 1px solid #e3e6f0;
}

.invoice-group.private[b-p7mtvwa6nj] {
    background: #fef8e7;
    border-color: #f6c23e;
}

.invoice-header[b-p7mtvwa6nj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #dee2e6;
}

.invoice-recipient-info[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.invoice-recipient[b-p7mtvwa6nj] {
    font-weight: 600;
    color: #2c3e50;
    font-size: 16px;
}

.invoice-address[b-p7mtvwa6nj] {
    color: #6c757d;
    font-size: 14px;
    margin-left: 15px;
}

.invoice-number-preview[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(135deg, #fff9e6, #fffdf5);
    padding: 10px 15px;
    border-radius: 8px;
    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: 700;
    color: #e65100;
    font-size: 16px;
    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: 16px;
}

.invoice-items[b-p7mtvwa6nj] {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-bottom: 15px;
}

/* Category Grouping */
.category-group[b-p7mtvwa6nj] {
    background: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #e3e6f0;
    overflow: hidden;
    margin-bottom: 12px;
}

.category-group:last-child[b-p7mtvwa6nj] {
    margin-bottom: 0;
}

.category-header[b-p7mtvwa6nj] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    padding: 10px 15px;
    border-bottom: 1px solid #dee2e6;
}

.category-title[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: white;
    font-weight: 600;
    font-size: 14px;
}

.category-title i[b-p7mtvwa6nj] {
    font-size: 13px;
}

.category-items[b-p7mtvwa6nj] {
    padding: 8px 12px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.invoice-item[b-p7mtvwa6nj] {
    display: grid;
    grid-template-columns: 1fr 80px 120px;
    gap: 15px;
    align-items: center;
    padding: 8px 10px;
    background: white;
    border-radius: 4px;
    border: 1px solid #f0f0f0;
}

.invoice-item.deduction-item[b-p7mtvwa6nj] {
    background: #fff3cd;
    border-color: #ffc107;
}

.invoice-item.deduction-item .item-amount[b-p7mtvwa6nj] {
    color: #dc3545;
    font-weight: 700;
}

.invoice-item.private-item[b-p7mtvwa6nj] {
    grid-template-columns: 100px 1fr 80px 120px;
}

.item-category[b-p7mtvwa6nj] {
    background: #f6c23e;
    color: white;
    padding: 4px 8px;
    border-radius: 4px;
    font-weight: 600;
    font-size: 12px;
    text-align: center;
}

.item-description[b-p7mtvwa6nj] {
    color: #2c3e50;
    font-size: 14px;
}

.item-quantity[b-p7mtvwa6nj] {
    text-align: right;
    color: #6c757d;
    font-size: 13px;
}

.item-amount[b-p7mtvwa6nj] {
    text-align: right;
    font-weight: 600;
    color: #5a5c69;
    font-size: 14px;
}

.category-subtotal[b-p7mtvwa6nj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 15px;
    background: #e7f3ff;
    border-top: 1px solid #4e73df;
}

.subtotal-label[b-p7mtvwa6nj] {
    font-weight: 600;
    color: #4e73df;
    font-size: 13px;
}

.subtotal-amount[b-p7mtvwa6nj] {
    font-weight: 700;
    color: #4e73df;
    font-size: 15px;
}

.invoice-due-date[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: #fff8dc;
    border-left: 3px solid #ffc107;
    margin: 0.75rem 0;
    color: #856404;
}

.invoice-total[b-p7mtvwa6nj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 15px;
    border-top: 2px solid #dee2e6;
    font-size: 18px;
    font-weight: 600;
    color: #2c3e50;
}

.invoice-summary[b-p7mtvwa6nj] {
    margin-top: 30px;
    padding: 20px;
    background: #e3f2fd;
    border-radius: 8px;
    text-align: center;
}

.summary-info[b-p7mtvwa6nj] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: #1565c0;
    font-weight: 500;
}

.no-invoices[b-p7mtvwa6nj] {
    text-align: center;
    padding: 40px;
    color: #6c757d;
}

.no-invoices i[b-p7mtvwa6nj] {
    font-size: 48px;
    margin-bottom: 15px;
}

/* No Services Available Card */
[b-p7mtvwa6nj] .no-services-card {
    margin-bottom: 30px;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border: 1px solid #e3e6f0;
    background: linear-gradient(135deg, #f8f9fa, #fff);
}

.no-services-message[b-p7mtvwa6nj] {
    text-align: center;
    padding: 60px 20px;
    color: #6c757d;
}

.no-services-message i[b-p7mtvwa6nj] {
    font-size: 64px;
    color: #d1d3e2;
    margin-bottom: 20px;
    display: block;
}

.no-services-message h4[b-p7mtvwa6nj] {
    color: #5a5c69;
    font-weight: 600;
    margin-bottom: 10px;
    font-size: 24px;
}

.no-services-message p[b-p7mtvwa6nj] {
    font-size: 16px;
    color: #858796;
    margin-bottom: 25px;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
}

.no-services-message .e-btn[b-p7mtvwa6nj] {
    margin-top: 15px;
}

/* Create Button Section */
.create-button-section[b-p7mtvwa6nj] {
    margin-top: 30px;
    padding: 20px;
    text-align: center;
    background: linear-gradient(135deg, #f8f9fa, #e9ecef);
    border-radius: 10px;
    border: 1px solid #e3e6f0;
}

.create-button-section .e-btn[b-p7mtvwa6nj] {
    padding: 15px 30px;
    font-size: 18px;
    font-weight: 600;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(28, 200, 138, 0.3);
    transition: all 0.3s ease;
}

.create-button-section .e-btn:hover[b-p7mtvwa6nj] {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(28, 200, 138, 0.4);
}

.create-button-section .e-btn i[b-p7mtvwa6nj] {
    margin-right: 10px;
    font-size: 16px;
}

/* Responsive Design */
@media (max-width: 768px) {
    .parameter-grid[b-p7mtvwa6nj] {
        grid-template-columns: 1fr;
    }
    
    .calendar-day[b-p7mtvwa6nj] {
        font-size: 12px;
        min-height: 50px;
    }
    
    .service-item-row[b-p7mtvwa6nj] {
        grid-template-columns: 1fr;
        gap: 5px;
    }
    
    .invoice-item[b-p7mtvwa6nj] {
        grid-template-columns: 1fr;
        gap: 5px;
    }
    
    .page-header[b-p7mtvwa6nj] {
        flex-direction: column;
        gap: 15px;
        text-align: center;
    }
    
    .calendar-summary[b-p7mtvwa6nj] {
        flex-direction: column;
        gap: 15px;
        align-items: center;
    }
    
    .split-info[b-p7mtvwa6nj] {
        grid-template-columns: 1fr;
    }
    
    /* Mobile create button adjustments */
    .create-button-section .e-btn[b-p7mtvwa6nj] {
        padding: 12px 24px;
        font-size: 16px;
    }
    
    /* Mobile guest navigation adjustments */
    .guest-navigation[b-p7mtvwa6nj] {
        flex-direction: column;
        gap: 10px;
    }
    
    .guest-navigation .e-btn[b-p7mtvwa6nj] {
        min-width: auto;
        width: 100%;
    }
    
    .current-guest-info[b-p7mtvwa6nj] {
        order: -1;
        margin-bottom: 10px;
    }
}

/* Syncfusion Component Overrides */
[b-p7mtvwa6nj] .service-category-tabs .e-tab-header .e-active .e-tab-text {
    color: #4e73df;
    font-weight: 600;
}

[b-p7mtvwa6nj] .service-category-tabs .e-tab-header .e-indicator {
    background-color: #4e73df;
}

[b-p7mtvwa6nj] .e-numerictextbox.e-control-wrapper {
    min-width: 120px;
    width: auto;
}

[b-p7mtvwa6nj] .e-toast-success {
    background-color: #1cc88a;
}

[b-p7mtvwa6nj] .e-toast-danger {
    background-color: #e74a3b;
}

/* Progress Bar Colors */
[b-p7mtvwa6nj] .e-progressbar .e-progress {
    transition: all 0.3s ease;
}

/* Button Overrides */
[b-p7mtvwa6nj] .e-btn.e-success {
    background: linear-gradient(135deg, #1cc88a, #17a673);
    border: none;
    box-shadow: 0 2px 4px rgba(28, 200, 138, 0.3);
}

[b-p7mtvwa6nj] .e-btn.e-success:hover {
    background: linear-gradient(135deg, #17a673, #138f5f);
    box-shadow: 0 4px 8px rgba(28, 200, 138, 0.4);
    transform: translateY(-1px);
}

[b-p7mtvwa6nj] .e-btn.e-outline {
    border: 2px solid #4e73df;
    color: #4e73df;
    background: transparent;
}

[b-p7mtvwa6nj] .e-btn.e-outline:hover {
    background: #4e73df;
    color: white;
}

/* Card Styling */
[b-p7mtvwa6nj] .e-card {
    border: none;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border-radius: 10px;
}

[b-p7mtvwa6nj] .e-card .e-card-header {
    background: #f8f9fa;
    border-bottom: 1px solid #e3e6f0;
    border-radius: 10px 10px 0 0;
    padding: 20px;
}

[b-p7mtvwa6nj] .e-card .e-card-content {
    padding: 20px;
}

/* 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: 6px;
}

[b-p7mtvwa6nj] .e-dropdownlist .e-input-group,
[b-p7mtvwa6nj] .e-combobox .e-input-group {
    border: 1px solid #e3e6f0;
    border-radius: 6px;
}

[b-p7mtvwa6nj] .e-dropdownlist:hover .e-input-group,
[b-p7mtvwa6nj] .e-combobox:hover .e-input-group {
    border-color: #4e73df;
}

/* DatePicker Styling */
[b-p7mtvwa6nj] .e-datepicker .e-input-group {
    border: 1px solid #e3e6f0;
    border-radius: 6px;
}

[b-p7mtvwa6nj] .e-datepicker:hover .e-input-group {
    border-color: #4e73df;
}

/* NumericTextBox Styling */
[b-p7mtvwa6nj] .e-numerictextbox .e-input-group {
    border: 1px solid #e3e6f0;
    border-radius: 6px;
}

[b-p7mtvwa6nj] .e-numerictextbox:hover .e-input-group {
    border-color: #4e73df;
}

/* Remove Button Styling */
[b-p7mtvwa6nj] .e-btn.e-small.e-round.e-danger {
    width: 32px;
    height: 32px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Progress Bar Container */
[b-p7mtvwa6nj] .e-progressbar-container {
    border-radius: 10px;
    overflow: hidden;
}

/* Elegant animations */
@keyframes fadeIn-b-p7mtvwa6nj {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.invoice-creation-container[b-p7mtvwa6nj] {
    animation: fadeIn-b-p7mtvwa6nj 0.3s ease-out;
}

/* Smooth transitions */
*[b-p7mtvwa6nj] {
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

/* Focus styles */
[b-p7mtvwa6nj] .e-input-group:focus-within {
    border-color: #4e73df;
    box-shadow: 0 0 0 2px rgba(78, 115, 223, 0.25);
}

/* Elegant hover effects */
.calendar-day:hover:not(.empty-day)[b-p7mtvwa6nj] {
    background: rgba(78, 115, 223, 0.1);
}

.invoice-group:hover[b-p7mtvwa6nj] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}

/* Modern scrollbar */
[b-p7mtvwa6nj]::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

[b-p7mtvwa6nj]::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 4px;
}

[b-p7mtvwa6nj]::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 4px;
}

[b-p7mtvwa6nj]::-webkit-scrollbar-thumb:hover {
    background: #a8a8a8;
}
/* _content/FRP.Web/Components/Pages/CheckIns/WeeklyCalendar.razor.rz.scp.css */
/* Container */
.weekly-calendar-container[b-962k6cyirw] {
    min-height: calc(100vh - 60px);
    display: flex;
    flex-direction: column;
    background: #f8f9fa;
}

/* Eleganter Header */
.calendar-header[b-962k6cyirw] {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    color: #495057;
    padding: 1.25rem 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-shrink: 0;
    box-shadow: 0 2px 4px rgba(0,0,0,0.08);
    border-bottom: 1px solid #dee2e6;
}

/* Hauptbereich */
.header-main[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: 2rem;
}

.title-section[b-962k6cyirw] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.calendar-title[b-962k6cyirw] {
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    letter-spacing: -0.5px;
}

.calendar-title i[b-962k6cyirw] {
    font-size: 1.25rem;
    opacity: 0.9;
}

.week-range[b-962k6cyirw] {
    font-size: 0.875rem;
    opacity: 0.85;
    font-weight: 500;
}

/* Navigation */
.navigation-section[b-962k6cyirw] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    background: white;
    padding: 0.25rem;
    border-radius: 8px;
    border: 1px solid #dee2e6;
    box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}

.nav-btn[b-962k6cyirw] {
    width: 32px !important;
    height: 32px !important;
    border-radius: 6px !important;
    border: 1px solid #dee2e6 !important;
    background: white !important;
    color: #6c757d !important;
}

.nav-btn:hover[b-962k6cyirw] {
    background: #f8f9fa !important;
    border-color: #adb5bd !important;
    color: #495057 !important;
    transform: scale(1.05);
}

.today-btn[b-962k6cyirw] {
    padding: 0 0.75rem !important;
    height: 32px !important;
    border-radius: 6px !important;
    font-size: 0.8rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.3px !important;
}

/* Kontrollbereich */
.header-controls[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

/* Kompakte Statistiken */
.stats-section[b-962k6cyirw] {
    display: flex;
    gap: 1rem;
    background: white;
    padding: 0.5rem 1rem;
    border-radius: 8px;
    border: 1px solid #dee2e6;
    box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}

.stat-compact[b-962k6cyirw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.125rem;
    min-width: 45px;
}

.stat-number[b-962k6cyirw] {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1;
    color: #495057;
}

.stat-text[b-962k6cyirw] {
    font-size: 0.65rem;
    text-transform: uppercase;
    color: #6c757d;
    font-weight: 600;
    letter-spacing: 0.5px;
}

/* Tools */
.tools-section[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

/* Export Buttons */
.export-buttons[b-962k6cyirw] {
    display: flex;
    gap: 0.25rem;
    background: white;
    padding: 0.125rem;
    border-radius: 8px;
    border: 1px solid #dee2e6;
    box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}

.export-buttons .action-btn[b-962k6cyirw] {
    min-width: 60px;
    border-radius: 6px !important;
    transition: all 0.2s ease;
}

.export-buttons .action-btn:hover[b-962k6cyirw] {
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}

.sort-dropdown[b-962k6cyirw] {
    background: white !important;
    border: 1px solid #dee2e6 !important;
    border-radius: 6px !important;
    height: 32px !important;
}

.action-btn[b-962k6cyirw] {
    height: 32px !important;
    padding: 0 0.75rem !important;
    border-radius: 6px !important;
    font-size: 0.8rem !important;
    font-weight: 600 !important;
}

/* Loading */
.loading-container[b-962k6cyirw] {
    display: flex;
    justify-content: center;
    align-items: center;
    flex: 1;
    min-height: 400px;
}

/* Calendar Grid */
.calendar-grid[b-962k6cyirw] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1rem;
    padding: 1.5rem;
    flex: 1;
    max-width: 1800px;
    margin: 0 auto;
    width: 100%;
}

/* Day Column */
.day-column[b-962k6cyirw] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

/* Day Header */
.day-header[b-962k6cyirw] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    padding: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.day-info[b-962k6cyirw] {
    display: flex;
    flex-direction: column;
}

.day-name[b-962k6cyirw] {
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0;
}

.day-date[b-962k6cyirw] {
    font-size: 0.875rem;
    opacity: 0.9;
}

/* Day Header Actions */
.day-header-actions[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

/* Capacity Display */
.capacity-display[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* Add Spontaneous Button */
.add-spontaneous-btn[b-962k6cyirw] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,0.3);
    background: rgba(255,255,255,0.1);
    color: white;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    backdrop-filter: blur(10px);
}

.add-spontaneous-btn:hover[b-962k6cyirw] {
    background: rgba(255,255,255,0.2);
    border-color: rgba(255,255,255,0.5);
    transform: scale(1.1);
}

.add-spontaneous-btn:active[b-962k6cyirw] {
    transform: scale(0.95);
}

.add-spontaneous-btn i[b-962k6cyirw] {
    font-size: 0.8rem;
}

.capacity-badge[b-962k6cyirw] {
    color: #495057;
    background: rgba(255,255,255,0.9);
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.875rem;
    font-weight: 600;
    border: 1px solid #dee2e6;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.capacity-badge i[b-962k6cyirw] {
    font-size: 0.75rem;
    opacity: 0.7;
}

/* Guest Cards Container */
.guest-cards-container[b-962k6cyirw] {
    padding: 0.6rem;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

/* Guest Card */
.guest-card[b-962k6cyirw] {
    background: white;
    border: 1px solid #e9ecef;
    border-radius: 6px;
    padding: 0.4rem;
    transition: all 0.2s ease;
    position: relative;
    border-left: 3px solid #6c757d;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    font-size: 0.85rem;
}

.guest-card:hover[b-962k6cyirw] {
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0,0,0,0.12);
    border-color: #007bff;
}

.guest-card.checked-in[b-962k6cyirw] {
    background: linear-gradient(135deg, #d4edda 0%, #c3e6cb 100%);
    border-color: #28a745;
}

.guest-card.planned[b-962k6cyirw] {
    background: white;
    border-color: #dee2e6;
}

.guest-card.absent[b-962k6cyirw] {
    background: #f8f9fa;
    border-color: #6c757d;
    opacity: 0.7;
}

.guest-card.transport-mismatch[b-962k6cyirw] {
    border-color: #ffc107;
    background: linear-gradient(135deg, #fff3cd 0%, #ffeaa7 100%);
}

/* Status Selection Buttons - Kompakt */
.status-selection[b-962k6cyirw] {
    display: flex;
    gap: 0.2rem;
    margin-bottom: 0.2rem;
}

.status-btn[b-962k6cyirw] {
    flex: 1;
    min-width: unset;
    height: 22px;
    padding: 0 0.3rem;
    border-radius: 3px;
    font-size: 0.65rem;
    border: 1px solid #dee2e6;
    background: white;
    color: #6c757d;
    cursor: pointer;
    transition: all 0.2s;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.2rem;
}

.status-btn:hover[b-962k6cyirw] {
    transform: scale(1.05);
}

.status-btn.selected[b-962k6cyirw] {
    font-weight: 600;
}

.status-btn.present.selected[b-962k6cyirw] {
    background: #28a745;
    color: white;
    border-color: #28a745;
}

.status-btn.absent.selected[b-962k6cyirw] {
    background: #dc3545;
    color: white;
    border-color: #dc3545;
}

.status-btn.planned-absent.selected[b-962k6cyirw] {
    background: #ffc107;
    color: #212529;
    border-color: #ffc107;
}

.status-btn i[b-962k6cyirw] {
    font-size: 0.6rem;
}

/* Guest Info - Kompakter */
.guest-info[b-962k6cyirw] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.2rem;
}

.guest-name[b-962k6cyirw] {
    font-weight: 600;
    color: #2c3e50;
    font-size: 0.8rem;
    display: flex;
    align-items: center;
    gap: 0.2rem;
}

.guest-details[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.65rem;
    color: #6c757d;
}

.guest-age[b-962k6cyirw] {
    font-weight: 500;
}

.care-level-badge[b-962k6cyirw] {
    background: #007bff;
    color: white;
    padding: 0.1rem 0.3rem;
    border-radius: 8px;
    font-size: 0.6rem;
    font-weight: 600;
}

.group-badge[b-962k6cyirw] {
    padding: 0.1rem 0.3rem;
    border-radius: 8px;
    font-size: 0.6rem;
    font-weight: 600;
    margin-left: 0.2rem;
    border: 1px solid rgba(255,255,255,0.3);
    text-shadow: 1px 1px 1px rgba(0,0,0,0.2);
}

/* Action Line - Kompakter */
.action-line[b-962k6cyirw] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 0.15rem;
    gap: 0.3rem;
}

.checkin-info[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.7rem;
    color: #28a745;
}

.checkin-time[b-962k6cyirw] {
    font-weight: 500;
    display: none;
}

.actual-transport[b-962k6cyirw] {
    background: #e8f5e8;
    padding: 0.125rem 0.25rem;
    border-radius: 3px;
    font-size: 0.65rem;
    color: #155724;
    font-weight: 500;
}

.transport-info[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.7rem;
}

.checkin-btn[b-962k6cyirw] {
    height: 22px;
    padding: 0 0.5rem;
    font-size: 0.7rem;
    border-radius: 3px;
}

.checkin-btn i[b-962k6cyirw] {
    font-size: 0.65rem;
    margin-right: 0.2rem;
}

.checkin-btn:disabled[b-962k6cyirw] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Absent Status */
.absent-status[b-962k6cyirw] {
    justify-content: space-between;
    color: #6c757d;
    font-style: italic;
    font-size: 0.75rem;
}

.absent-info[b-962k6cyirw] {
    display: flex;
    align-items: center;
    color: #6c757d;
    font-style: italic;
    font-size: 0.75rem;
}

.absent-text[b-962k6cyirw] {
    background: #f8f9fa;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    border: 1px solid #dee2e6;
}

/* Edit Details Icon */
.edit-details-btn[b-962k6cyirw] {
    position: absolute;
    top: 0.3rem;
    right: 0.3rem;
    width: 20px;
    height: 20px;
    padding: 0;
    background: transparent;
    border: none;
    color: #6c757d;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 3px;
    transition: all 0.2s;
}

.edit-details-btn:hover[b-962k6cyirw] {
    background: #f8f9fa;
    color: #007bff;
}

.edit-details-btn i[b-962k6cyirw] {
    font-size: 0.7rem;
}

/* Group Indicator */
.group-indicator[b-962k6cyirw] {
    position: absolute;
    top: 0.25rem;
    right: 0.25rem;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 0.7rem;
    font-weight: 700;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.3);
}

/* Check-In Details */
.checkin-details[b-962k6cyirw] {
    margin: 0.5rem 0;
    font-size: 0.75rem;
    background: rgba(40, 167, 69, 0.1);
    padding: 0.5rem;
    border-radius: 4px;
    border-left: 3px solid #28a745;
}

.checkin-time[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    margin-bottom: 0.25rem;
    font-weight: 600;
    color: #155724;
}

.checkin-by[b-962k6cyirw] {
    color: #6c757d;
    font-weight: normal;
    margin-left: 0.25rem;
}

.transport-actual[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.7rem;
}

.transport-planned[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.7rem;
}

/* Action Indicator */
.action-indicator[b-962k6cyirw] {
    position: absolute;
    top: 0.5rem;
    right: 2.5rem;
    font-size: 1rem;
    opacity: 0.6;
    transition: opacity 0.3s ease;
}

.guest-card:hover .action-indicator[b-962k6cyirw] {
    opacity: 1;
}

/* Card Notes */
.card-notes[b-962k6cyirw] {
    margin-top: 0.5rem;
    font-size: 0.75rem;
    border-top: 1px solid #e9ecef;
    padding-top: 0.5rem;
}

.schedule-notes[b-962k6cyirw] {
    color: #6c757d;
    font-style: italic;
    margin-bottom: 0.25rem;
}

.checkin-notes[b-962k6cyirw] {
    color: #495057;
    background: rgba(0, 123, 255, 0.1);
    padding: 0.25rem;
    border-radius: 3px;
    border-left: 2px solid #007bff;
}

/* Absent Summary */
.absent-summary[b-962k6cyirw] {
    background: #f8f9fa;
    border: 1px dashed #dee2e6;
    border-radius: 6px;
    padding: 0.75rem;
    margin-top: auto;
}

.absent-header[b-962k6cyirw] {
    font-weight: 600;
    color: #6c757d;
    font-size: 0.8rem;
    margin-bottom: 0.5rem;
    display: flex;
    align-items: center;
}

.absent-guest[b-962k6cyirw] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    margin-bottom: 0.25rem;
}

.absent-name[b-962k6cyirw] {
    font-size: 0.75rem;
    color: #495057;
    font-weight: 500;
}

.absent-reason[b-962k6cyirw] {
    font-size: 0.7rem;
    color: #6c757d;
    font-style: italic;
}

/* Empty Day */
.empty-day[b-962k6cyirw] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    color: #6c757d;
    font-style: italic;
    gap: 0.5rem;
}

.empty-day i[b-962k6cyirw] {
    font-size: 2rem;
    opacity: 0.5;
}

/* Error Container */
.error-container[b-962k6cyirw] {
    padding: 2rem;
    display: flex;
    justify-content: center;
}

/* Groups Legend */
.groups-legend[b-962k6cyirw] {
    background: white;
    margin: 1.5rem 2rem;
    padding: 1.25rem;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    border: 1px solid #e9ecef;
}

.legend-header[b-962k6cyirw] {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
    padding-bottom: 0.75rem;
    border-bottom: 2px solid #f8f9fa;
}

.legend-header i[b-962k6cyirw] {
    color: #667eea;
    font-size: 1.1rem;
}

.legend-header h5[b-962k6cyirw] {
    margin: 0;
    color: #495057;
    font-weight: 600;
    font-size: 1.1rem;
}

.legend-items[b-962k6cyirw] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: center;
}

.legend-item[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: #f8f9fa;
    border-radius: 8px;
    border: 1px solid #e9ecef;
    transition: all 0.2s ease;
}

.legend-item:hover[b-962k6cyirw] {
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    background: #e9ecef;
}

.legend-color[b-962k6cyirw] {
    width: 16px;
    height: 16px;
    border-radius: 4px;
    border: 2px solid white;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
    flex-shrink: 0;
}

.legend-text[b-962k6cyirw] {
    font-weight: 500;
    color: #495057;
    font-size: 0.875rem;
}

.legend-count[b-962k6cyirw] {
    font-size: 0.75rem;
    color: #6c757d;
    font-weight: 400;
}

.legend-empty[b-962k6cyirw] {
    display: flex;
    align-items: center;
    color: #6c757d;
    font-style: italic;
    font-size: 0.875rem;
}

/* Responsive Design */
@media (max-width: 1400px) {
    .calendar-grid[b-962k6cyirw] {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .week-stats[b-962k6cyirw] {
        gap: 1rem;
    }
}

@media (max-width: 992px) {
    .calendar-header[b-962k6cyirw] {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch;
        padding: 1rem;
    }
    
    .header-main[b-962k6cyirw] {
        flex-direction: column;
        gap: 1rem;
        align-items: center;
    }
    
    .header-controls[b-962k6cyirw] {
        justify-content: center;
        flex-wrap: wrap;
        gap: 1rem;
    }
    
    .calendar-grid[b-962k6cyirw] {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .stats-section[b-962k6cyirw] {
        order: -1;
    }
}

@media (max-width: 768px) {
    .calendar-grid[b-962k6cyirw] {
        grid-template-columns: 1fr;
        gap: 0.75rem;
        padding: 1rem;
    }
    
    .day-column[b-962k6cyirw] {
        min-height: 400px;
    }
    
    .calendar-header[b-962k6cyirw] {
        padding: 1rem;
    }
    
    .calendar-title[b-962k6cyirw] {
        font-size: 1.5rem;
    }
    
    .week-stats[b-962k6cyirw] {
        padding: 0.5rem 1rem;
        gap: 0.75rem;
    }
    
    .header-actions[b-962k6cyirw] {
        flex-direction: column;
        gap: 1rem;
    }
}

/* Modal Headers - Einheitlich */
.modal-header-content[b-962k6cyirw] {
    display: flex;
    align-items: center;
    font-weight: 600;
    color: #495057;
    font-size: 1.1rem;
}

.modal-header-content i[b-962k6cyirw] {
    color: #007bff;
}

/* Check-In Modal Content */
.checkin-modal-content[b-962k6cyirw] {
    padding: 0.5rem 0;
}

.guest-summary[b-962k6cyirw] {
    background: #f8f9fa;
    padding: 1rem;
    border-radius: 6px;
    margin-bottom: 1.5rem;
    border-left: 4px solid #007bff;
}

.summary-item[b-962k6cyirw] {
    margin-bottom: 0.5rem;
}

.summary-item:last-child[b-962k6cyirw] {
    margin-bottom: 0;
}

.transport-section[b-962k6cyirw] {
    padding: 0 0.5rem;
}

.transport-label[b-962k6cyirw] {
    display: block;
    font-weight: 500;
    color: #495057;
    margin-bottom: 0.75rem;
}

.transport-buttons[b-962k6cyirw] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.transport-buttons .e-btn[b-962k6cyirw] {
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    font-size: 0.875rem;
}

.transport-warning[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #856404;
    background: #fff3cd;
    padding: 0.5rem;
    border-radius: 4px;
    border: 1px solid #ffeaa7;
    font-size: 0.875rem;
}

/* Animation for check-in state change */
.guest-card.checked-in[b-962k6cyirw] {
    animation: checkInPulse-b-962k6cyirw 0.6s ease-out;
}

@keyframes checkInPulse-b-962k6cyirw {
    0% { 
        transform: scale(1); 
        box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    }
    50% { 
        transform: scale(1.02); 
        box-shadow: 0 8px 25px rgba(40, 167, 69, 0.3);
    }
    100% { 
        transform: scale(1); 
        box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    }
}

/* Details Dialog Styles */
.details-dialog-content[b-962k6cyirw] {
    padding: 1rem;
}

.details-section[b-962k6cyirw] {
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #e9ecef;
}

.details-section:last-child[b-962k6cyirw] {
    border-bottom: none;
    margin-bottom: 0;
}

.section-title[b-962k6cyirw] {
    color: #495057;
    font-weight: 600;
    margin-bottom: 0.75rem;
    font-size: 0.95rem;
}

.info-grid[b-962k6cyirw] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
}

.info-item[b-962k6cyirw] {
    display: flex;
    gap: 0.5rem;
}

.info-item label[b-962k6cyirw] {
    font-weight: 500;
    color: #6c757d;
    min-width: 80px;
}

.info-item span[b-962k6cyirw] {
    color: #212529;
}

.transport-options[b-962k6cyirw] {
    margin-top: 0.5rem;
}

.transport-options label[b-962k6cyirw] {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 500;
    color: #6c757d;
}

.checkbox-group[b-962k6cyirw] {
    display: flex;
    align-items: center;
}

.checkbox-label[b-962k6cyirw] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    font-size: 0.9rem;
}

.checkbox-label input[type="checkbox"][b-962k6cyirw] {
    width: 18px;
    height: 18px;
    cursor: pointer;
}

.notes-textarea[b-962k6cyirw] {
    width: 100%;
    resize: vertical;
    font-size: 0.9rem;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    padding: 0.5rem;
}

.notes-textarea:focus[b-962k6cyirw] {
    outline: none;
    border-color: #007bff;
    box-shadow: 0 0 0 0.2rem rgba(0,123,255,.25);
}

/* Info Note for deviations */
.info-note[b-962k6cyirw] {
    background: #e7f3ff;
    padding: 0.5rem;
    border-radius: 4px;
    border-left: 3px solid #007bff;
    font-size: 0.85rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.info-note i[b-962k6cyirw] {
    color: #007bff;
}

/* Badge Styles */
.badge[b-962k6cyirw] {
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
}

.badge.bg-success[b-962k6cyirw] {
    background-color: #28a745;
    color: white;
}

/* Compact Dialog Styles */
.checkin-modal-content.compact[b-962k6cyirw],
.details-dialog-content.compact[b-962k6cyirw] {
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.compact-section[b-962k6cyirw] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.compact-label[b-962k6cyirw] {
    font-weight: 500;
    color: #495057;
    font-size: 0.875rem;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.3rem;
}

.guest-summary[b-962k6cyirw] {
    background: #f8f9fa;
    padding: 0.75rem;
    border-radius: 6px;
    border-left: 4px solid #007bff;
    font-size: 0.9rem;
    color: #495057;
}

.transport-buttons.compact[b-962k6cyirw] {
    display: flex;
    gap: 0.3rem;
    flex-wrap: wrap;
}

.transport-buttons.compact .e-btn[b-962k6cyirw] {
    flex: 1;
    min-width: 40px;
    height: 32px;
    padding: 0.25rem;
    font-size: 0.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.transport-buttons.compact .e-btn i[b-962k6cyirw] {
    font-size: 0.75rem;
}

.compact-section .form-control[b-962k6cyirw],
.compact-section .form-control-sm[b-962k6cyirw] {
    font-size: 0.875rem;
    padding: 0.375rem 0.5rem;
}

.compact-section textarea.form-control-sm[b-962k6cyirw] {
    resize: vertical;
    min-height: 60px;
}

.compact-section small[b-962k6cyirw] {
    font-size: 0.75rem;
    margin-top: 0.2rem;
    display: block;
}

/* Compact checkbox styling */
.compact-label input[type="checkbox"][b-962k6cyirw] {
    width: 16px;
    height: 16px;
    margin: 0;
}

/* Dialog button spacing */
.e-dialog .e-dlg-button-content[b-962k6cyirw] {
    gap: 0.5rem;
}

.e-dialog .e-btn[b-962k6cyirw] {
    font-size: 0.875rem;
    padding: 0.375rem 0.75rem;
}

/* Make dialogs more responsive */
@media (max-width: 768px) {
    .e-dialog[b-962k6cyirw] {
        width: 95% !important;
        max-width: 500px !important;
        height: auto !important;
        max-height: 90vh !important;
    }
    
    .transport-buttons.compact[b-962k6cyirw] {
        grid-template-columns: repeat(2, 1fr);
        gap: 0.5rem;
    }
    
    .compact-section[b-962k6cyirw] {
        gap: 0.5rem;
    }
}
/* _content/FRP.Web/Components/Pages/Employees.razor.rz.scp.css */
.page-container[b-g2zie19tol] {
    padding: 1.5rem;
    max-width: 100%;
}

.page-header[b-g2zie19tol] {
    margin-bottom: 2rem;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 12px;
    padding: 2rem;
    color: white;
    box-shadow: 0 4px 16px rgba(102, 126, 234, 0.3);
}

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

.header-left .page-title[b-g2zie19tol] {
    font-size: 2rem;
    font-weight: 700;
    margin: 0 0 0.5rem 0;
    display: flex;
    align-items: center;
}

.header-left .page-subtitle[b-g2zie19tol] {
    margin: 0;
    opacity: 0.9;
    font-size: 1.1rem;
}

.header-actions[b-g2zie19tol] {
    flex-shrink: 0;
}

.page-content[b-g2zie19tol] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
    padding: 1.5rem;
}

.filters-section[b-g2zie19tol] {
    margin-bottom: 2rem;
    padding: 1.5rem;
    background: #f8f9fa;
    border-radius: 8px;
    border-left: 4px solid #667eea;
}

.loading-container[b-g2zie19tol] {
    text-align: center;
    padding: 3rem;
}

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

.employee-name-cell[b-g2zie19tol] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.employee-avatar-small[b-g2zie19tol] {
    width: 32px;
    height: 32px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 0.9rem;
}

.employee-info .name[b-g2zie19tol] {
    font-weight: 600;
    color: #333;
    margin-bottom: 2px;
}

.employee-number[b-g2zie19tol] {
    color: #6c757d;
    background: #e9ecef;
    padding: 2px 6px;
    border-radius: 3px;
    font-size: 0.75rem;
}

.department-cell[b-g2zie19tol] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.department-indicator[b-g2zie19tol] {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    display: inline-block;
}

.email-link[b-g2zie19tol] {
    color: #667eea;
    text-decoration: none;
}

.email-link:hover[b-g2zie19tol] {
    text-decoration: underline;
}

.vacation-days[b-g2zie19tol] {
    font-weight: 600;
    color: #28a745;
}

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

.empty-state[b-g2zie19tol] {
    text-align: center;
    padding: 4rem 2rem;
    background: #f8f9fa;
    border-radius: 8px;
    margin-top: 2rem;
}

.empty-state .empty-icon[b-g2zie19tol] {
    font-size: 4rem;
    color: #dee2e6;
    margin-bottom: 1rem;
}

.empty-state h4[b-g2zie19tol] {
    color: #6c757d;
    margin-bottom: 0.5rem;
}

.badge[b-g2zie19tol] {
    font-size: 0.75rem;
    padding: 0.35em 0.65em;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .page-container[b-g2zie19tol] {
        padding: 1rem;
    }
    
    .header-content[b-g2zie19tol] {
        flex-direction: column;
        text-align: center;
        gap: 1.5rem;
    }
    
    .header-left .page-title[b-g2zie19tol] {
        font-size: 1.5rem;
    }
    
    .filters-section .row > div[b-g2zie19tol] {
        margin-bottom: 1rem;
    }
    
    .action-buttons[b-g2zie19tol] {
        flex-wrap: wrap;
    }
}
/* _content/FRP.Web/Components/Pages/GuestCreate.razor.rz.scp.css */
/* Guest Create Page Styles */

.page-container[b-gfsyapghqf] {
    padding: 1.5rem;
    background-color: #f8f9fa;
    min-height: calc(100vh - 100px);
}

.loading-container[b-gfsyapghqf] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 400px;
    text-align: center;
}

.loading-spinner[b-gfsyapghqf] {
    width: 40px;
    height: 40px;
    border: 4px solid #f3f3f3;
    border-radius: 50%;
    border-top: 4px solid #007bff;
    animation: spin-b-gfsyapghqf 1s linear infinite;
    margin-bottom: 1rem;
}

@keyframes spin-b-gfsyapghqf {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.page-header[b-gfsyapghqf] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    margin-bottom: 1.5rem;
    padding: 1.5rem;
}

.header-content[b-gfsyapghqf] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.page-title[b-gfsyapghqf] {
    color: #2c3e50;
    margin: 0;
    font-size: 1.8rem;
    font-weight: 600;
    display: flex;
    align-items: center;
}

.page-subtitle[b-gfsyapghqf] {
    color: #6c757d;
    margin: 0.25rem 0 0 0;
    font-size: 0.95rem;
}

.header-actions[b-gfsyapghqf] {
    display: flex;
    gap: 0.75rem;
}

/* Form Layout */
.create-form[b-gfsyapghqf] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.form-card[b-gfsyapghqf] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

.card-header[b-gfsyapghqf] {
    background: #f8f9fa;
    padding: 1rem 1.5rem;
    border-bottom: 1px solid #e9ecef;
}

.card-header h4[b-gfsyapghqf] {
    margin: 0;
    color: #2c3e50;
    font-size: 1.1rem;
    font-weight: 600;
    display: flex;
    align-items: center;
}

.card-body[b-gfsyapghqf] {
    padding: 1.5rem;
}

/* Info Card Styling */
.info-card[b-gfsyapghqf] {
    background: linear-gradient(135deg, #e8f4f8 0%, #f0f8ff 100%);
    border: 1px solid #b3d7ff;
}

.info-card .card-header[b-gfsyapghqf] {
    background: linear-gradient(135deg, #d1ecf1 0%, #e2f0ff 100%);
    border-bottom: 1px solid #b3d7ff;
}

.info-card .card-header h4[b-gfsyapghqf] {
    color: #0c5460;
}

.info-content[b-gfsyapghqf] {
    color: #0c5460;
}

.info-content p[b-gfsyapghqf] {
    margin: 0 0 1rem 0;
    font-size: 0.95rem;
    line-height: 1.5;
}

.info-list[b-gfsyapghqf] {
    margin: 0;
    padding-left: 1.5rem;
    font-size: 0.9rem;
}

.info-list li[b-gfsyapghqf] {
    margin-bottom: 0.5rem;
    line-height: 1.4;
}

/* Form Grid */
.form-grid[b-gfsyapghqf] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1.5rem;
}

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

.form-group label[b-gfsyapghqf] {
    font-weight: 600;
    color: #2c3e50;
    font-size: 0.9rem;
    margin: 0;
}

.validation-message[b-gfsyapghqf] {
    color: #dc3545;
    font-size: 0.85rem;
    margin-top: 0.25rem;
    display: block;
}

/* Form Actions */
.form-actions[b-gfsyapghqf] {
    display: flex;
    justify-content: flex-end;
    gap: 1rem;
    padding: 1.5rem;
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* Syncfusion Form Control Customizations */
[b-gfsyapghqf] .e-input-group {
    border-radius: 8px;
    border: 2px solid #e9ecef;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

[b-gfsyapghqf] .e-input-group:hover {
    border-color: #b3d7ff;
}

[b-gfsyapghqf] .e-input-group.e-input-focus {
    border-color: #007bff;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

[b-gfsyapghqf] .e-input-group input,
[b-gfsyapghqf] .e-input-group textarea {
    border: none;
    padding: 0.75rem;
    font-size: 0.95rem;
}

/* Dropdown Customizations */
[b-gfsyapghqf] .e-dropdownlist {
    border-radius: 8px;
}

[b-gfsyapghqf] .e-dropdownlist .e-input-group {
    border-radius: 8px;
}

[b-gfsyapghqf] .e-dropdownlist.e-input-focus .e-input-group {
    border-color: #007bff;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

/* DatePicker Customizations */
[b-gfsyapghqf] .e-date-wrapper {
    border-radius: 8px;
}

[b-gfsyapghqf] .e-date-wrapper .e-input-group {
    border-radius: 8px;
}

/* Button Customizations */
[b-gfsyapghqf] .e-btn {
    border-radius: 8px;
    padding: 0.75rem 1.5rem;
    font-weight: 500;
    transition: all 0.15s ease-in-out;
}

[b-gfsyapghqf] .e-btn.e-success {
    background: linear-gradient(135deg, #28a745 0%, #20c997 100%);
    border: none;
    color: white;
}

[b-gfsyapghqf] .e-btn.e-success:hover:not(:disabled) {
    background: linear-gradient(135deg, #218838 0%, #1ea080 100%);
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(40, 167, 69, 0.3);
}

[b-gfsyapghqf] .e-btn.e-outline.e-secondary {
    border: 2px solid #6c757d;
    color: #6c757d;
    background: transparent;
}

[b-gfsyapghqf] .e-btn.e-outline.e-secondary:hover:not(:disabled) {
    background: #6c757d;
    color: white;
    transform: translateY(-1px);
}

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

/* Responsive Design */
@media (max-width: 768px) {
    .page-container[b-gfsyapghqf] {
        padding: 1rem;
    }
    
    .header-content[b-gfsyapghqf] {
        flex-direction: column;
        gap: 1rem;
        align-items: flex-start;
    }
    
    .form-grid[b-gfsyapghqf] {
        grid-template-columns: 1fr;
    }
    
    .form-actions[b-gfsyapghqf] {
        flex-direction: column;
    }
    
    .form-actions .e-btn[b-gfsyapghqf] {
        width: 100%;
    }
}

@media (max-width: 576px) {
    .page-title[b-gfsyapghqf] {
        font-size: 1.5rem;
    }
    
    .header-actions[b-gfsyapghqf] {
        width: 100%;
        justify-content: space-between;
    }
    
    .card-body[b-gfsyapghqf] {
        padding: 1rem;
    }
    
    .form-actions[b-gfsyapghqf] {
        padding: 1rem;
    }
}

/* Toast customizations */
[b-gfsyapghqf] .e-toast-success {
    background-color: #d4edda;
    border-color: #c3e6cb;
    color: #155724;
}

[b-gfsyapghqf] .e-toast-danger {
    background-color: #f8d7da;
    border-color: #f5c6cb;
    color: #721c24;
}

[b-gfsyapghqf] .e-toast-warning {
    background-color: #fff3cd;
    border-color: #ffeaa7;
    color: #856404;
}

/* Validation styling */
[b-gfsyapghqf] .e-input-group.e-error {
    border-color: #dc3545;
}

[b-gfsyapghqf] .e-input-group.e-error:focus-within {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

/* Loading state */
.fa-spinner.fa-spin[b-gfsyapghqf] {
    animation: fa-spin-b-gfsyapghqf 1s infinite linear;
}

@keyframes fa-spin-b-gfsyapghqf {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
/* _content/FRP.Web/Components/Pages/GuestDetails.razor.rz.scp.css */
/* Container */
.guest-details-container[b-9wk68s1ji3] {
    height: calc(100vh - 60px);
    display: flex;
    flex-direction: column;
    background: #f5f7fa;
    overflow: hidden;
}

/* Loading */
.loading-container[b-9wk68s1ji3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
}

/* Compact Header */
.details-header[b-9wk68s1ji3] {
    background: white;
    padding: 1rem 1.5rem;
    border-bottom: 1px solid #e9ecef;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-shrink: 0;
}

.header-info h3[b-9wk68s1ji3] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #2c3e50;
}

.header-meta[b-9wk68s1ji3] {
    font-size: 0.875rem;
    color: #6c757d;
    margin-top: 0.25rem;
}

.header-actions[b-9wk68s1ji3] {
    display: flex;
    gap: 0.5rem;
}

/* Tabs */
[b-9wk68s1ji3] .guest-details-tabs {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

[b-9wk68s1ji3] .guest-details-tabs .e-tab-header {
    background: white;
    border-bottom: 2px solid #e9ecef;
    flex-shrink: 0;
}

[b-9wk68s1ji3] .guest-details-tabs .e-content {
    flex: 1;
    overflow-y: auto;
    background: #f5f7fa;
    padding: 1.5rem;
}

/* Tab Content Grid */
.tab-content-grid[b-9wk68s1ji3] {
    width: 100%;
    margin: 0;
}

.content-row[b-9wk68s1ji3] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
    margin-bottom: 1.5rem;
}

/* Detail Cards */
.detail-card[b-9wk68s1ji3] {
    background: white;
    border-radius: 8px;
    padding: 1.5rem;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.card-title[b-9wk68s1ji3] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 1.25rem;
    padding-bottom: 0.75rem;
    border-bottom: 2px solid #f1f3f5;
}

/* Detail Grid */
.detail-grid[b-9wk68s1ji3] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.detail-item[b-9wk68s1ji3] {
    display: flex;
    flex-direction: column;
}

.detail-item.full-width[b-9wk68s1ji3] {
    grid-column: 1 / -1;
}

.detail-item label[b-9wk68s1ji3] {
    font-size: 0.75rem;
    text-transform: uppercase;
    color: #6c757d;
    margin-bottom: 0.25rem;
    font-weight: 600;
    letter-spacing: 0.5px;
}

.detail-item span[b-9wk68s1ji3] {
    color: #2c3e50;
    font-size: 0.95rem;
}

.detail-text[b-9wk68s1ji3] {
    background: #f8f9fa;
    padding: 0.75rem;
    border-radius: 4px;
    font-size: 0.9rem;
    line-height: 1.5;
    color: #495057;
}

/* Schedule Section */
.schedule-section[b-9wk68s1ji3] {
    margin-top: 1.5rem;
}

/* Contacts Container */
.contacts-container[b-9wk68s1ji3] {
    width: 100%;
    margin: 0;
}

/* Emergency Container */
.emergency-container[b-9wk68s1ji3] {
    width: 100%;
    margin: 0;
}

.emergency-card .card-title[b-9wk68s1ji3] {
    border-bottom-color: #fee;
}

/* History Container */
.history-container[b-9wk68s1ji3] {
    width: 100%;
    margin: 0;
}

/* Responsive */
@media (max-width: 1024px) {
    .content-row[b-9wk68s1ji3] {
        grid-template-columns: 1fr;
    }
    
    .detail-grid[b-9wk68s1ji3] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .details-header[b-9wk68s1ji3] {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
    
    .header-actions[b-9wk68s1ji3] {
        width: 100%;
        justify-content: space-between;
    }
    
    [b-9wk68s1ji3] .guest-details-tabs .e-content {
        padding: 1rem;
    }
}

/* Badge styling */
.badge[b-9wk68s1ji3] {
    font-size: 0.75rem;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
}

/* Fix overlapping in weekly planner */
[b-9wk68s1ji3] .weekly-planner-container {
    overflow: visible;
}

[b-9wk68s1ji3] .weekday-checkbox .e-label {
    margin-left: 0;
}
/* _content/FRP.Web/Components/Pages/GuestEdit.razor.rz.scp.css */
/* Guest Edit Page Styles */

.page-container[b-al4qnqaks7] {
    padding: 1.5rem;
    background-color: #f8f9fa;
    min-height: calc(100vh - 100px);
}

.page-header[b-al4qnqaks7] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    margin-bottom: 1.5rem;
    padding: 1.5rem;
}

.header-content[b-al4qnqaks7] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.header-left[b-al4qnqaks7] {
    flex: 1;
}

.breadcrumb-nav[b-al4qnqaks7] {
    display: flex;
    align-items: center;
    margin-bottom: 0.5rem;
    font-size: 0.9rem;
}

.breadcrumb-link[b-al4qnqaks7] {
    color: #007bff;
    text-decoration: none;
    transition: color 0.2s ease;
}

.breadcrumb-link:hover[b-al4qnqaks7] {
    color: #0056b3;
    text-decoration: underline;
}

.page-title[b-al4qnqaks7] {
    color: #2c3e50;
    margin: 0;
    font-size: 1.8rem;
    font-weight: 600;
    display: flex;
    align-items: center;
}

.page-subtitle[b-al4qnqaks7] {
    color: #6c757d;
    margin: 0.25rem 0 0 0;
    font-size: 0.95rem;
}

.header-actions[b-al4qnqaks7] {
    display: flex;
    gap: 0.75rem;
    flex-shrink: 0;
}

.page-content[b-al4qnqaks7] {
    margin-top: 1.5rem;
}

/* Info Cards */
.info-card[b-al4qnqaks7] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    margin-bottom: 1.5rem;
    overflow: hidden;
}

.info-card .card-header[b-al4qnqaks7] {
    background: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
    padding: 1rem 1.5rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.info-card .card-header i[b-al4qnqaks7] {
    font-size: 1.1rem;
}

.info-card .card-title[b-al4qnqaks7] {
    color: #2c3e50;
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
}

.info-card .card-body[b-al4qnqaks7] {
    padding: 1.5rem;
}

/* Form Elements */
.form-label[b-al4qnqaks7] {
    color: #495057;
    font-weight: 500;
    margin-bottom: 0.5rem;
}

.form-label.required[b-al4qnqaks7]::after {
    content: " *";
    color: #dc3545;
}

.form-check[b-al4qnqaks7] {
    margin-bottom: 1rem;
}

.form-text[b-al4qnqaks7] {
    font-size: 0.875rem;
    line-height: 1.4;
}

/* Loading Container */
.loading-container[b-al4qnqaks7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 400px;
    text-align: center;
}

.loading-container .spinner-border[b-al4qnqaks7] {
    width: 3rem;
    height: 3rem;
}

/* Fixed Actions */
.fixed-actions[b-al4qnqaks7] {
    display: flex;
    gap: 1rem;
    justify-content: flex-end;
    padding: 1.5rem 0;
    border-top: 1px solid #dee2e6;
    margin-top: 1.5rem;
    background: white;
}


/* Responsive Design */
@media (max-width: 768px) {
    .page-container[b-al4qnqaks7] {
        padding: 1rem;
    }
    
    .header-content[b-al4qnqaks7] {
        flex-direction: column;
        gap: 1rem;
        align-items: flex-start;
    }
    
    .header-actions[b-al4qnqaks7] {
        width: 100%;
        justify-content: flex-start;
    }
    
    .breadcrumb-nav[b-al4qnqaks7] {
        font-size: 0.8rem;
    }
    
    .page-title[b-al4qnqaks7] {
        font-size: 1.5rem;
    }
    
    .fixed-actions[b-al4qnqaks7] {
        flex-direction: column-reverse;
        gap: 0.75rem;
    }
    
    .fixed-actions .e-btn[b-al4qnqaks7] {
        width: 100%;
        justify-content: center;
    }
}

/* Syncfusion Component Customizations */
[b-al4qnqaks7] .e-input-group {
    border-radius: 6px;
}

[b-al4qnqaks7] .e-input {
    border-radius: 6px;
}

[b-al4qnqaks7] .e-textbox {
    border-radius: 6px;
}

[b-al4qnqaks7] .e-dropdownlist {
    border-radius: 6px;
}

[b-al4qnqaks7] .e-datepicker {
    border-radius: 6px;
}

[b-al4qnqaks7] .e-checkbox-wrapper .e-frame {
    border-radius: 4px;
}

/* Validation Styles */
[b-al4qnqaks7] .field-validation-error {
    color: #dc3545;
    font-size: 0.875rem;
    margin-top: 0.25rem;
    display: block;
}

[b-al4qnqaks7] .validation-message {
    color: #dc3545;
    font-size: 0.875rem;
    margin-top: 0.25rem;
    display: block;
}

/* Tab Customizations */
[b-al4qnqaks7] .guest-edit-tabs {
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    width: 100%;
    height: auto;
    min-height: 600px;
}

[b-al4qnqaks7] .guest-edit-tabs .e-tab-header {
    background: white;
    border-bottom: 1px solid #dee2e6;
    padding: 0;
    min-height: 60px;
    flex-shrink: 0;
    overflow: visible;
}

[b-al4qnqaks7] .guest-edit-tabs .e-tab-header .e-toolbar-item {
    border-radius: 0;
    border: none;
    margin: 0;
    padding: 0;
}

[b-al4qnqaks7] .guest-edit-tabs .e-tab-header .e-toolbar-item .e-tab-wrap {
    padding: 1rem 1.5rem;
    border-bottom: 3px solid transparent;
    transition: all 0.3s ease;
    height: auto;
    min-height: 54px;
    display: flex;
    align-items: center;
}

[b-al4qnqaks7] .guest-edit-tabs .e-tab-header .e-toolbar-item.e-active .e-tab-wrap {
    background: #f8f9fa;
    border-bottom-color: #007bff;
    color: #007bff;
}

[b-al4qnqaks7] .guest-edit-tabs .e-tab-header .e-toolbar-item:hover .e-tab-wrap {
    background: #f8f9fa;
    color: #0056b3;
}

[b-al4qnqaks7] .guest-edit-tabs .e-tab-header .e-tab-icon {
    margin-right: 0.5rem;
    font-size: 1rem;
}

[b-al4qnqaks7] .guest-edit-tabs .e-content {
    padding: 0;
    background: white;
    flex: 1;
    overflow-y: auto;
}

.tab-content-padding[b-al4qnqaks7] {
    padding: 1.5rem;
}

/* Fix für abgeschnittene Tab-Header */
[b-al4qnqaks7] .guest-edit-tabs .e-toolbar-items {
    overflow: visible;
    min-height: 60px;
}

[b-al4qnqaks7] .guest-edit-tabs .e-control.e-toolbar {
    overflow: visible;
}

[b-al4qnqaks7] .guest-edit-tabs .e-tab-header .e-toolbar-item {
    overflow: visible;
}

/* Text-Wrap innerhalb der Tabs sichtbar machen */
[b-al4qnqaks7] .guest-edit-tabs .e-text-wrap {
    display: flex;
    align-items: center;
    white-space: nowrap;
}

/* Icon-Positionierung */
[b-al4qnqaks7] .guest-edit-tabs .e-tab-icon {
    flex-shrink: 0;
}

/* Wichtige Korrekturen für abgeschnittene Tab-Header */
[b-al4qnqaks7] .guest-edit-tabs .e-control.e-tab .e-tab-header {
    position: relative !important;
    z-index: 10 !important;
    overflow: visible !important;
}

[b-al4qnqaks7] .guest-edit-tabs .e-control.e-tab .e-content {
    position: relative !important;
    z-index: 5 !important;
}

/* Stelle sicher, dass die Toolbar-Items vollständig sichtbar sind */
[b-al4qnqaks7] .guest-edit-tabs .e-toolbar-items {
    position: relative !important;
    z-index: 15 !important;
    overflow: visible !important;
}

/* Entferne mögliche negative Margins oder Transformationen */
[b-al4qnqaks7] .guest-edit-tabs .e-toolbar-item {
    transform: none !important;
    margin: 0 !important;
}

/* Höhe für Tab-Header erzwingen */
[b-al4qnqaks7] .guest-edit-tabs .e-tab-header {
    height: 60px !important;
    min-height: 60px !important;
}

/* Spezifische Korrekturen basierend auf dem HTML-Output */
[b-al4qnqaks7] .guest-edit-tabs .e-control.e-toolbar {
    height: auto !important;
    min-height: 60px !important;
    overflow: visible !important;
}

[b-al4qnqaks7] .guest-edit-tabs .e-toolbar-items[style*="overflow: hidden"] {
    overflow: visible !important;
}

/* Stelle sicher, dass keine clipping-Effekte auftreten */
[b-al4qnqaks7] .guest-edit-tabs {
    padding-top: 0;
}

[b-al4qnqaks7] .guest-edit-tabs .e-tab-header {
    clip: none !important;
    clip-path: none !important;
}

/* Care Level History Section */
.care-level-history-section[b-al4qnqaks7] {
    margin-top: 1rem;
    padding: 1rem;
    background: white;
    border-radius: 6px;
    border: 1px solid #dee2e6;
}

/* Toast Customizations */
[b-al4qnqaks7] .e-toast-success {
    background-color: #d4edda;
    border-color: #c3e6cb;
    color: #155724;
}

[b-al4qnqaks7] .e-toast-danger {
    background-color: #f8d7da;
    border-color: #f5c6cb;
    color: #721c24;
}

[b-al4qnqaks7] .e-toast-warning {
    background-color: #fff3cd;
    border-color: #ffeaa7;
    color: #856404;
}

/* Status Chip Styles */
.page-subtitle-row[b-al4qnqaks7] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: 0.5rem;
}

.page-subtitle-row .page-subtitle[b-al4qnqaks7] {
    margin: 0;
}

.header-status-chip[b-al4qnqaks7] {
    display: inline-flex;
}

[b-al4qnqaks7] .status-chip-active-header .e-chip,
[b-al4qnqaks7] .status-chip-active .e-chip {
    background: linear-gradient(135deg, #48bb78 0%, #38a169 100%);
    color: white;
    border: none;
    box-shadow: 0 2px 4px rgba(72, 187, 120, 0.3);
    font-weight: 600;
    padding: 0.4rem 0.8rem;
    animation: fadeIn-b-al4qnqaks7 0.3s ease;
}

[b-al4qnqaks7] .status-chip-inactive-header .e-chip,
[b-al4qnqaks7] .status-chip-inactive .e-chip {
    background: linear-gradient(135deg, #a0aec0 0%, #718096 100%);
    color: white;
    border: none;
    box-shadow: 0 2px 4px rgba(160, 174, 192, 0.3);
    font-weight: 600;
    padding: 0.4rem 0.8rem;
    animation: fadeIn-b-al4qnqaks7 0.3s ease;
}

[b-al4qnqaks7] .status-chip-active-header .e-chip-icon,
[b-al4qnqaks7] .status-chip-active .e-chip-icon,
[b-al4qnqaks7] .status-chip-inactive-header .e-chip-icon,
[b-al4qnqaks7] .status-chip-inactive .e-chip-icon {
    margin-right: 0.5rem;
    font-size: 0.9rem;
}

@keyframes fadeIn-b-al4qnqaks7 {
    from {
        opacity: 0;
        transform: translateY(-5px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Care Level & Status Tab Styles */
.care-level-status-container[b-al4qnqaks7] {
    padding: 1rem;
}

.status-section[b-al4qnqaks7] {
    background: white;
    border-radius: 12px;
    padding: 1.5rem;
    border: 1px solid #e2e8f0;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.status-section h6[b-al4qnqaks7] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #2d3748;
    font-weight: 600;
    margin-bottom: 1.5rem;
}

.status-section h6 i[b-al4qnqaks7] {
    color: #667eea;
}

.status-control[b-al4qnqaks7] {
    padding: 1rem;
    background: linear-gradient(135deg, #f7fafc 0%, #edf2f7 100%);
    border-radius: 12px;
    border: 1px solid #e2e8f0;
}

.elegant-status-switch[b-al4qnqaks7] {
    margin-bottom: 0.5rem;
}

/* Elegant Status Checkbox Styling */
[b-al4qnqaks7] .elegant-status-switch .e-checkbox-wrapper {
    font-size: 1.1rem;
    font-weight: 500;
}

[b-al4qnqaks7] .status-active .e-checkbox-wrapper .e-label {
    color: #22543d;
    font-weight: 600;
}

[b-al4qnqaks7] .status-inactive .e-checkbox-wrapper .e-label {
    color: #718096;
    font-weight: 500;
}

[b-al4qnqaks7] .status-active .e-checkbox-wrapper .e-frame.e-check {
    background-color: #48bb78;
    border-color: #38a169;
}

[b-al4qnqaks7] .status-inactive .e-checkbox-wrapper .e-frame {
    background-color: #cbd5e0;
    border-color: #a0aec0;
}

.care-level-section[b-al4qnqaks7] {
    margin-top: 2rem;
}

/* Tab Header Content */
.tab-header-content[b-al4qnqaks7] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

/* Tab Care Level Badge */
.tab-care-level-badge[b-al4qnqaks7] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.6rem;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 600;
    margin-left: 0.5rem;
}

.tab-care-level-badge.care-level-0[b-al4qnqaks7] {
    background: #e2e8f0;
    color: #4a5568;
}

.tab-care-level-badge.care-level-1[b-al4qnqaks7] {
    background: #c6f6d5;
    color: #22543d;
}

.tab-care-level-badge.care-level-2[b-al4qnqaks7] {
    background: #bee3f8;
    color: #2c5282;
}

.tab-care-level-badge.care-level-3[b-al4qnqaks7] {
    background: #fef5e7;
    color: #744210;
}

.tab-care-level-badge.care-level-4[b-al4qnqaks7] {
    background: #fed7e2;
    color: #742a2a;
}

.tab-care-level-badge.care-level-5[b-al4qnqaks7] {
    background: #fbb6ce;
    color: #702459;
}
/* _content/FRP.Web/Components/Pages/Guests.razor.rz.scp.css */
/* Guest Management Page Styles */

.page-container[b-zhcrp5c54x] {
    padding: 1.5rem;
    background-color: #f8f9fa;
    min-height: calc(100vh - 100px);
}

.page-header[b-zhcrp5c54x] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    margin-bottom: 1rem;
    padding: 1rem;
}

.header-content[b-zhcrp5c54x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.page-title[b-zhcrp5c54x] {
    color: #2c3e50;
    margin: 0;
    font-size: 1.4rem;
    font-weight: 600;
}

.page-subtitle[b-zhcrp5c54x] {
    color: #6c757d;
    margin: 0.25rem 0 0 0;
    font-size: 0.85rem;
}

.header-actions[b-zhcrp5c54x] {
    display: flex;
    gap: 0.75rem;
}

/* Filter Section */
.filter-section[b-zhcrp5c54x] {
    background: white;
    border-radius: 12px;
    padding: 1.5rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    margin-bottom: 1.5rem;
}

/* Grid Container */
.grid-container[b-zhcrp5c54x] {
    background: white;
    border-radius: 12px;
    padding: 1.5rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* Grid Custom Styles */
.guest-name-cell[b-zhcrp5c54x] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.guest-name[b-zhcrp5c54x] {
    font-weight: 600;
    color: #2c3e50;
}

.badge[b-zhcrp5c54x] {
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
}

.badge-secondary[b-zhcrp5c54x] {
    background-color: #6c757d;
    color: white;
}

.care-level-badge .badge[b-zhcrp5c54x] {
    font-weight: 600;
}

.badge-care-level-1[b-zhcrp5c54x] {
    background-color: #e3f2fd;
    color: #1976d2;
}

.badge-care-level-2[b-zhcrp5c54x] {
    background-color: #f3e5f5;
    color: #7b1fa2;
}

.badge-care-level-3[b-zhcrp5c54x] {
    background-color: #fff3e0;
    color: #f57c00;
}

.badge-care-level-4[b-zhcrp5c54x] {
    background-color: #ffebee;
    color: #d32f2f;
}

.badge-care-level-5[b-zhcrp5c54x] {
    background-color: #fce4ec;
    color: #c2185b;
}

.insurance-cell[b-zhcrp5c54x] {
    color: #495057;
    font-size: 0.9rem;
}

.checkin-count[b-zhcrp5c54x] {
    font-weight: 600;
    color: #28a745;
}

.last-checkin[b-zhcrp5c54x] {
    color: #495057;
    font-size: 0.9rem;
}

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

.action-buttons .e-btn[b-zhcrp5c54x] {
    min-width: 32px;
    height: 32px;
}

.wheelchair-status[b-zhcrp5c54x] {
    font-size: 1.1rem;
}

.wheelchair-status .fas[b-zhcrp5c54x] {
    font-size: 1.2rem;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .page-container[b-zhcrp5c54x] {
        padding: 1rem;
    }
    
    .header-content[b-zhcrp5c54x] {
        flex-direction: column;
        gap: 1rem;
        align-items: flex-start;
    }
    
    .stats-row[b-zhcrp5c54x] {
        flex-direction: column;
    }
    
    .filter-section .row[b-zhcrp5c54x] {
        gap: 1rem;
    }
    
    .filter-section .col-md-2[b-zhcrp5c54x],
    .filter-section .col-md-4[b-zhcrp5c54x] {
        width: 100%;
    }
}

/* Syncfusion Grid Customizations */
[b-zhcrp5c54x] .e-grid .e-gridheader {
    background: #f8f9fa;
    border-bottom: 2px solid #dee2e6;
}

[b-zhcrp5c54x] .e-grid .e-headercell {
    font-weight: 600;
    color: #495057;
    border-right: 1px solid #dee2e6;
}

[b-zhcrp5c54x] .e-grid .e-row:hover {
    background-color: #f8f9fa;
}

[b-zhcrp5c54x] .e-grid .e-altrow {
    background-color: #fdfdfd;
}

[b-zhcrp5c54x] .e-grid .e-row.e-altrow:hover {
    background-color: #f8f9fa;
}

/* Simple Actions */
.simple-actions[b-zhcrp5c54x] {
    justify-content: space-between;
    align-items: center;
    background: white;
    border-radius: 8px;
    padding: 0.75rem 1rem;
    margin-bottom: 1rem;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
    border-left: 4px solid #007bff;
}

.selected-info[b-zhcrp5c54x] {
    color: #495057;
    font-weight: 500;
    font-size: 0.9rem;
}

.action-buttons-simple[b-zhcrp5c54x] {
    display: flex;
    gap: 0.5rem;
}

/* Toast customizations */
[b-zhcrp5c54x] .e-toast-success {
    background-color: #d4edda;
    border-color: #c3e6cb;
    color: #155724;
}

[b-zhcrp5c54x] .e-toast-danger {
    background-color: #f8d7da;
    border-color: #f5c6cb;
    color: #721c24;
}

[b-zhcrp5c54x] .e-toast-warning {
    background-color: #fff3cd;
    border-color: #ffeaa7;
    color: #856404;
}

[b-zhcrp5c54x] .e-toast-info {
    background-color: #d1ecf1;
    border-color: #bee5eb;
    color: #0c5460;
}
/* _content/FRP.Web/Components/Pages/Home.razor.rz.scp.css */
.dashboard[b-bej84if5kk] {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 2rem;
    max-width: 100%;
    overflow-y: auto;
}

/* KPI Section */
.kpi-section[b-bej84if5kk] {
    width: 100%;
}

.kpi-grid[b-bej84if5kk] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1.5rem;
}

.kpi-card[b-bej84if5kk] {
    border-radius: 1rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid #e5e7eb;
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
}

.kpi-card:hover[b-bej84if5kk] {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}

[b-bej84if5kk] .kpi-card .e-card-header {
    padding: 1.5rem 1.5rem 0 1.5rem;
    border-bottom: none;
}

[b-bej84if5kk] .kpi-card .e-card-header .e-card-header-title {
    font-size: 0.875rem;
    font-weight: 600;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin: 0;
}

[b-bej84if5kk] .kpi-card .e-card-content {
    padding: 1rem 1.5rem 1.5rem 1.5rem;
}

.kpi-content[b-bej84if5kk] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
}

.kpi-icon[b-bej84if5kk] {
    width: 4rem;
    height: 4rem;
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: white;
    flex-shrink: 0;
}

.kpi-icon.guests[b-bej84if5kk] {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
}

.kpi-icon.checkins[b-bej84if5kk] {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

.kpi-icon.occupancy[b-bej84if5kk] {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}

.kpi-icon.invoices[b-bej84if5kk] {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
}

.kpi-details[b-bej84if5kk] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.kpi-value[b-bej84if5kk] {
    font-size: 2.5rem;
    font-weight: 700;
    color: #1f2937;
    line-height: 1;
}

.kpi-change[b-bej84if5kk] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.875rem;
    font-weight: 500;
}

.kpi-change.positive[b-bej84if5kk] {
    color: #059669;
}

.kpi-change.negative[b-bej84if5kk] {
    color: #dc2626;
}

.kpi-change.neutral[b-bej84if5kk] {
    color: #6b7280;
}

.kpi-change i[b-bej84if5kk] {
    font-size: 0.75rem;
}

/* Charts Section */
.charts-section[b-bej84if5kk] {
    width: 100%;
}

.chart-grid[b-bej84if5kk] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(500px, 1fr));
    gap: 1.5rem;
}

.chart-card[b-bej84if5kk] {
    border-radius: 1rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    border: 1px solid #e5e7eb;
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.chart-card:hover[b-bej84if5kk] {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}

[b-bej84if5kk] .chart-card .e-card-header {
    padding: 1.5rem 1.5rem 1rem 1.5rem;
    border-bottom: 1px solid #f3f4f6;
}

[b-bej84if5kk] .chart-card .e-card-header .e-card-header-title {
    font-size: 1.125rem;
    font-weight: 600;
    color: #1f2937;
    margin: 0;
}

[b-bej84if5kk] .chart-card .e-card-content {
    padding: 0 1.5rem 1.5rem 1.5rem;
}

/* Actions Section */
.actions-section[b-bej84if5kk] {
    width: 100%;
}

.actions-card[b-bej84if5kk] {
    border-radius: 1rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    border: 1px solid #e5e7eb;
    background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
}

[b-bej84if5kk] .actions-card .e-card-header {
    padding: 1.5rem 1.5rem 1rem 1.5rem;
    border-bottom: 1px solid #f3f4f6;
}

[b-bej84if5kk] .actions-card .e-card-header .e-card-header-title {
    font-size: 1.125rem;
    font-weight: 600;
    color: #1f2937;
    margin: 0;
}

[b-bej84if5kk] .actions-card .e-card-content {
    padding: 0 1.5rem 1.5rem 1.5rem;
}

.action-buttons[b-bej84if5kk] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
}

[b-bej84if5kk] .action-buttons .e-btn {
    height: 3rem;
    font-weight: 500;
    border-radius: 0.75rem;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

[b-bej84if5kk] .action-buttons .e-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Syncfusion Chart Customizations */
[b-bej84if5kk] .chart-card .e-chart {
    background: transparent;
}

[b-bej84if5kk] .chart-card .e-chart svg {
    border-radius: 0.5rem;
}

/* Responsive Design */
@media (max-width: 1200px) {
    .chart-grid[b-bej84if5kk] {
        grid-template-columns: 1fr;
    }
    
    .chart-card[b-bej84if5kk] {
        min-width: 0;
    }
}

@media (max-width: 768px) {
    .dashboard[b-bej84if5kk] {
        padding: 1rem;
        gap: 1.5rem;
    }
    
    .kpi-grid[b-bej84if5kk] {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .chart-grid[b-bej84if5kk] {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    .action-buttons[b-bej84if5kk] {
        grid-template-columns: 1fr;
        gap: 0.75rem;
    }
    
    .kpi-content[b-bej84if5kk] {
        gap: 1rem;
    }
    
    .kpi-icon[b-bej84if5kk] {
        width: 3rem;
        height: 3rem;
        font-size: 1.25rem;
    }
    
    .kpi-value[b-bej84if5kk] {
        font-size: 2rem;
    }
}

@media (max-width: 480px) {
    .kpi-content[b-bej84if5kk] {
        flex-direction: column;
        text-align: center;
        gap: 0.75rem;
    }
    
    .kpi-details[b-bej84if5kk] {
        align-items: center;
    }
}
/* _content/FRP.Web/Components/Pages/Leistungsnachweise/ServiceRecordTabs.razor.rz.scp.css */
/* Container */
.leistungsnachweise-container[b-0p6g6ofoiy] {
    max-width: 1600px;
    margin: 0 auto;
    padding: 20px;
}

/* Page Header */
.page-header[b-0p6g6ofoiy] {
    background: linear-gradient(135deg, #28a745, #218838);
    color: white;
    padding: 25px;
    border-radius: 10px;
    margin-bottom: 30px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.header-content[b-0p6g6ofoiy] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.page-title[b-0p6g6ofoiy] {
    margin: 0;
    font-size: 28px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 15px;
}

.page-title i[b-0p6g6ofoiy] {
    font-size: 32px;
}

.header-info[b-0p6g6ofoiy] {
    margin-top: 10px;
    font-size: 16px;
    opacity: 0.95;
}

/* Tab Styles */
.service-record-tabs[b-0p6g6ofoiy] {
    margin-top: 20px;
}

[b-0p6g6ofoiy] .service-record-tabs .e-tab-header {
    background: #f8f9fa;
    border-radius: 10px 10px 0 0;
}

[b-0p6g6ofoiy] .service-record-tabs .e-tab-header .e-tab-wrap .e-tab-text {
    font-size: 16px;
    font-weight: 500;
}

/* Tab Content Areas */
.tab-content-create[b-0p6g6ofoiy],
.tab-content-upload[b-0p6g6ofoiy] {
    padding: 20px;
}

.tab-content-management[b-0p6g6ofoiy] {
    padding: 0;
    max-width: none;
}

/* Upload Sub-Tabs */
[b-0p6g6ofoiy] .upload-sub-tabs {
    margin-bottom: 30px;
}

[b-0p6g6ofoiy] .upload-sub-tabs .e-tab-header {
    background: #f8f9fa;
    border-radius: 8px 8px 0 0;
    border-bottom: 1px solid #dee2e6;
}

[b-0p6g6ofoiy] .upload-sub-tabs .e-tab-header .e-tab-wrap .e-tab-text {
    font-size: 14px;
    font-weight: 500;
}

[b-0p6g6ofoiy] .upload-sub-tabs .e-content {
    border: none;
    padding: 0;
}

.sub-tab-content[b-0p6g6ofoiy] {
    padding: 20px 0 0 0;
}

/* Filter Card */
[b-0p6g6ofoiy] .filter-card {
    margin-bottom: 30px;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.card-header-content[b-0p6g6ofoiy] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 18px;
    font-weight: 500;
}

.filter-controls[b-0p6g6ofoiy] {
    display: flex;
    align-items: flex-end;
    gap: 20px;
}

.date-selector[b-0p6g6ofoiy] {
    flex: 1;
    max-width: 300px;
}

.date-selector label[b-0p6g6ofoiy] {
    display: block;
    margin-bottom: 8px;
    font-weight: 500;
    color: #495057;
}

/* Statistics Section */
.stats-section[b-0p6g6ofoiy] {
    margin-bottom: 30px;
}

.stats-grid[b-0p6g6ofoiy] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
}

[b-0p6g6ofoiy] .stat-card {
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border: 1px solid #e3e6f0;
    transition: transform 0.2s, box-shadow 0.2s;
}

[b-0p6g6ofoiy] .stat-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

[b-0p6g6ofoiy] .stat-card.generated {
    border-left: 4px solid #6f42c1;
}

[b-0p6g6ofoiy] .stat-card.signed {
    border-left: 4px solid #28a745;
}

[b-0p6g6ofoiy] .stat-card.pending {
    border-left: 4px solid #ffc107;
}

[b-0p6g6ofoiy] .stat-card.invoiced {
    border-left: 4px solid #007bff;
}

/* Erstellen Tab Stat Cards */
[b-0p6g6ofoiy] .stat-card.guests {
    border-left: 4px solid #17a2b8;
}

[b-0p6g6ofoiy] .stat-card.checkins {
    border-left: 4px solid #28a745;
}

[b-0p6g6ofoiy] .stat-card.transports {
    border-left: 4px solid #fd7e14;
}

.stat-content[b-0p6g6ofoiy] {
    display: flex;
    align-items: center;
    padding: 20px;
}

.stat-icon[b-0p6g6ofoiy] {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 20px;
}

.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: 24px;
}

.stat-details[b-0p6g6ofoiy] {
    flex: 1;
}

.stat-value[b-0p6g6ofoiy] {
    font-size: 32px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 5px;
    color: #2c3e50;
}

.stat-label[b-0p6g6ofoiy] {
    font-size: 14px;
    color: #6c757d;
    font-weight: 500;
}

/* Filter Section */
.filter-section[b-0p6g6ofoiy] {
    margin-bottom: 30px;
}

.filter-grid[b-0p6g6ofoiy] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    align-items: end;
}

.filter-item[b-0p6g6ofoiy] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.filter-item.date-range[b-0p6g6ofoiy] {
    min-width: 250px;
}

.filter-item.filter-actions[b-0p6g6ofoiy] {
    justify-content: end;
}

.filter-label[b-0p6g6ofoiy] {
    font-size: 14px;
    font-weight: 600;
    color: #495057;
    margin-bottom: 5px;
}

/* Grid Section */
[b-0p6g6ofoiy] .grid-section .e-card-header {
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
}

.card-header-content[b-0p6g6ofoiy] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #1e293b;
    font-weight: 600;
}

.card-header-content i[b-0p6g6ofoiy] {
    color: #3b82f6;
}

/* Simple Action Bar */
.simple-actions[b-0p6g6ofoiy] {
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    padding: 12px 20px;
    margin-bottom: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.selected-info[b-0p6g6ofoiy] {
    font-weight: 600;
    color: #495057;
    display: flex;
    align-items: center;
    gap: 8px;
}

.selected-info[b-0p6g6ofoiy]::before {
    content: "✓";
    background: #28a745;
    color: white;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: bold;
}

.action-buttons-simple[b-0p6g6ofoiy] {
    display: flex;
    gap: 10px;
    align-items: center;
}

/* Table Card */
[b-0p6g6ofoiy] .table-card {
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

/* Table Styles */
.care-level-badge[b-0p6g6ofoiy] {
    background: #007bff;
    color: white;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
}

.presence-info[b-0p6g6ofoiy] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.presence-days[b-0p6g6ofoiy] {
    font-weight: 600;
    color: #28a745;
}

.billable-absences[b-0p6g6ofoiy] {
    color: #ffc107;
    font-weight: 500;
}

.wheelchair-badge[b-0p6g6ofoiy] {
    background: #17a2b8;
    color: white;
    padding: 4px 10px;
    border-radius: 15px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-weight: 600;
}

.status-badge[b-0p6g6ofoiy] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-ready[b-0p6g6ofoiy] {
    background: #d4edda;
    color: #155724;
}

.status-empty[b-0p6g6ofoiy] {
    background: #f8d7da;
    color: #721c24;
}

.status-signed[b-0p6g6ofoiy] {
    background: #dcfce7;
    color: #166534;
    border: 1px solid #bbf7d0;
}

.status-generated[b-0p6g6ofoiy] {
    background: #fef3c7;
    color: #92400e;
    border: 1px solid #fde68a;
}

.status-invoiced[b-0p6g6ofoiy] {
    background: #e0e7ff;
    color: #3730a3;
    border: 1px solid #c7d2fe;
}

/* Upload Tab Styles */
[b-0p6g6ofoiy] .upload-card {
    margin-bottom: 30px;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

[b-0p6g6ofoiy] .manual-upload-card {
    margin-bottom: 30px;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    border-left: 4px solid #007bff;
}

.upload-container[b-0p6g6ofoiy] {
    padding: 20px;
}

.upload-info[b-0p6g6ofoiy] {
    margin-top: 15px;
    padding: 10px;
    background-color: #f0f8ff;
    border-radius: 4px;
    color: #0066cc;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Manual Upload Styles */
.manual-upload-container[b-0p6g6ofoiy] {
    padding: 20px;
}

.manual-upload-form[b-0p6g6ofoiy] {
    background: #f8f9fa;
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 15px;
}

.form-row[b-0p6g6ofoiy] {
    display: flex;
    gap: 20px;
    align-items: end;
    margin-bottom: 20px;
    flex-wrap: wrap;
}

.form-group[b-0p6g6ofoiy] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.form-label[b-0p6g6ofoiy] {
    font-size: 14px;
    font-weight: 600;
    color: #495057;
    margin: 0;
}

.file-upload-section[b-0p6g6ofoiy] {
    margin-bottom: 20px;
    padding-top: 15px;
    border-top: 1px solid #dee2e6;
}

.upload-actions[b-0p6g6ofoiy] {
    display: flex;
    justify-content: flex-start;
    gap: 10px;
}

.manual-upload-info[b-0p6g6ofoiy] {
    padding: 12px;
    background-color: #fff3cd;
    border: 1px solid #ffeaa7;
    border-radius: 6px;
    color: #856404;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
}

.manual-upload-info i[b-0p6g6ofoiy] {
    color: #856404;
    flex-shrink: 0;
}

[b-0p6g6ofoiy] .recent-uploads-card {
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

/* Management Tab Styles */
.badge[b-0p6g6ofoiy] {
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
}

.badge-success[b-0p6g6ofoiy] {
    background-color: #28a745;
    color: white;
}

.badge-warning[b-0p6g6ofoiy] {
    background-color: #ffc107;
    color: #333;
}

.invoice-link[b-0p6g6ofoiy] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #3b82f6;
    text-decoration: none;
    font-weight: 500;
    transition: color 0.2s ease;
}

.invoice-link:hover[b-0p6g6ofoiy] {
    color: #1d4ed8;
    text-decoration: underline;
}

.text-muted[b-0p6g6ofoiy] {
    color: #6b7280;
    font-style: italic;
}

.text-muted i[b-0p6g6ofoiy] {
    margin-right: 4px;
}

.action-buttons[b-0p6g6ofoiy] {
    display: flex;
    gap: 6px;
    justify-content: center;
    flex-wrap: wrap;
}

.action-buttons .e-btn[b-0p6g6ofoiy] {
    min-width: 32px;
    height: 32px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.action-buttons .e-btn i[b-0p6g6ofoiy] {
    font-size: 0.875rem;
}

/* 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: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.empty-state[b-0p6g6ofoiy] {
    text-align: center;
    padding: 60px 20px;
}

.empty-state i[b-0p6g6ofoiy] {
    font-size: 64px;
    color: #dee2e6;
    margin-bottom: 20px;
}

.empty-state h3[b-0p6g6ofoiy] {
    font-size: 24px;
    font-weight: 500;
    color: #495057;
    margin-bottom: 10px;
}

.empty-state p[b-0p6g6ofoiy] {
    font-size: 16px;
    color: #6c757d;
    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: 12px;
    }
    
    .filter-grid[b-0p6g6ofoiy] {
        grid-template-columns: 1fr;
        gap: 12px;
    }
    
    .stat-value[b-0p6g6ofoiy] {
        font-size: 1.8rem;
    }
    
    .stat-label[b-0p6g6ofoiy] {
        font-size: 0.875rem;
    }
    
    .action-buttons[b-0p6g6ofoiy] {
        gap: 4px;
    }
    
    .action-buttons .e-btn[b-0p6g6ofoiy] {
        min-width: 28px;
        height: 28px;
    }
    
    .simple-actions[b-0p6g6ofoiy] {
        flex-direction: column;
        gap: 12px;
        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: 10px;
    }
    
    .form-row[b-0p6g6ofoiy] {
        flex-direction: column;
        align-items: stretch;
        gap: 15px;
    }
    
    .manual-upload-form[b-0p6g6ofoiy] {
        padding: 15px;
    }
}

@media (max-width: 480px) {
    .stats-grid[b-0p6g6ofoiy] {
        grid-template-columns: 1fr;
    }
    
    .stat-content[b-0p6g6ofoiy] {
        padding: 16px;
    }
    
    .stat-value[b-0p6g6ofoiy] {
        font-size: 1.6rem;
    }
}

/* Link Invoice Dialog */
.dialog-header[b-0p6g6ofoiy] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 20px;
    font-weight: 500;
}

.dialog-header i[b-0p6g6ofoiy] {
    color: #ffc107;
}

.link-dialog-content[b-0p6g6ofoiy] {
    padding: 20px;
}

.record-info[b-0p6g6ofoiy] {
    background: #f8f9fa;
    padding: 15px;
    border-radius: 8px;
    margin-bottom: 20px;
}

.record-info h6[b-0p6g6ofoiy] {
    margin: 0 0 10px 0;
    color: #495057;
    font-weight: 600;
}

.record-info p[b-0p6g6ofoiy] {
    margin: 0;
    line-height: 1.6;
}

.invoice-selection[b-0p6g6ofoiy] {
    margin-top: 20px;
}

.invoice-selection .form-label[b-0p6g6ofoiy] {
    font-weight: 500;
    margin-bottom: 10px;
    display: block;
}

.dialog-footer[b-0p6g6ofoiy] {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
    padding: 15px;
    border-top: 1px solid #dee2e6;
}
/* _content/FRP.Web/Components/Pages/Shared/MainLayout.razor.rz.scp.css */
.app-container[b-115oy235i7] {
    height: 100vh;
    overflow: hidden;
}

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

.main-content[b-115oy235i7] {
    overflow-y: auto;
    padding: 2rem;
    background: #f8fafc;
    /* Positioning: zwischen Sidebar, TopBar und Footer */
    position: fixed;
    top: 75px; /* TopBar height */
    left: 280px; /* Sidebar width */
    right: 0;
    bottom: 60px; /* Footer height */
    width: calc(100vw - 280px); /* Content width */
    height: calc(100vh - 75px - 60px); /* Content height */
}

/* Weekly overview gets special treatment to remove scrolling */
.main-content:has(.weekly-overview-container)[b-115oy235i7] {
    overflow: hidden;
    padding: 0;
}

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

#blazor-error-ui[b-115oy235i7] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-115oy235i7] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Components/ShiftPlannerCell.razor.rz.scp.css */
.shift-cell[b-6p9zk2r9gc] {
    position: relative;
    padding: 4px;
    min-height: 50px;
    border-right: 1px solid #e2e8f0;
    cursor: pointer;
    transition: background 0.2s;
}

.shift-cell:hover[b-6p9zk2r9gc] {
    background: #f1f5f9;
}

.shift-cell.today[b-6p9zk2r9gc] {
    background: rgba(102, 126, 234, 0.05);
}

.shift-cell.drag-over[b-6p9zk2r9gc] {
    background: rgba(59, 130, 246, 0.15);
    border: 2px dashed #3b82f6;
}

.shift-cell.drag-invalid[b-6p9zk2r9gc] {
    background: rgba(239, 68, 68, 0.1);
    border: 2px dashed #ef4444;
}

.timeline-container[b-6p9zk2r9gc] {
    position: relative;
    height: 100%;
    min-height: 42px;
}

.shift-item[b-6p9zk2r9gc] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 0.75rem;
    border-left: 3px solid;
    cursor: grab;
    transition: transform 0.2s, opacity 0.2s;
}

/* Timeline positioning for multiple shifts in one cell */
.shift-item.timeline-positioned[b-6p9zk2r9gc] {
    position: absolute;
    top: 4px;
    bottom: 4px;
    /* left and width come from inline style */
    padding: 2px 4px;
    font-size: 0.7rem;
    overflow: hidden;
    white-space: nowrap;
}

.shift-item:hover[b-6p9zk2r9gc] {
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.shift-item.dragging[b-6p9zk2r9gc] {
    opacity: 0.5;
    transform: scale(0.95);
}

.shift-code[b-6p9zk2r9gc] {
    font-weight: 600;
}

.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: #cbd5e1;
    opacity: 0.3;
    transition: opacity 0.2s;
    cursor: pointer;
}

.shift-cell:hover .empty-cell-indicator[b-6p9zk2r9gc] {
    opacity: 1;
    color: #667eea;
}

/* Time Record Overlay */
.time-record-overlay[b-6p9zk2r9gc] {
    position: absolute;
    top: 50%;
    height: 6px;
    transform: translateY(-50%);
    background: linear-gradient(90deg, #22c55e 0%, #16a34a 100%);
    border-radius: 3px;
    opacity: 0.85;
    pointer-events: auto;
    cursor: help;
    z-index: 2;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

.time-record-overlay:hover[b-6p9zk2r9gc] {
    opacity: 1;
    height: 8px;
}
/* _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: 12px 8px;
    font-size: 0.875rem;
    color: #475569;
    background: #f1f5f9;
    border-right: 1px solid #e2e8f0;
}

.day-header.today[b-ucrettmblq] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
}

.day-header.today .day-name[b-ucrettmblq],
.day-header.today .day-date[b-ucrettmblq] {
    color: white;
}

.day-name[b-ucrettmblq] {
    font-weight: 600;
    font-size: 0.875rem;
}

.day-date[b-ucrettmblq] {
    font-size: 0.75rem;
    opacity: 0.8;
}
/* _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: white;
}

.grid-header[b-28r01tzsbg] {
    display: grid;
    grid-template-columns: 180px repeat(5, 1fr) 120px;
    background: #f1f5f9;
    border-bottom: 2px solid #e2e8f0;
    position: sticky;
    top: 0;
    z-index: 10;
}

.employee-column-header[b-28r01tzsbg],
.hours-column-header[b-28r01tzsbg] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px 8px;
    font-weight: 600;
    font-size: 0.875rem;
    color: #475569;
    background: #f1f5f9;
    border-right: 1px solid #e2e8f0;
}

.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: 12px 16px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    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: 1.25rem;
    font-weight: 600;
}

.header-center[b-75kapxidps] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.week-navigation[b-75kapxidps] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.nav-btn[b-75kapxidps] {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: white;
    padding: 8px 12px;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s;
}

.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: 0.875rem;
    font-weight: 600;
    opacity: 0.9;
}

.week-dates[b-75kapxidps] {
    font-size: 1rem;
    font-weight: 500;
}

.today-btn[b-75kapxidps] {
    background: rgba(255, 255, 255, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.3);
    color: white;
    padding: 8px 16px;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s;
    font-weight: 500;
}

.today-btn:hover[b-75kapxidps] {
    background: rgba(255, 255, 255, 0.25);
}

.header-right[b-75kapxidps] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.evaluation-month[b-75kapxidps] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.month-label[b-75kapxidps] {
    font-size: 0.875rem;
    opacity: 0.9;
}

.month-select[b-75kapxidps] {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: white;
    padding: 6px 12px;
    border-radius: 6px;
    cursor: pointer;
}

.month-select option[b-75kapxidps] {
    background: #4338ca;
    color: white;
}

.action-buttons[b-75kapxidps] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.action-btn[b-75kapxidps] {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: white;
    padding: 8px 12px;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s;
}

.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: white;
    border-bottom: 1px solid #e2e8f0;
    padding: 12px 16px;
}

.heatmap-header[b-mcn5lprv19] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.heatmap-title[b-mcn5lprv19] {
    font-weight: 600;
    color: #1e293b;
    font-size: 0.9rem;
}

.config-btn[b-mcn5lprv19] {
    background: transparent;
    border: 1px solid #e2e8f0;
    color: #64748b;
    padding: 4px 8px;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s;
}

.config-btn:hover[b-mcn5lprv19] {
    background: #f1f5f9;
    color: #1e293b;
    border-color: #cbd5e1;
}

.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: 4px;
}

.heatmap-label[b-mcn5lprv19] {
    width: 80px;
    min-width: 80px;
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    font-size: 0.75rem;
    color: #475569;
    background: #f8fafc;
    border-radius: 4px;
}

.dept-code[b-mcn5lprv19] {
    font-weight: 600;
    color: #1e293b;
}

.shift-code[b-mcn5lprv19] {
    color: #64748b;
}

.heatmap-day-header[b-mcn5lprv19] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 4px;
    text-align: center;
}

.day-name[b-mcn5lprv19] {
    font-weight: 600;
    color: #1e293b;
    font-size: 0.75rem;
    text-transform: uppercase;
}

.day-date[b-mcn5lprv19] {
    font-size: 0.7rem;
    color: #64748b;
}

.heatmap-cell[b-mcn5lprv19] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 6px 8px;
    border-radius: 4px;
    cursor: help;
    transition: all 0.2s;
    min-height: 28px;
}

.heatmap-cell:hover[b-mcn5lprv19] {
    transform: scale(1.05);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.cell-value[b-mcn5lprv19] {
    font-size: 0.75rem;
    font-weight: 600;
    color: white;
    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: white;
}

.heatmap-legend[b-mcn5lprv19] {
    display: flex;
    gap: 16px;
    margin-top: 12px;
    padding-top: 8px;
    border-top: 1px solid #e2e8f0;
}

.legend-item[b-mcn5lprv19] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.legend-color[b-mcn5lprv19] {
    width: 14px;
    height: 14px;
    border-radius: 4px;
}

.legend-text[b-mcn5lprv19] {
    font-size: 0.75rem;
    color: #64748b;
}
/* _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: 8px;
    background: #fafbfc;
    font-size: 0.75rem;
}

.hours-display[b-lmymmod115] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
}

.hours-values[b-lmymmod115] {
    display: flex;
    gap: 2px;
    color: #64748b;
}

.soll[b-lmymmod115] {
    color: #6b7280;
}

.separator[b-lmymmod115] {
    color: #94a3b8;
}

.ist[b-lmymmod115] {
    color: #334155;
    font-weight: 500;
}

.hours-diff[b-lmymmod115] {
    font-size: 0.7rem;
}

.hours-diff.hours-over[b-lmymmod115] {
    color: #059669;
}

.hours-diff.hours-under[b-lmymmod115] {
    color: #dc2626;
}

.hours-diff.hours-ok[b-lmymmod115] {
    color: #6b7280;
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Components/ShiftPlannerLegend.razor.rz.scp.css */
.shift-legend[b-qa9l7guy1q] {
    background: white;
    border-top: 1px solid #e2e8f0;
    transition: all 0.3s;
}

.legend-header[b-qa9l7guy1q] {
    display: flex;
    align-items: center;
    padding: 12px 16px;
    font-weight: 600;
    font-size: 0.875rem;
    color: #475569;
    cursor: pointer;
    user-select: none;
    background: #f8fafc;
}

.legend-header:hover[b-qa9l7guy1q] {
    background: #f1f5f9;
}

.legend-content[b-qa9l7guy1q] {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    padding: 12px 16px;
}

.legend-group[b-qa9l7guy1q] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.legend-group-header[b-qa9l7guy1q] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #64748b;
    padding-left: 8px;
    border-left: 3px solid #cbd5e1;
}

.legend-items[b-qa9l7guy1q] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.legend-item[b-qa9l7guy1q] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 4px;
    font-size: 0.75rem;
}

.legend-item .shift-code[b-qa9l7guy1q] {
    font-weight: 600;
}

.legend-item .shift-time[b-qa9l7guy1q] {
    opacity: 0.9;
}

.legend-item.leave-vacation[b-qa9l7guy1q] {
    background: repeating-linear-gradient(
        45deg,
        #fef3c7,
        #fef3c7 5px,
        #fde68a 5px,
        #fde68a 10px
    );
    color: #92400e;
}

.legend-item.leave-sick[b-qa9l7guy1q] {
    background: repeating-linear-gradient(
        45deg,
        #fee2e2,
        #fee2e2 5px,
        #fecaca 5px,
        #fecaca 10px
    );
    color: #991b1b;
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Components/ShiftPlannerRoleGroup.razor.rz.scp.css */
.role-group[b-rp6otz319w] {
    border-bottom: 1px solid #e2e8f0;
}

.role-header[b-rp6otz319w] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    background: #f8fafc;
    cursor: pointer;
    user-select: none;
    transition: background 0.2s;
}

.role-header:hover[b-rp6otz319w] {
    background: #f1f5f9;
}

.role-toggle[b-rp6otz319w] {
    width: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #64748b;
}

.role-color-indicator[b-rp6otz319w] {
    width: 12px;
    height: 12px;
    border-radius: 3px;
}

.role-name[b-rp6otz319w] {
    font-weight: 600;
    font-size: 0.9rem;
    color: #334155;
}

.employee-count[b-rp6otz319w] {
    font-size: 0.8rem;
    color: #64748b;
    margin-left: auto;
}

.role-employees[b-rp6otz319w] {
    background: white;
}
/* _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 #e2e8f0;
    min-height: 48px;
}

.employee-row:hover[b-3subcil0ig] {
    background: #f8fafc;
}

.employee-cell[b-3subcil0ig] {
    display: flex;
    align-items: center;
    padding: 8px 12px;
    background: #fafbfc;
    border-right: 1px solid #e2e8f0;
}

.employee-name[b-3subcil0ig] {
    font-size: 0.875rem;
    font-weight: 500;
    color: #334155;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/CustomShiftPlanner.razor.rz.scp.css */
/* Main container */
.custom-shift-planner[b-pvlor1f8wy] {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 120px);
    background: #f8fafc;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

/* 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: 1rem;
    color: #64748b;
}

/* Role colors */
[b-pvlor1f8wy] .role-1 { --role-color: #3b82f6; --role-border: #1d4ed8; }
[b-pvlor1f8wy] .role-2 { --role-color: #10b981; --role-border: #059669; }
[b-pvlor1f8wy] .role-3 { --role-color: #f59e0b; --role-border: #d97706; }
[b-pvlor1f8wy] .role-4 { --role-color: #8b5cf6; --role-border: #7c3aed; }
[b-pvlor1f8wy] .role-5 { --role-color: #06b6d4; --role-border: #0891b2; }
[b-pvlor1f8wy] .role-6 { --role-color: #f97316; --role-border: #ea580c; }
[b-pvlor1f8wy] .role-7 { --role-color: #64748b; --role-border: #475569; }
[b-pvlor1f8wy] .role-8 { --role-color: #ef4444; --role-border: #dc2626; }

/* Leave shift styles */
[b-pvlor1f8wy] .leave-vacation-shift {
    background: repeating-linear-gradient(
        45deg,
        #fef3c7,
        #fef3c7 5px,
        #fde68a 5px,
        #fde68a 10px
    ) !important;
    color: #92400e !important;
    border-color: #f59e0b !important;
}

[b-pvlor1f8wy] .leave-sick-shift {
    background: repeating-linear-gradient(
        45deg,
        #fee2e2,
        #fee2e2 5px,
        #fecaca 5px,
        #fecaca 10px
    ) !important;
    color: #991b1b !important;
    border-color: #ef4444 !important;
}

[b-pvlor1f8wy] .leave-shift {
    background: repeating-linear-gradient(
        45deg,
        #e5e7eb,
        #e5e7eb 5px,
        #d1d5db 5px,
        #d1d5db 10px
    ) !important;
    color: #374151 !important;
    border-color: #6b7280 !important;
}

/* Hours deviation styles */
[b-pvlor1f8wy] .hours-over {
    color: #059669;
    font-weight: 600;
}

[b-pvlor1f8wy] .hours-under {
    color: #dc2626;
    font-weight: 600;
}

[b-pvlor1f8wy] .hours-ok {
    color: #6b7280;
}

/* 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 #3b82f6;
}

[b-pvlor1f8wy] .drag-invalid {
    background-color: rgba(239, 68, 68, 0.1);
    border: 2px dashed #ef4444;
}

/* Scrollbar styling */
[b-pvlor1f8wy] ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

[b-pvlor1f8wy] ::-webkit-scrollbar-track {
    background: #f1f5f9;
    border-radius: 4px;
}

[b-pvlor1f8wy] ::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 4px;
}

[b-pvlor1f8wy] ::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}
/* _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: 10000;
}

.copy-month-dialog[b-s22iddi8zt] {
    position: fixed;
    background: white;
    border-radius: 12px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
    z-index: 10001;
    min-width: 400px;
    max-width: 500px;
}

.dialog-header[b-s22iddi8zt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid #e2e8f0;
}

.dialog-title[b-s22iddi8zt] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: #1e293b;
}

.close-btn[b-s22iddi8zt] {
    background: none;
    border: none;
    color: #64748b;
    cursor: pointer;
    padding: 4px;
    border-radius: 4px;
}

.close-btn:hover[b-s22iddi8zt] {
    background: #f1f5f9;
    color: #334155;
}

.dialog-body[b-s22iddi8zt] {
    padding: 20px;
}

.info-box[b-s22iddi8zt] {
    padding: 12px 16px;
    background: #f1f5f9;
    border-radius: 8px;
    color: #475569;
    font-size: 0.875rem;
    margin-bottom: 20px;
}

.form-group[b-s22iddi8zt] {
    margin-bottom: 16px;
}

.form-label[b-s22iddi8zt] {
    display: block;
    font-size: 0.875rem;
    font-weight: 500;
    color: #475569;
    margin-bottom: 8px;
}

.form-select[b-s22iddi8zt] {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    font-size: 0.9rem;
    color: #1e293b;
}

.form-select:focus[b-s22iddi8zt] {
    outline: none;
    border-color: #667eea;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

.checkbox-group[b-s22iddi8zt] {
    margin-bottom: 8px;
}

.checkbox-item[b-s22iddi8zt] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 0;
    cursor: pointer;
    font-size: 0.875rem;
    color: #334155;
}

.checkbox-item input[type="checkbox"][b-s22iddi8zt] {
    width: 16px;
    height: 16px;
    accent-color: #667eea;
}

.employee-list[b-s22iddi8zt] {
    max-height: 200px;
    overflow-y: auto;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 8px 12px;
}

.dialog-footer[b-s22iddi8zt] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding: 16px 20px;
    border-top: 1px solid #e2e8f0;
}

.btn-cancel[b-s22iddi8zt] {
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    color: #475569;
    padding: 10px 16px;
    border-radius: 6px;
    cursor: pointer;
    font-weight: 500;
}

.btn-cancel:hover[b-s22iddi8zt] {
    background: #e2e8f0;
}

.btn-copy[b-s22iddi8zt] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    color: white;
    padding: 10px 20px;
    border-radius: 6px;
    cursor: pointer;
    font-weight: 500;
}

.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: 10000;
}

.shift-edit-dialog[b-mc7qssy1h4] {
    position: fixed;
    background: white;
    border-radius: 12px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
    z-index: 10001;
    min-width: 380px;
}

.dialog-header[b-mc7qssy1h4] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid #e2e8f0;
}

.dialog-title[b-mc7qssy1h4] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: #1e293b;
}

.close-btn[b-mc7qssy1h4] {
    background: none;
    border: none;
    color: #64748b;
    cursor: pointer;
    padding: 4px;
    border-radius: 4px;
}

.close-btn:hover[b-mc7qssy1h4] {
    background: #f1f5f9;
    color: #334155;
}

.dialog-body[b-mc7qssy1h4] {
    padding: 20px;
}

.dialog-info[b-mc7qssy1h4] {
    display: flex;
    gap: 8px;
    margin-bottom: 8px;
    font-size: 0.9rem;
}

.info-label[b-mc7qssy1h4] {
    color: #64748b;
    min-width: 60px;
}

.info-value[b-mc7qssy1h4] {
    color: #1e293b;
    font-weight: 500;
}

.time-inputs[b-mc7qssy1h4] {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    margin-top: 20px;
}

.time-group[b-mc7qssy1h4] {
    flex: 1;
}

.time-label[b-mc7qssy1h4] {
    display: block;
    font-size: 0.8rem;
    font-weight: 500;
    color: #64748b;
    margin-bottom: 6px;
}

.time-input[b-mc7qssy1h4] {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    font-size: 1rem;
    color: #1e293b;
}

.time-input:focus[b-mc7qssy1h4] {
    outline: none;
    border-color: #667eea;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

.time-separator[b-mc7qssy1h4] {
    padding-bottom: 12px;
    color: #94a3b8;
}

.error-message[b-mc7qssy1h4] {
    margin-top: 12px;
    padding: 10px 12px;
    background: #fef2f2;
    border-radius: 6px;
    color: #dc2626;
    font-size: 0.875rem;
}

.dialog-footer[b-mc7qssy1h4] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 16px 20px;
    border-top: 1px solid #e2e8f0;
}

.footer-spacer[b-mc7qssy1h4] {
    flex: 1;
}

.btn-delete[b-mc7qssy1h4] {
    background: #fef2f2;
    border: 1px solid #fecaca;
    color: #dc2626;
    padding: 10px 16px;
    border-radius: 6px;
    cursor: pointer;
    font-weight: 500;
}

.btn-delete:hover[b-mc7qssy1h4] {
    background: #fee2e2;
    border-color: #f87171;
}

.btn-cancel[b-mc7qssy1h4] {
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    color: #475569;
    padding: 10px 16px;
    border-radius: 6px;
    cursor: pointer;
    font-weight: 500;
}

.btn-cancel:hover[b-mc7qssy1h4] {
    background: #e2e8f0;
}

.btn-save[b-mc7qssy1h4] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    color: white;
    padding: 10px 20px;
    border-radius: 6px;
    cursor: pointer;
    font-weight: 500;
}

.btn-save:hover[b-mc7qssy1h4] {
    opacity: 0.9;
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/CustomShiftPlanner/Dialogs/ShiftSelectionDialog.razor.rz.scp.css */
.dialog-backdrop[b-5llbtnts89] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 10000;
}

.shift-selection-dialog[b-5llbtnts89] {
    position: fixed;
    background: white;
    border-radius: 12px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
    z-index: 10001;
    min-width: 320px;
    max-width: 400px;
}

.dialog-header[b-5llbtnts89] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid #e2e8f0;
}

.dialog-title[b-5llbtnts89] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: #1e293b;
}

.close-btn[b-5llbtnts89] {
    background: none;
    border: none;
    color: #64748b;
    cursor: pointer;
    padding: 4px;
    border-radius: 4px;
}

.close-btn:hover[b-5llbtnts89] {
    background: #f1f5f9;
    color: #334155;
}

.dialog-body[b-5llbtnts89] {
    padding: 20px;
}

.dialog-info[b-5llbtnts89] {
    display: flex;
    gap: 8px;
    margin-bottom: 8px;
    font-size: 0.9rem;
}

.info-label[b-5llbtnts89] {
    color: #64748b;
    min-width: 80px;
}

.info-value[b-5llbtnts89] {
    color: #1e293b;
    font-weight: 500;
}

.shift-options[b-5llbtnts89] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 16px;
}

.shift-option[b-5llbtnts89] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-left: 4px solid;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s;
}

.shift-option:hover[b-5llbtnts89] {
    background: #f1f5f9;
    transform: translateX(4px);
}

.shift-code[b-5llbtnts89] {
    font-weight: 600;
    font-size: 1rem;
    color: #1e293b;
}

.shift-time[b-5llbtnts89] {
    font-size: 0.875rem;
    color: #64748b;
}

.dialog-footer[b-5llbtnts89] {
    display: flex;
    justify-content: flex-end;
    padding: 16px 20px;
    border-top: 1px solid #e2e8f0;
}

.btn-cancel[b-5llbtnts89] {
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    color: #475569;
    padding: 8px 16px;
    border-radius: 6px;
    cursor: pointer;
    font-weight: 500;
}

.btn-cancel:hover[b-5llbtnts89] {
    background: #e2e8f0;
}

.no-shifts-message[b-5llbtnts89] {
    padding: 16px;
    background: #fef3c7;
    border: 1px solid #fcd34d;
    border-radius: 8px;
    color: #92400e;
    text-align: center;
    font-size: 0.9rem;
}

.no-shifts-message small[b-5llbtnts89] {
    color: #a16207;
}

.section-header[b-5llbtnts89] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 8px;
    padding-bottom: 4px;
    border-bottom: 1px solid #e2e8f0;
}

.mt-3[b-5llbtnts89] {
    margin-top: 16px;
}

.leave-options[b-5llbtnts89] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.leave-option[b-5llbtnts89] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s;
    text-align: left;
}

.leave-option:hover[b-5llbtnts89] {
    transform: translateY(-2px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.leave-option .leave-icon[b-5llbtnts89] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    font-size: 1rem;
}

.leave-option .leave-text[b-5llbtnts89] {
    font-size: 0.85rem;
    font-weight: 500;
    color: #334155;
}

.leave-option.vacation[b-5llbtnts89] {
    border-left: 3px solid #f59e0b;
}

.leave-option.vacation .leave-icon[b-5llbtnts89] {
    background: #fef3c7;
    color: #d97706;
}

.leave-option.vacation:hover[b-5llbtnts89] {
    background: #fffbeb;
}

.leave-option.unpaid[b-5llbtnts89] {
    border-left: 3px solid #8b5cf6;
}

.leave-option.unpaid .leave-icon[b-5llbtnts89] {
    background: #ede9fe;
    color: #7c3aed;
}

.leave-option.unpaid:hover[b-5llbtnts89] {
    background: #f5f3ff;
}

.leave-option.sick[b-5llbtnts89] {
    border-left: 3px solid #ef4444;
}

.leave-option.sick .leave-icon[b-5llbtnts89] {
    background: #fee2e2;
    color: #dc2626;
}

.leave-option.sick:hover[b-5llbtnts89] {
    background: #fef2f2;
}
/* _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: 999;
}

.config-dialog[b-2c33jnpeka] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 12px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    z-index: 1000;
    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: 1rem 1.5rem;
    border-bottom: 1px solid #e2e8f0;
}

.dialog-title[b-2c33jnpeka] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: #1e293b;
}

.close-btn[b-2c33jnpeka] {
    background: none;
    border: none;
    padding: 0.5rem;
    cursor: pointer;
    color: #64748b;
    border-radius: 8px;
    transition: all 0.2s;
}

.close-btn:hover[b-2c33jnpeka] {
    background: #f1f5f9;
    color: #1e293b;
}

.dialog-body[b-2c33jnpeka] {
    padding: 1.5rem;
    overflow-y: auto;
    flex: 1;
}

.dialog-footer[b-2c33jnpeka] {
    display: flex;
    gap: 0.75rem;
    justify-content: flex-end;
    padding: 1rem 1.5rem;
    border-top: 1px solid #e2e8f0;
}

.loading-container[b-2c33jnpeka] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 2rem;
}

.spinner[b-2c33jnpeka] {
    width: 30px;
    height: 30px;
    border: 3px solid #e2e8f0;
    border-top-color: #667eea;
    border-radius: 50%;
    animation: spin-b-2c33jnpeka 1s linear infinite;
}

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

/* Sections */
.section-title[b-2c33jnpeka] {
    margin: 0 0 1rem 0;
    font-size: 0.9rem;
    font-weight: 600;
    color: #1e293b;
}

.add-section[b-2c33jnpeka] {
    background: #f8fafc;
    padding: 1rem;
    border-radius: 8px;
    margin-bottom: 1.5rem;
}

.add-form[b-2c33jnpeka] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.form-row[b-2c33jnpeka] {
    display: flex;
    gap: 1rem;
    align-items: flex-end;
}

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

.form-group.actions[b-2c33jnpeka] {
    flex: 0;
}

.form-group label[b-2c33jnpeka] {
    font-size: 0.75rem;
    font-weight: 500;
    color: #475569;
}

.form-select[b-2c33jnpeka],
.form-input[b-2c33jnpeka] {
    padding: 0.5rem 0.75rem;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    font-size: 0.875rem;
    transition: all 0.2s;
}

.form-select:focus[b-2c33jnpeka],
.form-input:focus[b-2c33jnpeka] {
    outline: none;
    border-color: #667eea;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

.btn-add[b-2c33jnpeka] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 6px;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
    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: 1rem;
}

.empty-message[b-2c33jnpeka] {
    padding: 1.5rem;
    text-align: center;
    color: #64748b;
    background: #f8fafc;
    border-radius: 8px;
}

.requirements-table-container[b-2c33jnpeka] {
    max-height: 250px;
    overflow-y: auto;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
}

.requirements-table[b-2c33jnpeka] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.requirements-table th[b-2c33jnpeka],
.requirements-table td[b-2c33jnpeka] {
    padding: 0.5rem 0.75rem;
    text-align: left;
    border-bottom: 1px solid #e2e8f0;
}

.requirements-table th[b-2c33jnpeka] {
    background: #f8fafc;
    font-weight: 600;
    color: #475569;
    position: sticky;
    top: 0;
}

.requirements-table tr:hover[b-2c33jnpeka] {
    background: #f8fafc;
}

.requirements-table tr:last-child td[b-2c33jnpeka] {
    border-bottom: none;
}

.btn-delete[b-2c33jnpeka] {
    background: transparent;
    border: 1px solid #e2e8f0;
    color: #ef4444;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-delete:hover[b-2c33jnpeka] {
    background: #fef2f2;
    border-color: #fecaca;
}

.btn-close[b-2c33jnpeka] {
    background: white;
    border: 1px solid #e2e8f0;
    color: #475569;
    padding: 0.5rem 1.25rem;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-close:hover[b-2c33jnpeka] {
    background: #f8fafc;
}
/* _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: 999;
}

.import-dialog[b-nc8bgzkqg2] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 12px;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    z-index: 1000;
    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: 1rem 1.5rem;
    border-bottom: 1px solid #e2e8f0;
}

.dialog-title[b-nc8bgzkqg2] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: #1e293b;
}

.close-btn[b-nc8bgzkqg2] {
    background: none;
    border: none;
    padding: 0.5rem;
    cursor: pointer;
    color: #64748b;
    border-radius: 8px;
    transition: all 0.2s;
}

.close-btn:hover[b-nc8bgzkqg2] {
    background: #f1f5f9;
    color: #1e293b;
}

.dialog-body[b-nc8bgzkqg2] {
    padding: 1.5rem;
    overflow-y: auto;
    flex: 1;
}

.dialog-footer[b-nc8bgzkqg2] {
    display: flex;
    gap: 0.75rem;
    justify-content: flex-end;
    padding: 1rem 1.5rem;
    border-top: 1px solid #e2e8f0;
}

/* Upload Section */
.upload-section[b-nc8bgzkqg2] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.upload-info[b-nc8bgzkqg2] {
    background: #f8fafc;
    padding: 1rem;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
}

.upload-info h6[b-nc8bgzkqg2] {
    margin: 0 0 0.5rem 0;
    font-size: 0.875rem;
    color: #475569;
}

.upload-info code[b-nc8bgzkqg2] {
    display: block;
    padding: 0.5rem;
    background: #e2e8f0;
    border-radius: 4px;
    font-size: 0.8rem;
    color: #1e293b;
}

.format-example[b-nc8bgzkqg2] {
    margin-top: 0.5rem;
}

.format-example small[b-nc8bgzkqg2] {
    color: #64748b;
}

.upload-area[b-nc8bgzkqg2] {
    position: relative;
    border: 2px dashed #cbd5e1;
    border-radius: 12px;
    padding: 3rem 2rem;
    text-align: center;
    transition: all 0.2s;
    cursor: pointer;
}

.upload-area:hover[b-nc8bgzkqg2],
.upload-area.drag-over[b-nc8bgzkqg2] {
    border-color: #667eea;
    background: rgba(102, 126, 234, 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: 0.75rem;
    pointer-events: none;
}

.upload-icon[b-nc8bgzkqg2] {
    font-size: 2rem;
    color: #667eea;
}

.upload-text[b-nc8bgzkqg2] {
    color: #64748b;
}

.error-message[b-nc8bgzkqg2] {
    padding: 0.75rem 1rem;
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    color: #dc2626;
    font-size: 0.875rem;
}

/* Preview Section */
.preview-section[b-nc8bgzkqg2] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.preview-header[b-nc8bgzkqg2] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.preview-header h6[b-nc8bgzkqg2] {
    margin: 0;
    color: #1e293b;
}

.preview-filename[b-nc8bgzkqg2] {
    font-size: 0.875rem;
    color: #64748b;
}

.preview-table-container[b-nc8bgzkqg2] {
    max-height: 300px;
    overflow-y: auto;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
}

.preview-table[b-nc8bgzkqg2] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.preview-table th[b-nc8bgzkqg2],
.preview-table td[b-nc8bgzkqg2] {
    padding: 0.5rem 0.75rem;
    text-align: left;
    border-bottom: 1px solid #e2e8f0;
}

.preview-table th[b-nc8bgzkqg2] {
    background: #f8fafc;
    font-weight: 600;
    color: #475569;
    position: sticky;
    top: 0;
}

.preview-table tr:hover[b-nc8bgzkqg2] {
    background: #f8fafc;
}

.preview-table .invalid-row[b-nc8bgzkqg2] {
    background: #fef2f2;
}

.preview-table .invalid-row:hover[b-nc8bgzkqg2] {
    background: #fee2e2;
}

.preview-more[b-nc8bgzkqg2] {
    text-align: center;
    padding: 0.75rem;
    color: #64748b;
    font-size: 0.875rem;
    background: #f8fafc;
    border-radius: 8px;
}

.preview-summary[b-nc8bgzkqg2] {
    display: flex;
    gap: 1.5rem;
    padding: 0.75rem 1rem;
    background: #f8fafc;
    border-radius: 8px;
}

.summary-valid[b-nc8bgzkqg2] {
    color: #059669;
}

.summary-invalid[b-nc8bgzkqg2] {
    color: #dc2626;
}

/* Importing Section */
.importing-section[b-nc8bgzkqg2] {
    padding: 3rem;
}

.spinner-container[b-nc8bgzkqg2] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

.spinner[b-nc8bgzkqg2] {
    width: 40px;
    height: 40px;
    border: 3px solid #e2e8f0;
    border-top-color: #667eea;
    border-radius: 50%;
    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: 1rem;
}

.result-summary[b-nc8bgzkqg2] {
    text-align: center;
    padding: 2rem;
    border-radius: 12px;
}

.result-summary.success[b-nc8bgzkqg2] {
    background: #f0fdf4;
}

.result-summary.warning[b-nc8bgzkqg2] {
    background: #fffbeb;
}

.result-icon[b-nc8bgzkqg2] {
    font-size: 3rem;
    margin-bottom: 1rem;
}

.result-icon.success[b-nc8bgzkqg2] {
    color: #059669;
}

.result-icon.warning[b-nc8bgzkqg2] {
    color: #d97706;
}

.result-summary h6[b-nc8bgzkqg2] {
    margin: 0 0 1rem 0;
    font-size: 1.25rem;
    color: #1e293b;
}

.result-stats[b-nc8bgzkqg2] {
    display: flex;
    justify-content: center;
    gap: 1.5rem;
}

.stat[b-nc8bgzkqg2] {
    font-weight: 600;
}

.stat.success[b-nc8bgzkqg2] {
    color: #059669;
}

.stat.error[b-nc8bgzkqg2] {
    color: #dc2626;
}

.errors-section[b-nc8bgzkqg2] {
    background: #fef2f2;
    padding: 1rem;
    border-radius: 8px;
}

.errors-section h6[b-nc8bgzkqg2] {
    margin: 0 0 0.5rem 0;
    color: #dc2626;
}

.error-list[b-nc8bgzkqg2] {
    margin: 0;
    padding-left: 1.25rem;
    font-size: 0.875rem;
    color: #dc2626;
}

.error-list li[b-nc8bgzkqg2] {
    margin-bottom: 0.25rem;
}

/* Buttons */
.btn-cancel[b-nc8bgzkqg2],
.btn-secondary[b-nc8bgzkqg2],
.btn-primary[b-nc8bgzkqg2] {
    padding: 0.5rem 1rem;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-cancel[b-nc8bgzkqg2] {
    background: white;
    border: 1px solid #e2e8f0;
    color: #64748b;
}

.btn-cancel:hover[b-nc8bgzkqg2] {
    background: #f8fafc;
    color: #1e293b;
}

.btn-secondary[b-nc8bgzkqg2] {
    background: white;
    border: 1px solid #e2e8f0;
    color: #475569;
}

.btn-secondary:hover[b-nc8bgzkqg2] {
    background: #f8fafc;
}

.btn-primary[b-nc8bgzkqg2] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    color: white;
}

.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: #059669;
}

.text-danger[b-nc8bgzkqg2] {
    color: #dc2626;
}
/* _content/FRP.Web/Components/Pages/ShiftPlan/ShiftPlanScheduler.razor.rz.scp.css */
/* =================================================================== */
/* Dienstplan-Scheduler - Clean Base Styling */
/* =================================================================== */

/* Department/Role Header Template - Elegant & Subtle */
.department-header[b-32r94io8ve] {
    text-align: left;
    padding: 6px 12px;
    background: #f8f9fa;
    color: #495057;
    font-weight: 500;
    font-size: 0.8rem;
    border-left: 3px solid #dee2e6;
    margin: 0;
    letter-spacing: 0.05em;
    transition: all 0.2s ease;
}

/* Subtle hover effect */
.department-header:hover[b-32r94io8ve] {
    background: #e9ecef;
    border-left-color: #adb5bd;
}

/* Department-specific subtle accents */
.department-header.dept-examined[b-32r94io8ve] { 
    border-left-color: #4a90e2;
    color: #2c5282;
}

.department-header.dept-care[b-32r94io8ve] { 
    border-left-color: #48bb78;
    color: #22543d;
}

.department-header.dept-helper[b-32r94io8ve] { 
    border-left-color: #ed8936;
    color: #744210;
}

.department-header.dept-driver[b-32r94io8ve] { 
    border-left-color: #9f7aea;
    color: #44337a;
}

.department-header.dept-kitchen[b-32r94io8ve] { 
    border-left-color: #4fd1c5;
    color: #234e52;
}

.department-header.dept-cleaning[b-32r94io8ve] { 
    border-left-color: #f6ad55;
    color: #744210;
}

.department-header.dept-admin[b-32r94io8ve] { 
    border-left-color: #718096;
    color: #2d3748;
}

.department-header.dept-management[b-32r94io8ve] { 
    border-left-color: #fc8181;
    color: #742a2a;
}

.department-header.dept-default[b-32r94io8ve] { 
    border-left-color: #cbd5e0;
    color: #4a5568;
}

/* Employee Header Template */
.employee-header[b-32r94io8ve] {
    text-align: center;
    padding: 4px 2px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
}

/* Compact Time Slot Labels - Ultra Kompakt */
.time-slot-label.compact[b-32r94io8ve] {
    font-size: 0.65rem;
    font-weight: 600;
    color: #6c757d;
    text-align: center;
    padding: 1px 2px;
    min-width: 18px;
    line-height: 1;
}

/* Reduce time header and column width for compact view - Ultra Kompakt */
.shift-plan-schedule .e-schedule .e-time-cells-wrap[b-32r94io8ve] {
    min-width: 18px !important;
}

.shift-plan-schedule .e-schedule .e-header-cells[b-32r94io8ve] {
    min-width: 18px !important;
    padding: 2px 1px !important;
}










/* Resource cells (employee names) - keep them readable */
.shift-plan-schedule .e-schedule .e-resource-cells[b-32r94io8ve] {
    min-width: 120px !important;
    max-width: 150px !important;
}

.employee-name[b-32r94io8ve] {
    font-weight: 500;
    font-size: 0.85rem;
    line-height: 1.1;
    margin-bottom: 2px;
}

.employee-info[b-32r94io8ve] {
    font-size: 0.75rem;
    color: #666;
    font-weight: 400;
    line-height: 1.1;
    white-space: pre-line; /* Allow line breaks from \n */
    text-align: center;
}

.shift-plan-container[b-32r94io8ve] {
    background: #f3f4f6;
    min-height: 100vh;
    padding: 1rem;
}

/* =================================================================== */
/* Custom Schedule Header */
/* =================================================================== */
.custom-schedule-header[b-32r94io8ve] {
    background: white;
    padding: 1rem;
    border-radius: 8px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    margin-bottom: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.header-left[b-32r94io8ve] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.date-navigation[b-32r94io8ve] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

/* Evaluation Month Navigation */
.evaluation-navigation[b-32r94io8ve] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding-top: 0.5rem;
    border-top: 1px solid #e9ecef;
}

.evaluation-label[b-32r94io8ve] {
    font-size: 0.875rem;
    color: #6c757d;
    font-weight: 500;
    margin: 0;
}

.evaluation-controls[b-32r94io8ve] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.current-evaluation-month[b-32r94io8ve] {
    padding: 0.25rem 0.5rem;
    background: #f8f9fa;
    border-radius: 4px;
    font-size: 0.875rem;
    color: #495057;
    min-width: 140px;
    text-align: center;
}

.evaluation-btn[b-32r94io8ve] {
    min-width: auto !important;
    padding: 0.25rem 0.5rem !important;
}

.current-week[b-32r94io8ve] {
    margin: 0;
    font-size: 1.2rem;
    font-weight: 600;
    color: #374151;
    min-width: 200px;
    text-align: center;
}

.header-right[b-32r94io8ve] {
    display: flex;
    gap: 0.5rem;
}

/* =================================================================== */
/* Schedule Wrapper */
/* =================================================================== */
.scheduler-wrapper[b-32r94io8ve] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 20px rgba(0,0,0,0.1);
    padding: 1rem;
    overflow: auto;
}

/* =================================================================== */
/* Responsive Design für kleinere Monitore */
/* =================================================================== */
@media (max-width: 1400px) {
    .scheduler-wrapper[b-32r94io8ve] {
        transform: scale(0.9);
        transform-origin: top left;
        width: 111%; /* Kompensiert die Verkleinerung */
    }
}

@media (max-width: 1200px) {
    .scheduler-wrapper[b-32r94io8ve] {
        transform: scale(0.8);
        transform-origin: top left;
        width: 125%; /* Kompensiert die Verkleinerung */
    }
}

@media (max-width: 1024px) {
    .scheduler-wrapper[b-32r94io8ve] {
        transform: scale(0.7);
        transform-origin: top left;
        width: 142%; /* Kompensiert die Verkleinerung */
    }
}

@media (max-width: 900px) {
    .scheduler-wrapper[b-32r94io8ve] {
        transform: scale(0.6);
        transform-origin: top left;
        width: 166%; /* Kompensiert die Verkleinerung */
    }
}

/* =================================================================== */
/* Basic Event Template Styling (Inline styles werden trotzdem verwendet) */
/* =================================================================== */
.shift-plan-schedule .e-appointment[b-32r94io8ve] {
    border-radius: 8px !important;
    border: none !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}

/* =================================================================== */
/* Shift Status Styling - Für deutlichere Unterscheidung */
/* =================================================================== */
.leave-shift[b-32r94io8ve] {
    background: #ffc107 !important; /* Gelbes Gelb für Urlaub */
    border: 3px solid #dc2626 !important; /* Dicke rote Umrandung */
    color: #721c24 !important; /* Dunkler roter Text */
    font-weight: 700 !important; /* Extra fetter Text */
    opacity: 0.9 !important;
    box-shadow: 0 4px 12px rgba(255, 193, 7, 0.4) !important; /* Gelber Schatten */
}

/* Spezifische Styling für Urlaub */
.leave-vacation-shift[b-32r94io8ve] {
    background: #ffc107 !important; /* Gelbes Gold für Urlaub */
    border: 3px solid #dc2626 !important; /* Rote dicke Umrandung */
    color: #721c24 !important; /* Dunkler roter Text */
    font-weight: 700 !important; /* Extra fetter Text */
    opacity: 0.95 !important;
    box-shadow: 0 4px 12px rgba(255, 193, 7, 0.5) !important; /* Gelber Schatten */
}

/* Spezifische Styling für Krank */
.leave-sick-shift[b-32r94io8ve] {
    background: #fee2e2 !important; /* Hellrot für Krank */
    border: 3px solid #991b1b !important; /* Dunkelrote dicke Umrandung */
    color: #7f1d1d !important; /* Dunkler roter Text */
    font-weight: 700 !important; /* Extra fetter Text */
    opacity: 0.95 !important;
    box-shadow: 0 4px 12px rgba(254, 226, 226, 0.5) !important; /* Roter Schatten */
}

/* Spezifische Styling für Wunsch frei */
.leave-requested-shift[b-32r94io8ve] {
    background: #facc15 !important; /* Leichtes Gelb für Wunsch frei */
    border: 3px solid #d97706 !important; /* Orange Umrandung */
    color: #92400e !important; /* Dunkler gelb-brauner Text */
    font-weight: 700 !important; /* Extra fetter Text */
    opacity: 0.95 !important;
    box-shadow: 0 4px 12px rgba(250, 204, 21, 0.5) !important; /* Gelber Schatten */
}

.replacement-shift[b-32r94io8ve] {
    background: #17a2b8 !important; /* Türkis für Vertretung */
    border: 2px solid #138496 !important;
    color: white !important;
    font-weight: 600 !important;
}

.swapped-shift[b-32r94io8ve] {
    background: #6f42c1 !important; /* Lila für Tausch */
    border: 2px solid #5a2d8c !important;
    color: white !important;
    font-weight: 600 !important;
}

/* =================================================================== */
/* Context Menu */
/* =================================================================== */
.employee-context-menu[b-32r94io8ve] {
    background: white;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

/* =================================================================== */
/* Agenda View Styling */
/* =================================================================== */
.agenda-event[b-32r94io8ve] {
    padding: 0.5rem 0;
}

.agenda-employee[b-32r94io8ve] {
    display: flex;
    align-items: center;
}

.event-details[b-32r94io8ve] {
    flex: 1;
}

.employee-info[b-32r94io8ve] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.25rem;
}

.employee-info .employee-name[b-32r94io8ve] {
    font-weight: 600;
    color: #333;
}

.role-badge[b-32r94io8ve] {
    background: #e9ecef;
    color: #495057;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 500;
}

.status-badge[b-32r94io8ve] {
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 500;
}

.status-badge.leave[b-32r94io8ve] {
    background: #f8d7da;
    color: #721c24;
}

.status-badge.leave-vacation[b-32r94io8ve] {
    background: #fff3cd; /* Gelb für Urlaub */
    color: #856404;
    border: 1px solid #ffc107;
}

.status-badge.leave-sick[b-32r94io8ve] {
    background: #fee2e2; /* Hellrot für Krank */
    color: #991b1b;
    border: 1px solid #dc2626;
}

.status-badge.leave-requested[b-32r94io8ve] {
    background: #fef3c7; /* Helles Gelb für Wunsch frei Badge */
    color: #92400e;
    border: 1px solid #d97706;
}

.status-badge.replacement[b-32r94io8ve] {
    background: #d1ecf1;
    color: #0c5460;
}

.event-time[b-32r94io8ve] {
    color: #6c757d;
    font-size: 0.85rem;
}

/* =================================================================== */
/* Shift Legend */
/* =================================================================== */
.shift-legend[b-32r94io8ve] {
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 20px rgba(0,0,0,0.1);
    padding: 1.5rem;
    margin-top: 1rem;
}

.shift-legend h5[b-32r94io8ve] {
    margin: 0 0 1rem 0;
    color: #374151;
    font-size: 1.1rem;
    font-weight: 600;
}

.legend-groups[b-32r94io8ve] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1.5rem;
}

.legend-group[b-32r94io8ve] {
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    overflow: hidden;
}

.legend-group-header[b-32r94io8ve] {
    padding: 0.75rem 1rem;
    font-weight: 600;
    font-size: 0.9rem;
    color: white;
    text-align: center;
}

/* Role Colors für Header - Korrekte Trennung der drei Betreuungsgruppen */
.legend-group-header.examinated-role[b-32r94io8ve] {
    background: #1d4ed8;         /* Examinierte - Blau */
}

.legend-group-header.care-role[b-32r94io8ve] {
    background: #059669;         /* Betreuungskräfte - Grün */
}

.legend-group-header.helper-role[b-32r94io8ve] {
    background: #d97706;         /* Hilfsbetreuung - Orange */
}

.legend-group-header.driver-role[b-32r94io8ve] {
    background: #7c3aed;         /* Fahrer - Lila */
}

.legend-group-header.kitchen-role[b-32r94io8ve] {
    background: #0891b2;         /* Küche - Türkis */
}

.legend-group-header.cleaning-role[b-32r94io8ve] {
    background: #ea580c;         /* Reinigung - Orange/Rot */
}

.legend-group-header.admin-role[b-32r94io8ve] {
    background: #475569;         /* Verwaltung - Grau */
}

.legend-group-header.management-role[b-32r94io8ve] {
    background: #dc2626;         /* PDL/Leitung - Rot */
}

.legend-group-header.default-role[b-32r94io8ve] {
    background: #6b7280;
}

.legend-shifts[b-32r94io8ve] {
    padding: 1rem;
    background: #fafafa;
}

.legend-shift-item[b-32r94io8ve] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.5rem 0;
    border-bottom: 1px solid #e5e7eb;
}

.legend-shift-item:last-child[b-32r94io8ve] {
    border-bottom: none;
}

.shift-code[b-32r94io8ve] {
    font-weight: 700;
    font-size: 1.1rem;
    color: #374151;
    min-width: 25px;
    text-align: center;
    background: #e5e7eb;
    border-radius: 4px;
    padding: 4px 8px;
}

.shift-time[b-32r94io8ve] {
    font-weight: 600;
    color: #059669;
    min-width: 120px;
    font-family: 'Courier New', monospace;
}

.shift-name[b-32r94io8ve] {
    color: #6b7280;
    font-size: 0.9rem;
}

/* Responsive für die Legende */
@media (max-width: 1024px) {
    .legend-groups[b-32r94io8ve] {
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
        gap: 1rem;
    }
    
    .shift-legend[b-32r94io8ve] {
        padding: 1rem;
    }
}

/* =================================================================== */
/* Print Styles - NUR für den Schedule, ohne Navigation/Legende */
/* =================================================================== */
@media print {
    @page {
        size: A4 landscape;
        margin: 10mm;
    }

    /* Verstecke alles außer dem Schedule */
    .custom-schedule-header[b-32r94io8ve],
    .shift-legend[b-32r94io8ve] {
        display: none !important;
    }

    /* Container für Druck optimieren */
    .shift-plan-container[b-32r94io8ve] {
        background: white !important;
        padding: 0 !important;
        margin: 0 !important;
        min-height: auto !important;
    }

    .scheduler-wrapper[b-32r94io8ve] {
        transform: scale(0.8) !important;
        transform-origin: top left !important;
        width: 125% !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        padding: 0 !important;
        margin: 0 !important;
        background: white !important;
    }

    /* Syncfusion Schedule für Druck optimieren */
    .shift-plan-schedule[b-32r94io8ve] {
        height: auto !important;
        overflow: visible !important;
    }
}

/* =================================================================== */
/* Timeline-spezifische Kompakte Zeilenhöhe */
/* =================================================================== */

/* Timeline View Work Cells - reduzierte Höhe */
.shift-plan-schedule[b-32r94io8ve]  .e-timeline-view .e-content-wrap .e-content-table .e-work-cells {
    height: 28px !important;
    min-height: 28px !important;
}

/* Timeline Resource Cells - kompakter */
.shift-plan-schedule[b-32r94io8ve]  .e-timeline-view .e-resource-left-td {
    min-height: 28px !important;
    padding: 2px 8px !important;
}

/* Timeline Time Cells Header */
.shift-plan-schedule[b-32r94io8ve]  .e-timeline-view .e-date-header-wrap .e-schedule-table .e-header-cells {
    height: 30px !important;
    min-height: 30px !important;
    font-size: 0.75rem !important;
    padding: 4px !important;
}

/* Appointment Höhe in Timeline */
.shift-plan-schedule[b-32r94io8ve]  .e-timeline-view .e-appointment {
    height: 30px !important;
    min-height: 30px !important;
    line-height: 1.1 !important;
    font-size: 0.7rem !important;
    padding: 2px 6px !important;
}

/* Resource Group Header kompakter */
.shift-plan-schedule[b-32r94io8ve]  .e-timeline-view .e-resource-cells {
    min-height: 26px !important;
    padding: 4px 6px !important;
    font-size: 0.8rem !important;
}

/* Employee Header kompakte Darstellung */
.shift-plan-schedule .employee-header[b-32r94io8ve] {
    padding: 2px 6px !important;
    min-height: 24px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

.shift-plan-schedule .employee-name[b-32r94io8ve] {
    font-size: 0.7rem !important;
    font-weight: 600 !important;
    line-height: 1.0 !important;
    margin-bottom: 1px !important;
    text-align: center !important;
}

.shift-plan-schedule .employee-info[b-32r94io8ve] {
    font-size: 0.6rem !important;
    line-height: 0.9 !important;
    opacity: 0.8 !important;
    text-align: center !important;
    white-space: pre-line !important; /* Allow line breaks from \n */
}

/* Department Header auch kompakter */
.shift-plan-schedule .department-header[b-32r94io8ve] {
    padding: 3px 8px !important;
    font-size: 0.7rem !important;
    min-height: 28px !important;
    display: flex !important;
    align-items: center !important;
}

/* =================================================================== */
/* Stärkere CSS-Selektoren für Zentrierung in Timeline View */
/* =================================================================== */

/* Syncfusion Timeline Resource Headers - Stärkere Selektoren für Zentrierung */
.shift-plan-schedule[b-32r94io8ve]  .e-timeline-view .e-resource-cells .employee-header {
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
}

.shift-plan-schedule[b-32r94io8ve]  .e-timeline-view .e-resource-cells .employee-name {
    text-align: center !important;
}

.shift-plan-schedule[b-32r94io8ve]  .e-timeline-view .e-resource-cells .employee-info {
    text-align: center !important;
}

/* Allgemeine Resource Cells Zentrierung */
.shift-plan-schedule[b-32r94io8ve]  .e-resource-cells .employee-header {
    text-align: center !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
}

/* =================================================================== */
/* Visuelle Stundenabweichungsmarker mit 5h Toleranz */
/* =================================================================== */

/* Zu viele Stunden (über 5h Toleranz) - Rot */
.hour-deviation-high[b-32r94io8ve] {
    background-color: #fee2e2 !important;
    border-left: 4px solid #dc2626 !important;
    color: #7f1d1d !important;
}

/* Zu wenig Stunden (unter -5h Toleranz) - Orange */
.hour-deviation-low[b-32r94io8ve] {
    background-color: #fed7aa !important;
    border-left: 4px solid #ea580c !important;
    color: #9a3412 !important;
}

/* =================================================================== */
/* Eingeklappte Shift-Legende */
/* =================================================================== */

/* Legend Header */
.shift-legend .legend-header[b-32r94io8ve] {
    display: flex;
    align-items: center;
    padding: 10px 0;
    user-select: none;
}

.shift-legend .legend-header:hover[b-32r94io8ve] {
    background: rgba(0,0,0,0.05);
    padding-left: 5px;
    border-radius: 4px;
    transition: all 0.2s ease;
}

.shift-legend .legend-header h5[b-32r94io8ve] {
    margin: 0;
}

/* Eingeklappte Legend Groups */
.shift-legend .legend-groups.collapsed[b-32r94io8ve] {
    display: none;
}

.shift-legend .legend-groups[b-32r94io8ve] {
    transition: all 0.3s ease;
}

/* _content/FRP.Web/Components/Pages/ShiftPlan/WeeklyOverview.razor.rz.scp.css */
/* =================================================================== */
/* Weekly Overview - Clean Table Layout */
/* =================================================================== */

.weekly-overview-container[b-ak8b6fin4a] {
    padding: 1rem;
    background: #f8f9fa;
    width: 100%;
    height: auto;
    box-sizing: border-box;
    overflow: visible;
    position: relative;
}

.print-header[b-ak8b6fin4a] {
    text-align: center;
    margin-bottom: 2rem;
    display: none; /* Only shown when printing */
}

.print-header h1[b-ak8b6fin4a] {
    margin: 0 0 0.5rem 0;
    color: #333;
    font-size: 1.8rem;
}

.print-header p[b-ak8b6fin4a] {
    margin: 0;
    color: #666;
    font-size: 0.9rem;
}

/* =================================================================== */
/* Navigation */
/* =================================================================== */
.week-navigation[b-ak8b6fin4a] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: white;
    padding: 1rem;
    border-radius: 8px;
    margin-bottom: 1rem;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

.nav-controls[b-ak8b6fin4a] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.current-week[b-ak8b6fin4a] {
    margin: 0;
    font-size: 1.2rem;
    font-weight: 600;
    color: #333;
    min-width: 250px;
    text-align: center;
}

.action-buttons[b-ak8b6fin4a] {
    display: flex;
    gap: 0.5rem;
}

/* =================================================================== */
/* Weekly Table */
/* =================================================================== */
.weekly-table[b-ak8b6fin4a] {
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 20px rgba(0,0,0,0.1);
    overflow: hidden;
}

.shift-table[b-ak8b6fin4a] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9rem;
}

.shift-table th[b-ak8b6fin4a] {
    background: #f8f9fa;
    padding: 1rem 0.5rem;
    text-align: center;
    font-weight: 600;
    color: #495057;
    border-bottom: 2px solid #dee2e6;
}

.employee-column[b-ak8b6fin4a] {
    width: 150px;
    text-align: left !important;
    padding-left: 1rem !important;
}

.day-column[b-ak8b6fin4a] {
    width: calc((100% - 150px) / 5);
    min-width: 140px;
}

.day-header .day-name[b-ak8b6fin4a] {
    font-weight: 600;
    font-size: 0.9rem;
}

.day-header .day-date[b-ak8b6fin4a] {
    font-size: 0.8rem;
    color: #6c757d;
    font-weight: normal;
}

/* Role Headers */
.role-header-row[b-ak8b6fin4a] {
    background: #e9ecef;
}

.role-header[b-ak8b6fin4a] {
    font-weight: bold;
    padding: 0.75rem 1rem;
    color: #495057;
    border-bottom: 1px solid #dee2e6;
}

/* Employee Rows */
.employee-row[b-ak8b6fin4a] {
    border-bottom: 1px solid #dee2e6;
}

.employee-row:hover[b-ak8b6fin4a] {
    background: #f8f9fa;
}

.employee-name[b-ak8b6fin4a] {
    padding: 0.75rem 1rem;
    font-weight: 500;
    color: #333;
    border-right: 1px solid #dee2e6;
}

.shift-cell[b-ak8b6fin4a] {
    padding: 0.5rem;
    text-align: center;
    vertical-align: middle;
    border-right: 1px solid #dee2e6;
}

.shift-entry[b-ak8b6fin4a] {
    display: inline-block;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    font-size: 0.8rem;
    margin: 2px;
    min-width: 80px;
}

.shift-time[b-ak8b6fin4a] {
    display: block;
    font-weight: 600;
}

.shift-status[b-ak8b6fin4a] {
    display: block;
    font-size: 0.7rem;
    opacity: 0.8;
}

.no-shift[b-ak8b6fin4a] {
    color: #adb5bd;
    font-size: 1.2rem;
}

/* Shift Colors by Shift Type */
.shift-early[b-ak8b6fin4a] {
    background: #4ECDC4; /* Türkis für Frühdienst */
    color: white;
}

.shift-late[b-ak8b6fin4a] {
    background: #FF6B6B; /* Rot für Spätdienst */
    color: white;
}

.shift-early-early[b-ak8b6fin4a] {
    background: #45B7D1; /* Blau für Früh-Früh */
    color: white;
}

.shift-fullday[b-ak8b6fin4a] {
    background: #96CEB4; /* Grün für Ganztag */
    color: white;
}

.shift-night[b-ak8b6fin4a] {
    background: #6C5CE7; /* Lila für Nachtdienst */
    color: white;
}

.shift-leave[b-ak8b6fin4a] {
    background: #f8d7da;
    color: #721c24;
    border: 1px solid #f5c6cb;
}

.shift-replacement[b-ak8b6fin4a] {
    background: #d1ecf1;
    color: #0c5460;
    border: 1px solid #bee5eb;
}

.shift-default[b-ak8b6fin4a] {
    background: #6b7280;
    color: white;
}

/* =================================================================== */
/* Legend */
/* =================================================================== */
.legend[b-ak8b6fin4a] {
    background: white;
    padding: 1rem;
    border-radius: 8px;
    margin-top: 1rem;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

.legend h4[b-ak8b6fin4a] {
    margin: 0 0 0.75rem 0;
    color: #333;
}

.legend-items[b-ak8b6fin4a] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 0.5rem;
}

.legend-group[b-ak8b6fin4a] {
    font-size: 0.85rem;
}

.legend-group strong[b-ak8b6fin4a] {
    color: #495057;
    margin-right: 0.5rem;
}

.legend-shift[b-ak8b6fin4a] {
    display: inline-block;
    margin-right: 1rem;
    color: #6c757d;
}

/* =================================================================== */
/* 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: white !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: 1rem !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 #333 !important;
        background: white !important;
    }

    .shift-entry[b-ak8b6fin4a] {
        border: 1px solid #666 !important;
        background: #f5f5f5 !important;
        color: #000 !important;
        display: inline-block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    .role-header[b-ak8b6fin4a] {
        background: #e0e0e0 !important;
        color: #000 !important;
    }

    .shift-table th[b-ak8b6fin4a] {
        background: #f0f0f0 !important;
        color: #000 !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: 0.8rem;
    }
    
    .day-column[b-ak8b6fin4a] {
        min-width: 100px;
    }
    
    .shift-entry[b-ak8b6fin4a] {
        min-width: 70px;
        font-size: 0.75rem;
    }
}
/* _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: white !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: white;
    position: relative;
    z-index: 9999;
}

.print-header[b-hzwejzkgae] {
    text-align: center;
    margin-bottom: 2rem;
}

.print-header h1[b-hzwejzkgae] {
    font-size: 1.4rem;
    margin-bottom: 0.3rem;
    color: #333;
}

.shift-table[b-hzwejzkgae] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8rem;
}

.shift-table th[b-hzwejzkgae],
.shift-table td[b-hzwejzkgae] {
    border: 1px solid #333;
    padding: 0.25rem;
    text-align: center;
    line-height: 1.2;
}

.employee-column[b-hzwejzkgae] {
    text-align: left !important;
    font-weight: bold;
    width: 150px;
}

.role-header[b-hzwejzkgae] {
    background: #e0e0e0 !important;
    font-weight: 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: #f5f5f5 !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: white !important;
}

.shift-late[b-hzwejzkgae] {
    background: #FF6B6B !important; /* Rot für Spätdienst */
    color: white !important;
}

.shift-early-early[b-hzwejzkgae] {
    background: #45B7D1 !important; /* Blau für Früh-Früh */
    color: white !important;
}

.shift-fullday[b-hzwejzkgae] {
    background: #96CEB4 !important; /* Grün für Ganztag */
    color: white !important;
}

.shift-night[b-hzwejzkgae] {
    background: #6C5CE7 !important; /* Lila für Nachtdienst */
    color: white !important;
}

@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: 0.75rem !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: #e0e0e0 !important;
        padding: 0.15rem !important;
        font-size: 0.65rem !important;
    }
    
    .print-header[b-hzwejzkgae] {
        margin-bottom: 1rem !important;
    }
    
    .print-header h1[b-hzwejzkgae] {
        font-size: 1.2rem !important;
        margin-bottom: 0.2rem !important;
    }
    
    .shift-entry[b-hzwejzkgae] {
        background: #f5f5f5 !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: white !important;
    }

    .shift-late[b-hzwejzkgae] {
        background: #FF6B6B !important; /* Rot für Spätdienst */
        color: white !important;
    }

    .shift-early-early[b-hzwejzkgae] {
        background: #45B7D1 !important; /* Blau für Früh-Früh */
        color: white !important;
    }

    .shift-fullday[b-hzwejzkgae] {
        background: #96CEB4 !important; /* Grün für Ganztag */
        color: white !important;
    }

    .shift-night[b-hzwejzkgae] {
        background: #6C5CE7 !important; /* Lila für Nachtdienst */
        color: white !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: #ffffff;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    overflow: hidden;
}

/* Header */
.calendar-header[b-3a737afz59] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    padding: 16px 20px;
}

.calendar-title[b-3a737afz59] {
    margin: 0 0 12px 0;
    font-size: 1.3rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 10px;
}

.calendar-summary[b-3a737afz59] {
    display: flex;
    gap: 32px;
    flex-wrap: wrap;
}

.summary-item[b-3a737afz59] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.summary-label[b-3a737afz59] {
    font-size: 0.85rem;
    opacity: 0.9;
    font-weight: 500;
}

.summary-value[b-3a737afz59] {
    font-size: 1.25rem;
    font-weight: 700;
}

.summary-value.success[b-3a737afz59] {
    color: #4ade80;
}

.summary-value.highlight[b-3a737afz59] {
    color: #fbbf24;
}

/* Kalender Container */
.calendar-container[b-3a737afz59] {
    padding: 16px;
}

/* Header Row mit Wochentagen */
.calendar-header-row[b-3a737afz59] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
    margin-bottom: 8px;
}

.calendar-day-header[b-3a737afz59] {
    text-align: center;
    font-weight: 600;
    color: #6b7280;
    padding: 12px 8px;
    background: #f8fafc;
    border-radius: 8px;
    font-size: 0.875rem;
}

/* Kalender Grid */
.calendar-grid[b-3a737afz59] {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    overflow: hidden;
    background: #ffffff;
}

.calendar-week[b-3a737afz59] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    border-bottom: 1px solid #e5e7eb;
}

.calendar-week:last-child[b-3a737afz59] {
    border-bottom: none;
}

/* Kalender Tage */
.calendar-day[b-3a737afz59] {
    min-height: 100px;
    border-right: 1px solid #e5e7eb;
    position: relative;
    background: #ffffff;
    transition: all 0.2s ease;
}

.calendar-day:last-child[b-3a737afz59] {
    border-right: none;
}

.calendar-day:hover[b-3a737afz59] {
    background: #f8fafc;
}

.calendar-day.other-month[b-3a737afz59] {
    background: #f9fafb;
    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: 8px;
    left: 12px;
    font-weight: 600;
    font-size: 1rem;
    color: #374151;
}

.calendar-day.other-month .day-number[b-3a737afz59] {
    color: #9ca3af;
}

.calendar-day.today .day-number[b-3a737afz59] {
    color: #d97706;
    font-weight: 700;
}

/* CheckIn Indikatoren */
.checkin-indicator[b-3a737afz59] {
    position: absolute;
    top: 32px;
    left: 8px;
    right: 8px;
    bottom: 8px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.checkin-status-icon[b-3a737afz59] {
    font-size: 1.25rem;
    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: 700;
    font-size: 0.875rem;
    color: #059669;
    background: #d1fae5;
    padding: 4px 8px;
    border-radius: 6px;
    margin: 4px 0;
}

/* Transport Indikatoren */
.transport-indicators[b-3a737afz59] {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 4px;
}

.transport-icon[b-3a737afz59] {
    color: #3b82f6;
    font-size: 1rem;
}

.wheelchair-icon[b-3a737afz59] {
    color: #8b5cf6;
    font-size: 1rem;
}

/* Abwesenheits-Indikator */
.absence-indicator[b-3a737afz59] {
    text-align: center;
    font-size: 0.75rem;
    color: #6b7280;
    background: #f3f4f6;
    padding: 4px 6px;
    border-radius: 4px;
    margin-top: 8px;
}

/* Kein CheckIn */
.no-checkin[b-3a737afz59] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #d1d5db;
    font-size: 1.5rem;
}

/* Legende */
.calendar-legend[b-3a737afz59] {
    background: #f8fafc;
    padding: 16px 20px;
    border-top: 1px solid #e5e7eb;
}

.calendar-legend h5[b-3a737afz59] {
    margin: 0 0 16px 0;
    color: #374151;
    font-weight: 600;
}

.legend-items[b-3a737afz59] {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.legend-item[b-3a737afz59] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.875rem;
    color: #6b7280;
}

.legend-icon[b-3a737afz59] {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    font-size: 0.875rem;
}

.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: #d1d5db;
    background: #f9fafb;
}

/* Responsive Design */
@media (max-width: 768px) {
    .calendar-container[b-3a737afz59] {
        padding: 16px;
    }
    
    .calendar-day[b-3a737afz59] {
        min-height: 80px;
    }
    
    .calendar-summary[b-3a737afz59] {
        gap: 16px;
    }
    
    .legend-items[b-3a737afz59] {
        gap: 12px;
    }
    
    .billing-amount-small[b-3a737afz59] {
        font-size: 0.75rem;
        padding: 2px 4px;
    }
}

@media (max-width: 480px) {
    .calendar-day[b-3a737afz59] {
        min-height: 60px;
    }
    
    .day-number[b-3a737afz59] {
        font-size: 0.875rem;
    }
    
    .checkin-status-icon[b-3a737afz59] {
        font-size: 1rem;
    }
}
/* _content/FRP.Web/Components/Shared/Billing/CheckInOverviewCard.razor.rz.scp.css */
.checkin-overview-card[b-4aom8iwxbb] {
    margin-bottom: 1rem;
}

.overview-header[b-4aom8iwxbb] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
}

.overview-title[b-4aom8iwxbb] {
    margin: 0;
    color: #2c3e50;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.overview-stats[b-4aom8iwxbb] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.stat-item[b-4aom8iwxbb] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    font-size: 0.875rem;
    font-weight: 500;
}

.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: 1rem;
    padding: 1rem;
    background-color: #fff8e1;
    border: 1px solid #ffcc02;
    border-radius: 6px;
}

.checkin-list[b-4aom8iwxbb] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.checkin-item[b-4aom8iwxbb] {
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 1rem;
    background-color: #fafafa;
    transition: all 0.2s ease;
}

.checkin-item:hover[b-4aom8iwxbb] {
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.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 #4caf50;
    background-color: #f1f8e9;
}

.checkin-item.status-billed[b-4aom8iwxbb] {
    border-left: 4px solid #2196f3;
    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: 1rem;
    flex-wrap: wrap;
    margin-bottom: 0.5rem;
}

.checkin-date[b-4aom8iwxbb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 150px;
}

.checkin-date strong[b-4aom8iwxbb] {
    color: #2c3e50;
}

.weekday[b-4aom8iwxbb] {
    color: #666;
    font-size: 0.875rem;
}

.checkin-status[b-4aom8iwxbb] {
    flex-shrink: 0;
}

.status-badge[b-4aom8iwxbb] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    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: #e2e3e5;
    color: #383d41;
    border: 1px solid #d6d8db;
}

.checkin-details[b-4aom8iwxbb] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.timeslot-info[b-4aom8iwxbb], .transport-info[b-4aom8iwxbb] {
    font-size: 0.875rem;
    color: #555;
}

.checkin-amount[b-4aom8iwxbb] {
    margin-left: auto;
    text-align: right;
    color: #2c3e50;
}

.checkin-amount small[b-4aom8iwxbb] {
    display: block;
    color: #666;
    font-size: 0.75rem;
}

.checkin-actions[b-4aom8iwxbb] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-top: 0.5rem;
}

.service-items-details[b-4aom8iwxbb] {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #e0e0e0;
}

.service-items-details h6[b-4aom8iwxbb] {
    margin: 0 0 0.5rem 0;
    color: #2c3e50;
}

.service-items-list[b-4aom8iwxbb] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.service-item[b-4aom8iwxbb] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem;
    background-color: #f8f9fa;
    border-radius: 4px;
    border: 1px solid #e9ecef;
}

.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: 0.5rem;
}

.service-name[b-4aom8iwxbb] {
    font-weight: 500;
    color: #2c3e50;
}

.service-category[b-4aom8iwxbb] {
    font-size: 0.75rem;
    color: #666;
    background-color: #e9ecef;
    padding: 0.125rem 0.375rem;
    border-radius: 12px;
}

.service-item-details[b-4aom8iwxbb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
}

.quantity[b-4aom8iwxbb], .unit-price[b-4aom8iwxbb] {
    color: #666;
}

.total[b-4aom8iwxbb] {
    font-weight: 600;
    color: #2c3e50;
}

.billed-indicator[b-4aom8iwxbb] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    color: #155724;
    font-size: 0.75rem;
    font-weight: 500;
    background-color: #d4edda;
    padding: 0.125rem 0.5rem;
    border-radius: 12px;
}

.no-checkins[b-4aom8iwxbb] {
    text-align: center;
    padding: 2rem;
    color: #666;
}

.no-checkins i[b-4aom8iwxbb] {
    font-size: 3rem;
    color: #ccc;
    margin-bottom: 1rem;
}

.no-checkins h5[b-4aom8iwxbb] {
    color: #2c3e50;
    margin-bottom: 0.5rem;
}

@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: 0.5rem;
    }
    
    .checkin-amount[b-4aom8iwxbb] {
        margin-left: 0;
        text-align: left;
    }
    
    .service-item[b-4aom8iwxbb] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }
}
/* _content/FRP.Web/Components/Shared/Billing/LimitProgressIndicator.razor.rz.scp.css */
.limit-progress-container[b-4vvzt40o5n] {
    background: white;
    border-radius: 8px;
    border: 1px solid #e9ecef;
    overflow: hidden;
}

.limit-header[b-4vvzt40o5n] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-bottom: 1px solid #dee2e6;
    gap: 1rem;
}

.limit-info[b-4vvzt40o5n] {
    flex: 1;
}

.limit-title[b-4vvzt40o5n] {
    margin: 0 0 0.5rem 0;
    font-size: 1rem;
    font-weight: 600;
    color: #495057;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.limit-details[b-4vvzt40o5n] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
}

.limit-amount[b-4vvzt40o5n] {
    font-size: 0.875rem;
    color: #6c757d;
}

.care-level-note[b-4vvzt40o5n] {
    font-size: 0.75rem;
    color: #007bff;
    font-weight: 500;
    background: rgba(0, 123, 255, 0.1);
    padding: 0.125rem 0.375rem;
    border-radius: 10px;
    margin-left: 0.25rem;
}

.unlimited-badge[b-4vvzt40o5n] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    background: linear-gradient(45deg, #28a745, #20c997);
    color: white;
    padding: 0.375rem 0.75rem;
    border-radius: 15px;
    font-size: 0.875rem;
    font-weight: 600;
    box-shadow: 0 2px 4px rgba(40, 167, 69, 0.2);
}

.no-limit-badge[b-4vvzt40o5n] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    background: rgba(255, 193, 7, 0.1);
    color: #856404;
    border: 1px solid rgba(255, 193, 7, 0.3);
    padding: 0.375rem 0.75rem;
    border-radius: 15px;
    font-size: 0.875rem;
    font-weight: 500;
}

.usage-percentage[b-4vvzt40o5n] {
    flex-shrink: 0;
}

.percentage-value[b-4vvzt40o5n] {
    font-size: 2rem;
    font-weight: 700;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    border: 2px solid;
    background: white;
    min-width: 100px;
    text-align: center;
    display: block;
}

.percentage-value.safe[b-4vvzt40o5n] {
    color: #28a745;
    border-color: #28a745;
    background: rgba(40, 167, 69, 0.05);
}

.percentage-value.warning[b-4vvzt40o5n] {
    color: #ffc107;
    border-color: #ffc107;
    background: rgba(255, 193, 7, 0.05);
}

.percentage-value.danger[b-4vvzt40o5n] {
    color: #dc3545;
    border-color: #dc3545;
    background: rgba(220, 53, 69, 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(220, 53, 69, 0.4); }
    50% { box-shadow: 0 0 0 8px rgba(220, 53, 69, 0); }
}

.progress-section[b-4vvzt40o5n] {
    padding: 1.25rem;
}

[b-4vvzt40o5n] .progress-section .e-progressbar {
    margin-bottom: 1rem;
}

.progress-labels[b-4vvzt40o5n] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-top: 0.75rem;
}

.amount-breakdown[b-4vvzt40o5n] {
    display: flex;
    gap: 1.5rem;
    flex: 1;
}

.insurance-amount[b-4vvzt40o5n],
.private-amount[b-4vvzt40o5n] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.amount-label[b-4vvzt40o5n] {
    font-size: 0.75rem;
    color: #6c757d;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.amount-value[b-4vvzt40o5n] {
    font-weight: 700;
    font-size: 0.9rem;
}

.amount-value.insurance[b-4vvzt40o5n] {
    color: #007bff;
}

.amount-value.private[b-4vvzt40o5n] {
    color: #dc3545;
}

.total-vs-limit[b-4vvzt40o5n] {
    text-align: right;
    flex-shrink: 0;
}

.total-amount[b-4vvzt40o5n] {
    font-size: 0.875rem;
    color: #495057;
}

/* Unlimited Section */
.unlimited-section[b-4vvzt40o5n] {
    padding: 1.25rem;
}

.unlimited-visual[b-4vvzt40o5n] {
    position: relative;
    margin-bottom: 1rem;
}

.unlimited-bar[b-4vvzt40o5n] {
    height: 12px;
    background: linear-gradient(90deg, #28a745, #20c997, #17a2b8, #007bff);
    border-radius: 6px;
    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: white;
    border-radius: 50%;
    width: 22px;
    height: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #28a745;
    font-size: 0.75rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.unlimited-info[b-4vvzt40o5n] {
    background: rgba(40, 167, 69, 0.05);
    border: 1px solid rgba(40, 167, 69, 0.2);
    border-radius: 6px;
    padding: 1rem;
}

.unlimited-description[b-4vvzt40o5n] {
    margin: 0 0 0.75rem 0;
    font-size: 0.875rem;
    color: #495057;
    line-height: 1.4;
}

.unlimited-amount[b-4vvzt40o5n] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* No Limit Section */
.no-limit-section[b-4vvzt40o5n] {
    padding: 1.25rem;
}

.warning-box[b-4vvzt40o5n] {
    background: rgba(255, 193, 7, 0.05);
    border: 1px solid rgba(255, 193, 7, 0.3);
    border-radius: 8px;
    padding: 1rem;
    display: flex;
    gap: 1rem;
    align-items: flex-start;
}

.warning-box i[b-4vvzt40o5n] {
    color: #ffc107;
    font-size: 1.25rem;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.warning-content[b-4vvzt40o5n] {
    flex: 1;
}

.warning-content p[b-4vvzt40o5n] {
    margin: 0 0 0.5rem 0;
    font-size: 0.875rem;
    line-height: 1.4;
}

.warning-content p:last-of-type[b-4vvzt40o5n] {
    margin-bottom: 0.75rem;
}

.private-amount-display[b-4vvzt40o5n] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 0.75rem;
    border-top: 1px dashed rgba(255, 193, 7, 0.3);
}

/* Responsive Design */
@media (max-width: 768px) {
    .limit-header[b-4vvzt40o5n] {
        flex-direction: column;
        gap: 0.75rem;
    }
    
    .usage-percentage[b-4vvzt40o5n] {
        align-self: stretch;
    }
    
    .percentage-value[b-4vvzt40o5n] {
        font-size: 1.25rem;
        padding: 0.375rem 0.75rem;
    }
    
    .progress-labels[b-4vvzt40o5n] {
        flex-direction: column;
        align-items: stretch;
        gap: 0.75rem;
    }
    
    .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: 0.5rem;
        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: 1rem;
    }
    
    .amount-breakdown[b-4vvzt40o5n] {
        flex-direction: column;
        gap: 0.75rem;
    }
    
    .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: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    overflow: hidden;
}

[b-2bqw0hc135] .service-category-card:hover {
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
    transform: translateY(-2px);
}

[b-2bqw0hc135] .service-category-card .e-card-header {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-bottom: 1px solid #dee2e6;
    padding: 1.5rem;
}

.card-header-content[b-2bqw0hc135] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
}

.category-info[b-2bqw0hc135] {
    flex: 1;
}

.category-title[b-2bqw0hc135] {
    margin: 0 0 0.75rem 0;
    font-size: 1.25rem;
    font-weight: 600;
    color: #212529;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.category-code[b-2bqw0hc135] {
    background: linear-gradient(45deg, #007bff, #0056b3);
    color: white;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.85rem;
    font-weight: 700;
    letter-spacing: 0.5px;
}

.care-level-info[b-2bqw0hc135] {
    margin-top: 0.5rem;
}

.care-level-badge[b-2bqw0hc135] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border-radius: 20px;
    font-size: 0.875rem;
    font-weight: 500;
    background: rgba(40, 167, 69, 0.1);
    color: #155724;
    border: 1px solid rgba(40, 167, 69, 0.2);
}

.care-level-badge.no-care-level[b-2bqw0hc135] {
    background: rgba(255, 193, 7, 0.1);
    color: #856404;
    border-color: rgba(255, 193, 7, 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: 0.25rem;
    margin-bottom: 0.5rem;
}

.amount-label[b-2bqw0hc135] {
    font-size: 0.875rem;
    color: #6c757d;
    font-weight: 500;
}

.amount-value[b-2bqw0hc135] {
    font-size: 1.5rem;
    font-weight: 700;
    color: #28a745;
    background: linear-gradient(45deg, #28a745, #20c997);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.split-info[b-2bqw0hc135] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.875rem;
    color: #ffc107;
}

.split-text[b-2bqw0hc135] {
    font-weight: 500;
}

/* Card Content Sections */
[b-2bqw0hc135] .service-category-card .e-card-content {
    padding: 1.5rem;
}

.limit-section[b-2bqw0hc135] {
    margin-bottom: 2rem;
}

.service-summary-section[b-2bqw0hc135],
.split-preview-section[b-2bqw0hc135] {
    margin-bottom: 1.5rem;
}

.section-header[b-2bqw0hc135] {
    display: flex;
    justify-content: between;
    align-items: center;
    margin-bottom: 1rem;
    gap: 1rem;
}

.section-header h5[b-2bqw0hc135] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: #495057;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex: 1;
}

.service-count[b-2bqw0hc135] {
    font-size: 0.85rem;
    color: #6c757d;
    font-weight: 400;
}

.service-items-summary[b-2bqw0hc135] {
    background: #f8f9fa;
    border-radius: 8px;
    padding: 1rem;
}

.service-item-row[b-2bqw0hc135] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0;
    border-bottom: 1px solid #e9ecef;
}

.service-item-row:last-child[b-2bqw0hc135] {
    border-bottom: none;
}

.service-info[b-2bqw0hc135] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1;
}

.service-name[b-2bqw0hc135] {
    font-weight: 500;
    color: #495057;
}

.service-quantity[b-2bqw0hc135] {
    font-size: 0.875rem;
    color: #6c757d;
}

.service-total[b-2bqw0hc135] {
    font-weight: 600;
    color: #28a745;
}

.more-services-indicator[b-2bqw0hc135] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 0;
    color: #6c757d;
    font-style: italic;
    border-top: 1px dashed #dee2e6;
    margin-top: 0.5rem;
    justify-content: center;
}

.no-services[b-2bqw0hc135] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    justify-content: center;
    padding: 1rem;
    color: #6c757d;
    font-style: italic;
}

/* Split Preview */
.split-amounts[b-2bqw0hc135] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-radius: 8px;
    border: 1px solid #dee2e6;
}

.split-amount[b-2bqw0hc135] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex: 1;
}

.split-amount.insurance[b-2bqw0hc135] {
    color: #007bff;
}

.split-amount.private[b-2bqw0hc135] {
    color: #dc3545;
}

.split-icon[b-2bqw0hc135] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    font-size: 1.125rem;
}

.split-amount.insurance .split-icon[b-2bqw0hc135] {
    background: rgba(0, 123, 255, 0.1);
    color: #007bff;
}

.split-amount.private .split-icon[b-2bqw0hc135] {
    background: rgba(220, 53, 69, 0.1);
    color: #dc3545;
}

.split-details[b-2bqw0hc135] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.split-label[b-2bqw0hc135] {
    font-size: 0.875rem;
    font-weight: 500;
    opacity: 0.8;
}

.split-value[b-2bqw0hc135] {
    font-size: 1.125rem;
    font-weight: 700;
}

.split-divider[b-2bqw0hc135] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    color: #6c757d;
    font-size: 0.875rem;
}

/* Responsive Design */
@media (max-width: 768px) {
    .card-header-content[b-2bqw0hc135] {
        flex-direction: column;
        gap: 1rem;
    }
    
    .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: 0.75rem;
    }
    
    .split-amounts[b-2bqw0hc135] {
        flex-direction: column;
        gap: 1rem;
    }
    
    .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: 1rem;
    }
    
    .category-title[b-2bqw0hc135] {
        font-size: 1.125rem;
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }
    
    .service-item-row[b-2bqw0hc135] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }
}
/* _content/FRP.Web/Components/Shared/Billing/ServiceCategoryTabs.razor.rz.scp.css */
.service-category-tabs-container[b-5apcqr4dy9] {
    width: 100%;
    margin-bottom: 1.5rem;
}

[b-5apcqr4dy9] .modern-billing-tabs {
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    background: white;
}

[b-5apcqr4dy9] .modern-billing-tabs .e-tab-header {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-bottom: 2px solid #dee2e6;
    border-radius: 8px 8px 0 0;
    padding: 0.5rem 1rem;
}

[b-5apcqr4dy9] .modern-billing-tabs .e-tab-header .e-toolbar-item {
    margin-right: 0.5rem;
    border-radius: 6px;
    transition: all 0.3s ease;
}

[b-5apcqr4dy9] .modern-billing-tabs .e-tab-header .e-toolbar-item.e-active {
    background: white;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transform: translateY(-1px);
}

.tab-header-content[b-5apcqr4dy9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    padding: 0.5rem 0.75rem;
}

.tab-title[b-5apcqr4dy9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.125rem;
}

.category-code[b-5apcqr4dy9] {
    font-weight: 700;
    font-size: 0.9rem;
    color: #495057;
    background: linear-gradient(45deg, #007bff, #0056b3);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.category-name[b-5apcqr4dy9] {
    font-size: 0.75rem;
    color: #6c757d;
    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: 0.25rem;
}

.total-amount[b-5apcqr4dy9] {
    font-weight: 600;
    font-size: 0.85rem;
    color: #28a745;
    background: rgba(40, 167, 69, 0.1);
    padding: 0.125rem 0.375rem;
    border-radius: 12px;
}

.split-indicator[b-5apcqr4dy9] {
    color: #ffc107;
    font-size: 0.75rem;
    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: 1.5rem;
    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: 2rem;
}

.no-services-message .alert[b-5apcqr4dy9] {
    max-width: 500px;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1.25rem 1.5rem;
    border-radius: 8px;
    background: linear-gradient(135deg, #d1ecf1 0%, #bee5eb 100%);
    border: 1px solid #abdde5;
    color: #0c5460;
}

.no-services-message .alert i[b-5apcqr4dy9] {
    font-size: 1.25rem;
    color: #17a2b8;
}

/* Responsive Design */
@media (max-width: 768px) {
    .tab-header-content[b-5apcqr4dy9] {
        padding: 0.375rem 0.5rem;
    }
    
    .category-name[b-5apcqr4dy9] {
        font-size: 0.7rem;
        max-width: 80px;
    }
    
    .total-amount[b-5apcqr4dy9] {
        font-size: 0.75rem;
        padding: 0.125rem 0.25rem;
    }
    
    [b-5apcqr4dy9] .modern-billing-tabs .e-content {
        padding: 1rem;
    }
}

@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: 0.5rem;
    }
    
    .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: 20px;
    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: 16px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.1);
    border: 1px solid #e1e5e9;
    overflow: hidden;
}

.calendar-header[b-okomwz72g4] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    padding: 20px 24px;
    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: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 1rem;
}

.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: 1.4rem;
    font-weight: 600;
    text-align: center;
}

.calendar-body[b-okomwz72g4] {
    padding: 0;
}

.calendar-weekdays[b-okomwz72g4] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    background: #f8f9fa;
    border-bottom: 2px solid #e9ecef;
}

.weekday[b-okomwz72g4] {
    padding: 16px 8px;
    text-align: center;
    font-weight: 700;
    color: #495057;
    text-transform: uppercase;
    font-size: 0.8rem;
    letter-spacing: 0.5px;
}

.calendar-days[b-okomwz72g4] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 1px;
    background: #e9ecef;
    padding: 1px;
}

.calendar-day[b-okomwz72g4] {
    background: white;
    min-height: 110px;
    position: relative;
    transition: all 0.2s ease;
    overflow: hidden;
}

.calendar-day:hover[b-okomwz72g4] {
    background: #f8f9fa;
    transform: scale(1.02);
    z-index: 10;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.calendar-day.other-month[b-okomwz72g4] {
    background: #f8f9fa;
    opacity: 0.5;
}

.calendar-day.today[b-okomwz72g4] {
    background: linear-gradient(135deg, #fff3cd 0%, #ffeeba 100%);
    border: 2px solid #ffc107;
}

.calendar-day.has-checkin.present[b-okomwz72g4] {
    background: linear-gradient(135deg, #d4edda 0%, #c3e6cb 100%);
    border-left: 4px solid #28a745;
}

.calendar-day.has-checkin.absent[b-okomwz72g4] {
    background: linear-gradient(135deg, #f8d7da 0%, #f5c6cb 100%);
    border-left: 4px solid #dc3545;
}

.calendar-day.has-checkin.planned-absent[b-okomwz72g4] {
    background: linear-gradient(135deg, #fff3cd 0%, #ffeeba 100%);
    border-left: 4px solid #ffc107;
}

.calendar-day.no-category-services[b-okomwz72g4] {
    background: #f8f9fa;
    border-left: 4px solid #6c757d;
}

.calendar-day.no-checkin[b-okomwz72g4] {
    background: white;
}

.day-content[b-okomwz72g4] {
    padding: 8px;
    height: 100%;
    position: relative;
}

.day-number[b-okomwz72g4] {
    font-weight: 700;
    font-size: 1.1rem;
    color: #495057;
    margin-bottom: 6px;
}

.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: #adb5bd;
    font-weight: 400;
}

.day-status[b-okomwz72g4] {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    font-weight: bold;
    color: white;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.day-status.present[b-okomwz72g4] {
    background: #28a745;
}

.day-status.absent[b-okomwz72g4] {
    background: #dc3545;
}

.day-status.planned-absent[b-okomwz72g4] {
    background: #ffc107;
    color: #212529;
}

.transport-indicator[b-okomwz72g4] {
    position: absolute;
    top: 32px;
    right: 8px;
    background: #007bff;
    color: white;
    border-radius: 4px;
    padding: 2px 6px;
    font-size: 0.7rem;
    font-weight: bold;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.wheelchair-indicator[b-okomwz72g4] {
    position: absolute;
    bottom: 4px;
    right: 4px;
    font-size: 0.9rem;
    opacity: 0.8;
    background: rgba(0,0,0,0.1);
    border-radius: 50%;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.services-summary[b-okomwz72g4] {
    margin-top: 8px;
    font-size: 0.75rem;
    line-height: 1.3;
}

.service-mini[b-okomwz72g4] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 3px;
    padding: 2px 4px;
    background: rgba(255,255,255,0.8);
    border-radius: 4px;
    border: 1px solid rgba(0,0,0,0.1);
}

.service-name[b-okomwz72g4] {
    font-weight: 600;
    color: #495057;
    font-size: 0.7rem;
    flex: 1;
    margin-right: 4px;
}

.service-amount[b-okomwz72g4] {
    font-weight: 700;
    color: #667eea;
    font-size: 0.7rem;
    white-space: nowrap;
}

.more-services[b-okomwz72g4] {
    font-size: 0.65rem;
    color: #6c757d;
    font-style: italic;
    text-align: center;
    margin-top: 4px;
    padding: 2px 4px;
    background: rgba(108,117,125,0.15);
    border-radius: 4px;
}

.no-services-indicator[b-okomwz72g4] {
    font-size: 0.7rem;
    color: #6c757d;
    text-align: center;
    margin-top: 20px;
    font-style: italic;
    opacity: 0.8;
}

/* Legend - Kompakter und eleganter */
.calendar-legend[b-okomwz72g4] {
    width: 200px;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    padding: 20px;
    border-radius: 16px;
    border: 1px solid #dee2e6;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    height: fit-content;
}

.legend-title[b-okomwz72g4] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #495057;
    font-size: 1rem;
}

.legend-title i[b-okomwz72g4] {
    color: #667eea;
    font-size: 1.1rem;
}

.legend-items[b-okomwz72g4] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.legend-item[b-okomwz72g4] {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 0.9rem;
    color: #495057;
}

.legend-color[b-okomwz72g4] {
    width: 16px;
    height: 16px;
    border-radius: 4px;
    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: #28a745;
}

.legend-color.absent[b-okomwz72g4] {
    background: linear-gradient(135deg, #f8d7da 0%, #f5c6cb 100%);
    border-color: #dc3545;
}

.legend-color.planned-absent[b-okomwz72g4] {
    background: linear-gradient(135deg, #fff3cd 0%, #ffeeba 100%);
    border-color: #ffc107;
}

.legend-color.transport[b-okomwz72g4] {
    background: #007bff;
}

.legend-text[b-okomwz72g4] {
    font-weight: 600;
}

/* Responsive Design */
@media (max-width: 1200px) {
    .service-details-calendar[b-okomwz72g4] {
        flex-direction: column;
        gap: 20px;
    }
    
    .calendar-legend[b-okomwz72g4] {
        width: 100%;
        order: -1;
    }
    
    .legend-items[b-okomwz72g4] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 16px;
    }
    
    .calendar-container[b-okomwz72g4] {
        min-width: unset;
    }
}

@media (max-width: 768px) {
    .calendar-day[b-okomwz72g4] {
        min-height: 90px;
    }
    
    .day-content[b-okomwz72g4] {
        padding: 6px;
    }
    
    .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: 16px 20px;
    }
    
    .calendar-title[b-okomwz72g4] {
        font-size: 1.2rem;
    }
    
    .weekday[b-okomwz72g4] {
        padding: 12px 4px;
        font-size: 0.7rem;
    }
}

@media (max-width: 480px) {
    .calendar-day[b-okomwz72g4] {
        min-height: 70px;
    }
    
    .day-number[b-okomwz72g4] {
        font-size: 0.9rem;
    }
    
    .services-summary[b-okomwz72g4] {
        margin-top: 4px;
    }
    
    .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: 4px;
    height: calc(100% - 30px);
    overflow: hidden;
}

.status-row[b-okomwz72g4] {
    display: flex;
    align-items: center;
    gap: 3px;
    flex-wrap: wrap;
    margin-bottom: 4px;
}

.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: 0.7rem;
    font-weight: 600;
    border-radius: 6px;
    padding: 2px 4px;
    line-height: 1;
    border: 1px solid rgba(0,0,0,0.1);
    transition: all 0.2s ease;
}

.status-badge[b-okomwz72g4] {
    min-width: 20px;
    height: 16px;
}

.status-badge.present[b-okomwz72g4] {
    background: linear-gradient(135deg, #28a745, #20c997);
    color: white;
    border-color: #155724;
}

.status-badge.absent[b-okomwz72g4] {
    background: linear-gradient(135deg, #dc3545, #e74c3c);
    color: white;
    border-color: #721c24;
}

.status-badge.planned-absent[b-okomwz72g4] {
    background: linear-gradient(135deg, #ffc107, #fd7e14);
    color: #212529;
    border-color: #856404;
}

.transport-badge[b-okomwz72g4] {
    background: linear-gradient(135deg, #007bff, #0056b3);
    color: white;
    border-color: #004085;
    font-size: 0.6rem;
    padding: 1px 3px;
}

.wheelchair-badge[b-okomwz72g4] {
    background: linear-gradient(135deg, #6c757d, #495057);
    color: white;
    border-color: #343a40;
    font-size: 0.6rem;
    padding: 1px 3px;
}

.care-level-badge[b-okomwz72g4] {
    background: linear-gradient(135deg, #17a2b8, #138496);
    color: white;
    border-color: #0c5460;
    font-size: 0.6rem;
    font-weight: 700;
}

.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: #495057;
    background: rgba(255, 255, 255, 0.9);
    padding: 3px 5px;
    border-radius: 4px;
    border: 1px solid rgba(0,0,0,0.05);
    font-weight: 500;
    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: 0 2px 4px rgba(0,0,0,0.2);
}

.calendar-day:hover .notes-text[b-okomwz72g4] {
    background: white;
    border-color: rgba(0,0,0,0.15);
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

/* 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: #495057;
    color: white;
    box-shadow: 0 4px 8px rgba(0,0,0,0.3);
    border-radius: 6px;
    padding: 6px 8px;
    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 4px;
    }
    
    .checkin-info[b-okomwz72g4] {
        gap: 3px;
    }
}
/* _content/FRP.Web/Components/Shared/BillingAddressManager.razor.rz.scp.css */
/* Billing Address Manager Styles */

.billing-manager[b-d13qkjzn3r] {
    background: white;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
}

.billing-header[b-d13qkjzn3r] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid #e9ecef;
}

.billing-header h4[b-d13qkjzn3r] {
    margin: 0;
    color: #2d3748;
    font-size: 1.1rem;
    font-weight: 600;
}

.add-address-btn[b-d13qkjzn3r] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.3s;
}

.add-address-btn:hover[b-d13qkjzn3r] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.3);
}

.billing-addresses[b-d13qkjzn3r] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.billing-card[b-d13qkjzn3r] {
    border: 2px solid #e9ecef;
    border-radius: 12px;
    padding: 16px;
    transition: all 0.3s;
    background: #f8f9fa;
}

.billing-card:hover[b-d13qkjzn3r] {
    border-color: #cbd5e0;
    background: white;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.billing-card.default-address[b-d13qkjzn3r] {
    border-color: #48bb78;
    background: #f0fff4;
    position: relative;
}

.billing-card.default-address[b-d13qkjzn3r]::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #48bb78 0%, #38a169 100%);
    border-radius: 12px 12px 0 0;
}

.address-header[b-d13qkjzn3r] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 12px;
}

.address-info[b-d13qkjzn3r] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.address-name[b-d13qkjzn3r] {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: #2d3748;
}

.address-type[b-d13qkjzn3r] {
    font-size: 0.8rem;
    color: #718096;
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: 0.5px;
}

.default-badge[b-d13qkjzn3r] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 8px;
    background: #48bb78;
    color: white;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.default-badge[b-d13qkjzn3r]::before {
    content: "★";
    font-size: 0.8rem;
}

.address-actions[b-d13qkjzn3r] {
    display: flex;
    gap: 4px;
}

.action-btn[b-d13qkjzn3r] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s;
    font-size: 0.85rem;
}

.action-btn.set-default[b-d13qkjzn3r] {
    background: #fef5e7;
    color: #d69e2e;
}

.action-btn.set-default:hover[b-d13qkjzn3r] {
    background: #d69e2e;
    color: white;
}

.action-btn.edit[b-d13qkjzn3r] {
    background: #e6fffa;
    color: #319795;
}

.action-btn.edit:hover[b-d13qkjzn3r] {
    background: #319795;
    color: white;
}

.action-btn.delete[b-d13qkjzn3r] {
    background: #fed7d7;
    color: #e53e3e;
}

.action-btn.delete:hover[b-d13qkjzn3r] {
    background: #e53e3e;
    color: white;
}

.address-content[b-d13qkjzn3r] {
    color: #4a5568;
    line-height: 1.5;
}

.address-line[b-d13qkjzn3r] {
    margin-bottom: 4px;
}

.address-meta[b-d13qkjzn3r] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
    font-size: 0.9rem;
    color: #718096;
}

.address-meta i[b-d13qkjzn3r] {
    width: 14px;
    font-size: 0.8rem;
}

.no-addresses[b-d13qkjzn3r] {
    text-align: center;
    padding: 40px 20px;
    color: #718096;
}

.no-addresses i[b-d13qkjzn3r] {
    font-size: 3rem;
    color: #cbd5e0;
    margin-bottom: 16px;
}

.no-addresses p[b-d13qkjzn3r] {
    font-size: 1.1rem;
    font-weight: 500;
    margin: 0 0 8px 0;
}

.no-addresses span[b-d13qkjzn3r] {
    font-size: 0.9rem;
}

/* Dialog Form Styles */
.address-form[b-d13qkjzn3r] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.form-row[b-d13qkjzn3r] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

.form-field[b-d13qkjzn3r] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.form-field.flex-2[b-d13qkjzn3r] {
    grid-column: span 2;
}

.form-field.full-width[b-d13qkjzn3r] {
    grid-column: span 2;
}

.field-label[b-d13qkjzn3r] {
    font-size: 0.875rem;
    font-weight: 600;
    color: #4a5568;
    display: flex;
    align-items: center;
    gap: 4px;
}

.field-label.required[b-d13qkjzn3r]::after {
    content: "*";
    color: #e53e3e;
}

.checkbox-field[b-d13qkjzn3r] {
    grid-column: span 2;
    padding: 12px;
    background: #f7fafc;
    border-radius: 8px;
}

/* Modern Input Styling for Dialog */
[b-d13qkjzn3r] .address-form .modern-input .e-input-group {
    border: 2px solid #e2e8f0;
    border-radius: 8px;
    background: white;
    transition: all 0.3s;
}

[b-d13qkjzn3r] .address-form .modern-input .e-input-group:hover {
    border-color: #cbd5e0;
}

[b-d13qkjzn3r] .address-form .modern-input .e-input-group.e-input-focus {
    border-color: #667eea;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

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

[b-d13qkjzn3r] .address-form .modern-check .e-checkbox-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
}

[b-d13qkjzn3r] .address-form .modern-check .e-frame {
    width: 20px;
    height: 20px;
    border: 2px solid #cbd5e0;
    border-radius: 4px;
    background: white;
}

[b-d13qkjzn3r] .address-form .modern-check.e-check .e-frame {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-color: #667eea;
}

.dialog-actions[b-d13qkjzn3r] {
    grid-column: span 2;
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 16px 0 0 0;
    margin-top: 8px;
    border-top: 1px solid #e2e8f0;
}

/* Responsive Design */
@media (max-width: 768px) {
    .billing-header[b-d13qkjzn3r] {
        flex-direction: column;
        gap: 12px;
        align-items: stretch;
    }

    .add-address-btn[b-d13qkjzn3r] {
        align-self: center;
    }

    .address-header[b-d13qkjzn3r] {
        flex-direction: column;
        gap: 12px;
    }

    .address-actions[b-d13qkjzn3r] {
        align-self: flex-end;
    }

    .form-row[b-d13qkjzn3r] {
        grid-template-columns: 1fr;
    }
    
    .form-field.flex-2[b-d13qkjzn3r],
    .form-field.full-width[b-d13qkjzn3r] {
        grid-column: span 1;
    }
}
/* _content/FRP.Web/Components/Shared/CareLevelChangeDialog.razor.rz.scp.css */
/* Care Level Change Dialog Styles */

.dialog-header[b-vrmldicbby] {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 1.25rem;
    font-weight: 600;
    color: #2d3748;
}

.dialog-header i[b-vrmldicbby] {
    color: #667eea;
    font-size: 1.1rem;
}

.care-level-change-form[b-vrmldicbby] {
    padding: 20px 0;
}

.current-info[b-vrmldicbby] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-bottom: 24px;
    padding: 16px;
    background: linear-gradient(135deg, #667eea10 0%, #764ba210 100%);
    border-radius: 12px;
    border: 1px solid #e2e8f0;
}

.info-card[b-vrmldicbby] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.info-card label[b-vrmldicbby] {
    font-size: 0.875rem;
    color: #718096;
    font-weight: 500;
}

.info-card span[b-vrmldicbby] {
    font-size: 1rem;
    color: #2d3748;
    font-weight: 600;
}

.care-level-badge[b-vrmldicbby] {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    border-radius: 20px;
    font-weight: 600;
    font-size: 0.9rem;
}

.care-level-badge.level-0[b-vrmldicbby] {
    background: #e2e8f0;
    color: #718096;
}

.care-level-badge.level-1[b-vrmldicbby] {
    background: #c6f6d5;
    color: #22543d;
}

.care-level-badge.level-2[b-vrmldicbby] {
    background: #bee3f8;
    color: #2c5282;
}

.care-level-badge.level-3[b-vrmldicbby] {
    background: #fef5e7;
    color: #744210;
}

.care-level-badge.level-4[b-vrmldicbby] {
    background: #fed7e2;
    color: #742a2a;
}

.care-level-badge.level-5[b-vrmldicbby] {
    background: #e9d8fd;
    color: #44337a;
}

.form-group[b-vrmldicbby] {
    margin-bottom: 20px;
}

.form-label[b-vrmldicbby] {
    display: block;
    margin-bottom: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    color: #4a5568;
}

.form-label.required[b-vrmldicbby]::after {
    content: " *";
    color: #e53e3e;
}

.validation-message[b-vrmldicbby] {
    display: block;
    margin-top: 4px;
    color: #e53e3e;
    font-size: 0.8rem;
}

.form-text[b-vrmldicbby] {
    display: block;
    margin-top: 4px;
    font-size: 0.8rem;
    color: #718096;
}

.alert[b-vrmldicbby] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    border-radius: 8px;
    margin-top: 20px;
}

.alert-warning[b-vrmldicbby] {
    background: #fef5e7;
    border: 1px solid #f6e05e;
    color: #744210;
}

.alert-info[b-vrmldicbby] {
    background: #e6f4ff;
    border: 1px solid #91d5ff;
    color: #0050b3;
}

.alert i[b-vrmldicbby] {
    font-size: 1.1rem;
}

/* Syncfusion Component Overrides */
[b-vrmldicbby] .e-dropdown {
    border: 2px solid #e2e8f0;
    border-radius: 8px;
}

[b-vrmldicbby] .e-dropdown:hover {
    border-color: #cbd5e0;
}

[b-vrmldicbby] .e-dropdown.e-input-focus {
    border-color: #667eea;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

[b-vrmldicbby] .e-datepicker .e-input-group {
    border: 2px solid #e2e8f0;
    border-radius: 8px;
}

[b-vrmldicbby] .e-datepicker .e-input-group:hover {
    border-color: #cbd5e0;
}

[b-vrmldicbby] .e-datepicker .e-input-group.e-input-focus {
    border-color: #667eea;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

[b-vrmldicbby] .e-textbox {
    border: 2px solid #e2e8f0;
    border-radius: 8px;
}

[b-vrmldicbby] .e-textbox:hover {
    border-color: #cbd5e0;
}

[b-vrmldicbby] .e-textbox.e-input-focus {
    border-color: #667eea;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

[b-vrmldicbby] textarea.e-textbox {
    min-height: 80px;
    resize: vertical;
}

/* Responsive Design */
@media (max-width: 576px) {
    .current-info[b-vrmldicbby] {
        grid-template-columns: 1fr;
    }
}
/* _content/FRP.Web/Components/Shared/CareLevelHistory.razor.rz.scp.css */
/* Care Level History Component Styles */

.care-level-history-container[b-qapa4synsa] {
    background: white;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.history-header[b-qapa4synsa] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    padding-bottom: 16px;
    border-bottom: 1px solid #e2e8f0;
}

.history-header h5[b-qapa4synsa] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    color: #2d3748;
    font-size: 1.1rem;
    font-weight: 600;
}

.history-header h5 i[b-qapa4synsa] {
    color: #667eea;
    font-size: 1rem;
}

.loading-container[b-qapa4synsa] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    text-align: center;
}

.loading-spinner[b-qapa4synsa] {
    width: 2rem;
    height: 2rem;
    border: 3px solid rgba(0, 123, 255, 0.1);
    border-top-color: #007bff;
    border-radius: 50%;
    animation: spin-b-qapa4synsa 1s linear infinite;
    margin-bottom: 1rem;
}

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

.empty-state[b-qapa4synsa] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 1rem;
    text-align: center;
}

.empty-state i[b-qapa4synsa] {
    color: #6c757d;
    margin-bottom: 1rem;
}

/* Care Level Badges */
.badge[b-qapa4synsa] {
    font-size: 0.75rem;
    padding: 0.375rem 0.75rem;
    border-radius: 0.25rem;
    font-weight: 500;
}

.badge-care-level-0[b-qapa4synsa] {
    background-color: #6c757d;
    color: white;
}

.badge-care-level-1[b-qapa4synsa] {
    background-color: #28a745;
    color: white;
}

.badge-care-level-2[b-qapa4synsa] {
    background-color: #17a2b8;
    color: white;
}

.badge-care-level-3[b-qapa4synsa] {
    background-color: #ffc107;
    color: #212529;
}

.badge-care-level-4[b-qapa4synsa] {
    background-color: #fd7e14;
    color: white;
}

.badge-care-level-5[b-qapa4synsa] {
    background-color: #dc3545;
    color: white;
}

/* Syncfusion Grid Customizations */
[b-qapa4synsa] .e-grid .e-gridheader {
    background: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
}

[b-qapa4synsa] .e-grid .e-headercell {
    color: #495057;
    font-weight: 600;
}

[b-qapa4synsa] .e-grid .e-row {
    transition: background-color 0.2s ease;
}

[b-qapa4synsa] .e-grid .e-row:hover {
    background-color: #f8f9fa;
}

[b-qapa4synsa] .e-grid .e-altrow {
    background-color: #fbfbfb;
}

[b-qapa4synsa] .e-grid .e-altrow:hover {
    background-color: #f0f0f0;
}

/* Make sure text doesn't wrap in grid cells */
[b-qapa4synsa] .e-grid td {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
/* _content/FRP.Web/Components/Shared/CheckInCalendar.razor.rz.scp.css */
/* Calendar Card Styles */
.checkin-calendar-card[b-38bnw4z29l] {
    margin-bottom: 1rem;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.checkin-calendar-card.collapsed[b-38bnw4z29l] {
    margin-bottom: 0.5rem;
}

.card-header-content[b-38bnw4z29l] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem;
    cursor: pointer;
    user-select: none;
    transition: background-color 0.2s;
}

.card-header-content:hover[b-38bnw4z29l] {
    background-color: #f5f5f5;
}

/* Summary Badges */
.checkin-summary-badges[b-38bnw4z29l] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.badge[b-38bnw4z29l] {
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    font-size: 0.85rem;
    font-weight: 500;
    white-space: nowrap;
}

.badge-success[b-38bnw4z29l] {
    background-color: #d4edda;
    color: #155724;
}

.badge-info[b-38bnw4z29l] {
    background-color: #d1ecf1;
    color: #0c5460;
}

.badge-warning[b-38bnw4z29l] {
    background-color: #fff3cd;
    color: #856404;
}

.badge-danger[b-38bnw4z29l] {
    background-color: #f8d7da;
    color: #721c24;
}

/* Calendar Grid */
.checkin-calendar-compact[b-38bnw4z29l] {
    padding: 1rem;
}

.calendar-grid[b-38bnw4z29l] {
    margin-bottom: 1rem;
}

.calendar-weekdays[b-38bnw4z29l] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
    margin-bottom: 4px;
}

.weekday[b-38bnw4z29l] {
    text-align: center;
    font-weight: 600;
    font-size: 0.85rem;
    color: #666;
    padding: 0.5rem 0;
    background-color: #f8f9fa;
}

.calendar-days[b-38bnw4z29l] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
}

/* Calendar Day Styles */
.calendar-day[b-38bnw4z29l] {
    aspect-ratio: 1;
    border: 1px solid #e0e0e0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
    background-color: white;
    transition: all 0.2s;
    min-height: 60px;
}

.calendar-day.clickable[b-38bnw4z29l] {
    cursor: pointer;
}

.calendar-day.clickable:hover[b-38bnw4z29l] {
    background-color: #f0f0f0;
    transform: scale(1.05);
    z-index: 1;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15);
}

.calendar-day.empty-day[b-38bnw4z29l] {
    background-color: #f8f9fa;
    border-color: transparent;
}

.calendar-day.present-day[b-38bnw4z29l] {
    background-color: #d4edda;
    border-color: #c3e6cb;
}

.calendar-day.absent-day[b-38bnw4z29l] {
    background-color: #f8d7da;
    border-color: #f5c6cb;
}

.calendar-day.planned-absent-day[b-38bnw4z29l] {
    background-color: #fff3cd;
    border-color: #ffeaa7;
}

.calendar-day.no-checkin-day[b-38bnw4z29l] {
    background-color: #fdfdfd;
}

.calendar-day.weekend-day[b-38bnw4z29l] {
    background-color: #f8f9fa;
}

.calendar-day.today[b-38bnw4z29l] {
    border: 2px solid #007bff;
    font-weight: bold;
}

.day-number[b-38bnw4z29l] {
    font-size: 0.9rem;
    font-weight: 500;
    margin-bottom: 2px;
}

.checkin-status[b-38bnw4z29l] {
    display: flex;
    gap: 2px;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    font-size: 0.75rem;
}

.checkin-status i[b-38bnw4z29l] {
    font-size: 0.85rem;
}

/* Summary Section */
.calendar-summary[b-38bnw4z29l] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 0.75rem;
    padding: 1rem;
    background-color: #f8f9fa;
    border-radius: 4px;
    margin-top: 1rem;
}

.summary-item[b-38bnw4z29l] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9rem;
}

.summary-item i[b-38bnw4z29l] {
    width: 20px;
    text-align: center;
}

/* Responsive Design */
@media (max-width: 768px) {
    .calendar-days[b-38bnw4z29l] {
        gap: 1px;
    }
    
    .calendar-day[b-38bnw4z29l] {
        min-height: 50px;
        font-size: 0.8rem;
    }
    
    .checkin-status i[b-38bnw4z29l] {
        font-size: 0.7rem;
    }
    
    .checkin-summary-badges[b-38bnw4z29l] {
        flex-direction: column;
        align-items: flex-start;
    }
    
    .badge[b-38bnw4z29l] {
        font-size: 0.75rem;
    }
}

@media (max-width: 480px) {
    .calendar-summary[b-38bnw4z29l] {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }
    
    .day-number[b-38bnw4z29l] {
        font-size: 0.75rem;
    }
    
    .calendar-day[b-38bnw4z29l] {
        min-height: 40px;
    }
}
/* _content/FRP.Web/Components/Shared/GuestContacts.razor.rz.scp.css */
/* Guest Contacts Component Styles */

.contacts-container[b-uth4r9ni0e] {
    padding: 1rem;
}

.contacts-header[b-uth4r9ni0e] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
    padding-bottom: 0.75rem;
    border-bottom: 2px solid #e9ecef;
}

.contacts-header h4[b-uth4r9ni0e] {
    margin: 0;
    color: #2c3e50;
    font-weight: 600;
    display: flex;
    align-items: center;
}

.loading-container[b-uth4r9ni0e] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    text-align: center;
}

.loading-spinner[b-uth4r9ni0e] {
    width: 30px;
    height: 30px;
    border: 3px solid #f3f3f3;
    border-radius: 50%;
    border-top: 3px solid #007bff;
    animation: spin-b-uth4r9ni0e 1s linear infinite;
    margin-bottom: 1rem;
}

@keyframes spin-b-uth4r9ni0e {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.empty-state[b-uth4r9ni0e] {
    text-align: center;
    padding: 3rem;
    background: #f8f9fa;
    border-radius: 12px;
    border: 2px dashed #dee2e6;
}

.empty-state i[b-uth4r9ni0e] {
    color: #6c757d;
}

.empty-state h5[b-uth4r9ni0e] {
    color: #495057;
    margin-bottom: 0.5rem;
}

.contacts-grid[b-uth4r9ni0e] {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
}

.contact-card[b-uth4r9ni0e] {
    background: white;
    border: 1px solid #dee2e6;
    border-radius: 12px;
    padding: 1rem;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: all 0.2s ease;
}

.contact-card:hover[b-uth4r9ni0e] {
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    transform: translateY(-1px);
}

.contact-card.emergency-contact[b-uth4r9ni0e] {
    border-left: 4px solid #dc3545;
    background: linear-gradient(135deg, #fff5f5 0%, #ffffff 100%);
}

.contact-header[b-uth4r9ni0e] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid #e9ecef;
}

.contact-name h6[b-uth4r9ni0e] {
    margin: 0 0 0.25rem 0;
    color: #2c3e50;
    font-weight: 600;
    font-size: 1.1rem;
}

.badge-emergency[b-uth4r9ni0e] {
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
    color: white;
    font-size: 0.7rem;
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
    font-weight: 500;
}

.contact-actions[b-uth4r9ni0e] {
    display: flex;
    gap: 0.5rem;
}

.contact-details[b-uth4r9ni0e] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.contact-info[b-uth4r9ni0e] {
    font-size: 0.9rem;
    line-height: 1.5;
    color: #495057;
}

.contact-communication[b-uth4r9ni0e] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.contact-item[b-uth4r9ni0e] {
    display: flex;
    align-items: center;
    font-size: 0.9rem;
    color: #495057;
}

.contact-item i[b-uth4r9ni0e] {
    width: 20px;
    flex-shrink: 0;
}

.contact-address[b-uth4r9ni0e] {
    font-size: 0.9rem;
    color: #495057;
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
}

.contact-address i[b-uth4r9ni0e] {
    margin-top: 0.1rem;
    flex-shrink: 0;
}

.contact-notes[b-uth4r9ni0e] {
    font-size: 0.85rem;
    color: #6c757d;
    font-style: italic;
    background: #f8f9fa;
    padding: 0.5rem;
    border-radius: 6px;
    border-left: 3px solid #007bff;
}

/* Dialog Styles */
.dialog-form[b-uth4r9ni0e] {
    padding: 1rem 0;
}

.form-row[b-uth4r9ni0e] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-bottom: 1rem;
}

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

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

.form-group label[b-uth4r9ni0e] {
    font-weight: 600;
    color: #2c3e50;
    font-size: 0.9rem;
    margin: 0;
}

.checkbox-group[b-uth4r9ni0e] {
    flex-direction: row;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0;
}

.checkbox-group label[b-uth4r9ni0e] {
    font-weight: 500;
    margin: 0;
}

.dialog-footer[b-uth4r9ni0e] {
    display: flex;
    justify-content: flex-end;
    gap: 1rem;
    padding-top: 1rem;
}

/* Validation Messages */
[b-uth4r9ni0e] .validation-message {
    color: #dc3545;
    font-size: 0.8rem;
    margin-top: 0.25rem;
}

/* Syncfusion Customizations */
[b-uth4r9ni0e] .e-input-group {
    border-radius: 6px;
    border: 1px solid #ced4da;
}

[b-uth4r9ni0e] .e-input-group:hover {
    border-color: #007bff;
}

[b-uth4r9ni0e] .e-input-group.e-input-focus {
    border-color: #007bff;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

[b-uth4r9ni0e] .e-btn.e-small {
    padding: 0.375rem 0.75rem;
    font-size: 0.8rem;
}

[b-uth4r9ni0e] .e-dialog .e-dlg-header {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-bottom: 1px solid #dee2e6;
}

[b-uth4r9ni0e] .e-dialog .e-dlg-content {
    padding: 1rem;
}

/* Responsive Design */
@media (max-width: 768px) {
    .contacts-grid[b-uth4r9ni0e] {
        grid-template-columns: 1fr;
    }
    
    .contacts-header[b-uth4r9ni0e] {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch;
        text-align: center;
    }
    
    .form-row[b-uth4r9ni0e] {
        grid-template-columns: 1fr;
    }
    
    .contact-header[b-uth4r9ni0e] {
        flex-direction: column;
        gap: 0.75rem;
        align-items: stretch;
    }
    
    .contact-actions[b-uth4r9ni0e] {
        justify-content: center;
    }
}

@media (max-width: 576px) {
    .contacts-container[b-uth4r9ni0e] {
        padding: 0.5rem;
    }
    
    .contact-card[b-uth4r9ni0e] {
        padding: 0.75rem;
    }
    
    .dialog-footer[b-uth4r9ni0e] {
        flex-direction: column;
    }
}
/* _content/FRP.Web/Components/Shared/GuestSchedule.razor.rz.scp.css */
/* Guest Schedule Component Styles */

.schedule-container[b-r5zsxawl7v] {
    padding: 1rem;
}

.schedule-header[b-r5zsxawl7v] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
    padding-bottom: 0.75rem;
    border-bottom: 2px solid #e9ecef;
}

.schedule-header h4[b-r5zsxawl7v] {
    margin: 0;
    color: #2c3e50;
    font-weight: 600;
    display: flex;
    align-items: center;
}

.loading-container[b-r5zsxawl7v] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    text-align: center;
}

.loading-spinner[b-r5zsxawl7v] {
    width: 30px;
    height: 30px;
    border: 3px solid #f3f3f3;
    border-radius: 50%;
    border-top: 3px solid #007bff;
    animation: spin-b-r5zsxawl7v 1s linear infinite;
    margin-bottom: 1rem;
}

@keyframes spin-b-r5zsxawl7v {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.empty-state[b-r5zsxawl7v] {
    text-align: center;
    padding: 3rem;
    background: #f8f9fa;
    border-radius: 12px;
    border: 2px dashed #dee2e6;
}

.empty-state i[b-r5zsxawl7v] {
    color: #6c757d;
}

.empty-state h5[b-r5zsxawl7v] {
    color: #495057;
    margin-bottom: 0.5rem;
}

.schedule-view[b-r5zsxawl7v] {
    margin-top: 1rem;
}

.week-overview[b-r5zsxawl7v] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 1rem;
    min-height: 400px;
}

.day-column[b-r5zsxawl7v] {
    background: white;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.day-header[b-r5zsxawl7v] {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    padding: 0.75rem;
    border-bottom: 1px solid #dee2e6;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.day-header h6[b-r5zsxawl7v] {
    margin: 0;
    color: #2c3e50;
    font-weight: 600;
    font-size: 0.9rem;
}

.day-content[b-r5zsxawl7v] {
    padding: 0.5rem;
    min-height: 300px;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.no-schedule[b-r5zsxawl7v] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    color: #6c757d;
    font-size: 0.85rem;
    text-align: center;
}

.no-schedule i[b-r5zsxawl7v] {
    font-size: 2rem;
    margin-bottom: 0.5rem;
}

.schedule-item[b-r5zsxawl7v] {
    background: white;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    padding: 0.75rem;
    position: relative;
    transition: all 0.2s ease;
}

.schedule-item:hover[b-r5zsxawl7v] {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    transform: translateY(-1px);
}

.schedule-item.slot-present[b-r5zsxawl7v] {
    border-left: 4px solid #28a745;
    background: linear-gradient(135deg, #f8fff9 0%, #ffffff 100%);
}

.schedule-item.slot-absent[b-r5zsxawl7v] {
    border-left: 4px solid #dc3545;
    background: linear-gradient(135deg, #fff5f5 0%, #ffffff 100%);
}

.schedule-item.slot-planned-absent[b-r5zsxawl7v] {
    border-left: 4px solid #ffc107;
    background: linear-gradient(135deg, #fffef8 0%, #ffffff 100%);
}


.schedule-slot[b-r5zsxawl7v] {
    font-size: 0.8rem;
    color: #495057;
    font-weight: 500;
    margin-bottom: 0.5rem;
}

.schedule-notes[b-r5zsxawl7v] {
    font-size: 0.75rem;
    color: #6c757d;
    font-style: italic;
    margin-bottom: 0.5rem;
    background: #f8f9fa;
    padding: 0.4rem;
    border-radius: 4px;
}

.schedule-actions[b-r5zsxawl7v] {
    display: flex;
    gap: 0.25rem;
    justify-content: flex-end;
    margin-top: 0.5rem;
}

/* Dialog Styles */
.dialog-form[b-r5zsxawl7v] {
    padding: 1rem 0;
}

.form-row[b-r5zsxawl7v] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-bottom: 1rem;
}

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

.form-group label[b-r5zsxawl7v] {
    font-weight: 600;
    color: #2c3e50;
    font-size: 0.9rem;
    margin: 0;
}

.checkbox-group[b-r5zsxawl7v] {
    flex-direction: row;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0;
}

.checkbox-group label[b-r5zsxawl7v] {
    font-weight: 500;
    margin: 0;
}

.dialog-footer[b-r5zsxawl7v] {
    display: flex;
    justify-content: flex-end;
    gap: 1rem;
    padding-top: 1rem;
}

/* Validation Messages */
[b-r5zsxawl7v] .validation-message {
    color: #dc3545;
    font-size: 0.8rem;
    margin-top: 0.25rem;
}

/* Syncfusion Customizations */
[b-r5zsxawl7v] .e-input-group {
    border-radius: 6px;
    border: 1px solid #ced4da;
}

[b-r5zsxawl7v] .e-input-group:hover {
    border-color: #007bff;
}

[b-r5zsxawl7v] .e-input-group.e-input-focus {
    border-color: #007bff;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

[b-r5zsxawl7v] .e-btn.e-small {
    padding: 0.375rem 0.75rem;
    font-size: 0.8rem;
}

[b-r5zsxawl7v] .e-dialog .e-dlg-header {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-bottom: 1px solid #dee2e6;
}

[b-r5zsxawl7v] .e-dialog .e-dlg-content {
    padding: 1rem;
}

/* Time Slot Color Classes */
.slot-present .schedule-slot[b-r5zsxawl7v] {
    color: #28a745;
    font-weight: 600;
}

.slot-absent .schedule-slot[b-r5zsxawl7v] {
    color: #dc3545;
    font-weight: 600;
}

.slot-planned-absent .schedule-slot[b-r5zsxawl7v] {
    color: #ffc107;
    font-weight: 600;
}

/* Responsive Design */
@media (max-width: 1200px) {
    .week-overview[b-r5zsxawl7v] {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 768px) {
    .week-overview[b-r5zsxawl7v] {
        grid-template-columns: repeat(2, 1fr);
        gap: 0.75rem;
    }
    
    .schedule-header[b-r5zsxawl7v] {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch;
        text-align: center;
    }
    
    .form-row[b-r5zsxawl7v] {
        grid-template-columns: 1fr;
    }
    
    .day-content[b-r5zsxawl7v] {
        min-height: 200px;
    }
}

@media (max-width: 576px) {
    .week-overview[b-r5zsxawl7v] {
        grid-template-columns: 1fr;
    }
    
    .schedule-container[b-r5zsxawl7v] {
        padding: 0.5rem;
    }
    
    .schedule-item[b-r5zsxawl7v] {
        padding: 0.5rem;
    }
    
    .dialog-footer[b-r5zsxawl7v] {
        flex-direction: column;
    }
    
    .day-header[b-r5zsxawl7v] {
        padding: 0.5rem;
    }
    
    .day-content[b-r5zsxawl7v] {
        padding: 0.5rem;
        min-height: 150px;
    }
}
/* _content/FRP.Web/Components/Shared/GuestTabsLayout.razor.rz.scp.css */
/* Guest Tabs Layout Styles */
.guest-tabs-container[b-6h1y2ozdgl] {
    width: 100%;
    height: 100%;
}

.guest-details-tabs[b-6h1y2ozdgl] {
    height: 100%;
}

.tab-content-padding[b-6h1y2ozdgl] {
    padding: 1.5rem;
}

/* Content Layout */
.content-row[b-6h1y2ozdgl] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

@media (min-width: 768px) {
    .content-row[b-6h1y2ozdgl] {
        flex-direction: row;
        flex-wrap: wrap;
    }
}

/* Detail Cards */
.detail-card[b-6h1y2ozdgl] {
    background: #fff;
    border: 1px solid #e9ecef;
    border-radius: 0.5rem;
    padding: 1.5rem;
    flex: 1;
    min-width: 300px;
}

.card-title[b-6h1y2ozdgl] {
    font-weight: 600;
    font-size: 1.1rem;
    color: #495057;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #f8f9fa;
    display: flex;
    align-items: center;
}

.card-title i[b-6h1y2ozdgl] {
    color: #007bff;
}

/* Detail Grid */
.detail-grid[b-6h1y2ozdgl] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
}

.detail-item[b-6h1y2ozdgl] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.detail-item.full-width[b-6h1y2ozdgl] {
    grid-column: 1 / -1;
}

.detail-item label[b-6h1y2ozdgl] {
    font-weight: 500;
    color: #6c757d;
    font-size: 0.875rem;
    margin-bottom: 0;
}

.detail-item span[b-6h1y2ozdgl] {
    color: #495057;
    font-size: 0.95rem;
}

.detail-text[b-6h1y2ozdgl] {
    color: #495057;
    font-size: 0.95rem;
    padding: 0.5rem;
    background: #f8f9fa;
    border-radius: 0.25rem;
    border: 1px solid #e9ecef;
    margin-top: 0.25rem;
}

.detail-text.alert[b-6h1y2ozdgl] {
    margin-top: 0.25rem;
    margin-bottom: 0;
}

/* Form Styles for Edit Mode */
.form-label[b-6h1y2ozdgl] {
    font-weight: 500;
    color: #495057;
    margin-bottom: 0.5rem;
}

.form-label.required[b-6h1y2ozdgl]::after {
    content: " *";
    color: #dc3545;
}

.form-check[b-6h1y2ozdgl] {
    margin-top: 0.5rem;
}

/* Badge Styles */
.badge[b-6h1y2ozdgl] {
    font-size: 0.75rem;
    padding: 0.25rem 0.5rem;
}

/* Container Styles */
.contacts-container[b-6h1y2ozdgl],
.care-level-container[b-6h1y2ozdgl],
.billing-container[b-6h1y2ozdgl],
.history-container[b-6h1y2ozdgl] {
    padding: 1.5rem;
}

/* Responsive Design */
@media (max-width: 767px) {
    .tab-content-padding[b-6h1y2ozdgl] {
        padding: 1rem;
    }
    
    .contacts-container[b-6h1y2ozdgl],
    .care-level-container[b-6h1y2ozdgl],
    .billing-container[b-6h1y2ozdgl],
    .history-container[b-6h1y2ozdgl] {
        padding: 1rem;
    }
    
    .detail-card[b-6h1y2ozdgl] {
        padding: 1rem;
        margin-bottom: 1rem;
        min-width: unset;
    }
    
    .detail-grid[b-6h1y2ozdgl] {
        grid-template-columns: 1fr;
        gap: 0.75rem;
    }
}

/* Icon Colors */
.text-success[b-6h1y2ozdgl] {
    color: #28a745 !important;
}

.text-warning[b-6h1y2ozdgl] {
    color: #ffc107 !important;
}

.text-muted[b-6h1y2ozdgl] {
    color: #6c757d !important;
}

/* Alert Styling */
.alert[b-6h1y2ozdgl] {
    padding: 0.75rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: 0.375rem;
}

.alert-info[b-6h1y2ozdgl] {
    color: #055160;
    background-color: #cff4fc;
    border-color: #b8daff;
}

.alert-warning[b-6h1y2ozdgl] {
    color: #664d03;
    background-color: #fff3cd;
    border-color: #ffecb5;
}
/* _content/FRP.Web/Components/Shared/GuestWeeklyPlanner.razor.rz.scp.css */
.elegant-weekly-planner[b-h2f9vm2uto] {
    background: white;
    border-radius: 8px;
    padding: 1.5rem;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
}

.planner-header[b-h2f9vm2uto] {
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #e9ecef;
}

.planner-header h5[b-h2f9vm2uto] {
    margin: 0;
    color: #495057;
    font-weight: 600;
}

/* Elegant Grid Layout */
.weekdays-elegant-grid[b-h2f9vm2uto] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
    margin-bottom: 1rem;
}

/* Weekday Cards */
.weekday-card[b-h2f9vm2uto] {
    background: #f8f9fa;
    border: 2px solid #e9ecef;
    border-radius: 12px;
    padding: 1.25rem;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.weekday-card:hover[b-h2f9vm2uto] {
    border-color: #007bff;
    box-shadow: 0 4px 12px rgba(0, 123, 255, 0.15);
    transform: translateY(-2px);
}

.weekday-card.scheduled[b-h2f9vm2uto] {
    background: linear-gradient(135deg, #e3f2fd 0%, #f0f8ff 100%);
    border-color: #28a745;
    box-shadow: 0 2px 8px rgba(40, 167, 69, 0.15);
}

.weekday-card.scheduled:hover[b-h2f9vm2uto] {
    border-color: #218838;
    box-shadow: 0 4px 12px rgba(40, 167, 69, 0.25);
}

/* Card Content */
.weekday-content[b-h2f9vm2uto] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.weekday-icon[b-h2f9vm2uto] {
    font-size: 1.5rem;
    color: #6c757d;
    transition: color 0.3s ease;
    flex-shrink: 0;
}

.weekday-card.scheduled .weekday-icon[b-h2f9vm2uto] {
    color: #28a745;
}

.weekday-card:hover .weekday-icon[b-h2f9vm2uto] {
    color: #007bff;
}

.weekday-card.scheduled:hover .weekday-icon[b-h2f9vm2uto] {
    color: #218838;
}

.weekday-info[b-h2f9vm2uto] {
    flex: 1;
}

.weekday-name[b-h2f9vm2uto] {
    font-weight: 600;
    color: #495057;
    font-size: 1rem;
    margin-bottom: 0.25rem;
}

.weekday-short[b-h2f9vm2uto] {
    font-size: 0.75rem;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.weekday-status[b-h2f9vm2uto] {
    text-align: right;
}

.status-badge[b-h2f9vm2uto] {
    font-size: 0.75rem;
    padding: 0.25rem 0.5rem;
    border-radius: 12px;
    font-weight: 500;
    transition: all 0.3s ease;
}

.status-badge.active[b-h2f9vm2uto] {
    background-color: #d4edda;
    color: #155724;
}

.status-badge.inactive[b-h2f9vm2uto] {
    background-color: #f8d7da;
    color: #721c24;
}

/* Notes */
.weekday-notes[b-h2f9vm2uto] {
    margin-top: 0.75rem;
    padding: 0.5rem;
    background: rgba(255, 255, 255, 0.7);
    border-radius: 6px;
    font-size: 0.875rem;
    color: #0066cc;
    border-left: 3px solid #007bff;
}

/* Actions */
.planner-actions[b-h2f9vm2uto] {
    display: flex;
    align-items: center;
    padding-top: 1rem;
    border-top: 1px solid #e9ecef;
    gap: 0.5rem;
}

/* Hover Effects */
.weekday-card[b-h2f9vm2uto]::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
    transition: left 0.5s;
}

.weekday-card:hover[b-h2f9vm2uto]::before {
    left: 100%;
}

/* Active Animation */
@keyframes pulse-b-h2f9vm2uto {
    0% { transform: scale(1); }
    50% { transform: scale(1.05); }
    100% { transform: scale(1); }
}

.weekday-card.scheduled[b-h2f9vm2uto] {
    animation: pulse-b-h2f9vm2uto 0.3s ease-in-out;
}

/* Responsive */
@media (max-width: 768px) {
    .weekdays-elegant-grid[b-h2f9vm2uto] {
        grid-template-columns: 1fr;
    }
    
    .weekday-card[b-h2f9vm2uto] {
        padding: 1rem;
    }
    
    .weekday-content[b-h2f9vm2uto] {
        gap: 0.75rem;
    }
    
    .weekday-icon[b-h2f9vm2uto] {
        font-size: 1.25rem;
    }
}

/* Transport Selection */
.transport-selection[b-h2f9vm2uto] {
    margin-top: 0.75rem;
    padding: 0.75rem;
    background: rgba(255, 255, 255, 0.8);
    border-radius: 6px;
    border: 1px solid #e9ecef;
}

.transport-label[b-h2f9vm2uto] {
    display: flex;
    align-items: center;
    margin-bottom: 0.5rem;
    color: #495057;
    font-weight: 500;
}

.transport-buttons[b-h2f9vm2uto] {
    display: flex;
    gap: 0.25rem;
    margin-bottom: 0.5rem;
    flex-wrap: wrap;
}

.transport-buttons .e-btn[b-h2f9vm2uto] {
    min-width: 32px;
    height: 32px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.transport-buttons .e-btn i[b-h2f9vm2uto] {
    font-size: 0.875rem;
}

.transport-text[b-h2f9vm2uto] {
    text-align: center;
}

.transport-text small[b-h2f9vm2uto] {
    font-weight: 500;
    color: #6c757d;
}

/* Transport Button Hover Effects */
.transport-buttons .e-btn:hover[b-h2f9vm2uto] {
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.transport-buttons .e-primary[b-h2f9vm2uto] {
    background: linear-gradient(135deg, #007bff, #0056b3);
    border-color: #0056b3;
}

.transport-buttons .e-primary:hover[b-h2f9vm2uto] {
    background: linear-gradient(135deg, #0056b3, #004085);
}

@media (max-width: 576px) {
    .elegant-weekly-planner[b-h2f9vm2uto] {
        padding: 1rem;
    }
    
    .planner-actions[b-h2f9vm2uto] {
        flex-direction: column;
        align-items: stretch;
    }
    
    .planner-actions .e-btn[b-h2f9vm2uto] {
        width: 100%;
        margin: 0.25rem 0;
    }
    
    .transport-buttons[b-h2f9vm2uto] {
        justify-content: center;
    }
    
    .transport-buttons .e-btn[b-h2f9vm2uto] {
        min-width: 36px;
        height: 36px;
    }
}
/* _content/FRP.Web/Components/Shared/GuestWeekSchedule.razor.rz.scp.css */
.week-schedule-container[b-lww2eljyxi] {
    padding: 1rem;
    background-color: #f8f9fa;
    border-radius: 8px;
}

.schedule-header[b-lww2eljyxi] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 1rem;
    border-bottom: 2px solid #dee2e6;
}

.schedule-header h4[b-lww2eljyxi] {
    color: #495057;
    font-weight: 600;
}

/* Week Grid Layout */
.week-grid[b-lww2eljyxi] {
    background: white;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.08);
    overflow: hidden;
}

.week-grid-header[b-lww2eljyxi] {
    display: grid;
    grid-template-columns: 180px repeat(5, 1fr);
    background-color: #f8f9fa;
    border-bottom: 2px solid #dee2e6;
}

.time-slot-header[b-lww2eljyxi] {
    padding: 1rem;
    font-weight: 600;
    color: #6c757d;
    border-right: 1px solid #dee2e6;
}

.day-header[b-lww2eljyxi] {
    padding: 1rem;
    text-align: center;
    font-weight: 600;
    color: #495057;
    border-right: 1px solid #dee2e6;
}

.day-header:last-child[b-lww2eljyxi] {
    border-right: none;
}

/* Grid Body */
.week-grid-body[b-lww2eljyxi] {
    background: white;
}

.time-slot-row[b-lww2eljyxi] {
    display: grid;
    grid-template-columns: 180px repeat(5, 1fr);
    border-bottom: 1px solid #e9ecef;
}

.time-slot-row:last-child[b-lww2eljyxi] {
    border-bottom: none;
}

.time-slot-label[b-lww2eljyxi] {
    padding: 1rem;
    font-weight: 500;
    color: #6c757d;
    background-color: #f8f9fa;
    border-right: 1px solid #dee2e6;
    display: flex;
    align-items: center;
}

/* Schedule Cells */
.schedule-cell[b-lww2eljyxi] {
    padding: 1rem;
    min-height: 80px;
    border-right: 1px solid #e9ecef;
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.schedule-cell:last-child[b-lww2eljyxi] {
    border-right: none;
}

.schedule-cell:hover[b-lww2eljyxi] {
    background-color: #f8f9fa;
}

.schedule-cell.has-schedule[b-lww2eljyxi] {
    background-color: #f0f8ff;
}

/* Schedule Indicators */
.schedule-indicator[b-lww2eljyxi] {
    font-size: 1.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.add-schedule-hint[b-lww2eljyxi] {
    opacity: 0;
    transition: opacity 0.2s ease;
    color: #6c757d;
    font-size: 1.2rem;
}

.schedule-cell:hover .add-schedule-hint[b-lww2eljyxi] {
    opacity: 0.5;
}

/* Time Slot Colors */
.slot-present[b-lww2eljyxi] {
    color: #28a745;
}

.slot-absent[b-lww2eljyxi] {
    color: #dc3545;
}

.slot-planned-absent[b-lww2eljyxi] {
    color: #ffc107;
}

/* Legend */
.schedule-legend[b-lww2eljyxi] {
    display: flex;
    gap: 2rem;
    justify-content: center;
    padding: 1rem;
    background: white;
    border-radius: 8px;
}

.legend-item[b-lww2eljyxi] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: #6c757d;
}

.legend-color[b-lww2eljyxi] {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: inline-block;
}

.legend-color.slot-present[b-lww2eljyxi] {
    background-color: #28a745;
}

.legend-color.slot-absent[b-lww2eljyxi] {
    background-color: #dc3545;
}

.legend-color.slot-planned-absent[b-lww2eljyxi] {
    background-color: #ffc107;
}

/* Dialog Styles */
.dialog-header[b-lww2eljyxi] {
    font-size: 1.1rem;
    font-weight: 600;
    color: #495057;
}

.schedule-form[b-lww2eljyxi] {
    padding: 1rem 0;
}

.form-info[b-lww2eljyxi] {
    margin-bottom: 1rem;
}

.form-info .alert[b-lww2eljyxi] {
    margin-bottom: 0;
    padding: 0.75rem;
    font-size: 0.875rem;
}

.time-slot-item[b-lww2eljyxi] {
    display: flex;
    align-items: center;
    padding: 0.5rem;
}

.dialog-footer[b-lww2eljyxi] {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-end;
}

/* Responsive Design */
@media (max-width: 768px) {
    .week-grid-header[b-lww2eljyxi],
    .time-slot-row[b-lww2eljyxi] {
        grid-template-columns: 120px repeat(5, 1fr);
    }
    
    .time-slot-label[b-lww2eljyxi] {
        font-size: 0.875rem;
        padding: 0.75rem;
    }
    
    .schedule-cell[b-lww2eljyxi] {
        min-height: 60px;
        padding: 0.75rem;
    }
    
    .schedule-indicator[b-lww2eljyxi] {
        font-size: 1.2rem;
    }
}
/* _content/FRP.Web/Components/Shared/InvoiceDeliveryDialog.razor.rz.scp.css */
/* Invoice Delivery Dialog Styles */

[b-2znqt7cxnq] .invoice-delivery-dialog .e-dlg-header {
    background: linear-gradient(135deg, #1976d2, #1565c0);
    color: white;
    border-radius: 8px 8px 0 0;
}

[b-2znqt7cxnq] .invoice-delivery-dialog .e-dlg-header .e-dlg-header-content {
    padding: 15px 20px;
}

.dialog-header[b-2znqt7cxnq] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 18px;
    font-weight: 500;
}

.dialog-header i[b-2znqt7cxnq] {
    font-size: 20px;
}

.dialog-content[b-2znqt7cxnq] {
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Invoice Info Card */
.invoice-info-card[b-2znqt7cxnq] {
    background: #f8f9fa;
    border: 1px solid #e9ecef;
}

.invoice-info[b-2znqt7cxnq] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.invoice-detail[b-2znqt7cxnq] {
    font-size: 14px;
    color: #495057;
}

.invoice-detail strong[b-2znqt7cxnq] {
    color: #212529;
    min-width: 80px;
    display: inline-block;
}

/* Delivery Methods */
.delivery-methods h4[b-2znqt7cxnq] {
    margin: 0 0 15px 0;
    font-size: 16px;
    font-weight: 600;
    color: #212529;
}

.delivery-option[b-2znqt7cxnq] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 15px;
    border: 2px solid #e9ecef;
    border-radius: 8px;
    margin-bottom: 10px;
    transition: all 0.2s;
    cursor: pointer;
}

.delivery-option:hover[b-2znqt7cxnq] {
    border-color: #007bff;
    background-color: #f8f9ff;
}

.delivery-option.selected[b-2znqt7cxnq] {
    border-color: #007bff;
    background-color: #e7f3ff;
}

.delivery-info[b-2znqt7cxnq] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.delivery-title[b-2znqt7cxnq] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 16px;
    font-weight: 600;
    color: #212529;
}

.delivery-title i[b-2znqt7cxnq] {
    font-size: 18px;
    width: 20px;
}

.delivery-details[b-2znqt7cxnq] {
    font-size: 14px;
    color: #6c757d;
}

.email-address[b-2znqt7cxnq] {
    color: #007bff;
    font-weight: 500;
}

.no-email[b-2znqt7cxnq] {
    color: #dc3545;
    font-style: italic;
}

.postal-address[b-2znqt7cxnq] {
    line-height: 1.4;
    margin-bottom: 4px;
}

.delivery-note[b-2znqt7cxnq] {
    color: #28a745;
    font-size: 13px;
    font-weight: 500;
}

.delivery-note[b-2znqt7cxnq]::before {
    content: "";
    margin-right: 4px;
}

/* Manual Notes */
[b-2znqt7cxnq] .manual-notes .e-input {
    min-height: 60px;
    resize: vertical;
}

/* Attachments Section */
.attachments-section h4[b-2znqt7cxnq] {
    margin: 0 0 10px 0;
    font-size: 14px;
    font-weight: 600;
    color: #212529;
}

.attachment-list[b-2znqt7cxnq] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.attachment-item[b-2znqt7cxnq] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 4px;
    font-size: 14px;
    color: #495057;
}

.attachment-item i[b-2znqt7cxnq] {
    color: #dc3545;
    font-size: 16px;
}

/* Status Messages */
.status-message[b-2znqt7cxnq] {
    padding: 12px 16px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 8px;
}

.status-message.success[b-2znqt7cxnq] {
    background: #d4edda;
    border: 1px solid #c3e6cb;
    color: #155724;
}

.status-message.error[b-2znqt7cxnq] {
    background: #f8d7da;
    border: 1px solid #f5c6cb;
    color: #721c24;
}

.status-message i[b-2znqt7cxnq] {
    font-size: 16px;
}

/* Dialog Footer */
.dialog-footer[b-2znqt7cxnq] {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    padding: 20px;
    border-top: 1px solid #e9ecef;
    background: #f8f9fa;
}

[b-2znqt7cxnq] .dialog-footer .e-btn {
    padding: 8px 20px;
    font-weight: 500;
}

/* Radio Button Styling */
[b-2znqt7cxnq] .delivery-option .e-radio-wrapper {
    margin-top: 2px;
}

[b-2znqt7cxnq] .delivery-option .e-radio + label::before {
    border-width: 2px;
}

[b-2znqt7cxnq] .delivery-option.selected .e-radio + label::before {
    border-color: #007bff;
}

[b-2znqt7cxnq] .delivery-option.selected .e-radio:checked + label::after {
    background-color: #007bff;
}

/* Responsive Design */
@media (max-width: 768px) {
    .dialog-content[b-2znqt7cxnq] {
        padding: 15px;
    }
    
    .delivery-option[b-2znqt7cxnq] {
        padding: 12px;
    }
    
    .dialog-footer[b-2znqt7cxnq] {
        padding: 15px;
    }
    
    [b-2znqt7cxnq] .invoice-delivery-dialog {
        width: 90% !important;
        height: auto !important;
        max-height: 90vh;
    }
}
/* _content/FRP.Web/Components/Shared/SimpleCalendar.razor.rz.scp.css */
/* Calendar Container */
.simple-calendar-container[b-f0smjw46ux] {
    width: 100%;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.simple-calendar-compact[b-f0smjw46ux] {
    padding: 0;
}

/* Calendar Grid */
.calendar-grid[b-f0smjw46ux] {
    border: 1px solid #dee2e6;
    border-radius: 0.375rem;
    overflow: hidden;
    background-color: #fff;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
}

.calendar-weekdays[b-f0smjw46ux] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    background-color: #f8f9fa;
    border-bottom: 1px solid #dee2e6;
}

.weekday[b-f0smjw46ux] {
    padding: 0.75rem 0.25rem;
    text-align: center;
    font-weight: 600;
    font-size: 0.875rem;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-right: 1px solid #dee2e6;
}

.weekday:last-child[b-f0smjw46ux] {
    border-right: none;
}

.calendar-days[b-f0smjw46ux] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
}

/* Calendar Day Cells */
.calendar-day[b-f0smjw46ux] {
    position: relative;
    min-height: 3.5rem;
    border-right: 1px solid #dee2e6;
    border-bottom: 1px solid #dee2e6;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    transition: all 0.15s ease-in-out;
    padding: 0.5rem;
}

.calendar-day:nth-child(5n)[b-f0smjw46ux] {
    border-right: none;
}

.calendar-day:hover[b-f0smjw46ux] {
    background-color: #f8f9fa;
}

.calendar-day.clickable[b-f0smjw46ux] {
    cursor: pointer;
}

.calendar-day.clickable:hover[b-f0smjw46ux] {
    background-color: #e9ecef;
    transform: translateY(-1px);
    box-shadow: 0 0.25rem 0.5rem rgba(0, 0, 0, 0.1);
}

/* Empty days */
.calendar-day.empty-day[b-f0smjw46ux] {
    background-color: #f8f9fa;
    color: #adb5bd;
}

/* Status-based styling */
.calendar-day.present-day[b-f0smjw46ux] {
    background-color: #d1f2eb;
    border-color: #7dcea0;
}

.calendar-day.present-day:hover[b-f0smjw46ux] {
    background-color: #a3e4d7;
}

.calendar-day.absent-day[b-f0smjw46ux] {
    background-color: #fadbd8;
    border-color: #ec7063;
}

.calendar-day.absent-day:hover[b-f0smjw46ux] {
    background-color: #f5b7b1;
}

.calendar-day.planned-absent-day[b-f0smjw46ux] {
    background-color: #fdf2e9;
    border-color: #f8c471;
}

.calendar-day.planned-absent-day:hover[b-f0smjw46ux] {
    background-color: #fae5d3;
}

.calendar-day.no-checkin-day[b-f0smjw46ux] {
    background-color: #fdfdfe;
}

.calendar-day.weekend-day[b-f0smjw46ux] {
    background-color: #f1f3f4;
}

.calendar-day.today[b-f0smjw46ux] {
    border: 2px solid #007bff;
    border-radius: 0.25rem;
    margin: 1px;
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

/* Day Number */
.day-number[b-f0smjw46ux] {
    font-size: 1rem;
    font-weight: 600;
    color: #212529;
    line-height: 1;
    margin-bottom: 0.25rem;
}

/* Status Icon */
.status-icon[b-f0smjw46ux] {
    position: absolute;
    top: 0.25rem;
    right: 0.25rem;
    font-size: 1rem;
}

.status-icon .fa-check-circle[b-f0smjw46ux] {
    color: #28a745;
}

.status-icon .fa-calendar-times[b-f0smjw46ux] {
    color: #ffc107;
}

.status-icon .fa-times-circle[b-f0smjw46ux] {
    color: #dc3545;
}

.calendar-day.empty-day .day-number[b-f0smjw46ux] {
    color: #adb5bd;
}

.calendar-day.weekend-day .day-number[b-f0smjw46ux] {
    color: #6c757d;
}

/* Day Indicators */
.day-indicators[b-f0smjw46ux] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    align-items: center;
    justify-content: flex-start;
    margin-top: auto;
}

.day-indicators.empty .no-checkin[b-f0smjw46ux] {
    font-size: 0.75rem;
    color: #adb5bd;
    font-weight: 300;
}

/* Transport Badge */
.transport-badge[b-f0smjw46ux] {
    display: inline-flex;
    align-items: center;
    gap: 0.125rem;
    background-color: #007bff;
    color: white;
    padding: 0.125rem 0.375rem;
    border-radius: 0.25rem;
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 123, 255, 0.3);
}

.transport-badge.wheelchair[b-f0smjw46ux] {
    background-color: #6f42c1;
    box-shadow: 0 0.125rem 0.25rem rgba(111, 66, 193, 0.3);
}

.transport-badge i[b-f0smjw46ux] {
    font-size: 0.75rem;
}

.transport-count[b-f0smjw46ux] {
    font-weight: 700;
    margin-left: 0.125rem;
}

.wheelchair-icon[b-f0smjw46ux] {
    margin-left: 0.125rem;
    font-size: 0.625rem !important;
}

/* Wheelchair Only Badge */
.wheelchair-badge[b-f0smjw46ux] {
    display: inline-flex;
    align-items: center;
    background-color: #6f42c1;
    color: white;
    padding: 0.125rem 0.375rem;
    border-radius: 0.25rem;
    font-size: 0.75rem;
    box-shadow: 0 0.125rem 0.25rem rgba(111, 66, 193, 0.3);
}

.wheelchair-badge i[b-f0smjw46ux] {
    font-size: 0.75rem;
}

/* Calendar Summary */
.calendar-summary[b-f0smjw46ux] {
    margin-top: 1rem;
    padding: 1rem;
    background-color: #f8f9fa;
    border-radius: 0.375rem;
    border: 1px solid #dee2e6;
}

.summary-row[b-f0smjw46ux] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: center;
    align-items: center;
}

.summary-item[b-f0smjw46ux] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: #495057;
    white-space: nowrap;
}

.summary-item i[b-f0smjw46ux] {
    font-size: 1rem;
    width: 1.25rem;
    text-align: center;
}

/* Responsive Design */
@media (max-width: 768px) {
    .calendar-day[b-f0smjw46ux] {
        min-height: 3rem;
        padding: 0.375rem;
    }
    
    .day-number[b-f0smjw46ux] {
        font-size: 0.875rem;
    }
    
    .weekday[b-f0smjw46ux] {
        padding: 0.5rem 0.25rem;
        font-size: 0.75rem;
    }
    
    .transport-badge[b-f0smjw46ux],
    .wheelchair-badge[b-f0smjw46ux] {
        font-size: 0.625rem;
        padding: 0.125rem 0.25rem;
    }
    
    .transport-badge i[b-f0smjw46ux],
    .wheelchair-badge i[b-f0smjw46ux] {
        font-size: 0.625rem;
    }
    
    .wheelchair-icon[b-f0smjw46ux] {
        font-size: 0.5rem !important;
    }
}

@media (max-width: 480px) {
    .calendar-day[b-f0smjw46ux] {
        min-height: 2.5rem;
        padding: 0.25rem;
    }
    
    .day-number[b-f0smjw46ux] {
        font-size: 0.75rem;
    }
    
    .weekday[b-f0smjw46ux] {
        padding: 0.375rem 0.125rem;
        font-size: 0.625rem;
    }
    
    .summary-row[b-f0smjw46ux] {
        flex-direction: column;
        gap: 0.5rem;
    }
    
    .summary-item[b-f0smjw46ux] {
        font-size: 0.75rem;
    }
}

/* Print Styles */
@media print {
    .calendar-grid[b-f0smjw46ux] {
        border: 2px solid #000;
    }
    
    .calendar-day[b-f0smjw46ux] {
        border-color: #000;
        background-color: transparent !important;
    }
    
    .calendar-day.present-day[b-f0smjw46ux] {
        background-color: #f0f0f0 !important;
    }
    
    .transport-badge[b-f0smjw46ux],
    .wheelchair-badge[b-f0smjw46ux] {
        background-color: #000 !important;
        color: white !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}
