@import '_content/PSC.Blazor.Components.Chartjs/PSC.Blazor.Components.Chartjs.bundle.scp.css';
@import '_content/RazorGrid/RazorGrid.a724m57zte.bundle.scp.css';

/* /Components/Layout/MainLayout.razor.rz.scp.css */
.app-layout[b-jsgjtkyp3p] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.app-navbar[b-jsgjtkyp3p] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 56px;
    z-index: 1030;
    background-color: var(--color-bg-navbar) !important;
    box-shadow: var(--shadow-navbar);
    transition: background-color var(--transition-normal);
}

.app-body[b-jsgjtkyp3p] {
    display: flex;
    flex: 1;
    margin-top: 56px;
}

.app-sidebar[b-jsgjtkyp3p] {
    position: fixed;
    top: 56px;
    left: 0;
    bottom: 0;
    background-color: var(--color-bg-sidebar);
    overflow: visible;
    transition: width var(--transition-normal), background-color var(--transition-normal), box-shadow var(--transition-normal);
    z-index: 1020;
    box-shadow: 1px 0 3px rgba(0, 0, 0, 0.04);
}

.sidebar-scroll[b-jsgjtkyp3p] {
    overflow-y: auto;
    height: 100%;
}

.app-sidebar.expanded[b-jsgjtkyp3p] {
    width: 260px;
}

.app-sidebar.collapsed[b-jsgjtkyp3p] {
    width: 60px;
}

/* Hover-expand: collapsed sidebar overlays content when hovered.
   transition-delay on collapsed state keeps sidebar open briefly after mouse leaves,
   giving the user time to move the cursor into the expanded area. */
@media (min-width: 769px) {
    .app-sidebar.collapsed[b-jsgjtkyp3p] {
        transition-delay: 0.3s;
    }

    .app-sidebar.collapsed:hover[b-jsgjtkyp3p] {
        width: 260px;
        box-shadow: 4px 0 12px rgba(0, 0, 0, 0.15);
        transition-delay: 0s;
    }
}

.app-content[b-jsgjtkyp3p] {
    flex: 1;
    margin-left: 60px;
    width: calc(100% - 60px);
    transition: margin-left var(--transition-normal), width var(--transition-normal), background-color var(--transition-normal);
    min-height: calc(100vh - 56px);
    background-color: var(--color-bg-body);
}

.app-sidebar.expanded ~ .app-content[b-jsgjtkyp3p] {
    margin-left: 260px;
    width: calc(100% - 260px);
}

.logo[b-jsgjtkyp3p] {
    display: block;
}

/* Logo visibility based on theme */
:global([data-theme="light"]) .logo-light[b-jsgjtkyp3p] {
    display: block;
}

:global([data-theme="light"]) .logo-dark[b-jsgjtkyp3p] {
    display: none;
}

:global([data-theme="dark"]) .logo-light[b-jsgjtkyp3p] {
    display: none;
}

:global([data-theme="dark"]) .logo-dark[b-jsgjtkyp3p] {
    display: block;
}

/* Impersonation Mode - offsets layout for the banner */
.app-layout.impersonating .app-navbar[b-jsgjtkyp3p] {
    top: 34px;
}

.app-layout.impersonating .app-body[b-jsgjtkyp3p] {
    margin-top: 90px;
}

.app-layout.impersonating .app-sidebar[b-jsgjtkyp3p] {
    top: 90px;
}

/* Focus Mode - hides navbar and sidebar for full-screen content */
.app-layout.focus-mode .app-navbar[b-jsgjtkyp3p] {
    transform: translateY(-100%);
}

.app-layout.focus-mode .app-sidebar[b-jsgjtkyp3p] {
    transform: translateX(-100%);
}

.app-layout.focus-mode .app-body[b-jsgjtkyp3p] {
    margin-top: 0;
}

.app-layout.focus-mode .app-content[b-jsgjtkyp3p] {
    margin-left: 0;
    width: 100%;
    min-height: 100vh;
}

/* Focus mode exit button - floating button in top-right corner */
.focus-mode-exit[b-jsgjtkyp3p] {
    position: fixed;
    top: 1rem;
    right: 1rem;
    z-index: 1050;
    opacity: 0.3;
    transition: opacity var(--transition-normal);
}

.focus-mode-exit:hover[b-jsgjtkyp3p] {
    opacity: 1;
}

/* Compact viewport — shrink appbar to save vertical space when zoomed */
:global(.viewport-compact) .app-navbar[b-jsgjtkyp3p] {
    height: 40px;
}

:global(.viewport-compact) .app-body[b-jsgjtkyp3p] {
    margin-top: 40px;
}

:global(.viewport-compact) .app-sidebar[b-jsgjtkyp3p] {
    top: 40px;
}

:global(.viewport-compact) .app-content[b-jsgjtkyp3p] {
    min-height: calc(100vh - 40px);
}

:global(.viewport-compact) .app-layout.impersonating .app-navbar[b-jsgjtkyp3p] {
    top: 34px;
}

:global(.viewport-compact) .app-layout.impersonating .app-body[b-jsgjtkyp3p] {
    margin-top: 74px;
}

:global(.viewport-compact) .app-layout.impersonating .app-sidebar[b-jsgjtkyp3p] {
    top: 74px;
}

/* Narrow viewport — even more compact */
:global(.viewport-narrow) .app-navbar[b-jsgjtkyp3p] {
    height: 36px;
}

:global(.viewport-narrow) .app-body[b-jsgjtkyp3p] {
    margin-top: 36px;
}

:global(.viewport-narrow) .app-sidebar[b-jsgjtkyp3p] {
    top: 36px;
}

:global(.viewport-narrow) .app-content[b-jsgjtkyp3p] {
    min-height: calc(100vh - 36px);
}

:global(.viewport-narrow) .app-layout.impersonating .app-navbar[b-jsgjtkyp3p] {
    top: 34px;
}

:global(.viewport-narrow) .app-layout.impersonating .app-body[b-jsgjtkyp3p] {
    margin-top: 70px;
}

:global(.viewport-narrow) .app-layout.impersonating .app-sidebar[b-jsgjtkyp3p] {
    top: 70px;
}

/* Responsive */
@media (max-width: 768px) {
    .app-sidebar[b-jsgjtkyp3p] {
        transform: translateX(-100%);
    }

    .app-sidebar.expanded[b-jsgjtkyp3p] {
        transform: translateX(0);
        width: 260px;
    }

    .app-content[b-jsgjtkyp3p] {
        margin-left: 0 !important;
        width: 100% !important;
    }

    /* Account pages on mobile: show icon-only sidebar instead of hiding */
    .app-layout.account-page .app-sidebar[b-jsgjtkyp3p],
    .app-layout.account-page .app-sidebar.expanded[b-jsgjtkyp3p] {
        transform: translateX(0);
        width: 60px;
    }

    .app-layout.account-page .app-content[b-jsgjtkyp3p] {
        margin-left: 60px !important;
        width: calc(100% - 60px) !important;
    }
}

#blazor-error-ui[b-jsgjtkyp3p] {
    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-jsgjtkyp3p] {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
/* NavMenu styles are defined globally in theme.css for proper specificity */
/* /Components/Layout/NavMenuField.razor.rz.scp.css */
.nav-item[b-ql6biz2b65]  .nav-icon {
    margin-right: 0.75rem;
    font-size: 1.25rem;
}

.nav-item[b-ql6biz2b65] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-ql6biz2b65] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-ql6biz2b65] {
        padding-bottom: 1rem;
    }

    .nav-item[b-ql6biz2b65]  .nav-link {
        color: inherit;
        background: none;
        border: none;
        border-radius: var(--radius-md);
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
        opacity: 0.85;
        transition: background-color var(--transition-fast), opacity var(--transition-fast);
    }

.nav-item[b-ql6biz2b65]  a.active {
    background-color: var(--color-primary);
    color: var(--color-text-inverse);
    opacity: 1;
}

.nav-item[b-ql6biz2b65]  .nav-link:hover {
    background-color: var(--color-hover-overlay);
    opacity: 1;
}
/* /Components/Pages/Assignments/Dialogs/CrewOrganizationDialog.razor.rz.scp.css */
.crew-org-overlay[b-o8uolww25d] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1080;
}

.crew-org-dialog[b-o8uolww25d] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 900px;
    max-width: 95vw;
    height: 100%;
    max-height: 100%;
    background: var(--color-bg-surface);
    border-radius: 8px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
    z-index: 1090;
    display: flex;
    flex-direction: column;
}

/* Once JS owns positioning via top/left, drop the centering transform permanently
   (otherwise it re-applies on drag end and snaps the dialog back by half its size). */
.crew-org-dialog.dragged[b-o8uolww25d] {
    transform: none;
}

/* During active drag/resize, disable transitions */
.crew-org-dialog.interacting[b-o8uolww25d] {
    transition: none !important;
}

.crew-org-header.modal-draggable[b-o8uolww25d] {
    cursor: move;
    user-select: none;
}

/* Resize handles — invisible but interactive. JS appends these to the dialog element,
   so they don't carry this component's scoped attribute; ::deep targets them. */
[b-o8uolww25d] .resize-handle {
    position: absolute;
    z-index: 1;
    background: transparent;
}

[b-o8uolww25d] .resize-handle-n,
[b-o8uolww25d] .resize-handle-s {
    left: 12px;
    right: 12px;
    height: 8px;
    cursor: ns-resize;
}

[b-o8uolww25d] .resize-handle-n { top: -4px; }
[b-o8uolww25d] .resize-handle-s { bottom: -4px; }

[b-o8uolww25d] .resize-handle-e,
[b-o8uolww25d] .resize-handle-w {
    top: 12px;
    bottom: 12px;
    width: 8px;
    cursor: ew-resize;
}

[b-o8uolww25d] .resize-handle-e { right: -4px; }
[b-o8uolww25d] .resize-handle-w { left: -4px; }

[b-o8uolww25d] .resize-handle-nw,
[b-o8uolww25d] .resize-handle-ne,
[b-o8uolww25d] .resize-handle-sw,
[b-o8uolww25d] .resize-handle-se {
    width: 12px;
    height: 12px;
}

[b-o8uolww25d] .resize-handle-nw { top: -4px; left: -4px; cursor: nwse-resize; }
[b-o8uolww25d] .resize-handle-ne { top: -4px; right: -4px; cursor: nesw-resize; }
[b-o8uolww25d] .resize-handle-sw { bottom: -4px; left: -4px; cursor: nesw-resize; }
[b-o8uolww25d] .resize-handle-se { bottom: -4px; right: -4px; cursor: nwse-resize; }

.crew-org-header[b-o8uolww25d] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--color-border);
    background: var(--color-bg-header);
    border-radius: 8px 8px 0 0;
}

.crew-org-body[b-o8uolww25d] {
    flex: 1;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.suggestion-banner[b-o8uolww25d] {
    display: flex;
    align-items: center;
    padding: 0.75rem 1rem;
    background: var(--color-warning-bg);
    border-bottom: 1px solid var(--color-warning);
    color: var(--color-warning);
}

.crew-org-content[b-o8uolww25d] {
    display: flex;
    flex: 1;
    overflow: hidden;
}

.unassigned-panel[b-o8uolww25d] {
    width: 40%;
    display: flex;
    flex-direction: column;
    border-right: 1px solid var(--color-border);
    background: var(--color-bg-muted);
    transition: box-shadow 0.15s;
}

.unassigned-panel.drag-over[b-o8uolww25d] {
    box-shadow: inset 0 0 0 3px var(--color-focus-ring);
    background: var(--color-hover-overlay);
}

.crews-panel[b-o8uolww25d] {
    width: 60%;
    display: flex;
    flex-direction: column;
}

.panel-header[b-o8uolww25d] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--color-border-light);
    background: var(--color-bg-surface);
}

.employee-list[b-o8uolww25d] {
    flex: 1;
    overflow-y: auto;
    padding: 0;
}

.employee-item[b-o8uolww25d] {
    display: flex;
    align-items: center;
    padding: 0.5rem 1rem;
    border-bottom: 1px solid var(--color-border-light);
    cursor: grab;
    transition: all 0.15s;
    background: var(--color-bg-surface);
}

.employee-item:hover[b-o8uolww25d] {
    background-color: var(--color-bg-selected);
}

.employee-item:active[b-o8uolww25d] {
    cursor: grabbing;
    background-color: var(--color-bg-hover);
}

.employee-info[b-o8uolww25d] {
    flex: 1;
    min-width: 0;
}

.employee-name[b-o8uolww25d] {
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.crews-list[b-o8uolww25d] {
    flex: 1;
    overflow-y: auto;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.crew-group[b-o8uolww25d] {
    border: 2px dashed var(--color-border);
    border-radius: 8px;
    background: var(--color-bg-surface);
    transition: all 0.2s;
}

.crew-group.drag-over[b-o8uolww25d] {
    border-color: var(--color-primary);
    background: var(--color-hover-overlay);
    box-shadow: 0 0 0 3px var(--color-focus-ring);
}

.crew-group.reference[b-o8uolww25d] {
    border-style: solid;
    border-color: var(--color-border-light);
    background: var(--color-bg-muted);
}

.reference-foreman[b-o8uolww25d] {
    font-weight: 500;
    padding: 0.25rem 0;
}

.member-item.reference-member[b-o8uolww25d] {
    background: transparent;
    color: var(--color-text-muted);
    font-style: italic;
}

.crew-header[b-o8uolww25d] {
    display: flex;
    gap: 0.75rem;
    align-items: flex-end;
    padding: 0.75rem;
    border-bottom: 1px solid var(--color-border-light);
    background: var(--color-bg-header);
    border-radius: 6px 6px 0 0;
}

.crew-foreman[b-o8uolww25d] {
    flex: 1;
}

.crew-foreman-name[b-o8uolww25d] {
    font-weight: 500;
    padding: 0.25rem 0;
}

.crew-foreman-hint[b-o8uolww25d] {
    padding: 0.25rem 0;
}

.crew-members[b-o8uolww25d] {
    min-height: 60px;
    padding: 0.5rem;
}

.member-item[b-o8uolww25d] {
    display: flex;
    align-items: center;
    padding: 0.375rem 0.5rem;
    border-radius: 4px;
    background: var(--color-bg-hover);
    margin-bottom: 0.375rem;
    font-size: 0.875rem;
}

.member-item:last-child[b-o8uolww25d] {
    margin-bottom: 0;
}

.member-item[draggable="true"][b-o8uolww25d] {
    cursor: grab;
}

.member-item[draggable="true"]:active[b-o8uolww25d] {
    cursor: grabbing;
}

/* Clickable outline star that promotes a member to crew lead. */
.star-btn[b-o8uolww25d] {
    border: none;
    background: transparent;
    padding: 0 0.375rem 0 0;
    line-height: 1;
    color: var(--color-text-muted);
    cursor: pointer;
}

.star-btn:hover[b-o8uolww25d] {
    color: var(--color-warning);
}

.star-spacer[b-o8uolww25d] {
    display: inline-block;
    width: 1.375rem;
}

/* Crew lead shown in the member list — visually distinct from movable members. */
.member-item.member-lead[b-o8uolww25d] {
    background: var(--color-bg-header);
    font-weight: 500;
}

/* Members already assigned to the project (reassigned, not created). */
.member-item.member-existing[b-o8uolww25d] {
    border: 1px dashed var(--color-border);
}

.drop-hint[b-o8uolww25d] {
    color: var(--color-text-muted);
}

.crew-count[b-o8uolww25d] {
    padding: 0.5rem 0.75rem;
    background: var(--color-bg-header);
    border-top: 1px solid var(--color-border-light);
    font-size: 0.75rem;
    color: var(--color-text-muted);
    border-radius: 0 0 6px 6px;
}

.crew-org-footer[b-o8uolww25d] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--color-border);
    background: var(--color-bg-header);
    border-radius: 0 0 8px 8px;
}

.summary[b-o8uolww25d] {
    font-size: 0.875rem;
}

@media (max-width: 768px) {
    .crew-org-dialog[b-o8uolww25d] {
        width: 98%;
        max-height: 100%;
    }

    .crew-org-content[b-o8uolww25d] {
        flex-direction: column;
    }

    .unassigned-panel[b-o8uolww25d],
    .crews-panel[b-o8uolww25d] {
        width: 100%;
        border-right: none;
    }

    .unassigned-panel[b-o8uolww25d] {
        border-bottom: 1px solid var(--color-border);
        max-height: 40%;
    }

    .crews-panel[b-o8uolww25d] {
        flex: 1;
    }
}
/* /Components/Pages/Assignments/Dialogs/ProjectPickerDialog.razor.rz.scp.css */
.picker-dialog-overlay[b-ieh10esku2] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1080;
}

.picker-dialog[b-ieh10esku2] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 450px;
    max-width: 95vw;
    max-height: 80vh;
    background: var(--color-bg-surface);
    border-radius: 8px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
    z-index: 1090;
    display: flex;
    flex-direction: column;
}

.picker-dialog-header[b-ieh10esku2] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--color-border);
}

.picker-dialog-body[b-ieh10esku2] {
    padding: 1rem 1.25rem;
    flex: 1;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.picker-list[b-ieh10esku2] {
    flex: 1;
    overflow-y: auto;
    margin: 0 -1.25rem;
    max-height: 400px;
}

.picker-item[b-ieh10esku2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1.25rem;
    border-bottom: 1px solid var(--color-border-light);
    cursor: pointer;
    transition: background-color 0.15s;
}

.picker-item:hover[b-ieh10esku2] {
    background-color: var(--color-bg-hover);
}

.picker-item.selected[b-ieh10esku2] {
    background-color: var(--color-bg-selected);
}

.picker-item-info[b-ieh10esku2] {
    flex: 1;
    min-width: 0;
}

.picker-item-name[b-ieh10esku2] {
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.picker-dialog-footer[b-ieh10esku2] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--color-border);
    background: var(--color-bg-header);
}

@media (max-width: 576px) {
    .picker-dialog[b-ieh10esku2] {
        width: 98%;
    }
}
/* /Components/Pages/Assignments/Dialogs/ScheduleBulkEditPanel.razor.rz.scp.css */
.bulk-edit-overlay[b-vlai10a0ps] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3);
    z-index: 1060;
}

.bulk-edit-panel[b-vlai10a0ps] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 400px;
    max-width: 95vw;
    background: var(--color-bg-surface);
    border-radius: 8px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
    z-index: 1070;
    display: flex;
    flex-direction: column;
}

.bulk-edit-header[b-vlai10a0ps] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--color-border);
}

.bulk-edit-content[b-vlai10a0ps] {
    padding: 1.25rem;
    max-height: 60vh;
    overflow-y: auto;
}

.bulk-edit-field[b-vlai10a0ps] {
    padding: 0.75rem;
    background: var(--color-bg-muted);
    border-radius: 6px;
    margin-bottom: 0.75rem;
}

.bulk-edit-field:last-child[b-vlai10a0ps] {
    margin-bottom: 0;
}

.bulk-edit-field .field-inputs[b-vlai10a0ps] {
    padding-left: 1.5rem;
}

.bulk-edit-summary[b-vlai10a0ps] {
    padding: 0.75rem 1.25rem;
    background: var(--color-bg-muted);
    border-top: 1px solid var(--color-border);
    font-size: 0.875rem;
}

.bulk-edit-footer[b-vlai10a0ps] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--color-border);
}

/* Date picker button styling */
.date-picker-btn[b-vlai10a0ps] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.bulk-edit-header.draggable-header[b-vlai10a0ps] {
    cursor: move;
    user-select: none;
}

.bulk-edit-panel.interacting[b-vlai10a0ps] {
    transition: none !important;
}

/* Sticky once the user starts dragging — see ScheduleEditAssignmentsDialog.razor.css for
   the full explanation. */
.bulk-edit-panel.dragged[b-vlai10a0ps] {
    transform: none !important;
}
/* /Components/Pages/Assignments/Dialogs/ScheduleCreateAssignmentsDialog.razor.rz.scp.css */
.create-dialog-overlay[b-np27qigr0d] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3);
    z-index: 1060;
}

.create-dialog[b-np27qigr0d] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 800px;
    max-width: 95vw;
    max-height: 90vh;
    background: var(--color-bg-surface);
    border-radius: 8px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
    z-index: 1070;
    display: flex;
    flex-direction: column;
}

.create-dialog-header[b-np27qigr0d] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--color-border);
}

.create-dialog-body[b-np27qigr0d] {
    display: flex;
    flex: 1;
    overflow: hidden;
}

.selection-panel[b-np27qigr0d] {
    width: 50%;
    display: flex;
    flex-direction: column;
    border-right: 1px solid var(--color-border);
}

.selection-header[b-np27qigr0d] {
    padding: 1rem;
    border-bottom: 1px solid var(--color-border-light);
}

.selection-list[b-np27qigr0d] {
    flex: 1;
    overflow-y: auto;
    padding: 0;
}

.selection-item[b-np27qigr0d] {
    display: flex;
    align-items: center;
    padding: 0.5rem 1rem;
    border-bottom: 1px solid var(--color-border-light);
    cursor: pointer;
    transition: background-color 0.15s;
}

.selection-item:hover[b-np27qigr0d] {
    background-color: var(--color-bg-hover);
}

.selection-item.selected[b-np27qigr0d] {
    background-color: var(--color-bg-selected);
}

.selection-item .item-info[b-np27qigr0d] {
    flex: 1;
    min-width: 0;
}

.selection-item .item-name[b-np27qigr0d] {
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.selection-footer[b-np27qigr0d] {
    padding: 0.75rem 1rem;
    background: var(--color-bg-header);
    border-top: 1px solid var(--color-border);
    font-size: 0.875rem;
    color: var(--color-text-muted);
}

.details-panel[b-np27qigr0d] {
    width: 50%;
    padding: 1.25rem;
    overflow-y: auto;
}

.create-dialog-footer[b-np27qigr0d] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--color-border);
    background: var(--color-bg-header);
}

/* Date picker button styling */
.date-picker-btn[b-np27qigr0d] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

/* Project selector panel (for Employee grouping) */
.project-selector-panel[b-np27qigr0d] {
    width: 300px;
    padding: 1.25rem;
    background: var(--color-bg-muted);
    border-right: 1px solid var(--color-border);
    display: flex;
    flex-direction: column;
}

.selected-project-card[b-np27qigr0d] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem;
    background: var(--color-bg-surface);
    border: 1px solid var(--color-border);
    border-radius: 0.375rem;
}

.selected-project-card .project-info[b-np27qigr0d] {
    flex: 1;
    min-width: 0;
}

.selected-project-card .project-name[b-np27qigr0d] {
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (max-width: 768px) {
    .create-dialog[b-np27qigr0d] {
        width: 98%;
        max-height: 95vh;
    }

    .create-dialog-body[b-np27qigr0d] {
        flex-direction: column;
    }

    .selection-panel[b-np27qigr0d],
    .details-panel[b-np27qigr0d],
    .project-selector-panel[b-np27qigr0d] {
        width: 100%;
        border-right: none;
    }

    .selection-panel[b-np27qigr0d] {
        border-bottom: 1px solid var(--color-border);
        max-height: 50%;
    }

    .project-selector-panel[b-np27qigr0d] {
        border-bottom: 1px solid var(--color-border);
    }
}
/* /Components/Pages/Assignments/Dialogs/ScheduleEditAssignmentsDialog.razor.rz.scp.css */
.edit-dialog-overlay[b-o2abh6vuwl] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1040;
}

.edit-dialog[b-o2abh6vuwl] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 95%;
    max-width: 1500px;
    max-height: 90vh;
    background: var(--color-bg-surface);
    border-radius: 8px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
    z-index: 1050;
    display: flex;
    flex-direction: column;
}

.edit-dialog-header[b-o2abh6vuwl] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.5rem;
    border-bottom: 1px solid var(--color-border);
}

.header-info[b-o2abh6vuwl] {
    display: flex;
    flex-direction: column;
}

.edit-dialog-toolbar[b-o2abh6vuwl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    background: var(--color-bg-header);
    border-bottom: 1px solid var(--color-border);
}

.edit-dialog-content[b-o2abh6vuwl] {
    flex: 1;
    overflow: auto;
    padding: 0;
    min-height: 300px;
    max-height: calc(90vh - 220px);
}

.edit-dialog-content .table[b-o2abh6vuwl] {
    margin-bottom: 0;
}

.edit-dialog-content .table thead th[b-o2abh6vuwl] {
    position: sticky;
    top: 0;
    background: var(--color-bg-surface);
    z-index: 10;
    border-top: none;
    font-weight: 600;
    font-size: 0.875rem;
    white-space: nowrap;
    padding: 0.75rem 0.5rem;
}

.edit-dialog-content .table tbody td[b-o2abh6vuwl] {
    vertical-align: middle;
    padding: 0.5rem;
}

/* Checkbox column - narrower with left padding */
.checkbox-col[b-o2abh6vuwl] {
    width: 32px;
    min-width: 32px;
    max-width: 32px;
    padding-left: 1rem !important;
}

/* Modified indicator column - narrow */
.modified-col[b-o2abh6vuwl] {
    width: 24px;
    min-width: 24px;
    max-width: 24px;
    text-align: center;
}

/* Name column - resizable */
.name-col[b-o2abh6vuwl] {
    min-width: 100px;
    max-width: 500px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Crew grouping: members hang-indent under their foreman. */
.name-col.crew-member-cell[b-o2abh6vuwl] {
    padding-left: 22px;
}

.crew-header-row td[b-o2abh6vuwl] {
    background: var(--color-bg-muted, #f1f3f5);
    padding-top: 6px;
    padding-bottom: 6px;
}

/* Week navigator (By Week view) */
.edit-dialog-weeknav[b-o2abh6vuwl] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 0.4rem 1.5rem;
    background: var(--color-bg-header);
    border-bottom: 1px solid var(--color-border);
}

.edit-dialog-weeknav .week-label[b-o2abh6vuwl] {
    font-weight: 600;
    font-size: 0.875rem;
    min-width: 180px;
    text-align: center;
}

/* Grouped view: summary + expandable child rows */
.group-summary-row[b-o2abh6vuwl] {
    cursor: pointer;
}

.group-summary-row td[b-o2abh6vuwl] {
    background: var(--color-bg-muted, #f1f3f5);
    padding-top: 6px;
    padding-bottom: 6px;
}

.group-summary-row:hover td[b-o2abh6vuwl] {
    background: var(--color-bg-hover, #e9ecef);
}

.edit-dialog-content .table tbody tr.child-row td[b-o2abh6vuwl] {
    background: var(--color-bg-surface);
}

.row-saving[b-o2abh6vuwl] {
    opacity: 0.7;
}

/* Project pick button in the name column (Employee view) */
.project-pick-btn[b-o2abh6vuwl] {
    color: var(--color-primary);
    text-decoration: none;
    white-space: nowrap;
}

.project-pick-btn:hover[b-o2abh6vuwl] {
    text-decoration: underline;
}

.name-col.resizable[b-o2abh6vuwl] {
    position: relative;
}

.name-col .th-content[b-o2abh6vuwl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.name-col .resize-handle[b-o2abh6vuwl] {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 6px;
    cursor: col-resize;
    background: transparent;
    transition: background-color 0.15s;
}

.name-col .resize-handle:hover[b-o2abh6vuwl],
.edit-dialog.resizing .name-col .resize-handle[b-o2abh6vuwl] {
    background: rgba(0, 18, 107, 0.3);
}

/* Disable text selection during resize */
.edit-dialog.resizing[b-o2abh6vuwl] {
    user-select: none;
    cursor: col-resize;
}

.edit-dialog-content .table tbody tr.table-warning[b-o2abh6vuwl] {
    background-color: rgba(255, 193, 7, 0.15) !important;
}

.edit-dialog-content .table tbody tr.table-warning td[b-o2abh6vuwl] {
    border-color: rgba(255, 193, 7, 0.3);
}

.edit-dialog-content .form-control-sm[b-o2abh6vuwl],
.edit-dialog-content .form-select-sm[b-o2abh6vuwl] {
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
}

/* Date picker button styling */
.date-picker-btn[b-o2abh6vuwl] {
    font-size: 0.875rem;
    color: var(--color-primary);
    text-decoration: none;
    white-space: nowrap;
}

.date-picker-btn:hover[b-o2abh6vuwl] {
    color: var(--color-primary-hover);
    text-decoration: underline;
}

.date-picker-btn i[b-o2abh6vuwl] {
    font-size: 0.75rem;
}

.edit-dialog-footer[b-o2abh6vuwl] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--color-border);
    background: var(--color-bg-header);
}

/* Delete confirmation dialog */
.delete-confirm-overlay[b-o2abh6vuwl] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1060;
}

.delete-confirm-dialog[b-o2abh6vuwl] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: var(--color-bg-surface);
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
    z-index: 1061;
    min-width: 350px;
    max-width: 450px;
}

.delete-confirm-content[b-o2abh6vuwl] {
    padding: 1.5rem;
    text-align: center;
}

.delete-confirm-footer[b-o2abh6vuwl] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--color-border);
    background: var(--color-bg-header);
    border-radius: 0 0 8px 8px;
}

/* Responsive adjustments */
@media (max-width: 992px) {
    .edit-dialog[b-o2abh6vuwl] {
        width: 98%;
        max-height: 95vh;
    }

    .edit-dialog-content[b-o2abh6vuwl] {
        max-height: calc(95vh - 220px);
    }

    .edit-dialog-content .table thead th[b-o2abh6vuwl],
    .edit-dialog-content .table tbody td[b-o2abh6vuwl] {
        font-size: 0.8rem;
        padding: 0.4rem;
    }
}

.edit-dialog-header.draggable-header[b-o2abh6vuwl] {
    cursor: move;
    user-select: none;
}

.edit-dialog.interacting[b-o2abh6vuwl] {
    transition: none !important;
}

/* Sticky once the user starts dragging — JS owns positioning via top/left from this point on,
   so the centering transform must stay cleared (otherwise the dialog snaps by (-50%, -50%)
   on drag end). The `dragged` class is removed in modal-interact.js dispose() when the modal
   closes, restoring centering for the next open. */
.edit-dialog.dragged[b-o2abh6vuwl] {
    transform: none !important;
}
/* /Components/Pages/Assignments/Dialogs/ScheduleFilterDrawer.razor.rz.scp.css */
.filter-modal-overlay[b-2885a6xon0] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 10000;
}

.filter-modal[b-2885a6xon0] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 760px;
    max-height: 85vh;
    background-color: var(--color-bg-surface);
    border-radius: 8px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.24);
    z-index: 10001;
    display: flex;
    flex-direction: column;
}

.filter-modal-header[b-2885a6xon0] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 20px;
    border-bottom: 1px solid var(--color-border);
    flex-shrink: 0;
}

.filter-modal-header h3[b-2885a6xon0] {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 500;
}

.filter-modal-content[b-2885a6xon0] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 24px;
    padding: 20px;
    overflow-y: auto;
    flex: 1;
}

.full-width[b-2885a6xon0] {
    grid-column: 1 / -1;
}

.section-heading[b-2885a6xon0] {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--color-text-muted);
    margin-bottom: 8px;
}

.section-heading.job-heading[b-2885a6xon0] {
    color: #1971c2;
}

.section-heading.employee-heading[b-2885a6xon0] {
    color: #2f9e44;
}

.filter-column[b-2885a6xon0] {
    display: flex;
    flex-direction: column;
}

.filter-column.disabled[b-2885a6xon0] {
    opacity: 0.5;
    pointer-events: none;
}

.filter-group[b-2885a6xon0] {
    margin-bottom: 16px;
}

.filter-group.disabled[b-2885a6xon0] {
    opacity: 0.5;
    pointer-events: none;
}

.filter-group .form-label[b-2885a6xon0] {
    font-size: 0.875rem;
    font-weight: 500;
    margin-bottom: 0.375rem;
    color: var(--color-text-primary);
}

.filter-divider[b-2885a6xon0] {
    border: none;
    border-top: 1px solid var(--color-border);
    margin: 12px 0 16px;
}

.footer-section[b-2885a6xon0] {
    display: flex;
    flex-direction: column;
}

.footer-section-heading[b-2885a6xon0] {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--color-text-muted);
    margin-bottom: 8px;
}

.clear-filters-btn[b-2885a6xon0] {
    background: none;
    border: none;
    color: var(--color-accent);
    font-size: 0.875rem;
    cursor: pointer;
    padding: 4px 8px;
}

.clear-filters-btn:hover[b-2885a6xon0] {
    text-decoration: underline;
}

.close-btn[b-2885a6xon0] {
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-text-muted);
    border-radius: 4px;
}

.close-btn:hover[b-2885a6xon0] {
    background-color: var(--color-hover-overlay);
}

.form-check[b-2885a6xon0] {
    margin-bottom: 0.5rem;
}

.form-check-label[b-2885a6xon0] {
    font-size: 0.875rem;
}
/* /Components/Pages/Assignments/ScheduleGrid.razor.rz.scp.css */
.schedule-container[b-nkyikcocc0] {
    display: flex;
    flex-direction: column;
    height: calc(100vh - 120px + var(--compact-height-bonus, 0px));
    background: var(--color-bg-surface);
    position: relative;
}

.focus-mode .schedule-container[b-nkyikcocc0] {
    height: calc(100vh - 40px + var(--compact-height-bonus, 0px));
}

/* Header Bar */
.schedule-header[b-nkyikcocc0] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 16px;
    border-bottom: 2px solid var(--color-accent);
    background: var(--color-bg-surface);
}

.header-left[b-nkyikcocc0],
.header-right[b-nkyikcocc0] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.header-center[b-nkyikcocc0] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.date-range-text[b-nkyikcocc0] {
    font-size: 16px;
    font-weight: 500;
    color: var(--color-accent);
    min-width: 280px;
    text-align: center;
}

.view-select[b-nkyikcocc0] {
    min-width: 150px;
}

/* Date-jump calendar popup (anchored to the calendar button) */
.date-picker-overlay[b-nkyikcocc0] {
    position: fixed;
    inset: 0;
    z-index: 1055;
}

.date-picker-popup[b-nkyikcocc0] {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    margin-top: 4px;
    z-index: 1060;
    width: 280px;
    background: var(--color-bg-elevated);
    border: 1px solid var(--color-border);
    border-radius: 0.375rem;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    padding: 0.5rem;
}

.calendar-header[b-nkyikcocc0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 4px;
}

.calendar-month-label[b-nkyikcocc0] {
    font-size: 14px;
    font-weight: 600;
    color: var(--color-text-primary);
}

.calendar-grid[b-nkyikcocc0] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
}

.calendar-weekday[b-nkyikcocc0] {
    font-size: 11px;
    font-weight: 600;
    color: var(--color-text-muted);
    text-align: center;
    padding: 2px 0;
}

.calendar-day[b-nkyikcocc0] {
    border: none;
    background: transparent;
    color: var(--color-text-primary);
    font-size: 13px;
    text-align: center;
    padding: 4px 0;
    border-radius: 4px;
    cursor: pointer;
}

.calendar-day:hover[b-nkyikcocc0] {
    background: var(--color-bg-hover);
}

.calendar-day.outside[b-nkyikcocc0] {
    color: var(--color-text-muted);
    opacity: 0.6;
}

.calendar-day.in-view[b-nkyikcocc0] {
    background: color-mix(in srgb, var(--color-accent) 15%, transparent);
}

.calendar-day.in-view:hover[b-nkyikcocc0] {
    background: var(--color-bg-hover);
}

.calendar-day.today[b-nkyikcocc0] {
    outline: 1px solid var(--color-accent);
    outline-offset: -1px;
    font-weight: 600;
}

.calendar-footer[b-nkyikcocc0] {
    display: flex;
    justify-content: flex-end;
    margin-top: 4px;
}

/* Control Bar */
.schedule-controls[b-nkyikcocc0] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border-bottom: 1px solid var(--color-border);
    background: var(--color-bg-surface);
}

.groupby-select[b-nkyikcocc0] {
    min-width: 180px;
}

.search-field[b-nkyikcocc0] {
    flex: 1;
    max-width: 300px;
}

/* Main Content Area - Single scrollable container */
.schedule-content[b-nkyikcocc0] {
    flex: 1;
    overflow: hidden;
    display: flex;
}

/* Single scrollable wrapper for the entire table */
.schedule-table-wrapper[b-nkyikcocc0] {
    flex: 1;
    overflow: auto;
    position: relative;
}

/* Table structure */
.schedule-table[b-nkyikcocc0] {
    border-collapse: separate;
    border-spacing: 0;
    min-width: max-content;
}

/* Sticky header */
.schedule-table thead[b-nkyikcocc0] {
    position: sticky;
    top: 0;
    z-index: 10;
}

.schedule-table thead th[b-nkyikcocc0] {
    background: var(--color-bg-surface);
}

/* Sticky left column - corner cell */
.schedule-table .corner-cell[b-nkyikcocc0] {
    position: sticky;
    left: 0;
    z-index: 11;
    background: var(--color-bg-surface);
    width: 300px;
    min-width: 300px;
    max-width: 300px;
    border-right: 2px solid var(--color-accent);
    border-bottom: 2px solid var(--color-accent);
}

/* Sticky left column - data cells */
.schedule-table .left-cell[b-nkyikcocc0] {
    position: sticky;
    left: 0;
    z-index: 5;
    background: var(--color-bg-surface);
    width: 300px;
    min-width: 300px;
    max-width: 300px;
    border-right: 2px solid var(--color-accent);
    border-bottom: 1px solid var(--color-border);
}

.schedule-table .left-cell.group-header[b-nkyikcocc0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: var(--color-bg-muted);
    font-weight: 600;
    cursor: pointer;
    padding: 1.5px 8px;
    min-height: 30px;
}

.schedule-table tr.group-header-row:hover .left-cell.group-header[b-nkyikcocc0] {
    background: var(--color-bg-hover);
}

.group-header-content[b-nkyikcocc0] {
    display: flex;
    align-items: center;
    flex: 1;
    min-width: 0;
}

.edit-group-btn[b-nkyikcocc0],
.info-group-btn[b-nkyikcocc0] {
    opacity: 0;
    transition: opacity 0.15s ease;
    color: var(--color-accent);
    flex-shrink: 0;
}

.schedule-table tr.group-header-row:hover .edit-group-btn[b-nkyikcocc0],
.schedule-table tr.group-header-row:hover .info-group-btn[b-nkyikcocc0] {
    opacity: 1;
}

.edit-group-btn:hover[b-nkyikcocc0],
.info-group-btn:hover[b-nkyikcocc0] {
    color: var(--color-primary);
}

.expand-icon[b-nkyikcocc0] {
    margin-right: 4px;
    color: var(--color-accent);
}

.group-name[b-nkyikcocc0] {
    font-size: 13px;
    color: var(--color-accent);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.schedule-table .left-cell.assignment-cell-left[b-nkyikcocc0] {
    padding: 4px 8px 4px 24px;
    min-height: 30px;
    display: flex;
    align-items: center;
}

.secondary-name[b-nkyikcocc0] {
    font-size: 12px;
    color: var(--color-text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Crew grouping (Group by Job): foreman leads, members hang-indent beneath. */
.schedule-table .left-cell.assignment-cell-left.crew-member-cell[b-nkyikcocc0] {
    /* base padding-left is 24px; hang-indent members deeper under their foreman */
    padding-left: 44px;
}

.secondary-name.crew-lead[b-nkyikcocc0] {
    font-weight: 600;
}

.crew-lead-tag[b-nkyikcocc0] {
    font-weight: 400;
    color: var(--color-text-muted);
}

/* Stand-in header row for a foreman not assigned to this job (no bar). */
.schedule-table tr.assignment-row.crew-header-row td.day-cell.assignment-cell[b-nkyikcocc0] {
    background: transparent;
}

/* Week row header cells */
.schedule-table .week-row th[b-nkyikcocc0] {
    border-bottom: 1px solid var(--color-border);
}

.schedule-table .week-label[b-nkyikcocc0] {
    font-size: 12px;
    font-weight: 600;
    color: var(--color-accent);
    background: var(--color-bg-muted);
    padding: 4px;
    border-right: 1px solid var(--color-border);
    text-align: center;
    vertical-align: middle;
}

/* Month row header cells */
.schedule-table .month-row th[b-nkyikcocc0] {
    border-bottom: 1px solid var(--color-border);
}

.schedule-table .month-label[b-nkyikcocc0] {
    font-size: 11px;
    color: var(--color-text-muted);
    padding: 2px;
    background: var(--color-bg-surface);
    text-align: center;
    vertical-align: middle;
}

/* Day abbreviation row */
.schedule-table .dayabbrev-row th[b-nkyikcocc0] {
    border-bottom: 1px solid var(--color-border);
}

/* Day number row */
.schedule-table .daynum-row th[b-nkyikcocc0] {
    border-bottom: 2px solid var(--color-accent);
}

/* Day cells in header */
.schedule-table th.day-cell[b-nkyikcocc0] {
    font-size: 11px;
    font-weight: normal;
    color: var(--color-text-primary);
    border-right: 1px solid var(--color-border-light);
    min-height: 22px;
    width: var(--day-width, 40px);
    min-width: var(--day-width, 40px);
    max-width: var(--day-width, 40px);
    text-align: center;
    vertical-align: middle;
    padding: 2px;
    background: var(--color-bg-surface);
}

.schedule-table th.day-cell.weekend[b-nkyikcocc0] {
    background: var(--color-bg-muted);
}

/* Day cells in data rows */
.schedule-table td.day-cell[b-nkyikcocc0] {
    font-size: 11px;
    color: var(--color-text-primary);
    border-right: 1px solid var(--color-border-light);
    border-bottom: 1px solid var(--color-border);
    min-height: 30px;
    height: 30px;
    width: var(--day-width, 40px);
    min-width: var(--day-width, 40px);
    max-width: var(--day-width, 40px);
    text-align: center;
    vertical-align: middle;
    padding: 0;
    background: var(--color-bg-surface);
}

.schedule-table td.day-cell.weekend[b-nkyikcocc0] {
    background: var(--color-bg-muted);
}

.schedule-table td.day-cell.group-count-cell[b-nkyikcocc0] {
    font-size: 10px;
    font-weight: 500;
    color: var(--color-accent);
    background: var(--color-bg-muted);
}

.schedule-table td.day-cell.assignment-cell[b-nkyikcocc0] {
    background: var(--color-bg-surface);
}

.schedule-table td.day-cell.assignment-cell.weekend[b-nkyikcocc0] {
    background: var(--color-bg-muted);
}

/* Assignment rows */
.schedule-table tr.assignment-row[b-nkyikcocc0] {
    position: relative;
}

.schedule-table tr.assignment-row:hover td.day-cell.assignment-cell:not(.weekend)[b-nkyikcocc0] {
    background: var(--color-bg-hover);
}

/* Assignment Bars - positioned within the row */
.assignment-bar-container[b-nkyikcocc0] {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    height: 21px;
    z-index: 4;
    left: calc(300px + (var(--start-day) - 1) * var(--day-width, 40px) + 2px);
    width: calc(var(--span-days) * var(--day-width, 40px) - 4px);
    pointer-events: auto;
}

.assignment-bar[b-nkyikcocc0] {
    width: 100%;
    height: 100%;
    border-radius: 2px;
}

.assignment-bar.color1[b-nkyikcocc0] {
    background: #1E3A8A;
}

.assignment-bar.color2[b-nkyikcocc0] {
    background: #65A30D;
}

.assignment-bar:hover[b-nkyikcocc0] {
    opacity: 0.9;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.assignment-bar.clickable[b-nkyikcocc0] {
    cursor: pointer;
}

.assignment-bar.clickable:hover[b-nkyikcocc0] {
    filter: brightness(1.1);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
}

/* Bar Hover Toolbar */
.bar-toolbar[b-nkyikcocc0] {
    position: absolute;
    top: -28px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 2px;
    background: var(--color-bg-elevated);
    border: 1px solid var(--color-border);
    border-radius: 4px;
    padding: 2px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    z-index: 10;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.15s ease;
}

.assignment-bar-container:hover .bar-toolbar[b-nkyikcocc0] {
    opacity: 1;
    pointer-events: auto;
}

.bar-toolbar[b-nkyikcocc0]::after {
    content: '';
    position: absolute;
    bottom: -6px;
    left: 50%;
    transform: translateX(-50%);
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid var(--color-bg-elevated);
}

.bar-toolbar[b-nkyikcocc0]::before {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-top: 7px solid var(--color-border);
}

.bar-toolbar-btn[b-nkyikcocc0] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border: none;
    background: transparent;
    color: var(--color-text-secondary);
    cursor: pointer;
    border-radius: 3px;
    padding: 0;
    transition: all 0.15s;
}

.bar-toolbar-btn:hover[b-nkyikcocc0] {
    background: var(--color-bg-hover);
    color: var(--color-primary);
}

.bar-toolbar-btn i[b-nkyikcocc0] {
    font-size: 14px;
}

/* Footer */
.schedule-footer[b-nkyikcocc0] {
    display: flex;
    align-items: center;
    padding: 8px 16px;
    border-top: 1px solid var(--color-border);
    background: var(--color-bg-surface);
}

.footer-text[b-nkyikcocc0] {
    font-size: 12px;
    color: var(--color-accent);
}
/* /Components/Pages/Development/Organizer/OrganizerEffortDetail.razor.rz.scp.css */
/* A writing surface, not a form. Fields are invisible until you touch them, so
   the page reads as a document and edits without ceremony. */

.org[b-tqz8gr0flx] {
    max-width: 54rem;
    margin-inline: auto;
    padding: 1.5rem clamp(1rem, 3vw, 2rem) 5rem;
}

.org-state[b-tqz8gr0flx] {
    padding: 3rem clamp(1rem, 3vw, 2rem);
    color: var(--color-text-secondary, #4a6463);
}

.org-topbar[b-tqz8gr0flx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    min-height: 1.75rem;
    margin-bottom: 1.25rem;
}

.org-back[b-tqz8gr0flx] {
    font-size: .875rem;
    color: var(--color-text-secondary, #4a6463);
    text-decoration: none;
}

.org-back:hover[b-tqz8gr0flx] {
    color: var(--color-primary, #00857c);
}

/* ---- head ---- */

.org-head[b-tqz8gr0flx] {
    margin-bottom: 2.5rem;
}

[b-tqz8gr0flx] .org-title-input {
    display: block;
    width: 100%;
    font-size: clamp(1.5rem, 4vw, 2rem);
    font-weight: 700;
    letter-spacing: -.02em;
    color: var(--color-text-primary, #1a2e2d);
    background: transparent;
    border: 0;
    border-radius: .375rem;
    padding: .25rem .5rem;
    margin-left: -.5rem;
}

[b-tqz8gr0flx] .org-title-input:hover {
    background: var(--color-bg-muted, #f1f5f5);
}

[b-tqz8gr0flx] .org-title-input:focus {
    outline: 2px solid var(--color-primary, #00857c);
    outline-offset: 0;
    background: var(--color-bg-surface, #fff);
}

.org-head-meta[b-tqz8gr0flx] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .625rem;
    margin: .5rem 0 .75rem;
}

.org-kind[b-tqz8gr0flx] {
    width: auto;
    min-width: 9rem;
}

.org-branch[b-tqz8gr0flx],
.org-pr[b-tqz8gr0flx] {
    font-size: .8125rem;
    color: var(--color-text-muted, #6b8382);
    font-family: var(--bs-font-monospace, monospace);
}

.org-pr[b-tqz8gr0flx] {
    text-decoration: none;
}

.org-pr:hover[b-tqz8gr0flx] {
    color: var(--color-primary, #00857c);
}

.org-pr-state[b-tqz8gr0flx] {
    text-transform: lowercase;
    margin-left: .35rem;
    opacity: .75;
}

[b-tqz8gr0flx] .org-notes-input {
    display: block;
    width: 100%;
    font-size: .9375rem;
    line-height: 1.55;
    color: var(--color-text-secondary, #4a6463);
    background: transparent;
    border: 0;
    border-radius: .375rem;
    padding: .35rem .5rem;
    margin-left: -.5rem;
    resize: vertical;
}

[b-tqz8gr0flx] .org-notes-input:hover {
    background: var(--color-bg-muted, #f1f5f5);
}

[b-tqz8gr0flx] .org-notes-input:focus {
    outline: 2px solid var(--color-primary, #00857c);
    background: var(--color-bg-surface, #fff);
}

/* ---- sections ---- */

.org-section-title[b-tqz8gr0flx] {
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--color-text-muted, #6b8382);
    margin: 0 0 .75rem;
}

.org-items[b-tqz8gr0flx],
.org-steplist[b-tqz8gr0flx] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.org-item[b-tqz8gr0flx] {
    border-bottom: 1px solid var(--color-border, #eef2f2);
}

/* Two lines: the title keeps a full-width line of its own, controls sit under it
   right-aligned. Everything stays reachable without opening the item. */
.org-item-row[b-tqz8gr0flx] {
    display: grid;
    grid-template-columns: 1.5rem 1fr;
    grid-template-areas:
        "disclose title"
        ".        controls";
    align-items: center;
    column-gap: .5rem;
    row-gap: .125rem;
    padding-block: .25rem;
}

.org-item-controls[b-tqz8gr0flx] {
    grid-area: controls;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: .375rem;
    padding-bottom: .25rem;
}

.org-item-open[b-tqz8gr0flx] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: .375rem;
    color: var(--color-text-muted, #6b8382);
    text-decoration: none;
}

.org-item-open:hover[b-tqz8gr0flx] {
    background: var(--color-bg-muted, #f1f5f5);
    color: var(--color-primary, #00857c);
}

.org-item-delete[b-tqz8gr0flx] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border: 0;
    border-radius: .375rem;
    background: none;
    color: var(--color-text-muted, #6b8382);
    cursor: pointer;
}

.org-item-delete:hover[b-tqz8gr0flx],
.org-item-delete:focus-visible[b-tqz8gr0flx] {
    background: var(--color-bg-muted, #f1f5f5);
    color: var(--bs-danger, #dc3545);
}

.org-disclose[b-tqz8gr0flx] {
    grid-area: disclose;
    width: 1.5rem;
    height: 1.5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background: transparent;
    color: var(--color-text-muted, #6b8382);
    border-radius: .25rem;
    padding: 0;
}

.org-disclose i[b-tqz8gr0flx] {
    transition: transform .15s ease;
    font-size: .75rem;
}

.org-disclose.is-open i[b-tqz8gr0flx] {
    transform: rotate(90deg);
}

.org-disclose-placeholder[b-tqz8gr0flx] {
    width: 1.5rem;
}

[b-tqz8gr0flx] .org-item-row > .org-line-input {
    grid-area: title;
}

[b-tqz8gr0flx] .org-line-input {
    flex: 1 1 auto;
    min-width: 0;
    font-size: .9375rem;
    color: var(--color-text-primary, #1a2e2d);
    background: transparent;
    border: 0;
    border-radius: .375rem;
    padding: .4rem .5rem;
}

[b-tqz8gr0flx] .org-line-input:hover {
    background: var(--color-bg-muted, #f1f5f5);
}

[b-tqz8gr0flx] .org-line-input:focus {
    outline: 2px solid var(--color-primary, #00857c);
    background: var(--color-bg-surface, #fff);
}

[b-tqz8gr0flx] .org-line-input::placeholder {
    color: var(--color-text-muted, #9db0af);
}

.org-status[b-tqz8gr0flx] {
    flex: 0 0 auto;
    width: 8.5rem;
}

.org-pct[b-tqz8gr0flx] {
    flex: 0 0 auto;
    width: 4.5rem;
    text-align: right;
}

/* ---- item detail ---- */

.org-item-detail[b-tqz8gr0flx] {
    padding: .5rem 0 1.25rem 2rem;
    display: grid;
    gap: 1rem;
}

.org-signoffs[b-tqz8gr0flx] {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem 2rem;
    padding: .75rem .875rem;
    background: var(--color-bg-muted, #f7fafa);
    border-radius: .5rem;
}

.org-signoff-field[b-tqz8gr0flx] {
    display: flex;
    align-items: baseline;
    gap: .5rem;
}

.org-signoff-note[b-tqz8gr0flx] {
    font-size: .75rem;
    color: var(--color-text-muted, #6b8382);
}

.org-steps-title[b-tqz8gr0flx] {
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--color-text-muted, #6b8382);
    margin: 0 0 .35rem;
}

.org-step[b-tqz8gr0flx] {
    display: flex;
    align-items: center;
    gap: .5rem;
}

.org-step-check[b-tqz8gr0flx] {
    flex: 0 0 auto;
    margin: 0;
    cursor: pointer;
}

.org-step-delete[b-tqz8gr0flx] {
    flex: 0 0 auto;
    border: 0;
    background: none;
    padding: .1rem .25rem;
    color: var(--color-text-muted, #6b8382);
    opacity: 0;
    cursor: pointer;
    transition: opacity .12s ease, color .12s ease;
}

.org-step:hover .org-step-delete[b-tqz8gr0flx],
.org-step-delete:focus-visible[b-tqz8gr0flx] {
    opacity: 1;
}

.org-step-delete:hover[b-tqz8gr0flx],
.org-step-delete:focus-visible[b-tqz8gr0flx] {
    color: var(--bs-danger, #dc3545);
}

.org-step-done[b-tqz8gr0flx]  .org-step-input {
    text-decoration: line-through;
    color: var(--color-text-muted, #9db0af);
}

[b-tqz8gr0flx] .org-step-input {
    font-size: .875rem;
}

@media (max-width: 40rem) {
    .org-status[b-tqz8gr0flx] {
        width: 6.5rem;
    }

    .org-pct[b-tqz8gr0flx] {
        width: 3.75rem;
    }

    .org-item-controls[b-tqz8gr0flx] {
        justify-content: flex-start;
    }

    [b-tqz8gr0flx] .signoff-mode {
        flex: 1 1 8rem;
        min-width: 0;
    }

    .org-item-detail[b-tqz8gr0flx] {
        padding-left: .5rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .org-disclose i[b-tqz8gr0flx] {
        transition: none;
    }
}
/* /Components/Pages/Development/Organizer/OrganizerEffortsContent.razor.rz.scp.css */
.efforts-list[b-6hiztsz95c] {
    list-style: none;
    margin: 0;
    padding: 0;
    max-width: 54rem;
}

.efforts-toolbar[b-6hiztsz95c] {
    display: flex;
    align-items: center;
    gap: .75rem;
    max-width: 54rem;
    margin-bottom: .25rem;
}

.efforts-search[b-6hiztsz95c] {
    flex: 1 1 auto;
    border-bottom: 1px solid var(--color-border, #eef2f2) !important;
    border-radius: 0 !important;
}

.efforts-kind-filter[b-6hiztsz95c] {
    flex: 0 0 auto;
    width: auto;
    font-size: .8125rem;
}

.efforts-row[b-6hiztsz95c] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: .625rem .25rem;
    border-bottom: 1px solid var(--color-border, #eef2f2);
}

.efforts-header[b-6hiztsz95c] {
    padding-top: .25rem;
    padding-bottom: .25rem;
    text-transform: uppercase;
    letter-spacing: .03em;
    font-size: .6875rem;
    color: var(--color-text-muted, #9db0af);
}

.efforts-sort[b-6hiztsz95c] {
    cursor: pointer;
    user-select: none;
}

.efforts-sort:hover[b-6hiztsz95c] {
    color: var(--color-primary, #00857c);
}

.efforts-link[b-6hiztsz95c] {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: baseline;
    gap: .625rem;
    text-decoration: none;
}

.efforts-title[b-6hiztsz95c] {
    font-size: .9375rem;
    font-weight: 600;
    color: var(--color-text-primary, #1a2e2d);
}

.efforts-link:hover .efforts-title[b-6hiztsz95c] {
    color: var(--color-primary, #00857c);
}

.efforts-kind[b-6hiztsz95c] {
    flex: 0 0 auto;
    width: 7rem;
    font-size: .75rem;
    text-transform: lowercase;
    color: var(--color-text-muted, #6b8382);
}

.efforts-header .efforts-kind[b-6hiztsz95c] {
    text-transform: uppercase;
}

.efforts-date[b-6hiztsz95c] {
    flex: 0 0 auto;
    width: 4.5rem;
    font-size: .8125rem;
    color: var(--color-text-muted, #6b8382);
    font-variant-numeric: tabular-nums;
}

.efforts-counts[b-6hiztsz95c],
.efforts-pr[b-6hiztsz95c] {
    flex: 0 0 auto;
    font-size: .8125rem;
    color: var(--color-text-muted, #6b8382);
    font-variant-numeric: tabular-nums;
}

.efforts-counts[b-6hiztsz95c] {
    width: 5rem;
}

.efforts-pr[b-6hiztsz95c] {
    width: 3.5rem;
    font-family: var(--bs-font-monospace, monospace);
}

.efforts-header .efforts-pr[b-6hiztsz95c] {
    font-family: inherit;
}

.efforts-empty-text[b-6hiztsz95c] {
    padding: 1rem .25rem;
    font-size: .8125rem;
}

.efforts-delete-cell[b-6hiztsz95c],
.efforts-delete[b-6hiztsz95c] {
    flex: 0 0 auto;
    width: 2rem;
}

.efforts-delete[b-6hiztsz95c] {
    border: 0;
    background: none;
    padding: .25rem;
    color: var(--color-text-muted, #6b8382);
    opacity: 0;
    cursor: pointer;
    transition: opacity .12s ease, color .12s ease;
}

.efforts-row:hover .efforts-delete[b-6hiztsz95c] {
    opacity: 1;
}

.efforts-delete:hover[b-6hiztsz95c],
.efforts-delete:focus-visible[b-6hiztsz95c] {
    opacity: 1;
    color: var(--bs-danger, #dc3545);
}

[b-6hiztsz95c] .org-line-input {
    flex: 1 1 auto;
    min-width: 0;
    font-size: .9375rem;
    color: var(--color-text-primary, #1a2e2d);
    background: transparent;
    border: 0;
    border-radius: .375rem;
    padding: .4rem .5rem;
}

[b-6hiztsz95c] .org-line-input:hover {
    background: var(--color-bg-muted, #f1f5f5);
}

[b-6hiztsz95c] .org-line-input:focus {
    outline: 2px solid var(--color-primary, #00857c);
    background: var(--color-bg-surface, #fff);
}

[b-6hiztsz95c] .org-line-input::placeholder {
    color: var(--color-text-muted, #9db0af);
}

.org-state[b-6hiztsz95c] {
    padding: 2rem .25rem;
    color: var(--color-text-secondary, #4a6463);
}
/* /Components/Pages/Development/Organizer/OrganizerItemDetail.razor.rz.scp.css */
/* The item page has room the effort row does not, so the same pickers get
   visible labels instead of relying on their option text. */

.org[b-zawb3fv1tf] {
    max-width: 54rem;
    margin-inline: auto;
    padding: 1.5rem clamp(1rem, 3vw, 2rem) 5rem;
}

.org-state[b-zawb3fv1tf] {
    padding: 3rem clamp(1rem, 3vw, 2rem);
    color: var(--color-text-secondary, #4a6463);
}

.org-topbar[b-zawb3fv1tf] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    min-height: 1.75rem;
    margin-bottom: 1.25rem;
}

.org-back[b-zawb3fv1tf] {
    font-size: .875rem;
    color: var(--color-text-secondary, #4a6463);
    text-decoration: none;
}

.org-back:hover[b-zawb3fv1tf] {
    color: var(--color-primary, #00857c);
}

.org-head[b-zawb3fv1tf] {
    margin-bottom: 2rem;
}

[b-zawb3fv1tf] .org-title-input {
    display: block;
    width: 100%;
    font-size: clamp(1.5rem, 4vw, 2rem);
    font-weight: 700;
    letter-spacing: -.02em;
    color: var(--color-text-primary, #1a2e2d);
    background: transparent;
    border: 0;
    border-radius: .375rem;
    padding: .25rem .5rem;
    margin-left: -.5rem;
}

[b-zawb3fv1tf] .org-title-input:hover {
    background: var(--color-bg-muted, #f1f5f5);
}

[b-zawb3fv1tf] .org-title-input:focus {
    outline: 2px solid var(--color-primary, #00857c);
    background: var(--color-bg-surface, #fff);
}

.org-head-meta[b-zawb3fv1tf] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .625rem;
    margin: .5rem 0 .75rem;
}

.org-status[b-zawb3fv1tf] {
    width: 8.5rem;
}

.org-pct[b-zawb3fv1tf] {
    width: 4.5rem;
    text-align: right;
}

[b-zawb3fv1tf] .org-notes-input {
    display: block;
    width: 100%;
    font-size: .9375rem;
    line-height: 1.55;
    color: var(--color-text-secondary, #4a6463);
    background: transparent;
    border: 0;
    border-radius: .375rem;
    padding: .35rem .5rem;
    margin-left: -.5rem;
    resize: vertical;
}

[b-zawb3fv1tf] .org-notes-input:hover {
    background: var(--color-bg-muted, #f1f5f5);
}

[b-zawb3fv1tf] .org-notes-input:focus {
    outline: 2px solid var(--color-primary, #00857c);
    background: var(--color-bg-surface, #fff);
}

.org-section[b-zawb3fv1tf] {
    margin-bottom: 2rem;
}

.org-signoffs[b-zawb3fv1tf] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 2.5rem;
    padding: .875rem;
    background: var(--color-bg-muted, #f7fafa);
    border-radius: .5rem;
}

.org-signoff-field[b-zawb3fv1tf] {
    display: flex;
    flex-direction: column;
    gap: .25rem;
}

.org-signoff-label[b-zawb3fv1tf] {
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--color-text-muted, #6b8382);
}

.org-signoff-hint[b-zawb3fv1tf] {
    font-size: .8125rem;
    color: var(--color-text-muted, #6b8382);
    margin: .5rem 0 0;
}
/* /Components/Pages/Estimating/Bids/MyEstimatingEdgeBids.razor.rz.scp.css */
.ee-page[b-9x6xr6cjiz] {
    max-width: 1400px;
}

.ee-header[b-9x6xr6cjiz] {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 1.5rem;
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #e9ecef;
}

.ee-title[b-9x6xr6cjiz] {
    margin: 0 0 0.25rem 0;
    font-weight: 600;
    color: #212529;
}

.ee-subtitle[b-9x6xr6cjiz] {
    color: #6c757d;
    font-size: 0.875rem;
}

.ee-subtitle-sep[b-9x6xr6cjiz] {
    margin: 0 0.5rem;
    color: #adb5bd;
}

.ee-header-controls[b-9x6xr6cjiz] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

.ee-search[b-9x6xr6cjiz] {
    position: relative;
    display: flex;
    align-items: center;
}

.ee-search i[b-9x6xr6cjiz] {
    position: absolute;
    left: 0.75rem;
    color: #adb5bd;
    pointer-events: none;
}

.ee-search-input[b-9x6xr6cjiz] {
    border: 1px solid #dee2e6;
    border-radius: 0.5rem;
    padding: 0.4rem 0.75rem 0.4rem 2.25rem;
    font-size: 0.875rem;
    width: 240px;
    background: #fff;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.ee-search-input:focus[b-9x6xr6cjiz] {
    outline: none;
    border-color: #1971c2;
    box-shadow: 0 0 0 3px rgba(25, 113, 194, 0.15);
}

.ee-empty[b-9x6xr6cjiz] {
    padding: 2rem;
    text-align: center;
    color: #6c757d;
}

.ee-cards[b-9x6xr6cjiz] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.ee-card[b-9x6xr6cjiz] {
    position: relative;
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 0.5rem;
    overflow: hidden;
    transition: box-shadow 0.15s, border-color 0.15s;
}

.ee-card:hover[b-9x6xr6cjiz] {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    border-color: #ced4da;
}

.ee-card-edge[b-9x6xr6cjiz] {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
    background: #adb5bd;
}

.ee-card.accent-won .ee-card-edge[b-9x6xr6cjiz] { background: #2f9e44; }
.ee-card.accent-submitted-linked .ee-card-edge[b-9x6xr6cjiz] { background: #2f9e44; }
.ee-card.accent-submitted .ee-card-edge[b-9x6xr6cjiz] { background: #f59f00; }
.ee-card.accent-progress-linked .ee-card-edge[b-9x6xr6cjiz] { background: #1971c2; }
.ee-card.accent-unlinked .ee-card-edge[b-9x6xr6cjiz] { background: #adb5bd; }
.ee-card.accent-lost .ee-card-edge[b-9x6xr6cjiz] { background: #868e96; }

.ee-card-body[b-9x6xr6cjiz] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1.5rem;
    padding: 1rem 1.25rem 1rem 1.5rem;
}

.ee-card-main[b-9x6xr6cjiz] {
    flex: 1;
    min-width: 0;
}

.ee-card-meta[b-9x6xr6cjiz] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.25rem;
}

.ee-bidnum[b-9x6xr6cjiz] {
    font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
    font-size: 0.875rem;
    color: #1971c2;
    font-weight: 500;
}

.ee-meta-sep[b-9x6xr6cjiz] {
    color: #ced4da;
}

.ee-date[b-9x6xr6cjiz] {
    font-size: 0.8125rem;
    color: #6c757d;
}

.ee-card-title[b-9x6xr6cjiz] {
    font-size: 1.125rem;
    font-weight: 600;
    color: #212529;
    line-height: 1.35;
    margin-bottom: 0.375rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ee-card-submeta[b-9x6xr6cjiz] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    color: #6c757d;
    font-size: 0.8125rem;
    margin-bottom: 0.625rem;
}

.ee-card-submeta i[b-9x6xr6cjiz] {
    margin-right: 0.25rem;
    color: #adb5bd;
}

.ee-pills[b-9x6xr6cjiz] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
}

.ee-pill[b-9x6xr6cjiz] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.625rem;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 500;
    border: 1px solid;
}

.ee-pill-dot[b-9x6xr6cjiz] {
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
}

.ee-pill-status-in-progress[b-9x6xr6cjiz] {
    color: #1971c2;
    background: #e7f5ff;
    border-color: #a5d8ff;
}

.ee-pill-status-submitted[b-9x6xr6cjiz] {
    color: #f08c00;
    background: #fff4e6;
    border-color: #ffd8a8;
}

.ee-pill-status-won[b-9x6xr6cjiz] {
    color: #2f9e44;
    background: #ebfbee;
    border-color: #b2f2bb;
}

.ee-pill-status-lost[b-9x6xr6cjiz],
.ee-pill-status-cancelled[b-9x6xr6cjiz] {
    color: #495057;
    background: #f1f3f5;
    border-color: #dee2e6;
}

.ee-pill-link[b-9x6xr6cjiz] {
    color: #7048e8;
    background: #f3f0ff;
    border-color: #d0bfff;
}

.ee-pill-scenarios[b-9x6xr6cjiz] {
    color: #495057;
    background: #f8f9fa;
    border-color: #e9ecef;
}

.ee-pill-suffix[b-9x6xr6cjiz] {
    color: #6c757d;
    font-weight: 400;
    margin-left: 0.125rem;
}

.ee-card-side[b-9x6xr6cjiz] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.625rem;
    flex-shrink: 0;
    min-width: 180px;
}

.ee-price-block[b-9x6xr6cjiz] {
    text-align: right;
}

.ee-price-label[b-9x6xr6cjiz] {
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #6c757d;
    font-weight: 500;
    margin-bottom: 0.125rem;
}

.ee-price-value[b-9x6xr6cjiz] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #212529;
    line-height: 1.1;
}

.ee-price-sub[b-9x6xr6cjiz] {
    font-size: 0.75rem;
    color: #6c757d;
    margin-top: 0.125rem;
}

.ee-card-actions[b-9x6xr6cjiz] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.ee-manage-btn[b-9x6xr6cjiz] {
    white-space: nowrap;
}

.ee-toggle-btn[b-9x6xr6cjiz] {
    color: #6c757d;
    text-decoration: none;
    font-size: 0.8125rem;
    padding: 0.25rem 0.5rem;
}

.ee-toggle-btn:hover[b-9x6xr6cjiz] {
    color: #212529;
    text-decoration: none;
}

.ee-scenarios[b-9x6xr6cjiz] {
    border-top: 1px solid #e9ecef;
    background: #f8f9fa;
    padding: 0.75rem 1.25rem 0.75rem 1.5rem;
}

.ee-scenarios-header[b-9x6xr6cjiz],
.ee-scenario-row[b-9x6xr6cjiz] {
    display: grid;
    grid-template-columns: minmax(0, 2fr) 130px 130px 100px minmax(160px, 1fr);
    gap: 1rem;
    align-items: center;
}

.ee-scenarios-header[b-9x6xr6cjiz] {
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #868e96;
    font-weight: 500;
    padding: 0.375rem 0.5rem;
    border-bottom: 1px solid #e9ecef;
}

.ee-scenarios-header .ee-scn-col-num[b-9x6xr6cjiz] {
    text-align: right;
}

.ee-scenario-row[b-9x6xr6cjiz] {
    padding: 0.5rem;
    border-radius: 0.375rem;
    font-size: 0.875rem;
    transition: background 0.1s;
}

.ee-scenario-row:hover[b-9x6xr6cjiz] {
    background: #fff;
}

.ee-scenario-row.is-linked[b-9x6xr6cjiz] {
    background: rgba(112, 72, 232, 0.04);
}

.ee-scenario-row.is-linked:hover[b-9x6xr6cjiz] {
    background: rgba(112, 72, 232, 0.08);
}

.ee-scn-title[b-9x6xr6cjiz] {
    color: #212529;
    font-weight: 500;
}

.ee-scn-type[b-9x6xr6cjiz] {
    color: #868e96;
    font-size: 0.75rem;
    margin-top: 0.0625rem;
}

.ee-scn-col-num[b-9x6xr6cjiz] {
    text-align: right;
    color: #495057;
}

.ee-mono[b-9x6xr6cjiz] {
    font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
    font-size: 0.8125rem;
}

.ee-scn-link[b-9x6xr6cjiz] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    color: #1971c2;
    text-decoration: none;
    font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
    font-size: 0.8125rem;
}

.ee-scn-link:hover[b-9x6xr6cjiz] {
    text-decoration: underline;
}

.ee-scn-unlinked[b-9x6xr6cjiz] {
    color: #adb5bd;
    font-size: 0.8125rem;
    font-style: italic;
}
/* /Components/Pages/Estimating/Calendar/EstimatingCalendar.razor.rz.scp.css */
/* Page Header */
.calendar-page-header[b-c3pmh63f0x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--space-3) 0;
    margin-bottom: var(--space-4);
    border-bottom: 2px solid var(--color-accent);
}

.calendar-page-header h4[b-c3pmh63f0x] {
    color: var(--color-accent);
    font-weight: 600;
    margin: 0;
}

.calendar-page-header p[b-c3pmh63f0x] {
    color: var(--color-text-secondary);
    font-size: 0.85rem;
    margin: 0;
}

.header-actions[b-c3pmh63f0x] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
}

/* Link Banner */
.link-banner[b-c3pmh63f0x] {
    display: flex;
    align-items: center;
    padding: var(--space-3) var(--space-4);
    margin-bottom: var(--space-3);
    background: var(--color-info-bg);
    border: 1px solid var(--color-info);
    border-radius: var(--radius-md);
    color: var(--color-text-primary);
}

.link-banner i[b-c3pmh63f0x] {
    font-size: 1.25rem;
    color: var(--color-info);
    margin-right: var(--space-3);
}

.linked-badge[b-c3pmh63f0x] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-1);
    padding: var(--space-1) var(--space-2);
    background: var(--color-success-bg);
    color: var(--color-success);
    border-radius: var(--radius-full);
    font-size: 0.8rem;
    font-weight: 500;
}

/* Sidebar */
.calendar-sidebar[b-c3pmh63f0x] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
}

.filter-card[b-c3pmh63f0x] {
    background: var(--color-bg-surface);
    border: 1px solid var(--color-border-light);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
}

.filter-card-header[b-c3pmh63f0x] {
    padding: var(--space-2) var(--space-3);
    background: var(--color-bg-header);
    border-bottom: 1px solid var(--color-border-light);
    font-weight: 600;
    font-size: 0.75rem;
    color: var(--color-accent);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.filter-card-body[b-c3pmh63f0x] {
    padding: var(--space-2) var(--space-3);
}

.filter-item[b-c3pmh63f0x] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    padding: var(--space-1) 0;
    cursor: pointer;
    font-size: 0.875rem;
    color: var(--color-text-primary);
}

.user-color-dot[b-c3pmh63f0x] {
    width: 10px;
    height: 10px;
    border-radius: var(--radius-full);
    flex-shrink: 0;
}

/* Calendar Container */
.calendar-wrapper[b-c3pmh63f0x] {
    position: relative;
    background: var(--color-bg-surface);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
    padding: var(--space-2);
    border: 1px solid var(--color-border-light);
}

.calendar-loading[b-c3pmh63f0x] {
    position: absolute;
    top: var(--space-2);
    right: var(--space-2);
    z-index: 10;
}

/* Event Detail Modals */
.event-detail-section[b-c3pmh63f0x] {
    display: flex;
    align-items: flex-start;
    gap: var(--space-2);
    padding: var(--space-2) 0;
    border-bottom: 1px solid var(--color-border-light);
}

.event-detail-section:last-child[b-c3pmh63f0x] {
    border-bottom: none;
}

.event-detail-icon[b-c3pmh63f0x] {
    color: var(--color-primary);
    font-size: 1rem;
    margin-top: 2px;
    flex-shrink: 0;
    width: 20px;
    text-align: center;
}

.event-detail-label[b-c3pmh63f0x] {
    font-size: 0.7rem;
    color: var(--color-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    margin-bottom: 2px;
}

.event-detail-value[b-c3pmh63f0x] {
    color: var(--color-text-primary);
    font-size: 0.9rem;
}

.event-body-content[b-c3pmh63f0x] {
    background: var(--color-bg-muted);
    border-radius: var(--radius-sm);
    padding: var(--space-3);
    font-size: 0.85rem;
    color: var(--color-text-secondary);
    max-height: 200px;
    overflow-y: auto;
    word-break: break-word;
}

.event-body-content p[b-c3pmh63f0x] {
    margin-bottom: 0.5em;
}

.event-body-content p:last-child[b-c3pmh63f0x] {
    margin-bottom: 0;
}

.event-body-content a[b-c3pmh63f0x] {
    color: var(--color-text-link);
    text-decoration: underline;
}

.event-body-content ul[b-c3pmh63f0x],
.event-body-content ol[b-c3pmh63f0x] {
    padding-left: 1.25em;
    margin-bottom: 0.5em;
}

.entity-link-badge[b-c3pmh63f0x] {
    display: inline-flex;
    align-items: center;
    gap: var(--space-1);
    padding: var(--space-1) var(--space-2);
    background: var(--color-bg-muted);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    font-size: 0.8rem;
    color: var(--color-text-secondary);
}

.event-actions[b-c3pmh63f0x] {
    display: flex;
    gap: var(--space-2);
    padding-top: var(--space-3);
    border-top: 1px solid var(--color-border-light);
    margin-top: var(--space-2);
}

.visibility-badge[b-c3pmh63f0x] {
    display: inline-flex;
    align-items: center;
    padding: var(--space-1) var(--space-2);
    background: var(--color-bg-muted);
    border-radius: var(--radius-sm);
    font-size: 0.75rem;
    color: var(--color-text-muted);
}
/* /Components/Pages/Field/DailyReportWizard/Parts/HoursAllocatorSlider.razor.rz.scp.css */
/* Hours drag control. Extends Bootstrap's .form-range (vendored at
   wwwroot/lib/bootstrap/dist/css/bootstrap.css:2505) rather than restating it: the base rules
   already zero the appearance, size the track and handle the disabled state. What is added here is
   the per-row colour, the filled portion, and a thumb big enough to drag on a jobsite.

   Track geometry follows Bootstrap's: a 0.5rem track with the thumb pulled up by half the
   difference between thumb and track height, so it stays centred. The vendor pseudo-elements must
   be separate rules — browsers drop an entire selector list when one selector is unrecognised.

   The fill is a gradient stopping at --dr-fill, which the component sets inline: sizing stays in
   C#, colour stays here, the same split HoursBudgetBar uses. Colours come from the shared
   --dr-seg-* tokens in theme.css so the row swatch, the bar segment and this slider agree. */

.dr-hours-range[b-i1rff0nl0r] {
    margin-top: 0.5rem;
}

/* ---- Track: unfilled base, filled up to --dr-fill ---- */
.dr-hours-range[b-i1rff0nl0r]::-webkit-slider-runnable-track {
    height: 0.5rem;
    cursor: pointer;
    border-radius: 1rem;
    background-image: linear-gradient(
        to right,
        var(--dr-range-color) var(--dr-fill, 0%),
        transparent var(--dr-fill, 0%)
    );
}

.dr-hours-range[b-i1rff0nl0r]::-moz-range-track {
    height: 0.5rem;
    cursor: pointer;
    border-radius: 1rem;
    background-image: linear-gradient(
        to right,
        var(--dr-range-color) var(--dr-fill, 0%),
        transparent var(--dr-fill, 0%)
    );
}

/* ---- Thumb ----
   1.5rem rather than Bootstrap's 1rem: this is dragged with a glove on. margin-top centres it on
   the track — half the thumb height minus half the track height, negated. */
.dr-hours-range[b-i1rff0nl0r]::-webkit-slider-thumb {
    width: 1.5rem;
    height: 1.5rem;
    margin-top: -0.5rem;
    background-color: var(--bs-body-bg);
    border: 3px solid var(--dr-range-color);
    border-radius: 50%;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
    cursor: grab;
}

.dr-hours-range[b-i1rff0nl0r]::-moz-range-thumb {
    width: 1.5rem;
    height: 1.5rem;
    background-color: var(--bs-body-bg);
    border: 3px solid var(--dr-range-color);
    border-radius: 50%;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
    cursor: grab;
}

/* Bootstrap's :active rule repaints the thumb solid blue — override with the row's colour. */
.dr-hours-range[b-i1rff0nl0r]::-webkit-slider-thumb:active {
    background-color: var(--bs-body-bg);
    cursor: grabbing;
}

.dr-hours-range[b-i1rff0nl0r]::-moz-range-thumb:active {
    background-color: var(--bs-body-bg);
    cursor: grabbing;
}

/* Bootstrap's focus ring is hardcoded blue; match the row instead. */
.dr-hours-range:focus[b-i1rff0nl0r]::-webkit-slider-thumb {
    box-shadow: 0 0 0 0.25rem var(--bs-focus-ring-color, rgba(13, 110, 253, 0.25));
}

.dr-hours-range:focus[b-i1rff0nl0r]::-moz-range-thumb {
    box-shadow: 0 0 0 0.25rem var(--bs-focus-ring-color, rgba(13, 110, 253, 0.25));
}

/* Disabled thumbs go grey in Bootstrap; keep that, but drop the coloured border with it. */
.dr-hours-range:disabled[b-i1rff0nl0r]::-webkit-slider-thumb {
    border-color: var(--bs-secondary-color);
}

.dr-hours-range:disabled[b-i1rff0nl0r]::-moz-range-thumb {
    border-color: var(--bs-secondary-color);
}

/* ---- Per-row colour ----
   One variable feeds both the fill and the thumb border, so a row needs a single class. */
.dr-hours-range.dr-seg-1[b-i1rff0nl0r] { --dr-range-color: var(--dr-seg-1); }
.dr-hours-range.dr-seg-2[b-i1rff0nl0r] { --dr-range-color: var(--dr-seg-2); }
.dr-hours-range.dr-seg-3[b-i1rff0nl0r] { --dr-range-color: var(--dr-seg-3); }
.dr-hours-range.dr-seg-4[b-i1rff0nl0r] { --dr-range-color: var(--dr-seg-4); }
.dr-hours-range.dr-seg-5[b-i1rff0nl0r] { --dr-range-color: var(--dr-seg-5); }
.dr-hours-range.dr-seg-6[b-i1rff0nl0r] { --dr-range-color: var(--dr-seg-6); }
/* /Components/Pages/Field/DailyReportWizard/Parts/HoursBudgetBar.razor.rz.scp.css */
/* One horizontal bar: allocated scopes then unassigned. Segments are sized by inline width, so
   this file only carries colour, shape and the phone-sized height. */

.dr-budget-bar[b-bbxgpu1b42] {
    display: flex;
    height: 1.25rem;
    width: 100%;
    overflow: hidden;
    border-radius: var(--bs-border-radius-sm, 0.25rem);
    background-color: var(--bs-secondary-bg);
}

.dr-budget-seg[b-bbxgpu1b42] {
    height: 100%;
    min-width: 2px; /* a tiny allocation still reads as present */
    transition: width 120ms ease-out;
}

/* Colours come from the shared --dr-seg-* tokens in theme.css, since scoped CSS cannot cross
   component boundaries and the bar, the row swatch and the hours slider must name one palette.
   Cycled by index in DailyReportPalette. */
.dr-seg-1[b-bbxgpu1b42] { background-color: var(--dr-seg-1); }
.dr-seg-2[b-bbxgpu1b42] { background-color: var(--dr-seg-2); }
.dr-seg-3[b-bbxgpu1b42] { background-color: var(--dr-seg-3); }
.dr-seg-4[b-bbxgpu1b42] { background-color: var(--dr-seg-4); }
.dr-seg-5[b-bbxgpu1b42] { background-color: var(--dr-seg-5); }
.dr-seg-6[b-bbxgpu1b42] { background-color: var(--dr-seg-6); }

.dr-budget-unassigned[b-bbxgpu1b42] {
    background-color: var(--bs-tertiary-bg);
    /* Hatched so "unassigned" reads as absence rather than as another scope. */
    background-image: repeating-linear-gradient(
        45deg,
        transparent,
        transparent 4px,
        var(--bs-secondary-bg) 4px,
        var(--bs-secondary-bg) 8px
    );
}

.dr-budget-empty[b-bbxgpu1b42] {
    width: 100%;
    background-color: var(--bs-secondary-bg);
}
/* /Components/Pages/ProjectManagement/ChangeOrderSummary.razor.rz.scp.css */
/* Sticky column headers for the Change Order Summary table.
   position:sticky pins to the nearest ancestor with a clipping/scroll context.
   Bootstrap's .card (overflow:hidden) and .table-responsive (overflow-x:auto) both
   trap the header to a box that scrolls away with the page. Force both to
   overflow:visible so the page scrolls at the document level and sticky pins to the
   viewport — the same approach the per-project change order log uses. */
.co-summary-card[b-jm0q0zco89] {
    overflow: visible !important;
}
.co-summary-wrapper.table-responsive[b-jm0q0zco89] {
    overflow: visible !important;
}

/* Pin the header row below the fixed app navbar (~56px) so it isn't hidden under it.
   ::deep because the thead/th are child markup within the isolated-CSS scope.
   Each sticky th keeps a solid background (sticky cells lift out of the row paint);
   the plain headers use the dark thead color, and the colored PCO/COR headers carry
   their own inline background which is preserved. */
.co-summary-table[b-jm0q0zco89]  thead th {
    position: sticky;
    top: 56px;
    z-index: 6;
}
.co-summary-table[b-jm0q0zco89]  thead.table-dark th {
    background-color: #212529;
}
/* /Components/Pages/ProjectManagement/ProjectDatabase/Options.razor.rz.scp.css */
.accordion-header:has(.accordion-button:not(.collapsed))[b-xq4twx2o71] {
    position: sticky;
    top: 56px;
    z-index: 10;
}
/* /Components/Pages/ProjectManagement/Tm/TmSummary.razor.rz.scp.css */
/* Theme tokens rather than literal colors so the cards follow light/dark mode. */

.tm-stat-card[b-h1s2gaaw7e] {
    border-left: 6px solid var(--color-border);
}

/* Unpriced is the number that needs attention. */
.tm-stat-attention[b-h1s2gaaw7e] {
    border-left-color: var(--color-warning);
}

.tm-stat-primary[b-h1s2gaaw7e] {
    border-left-color: var(--color-primary);
}

.tm-group-header[b-h1s2gaaw7e] {
    cursor: pointer;
    user-select: none;
}
/* /Components/Pages/ProjectManagement/Tm/TmTicketSheet.razor.rz.scp.css */
/* Theme tokens rather than literal colors so the sheet follows light/dark mode.
   Inline style= attributes can't respond to [data-theme="dark"], which is why these live here. */

.tm-grand-total[b-yfospfhobk] {
    color: var(--color-primary);
}

.tm-totals-panel[b-yfospfhobk] {
    position: sticky;
    top: 1rem;
}

/* The section the stepper is currently on. */
.tm-section-active[b-yfospfhobk] {
    background-color: var(--color-primary-light);
    font-weight: 600;
}

.tm-section-caret[b-yfospfhobk] {
    color: var(--color-primary);
}

/* Zero-quantity scaffold rows stay legible but recede behind the lines actually in use. */
.tm-row-empty[b-yfospfhobk] {
    color: var(--color-text-muted);
}
/* /Components/Pages/Roadmap/RoadmapDashboard.razor.rz.scp.css */
/* Availability is the organizing idea: the rail beside each band is solid where
   the work can be used today and dashed where it cannot, so the distinction
   reads before any text does. */

.roadmap[b-qjccu2c2n4] {
    max-width: 60rem;
    margin-inline: auto;
    padding: clamp(1.5rem, 4vw, 3.5rem) clamp(1rem, 4vw, 2rem) 5rem;
}

/* ---- hero ---- */

.roadmap-hero[b-qjccu2c2n4] {
    padding-block: clamp(1rem, 4vw, 3rem) clamp(2rem, 5vw, 3.5rem);
    border-bottom: 1px solid var(--color-border, #dbe4e4);
    margin-bottom: clamp(2rem, 5vw, 3.5rem);
}

.roadmap-eyebrow[b-qjccu2c2n4] {
    font-size: .75rem;
    font-weight: 600;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--color-primary, #00857c);
    margin: 0 0 .75rem;
}

.roadmap-title[b-qjccu2c2n4] {
    font-size: clamp(2.25rem, 7vw, 4rem);
    font-weight: 700;
    letter-spacing: -.03em;
    line-height: 1.02;
    color: var(--color-text-primary, #1a2e2d);
    margin: 0 0 .75rem;
}

.roadmap-lede[b-qjccu2c2n4] {
    font-size: clamp(1rem, 2.2vw, 1.2rem);
    color: var(--color-text-secondary, #4a6463);
    max-width: 34rem;
    margin: 0;
}

.roadmap-state[b-qjccu2c2n4] {
    padding: 3rem 0;
    color: var(--color-text-secondary, #4a6463);
}

/* ---- bands ---- */

.roadmap-band[b-qjccu2c2n4] {
    position: relative;
    padding-left: clamp(1rem, 3vw, 1.75rem);
    margin-bottom: clamp(2.5rem, 6vw, 4rem);
}

/* The rail. Solid = usable today; dashed = not yet. */
.roadmap-band[b-qjccu2c2n4]::before {
    content: "";
    position: absolute;
    inset-block: .35rem 0;
    left: 0;
    width: 2px;
    border-radius: 2px;
}

.band-live[b-qjccu2c2n4]::before {
    background: var(--color-primary, #00857c);
}

.roadmap-band:not(.band-live)[b-qjccu2c2n4]::before {
    background: repeating-linear-gradient(
        to bottom,
        var(--color-border, #cbd8d7) 0 6px,
        transparent 6px 12px
    );
}

.roadmap-band-head[b-qjccu2c2n4] {
    margin-bottom: 1.25rem;
}

.roadmap-band-title[b-qjccu2c2n4] {
    font-size: .8125rem;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    margin: 0 0 .2rem;
    color: var(--color-text-secondary, #4a6463);
}

.band-live .roadmap-band-title[b-qjccu2c2n4] {
    color: var(--color-primary, #00857c);
}

.roadmap-band-sub[b-qjccu2c2n4] {
    font-size: .875rem;
    color: var(--color-text-muted, #6b8382);
    margin: 0;
}

/* ---- effort group ---- */

.roadmap-effort[b-qjccu2c2n4] {
    margin-bottom: clamp(1.5rem, 4vw, 2.25rem);
}

.roadmap-effort:last-child[b-qjccu2c2n4] {
    margin-bottom: 0;
}

.roadmap-effort-head[b-qjccu2c2n4] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: .35rem .75rem;
    margin-bottom: .35rem;
}

.roadmap-effort-title[b-qjccu2c2n4] {
    font-size: 1.375rem;
    font-weight: 700;
    letter-spacing: -.02em;
    color: var(--color-text-primary, #1a2e2d);
    margin: 0;
}

/* In the header the kind sits beside the title, not trailing other meta, so it
   drops the leading separator dot. */
.roadmap-effort-head .roadmap-kind[b-qjccu2c2n4]::before {
    content: none;
}

.roadmap-effort-desc[b-qjccu2c2n4] {
    font-size: .9375rem;
    line-height: 1.5;
    color: var(--color-text-secondary, #4a6463);
    margin: 0 0 .875rem;
    max-width: 48ch;
}

/* ---- cards ---- */

.roadmap-cards[b-qjccu2c2n4] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: .75rem;
}

.roadmap-card[b-qjccu2c2n4] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 1.5rem;
    align-items: flex-end;
    justify-content: space-between;
    padding: 1.25rem 1.375rem;
    border: 1px solid var(--color-border, #dbe4e4);
    border-radius: .625rem;
    background: var(--color-bg-surface, #fff);
}

.roadmap-card.is-available[b-qjccu2c2n4] {
    border-color: color-mix(in srgb, var(--color-primary, #00857c) 35%, transparent);
    background: var(--color-primary-light, #e6f4f3);
}

.roadmap-card-main[b-qjccu2c2n4] {
    flex: 1 1 20rem;
    min-width: 0;
}

.roadmap-card-title[b-qjccu2c2n4] {
    font-size: 1.125rem;
    font-weight: 650;
    letter-spacing: -.011em;
    color: var(--color-text-primary, #1a2e2d);
    margin: 0 0 .3rem;
}

.roadmap-card-benefit[b-qjccu2c2n4] {
    font-size: .9375rem;
    line-height: 1.5;
    color: var(--color-text-secondary, #4a6463);
    margin: 0 0 .75rem;
    max-width: 44ch;
}

.roadmap-card-meta[b-qjccu2c2n4] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem .75rem;
}

/* ---- availability pill ----
   Every unavailable card says so in words. A progress bar alone — especially at
   100% — reads as "ready to use". */

.roadmap-pill[b-qjccu2c2n4] {
    font-size: .6875rem;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    padding: .3rem .55rem;
    border-radius: .3rem;
    background: var(--color-bg-muted, #f1f5f5);
    color: var(--color-text-muted, #6b8382);
    border: 1px solid var(--color-border, #dbe4e4);
    white-space: nowrap;
}

.roadmap-pill-live[b-qjccu2c2n4] {
    background: var(--color-primary, #00857c);
    color: #fff;
    border-color: var(--color-primary, #00857c);
}

.roadmap-status[b-qjccu2c2n4],
.roadmap-kind[b-qjccu2c2n4] {
    font-size: .8125rem;
    color: var(--color-text-muted, #6b8382);
}

.roadmap-kind[b-qjccu2c2n4]::before {
    content: "·";
    margin-right: .5rem;
}

.roadmap-open[b-qjccu2c2n4] {
    font-size: .875rem;
    font-weight: 600;
    color: var(--color-primary, #00857c);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.roadmap-open:hover[b-qjccu2c2n4],
.roadmap-open:focus-visible[b-qjccu2c2n4] {
    text-decoration: underline;
}

.roadmap-open span[b-qjccu2c2n4] {
    transition: transform .15s ease;
}

.roadmap-open:hover span[b-qjccu2c2n4] {
    transform: translateX(2px);
}

/* ---- progress ---- */

.roadmap-progress[b-qjccu2c2n4] {
    display: flex;
    align-items: center;
    gap: .625rem;
    flex: 0 1 12rem;
    min-width: 8rem;
}

.roadmap-progress-track[b-qjccu2c2n4] {
    flex: 1;
    height: 5px;
    border-radius: 5px;
    background: var(--color-bg-muted, #eef2f2);
    overflow: hidden;
}

.roadmap-progress-fill[b-qjccu2c2n4] {
    height: 100%;
    border-radius: 5px;
    background: var(--color-text-muted, #6b8382);
}

.band-building .roadmap-progress-fill[b-qjccu2c2n4],
.band-soon .roadmap-progress-fill[b-qjccu2c2n4] {
    background: var(--color-primary, #00857c);
}

.roadmap-progress-value[b-qjccu2c2n4] {
    font-size: .75rem;
    font-variant-numeric: tabular-nums;
    color: var(--color-text-muted, #6b8382);
    min-width: 2.5rem;
    text-align: right;
}

@media (max-width: 30rem) {
    .roadmap-card[b-qjccu2c2n4] {
        align-items: flex-start;
    }

    .roadmap-progress[b-qjccu2c2n4] {
        flex-basis: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .roadmap-open span[b-qjccu2c2n4] {
        transition: none;
    }
}
/* /Components/Pages/Updates/UpdatesFeed.razor.rz.scp.css */
/* A dated list rather than cards: these are things that already happened, so
   the release date is the spine of the page. */

.updates[b-3a2l7gtitq] {
    max-width: 48rem;
    margin-inline: auto;
    padding: clamp(1.5rem, 4vw, 3.5rem) clamp(1rem, 4vw, 2rem) 5rem;
}

.updates-hero[b-3a2l7gtitq] {
    padding-bottom: clamp(1.5rem, 4vw, 2.5rem);
    border-bottom: 1px solid var(--color-border, #dbe4e4);
    margin-bottom: clamp(1.5rem, 4vw, 2.5rem);
}

.updates-title[b-3a2l7gtitq] {
    font-size: clamp(1.875rem, 5vw, 2.75rem);
    font-weight: 700;
    letter-spacing: -.025em;
    color: var(--color-text-primary, #1a2e2d);
    margin: 0 0 .5rem;
}

.updates-lede[b-3a2l7gtitq] {
    font-size: 1rem;
    color: var(--color-text-secondary, #4a6463);
    margin: 0;
}

.updates-state[b-3a2l7gtitq] {
    padding: 3rem 0;
    color: var(--color-text-secondary, #4a6463);
}

.updates-effort[b-3a2l7gtitq] {
    margin-bottom: clamp(1.75rem, 5vw, 3rem);
}

.updates-effort:last-child[b-3a2l7gtitq] {
    margin-bottom: 0;
}

.updates-effort-head[b-3a2l7gtitq] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: .35rem .75rem;
    margin-bottom: .35rem;
}

.updates-effort-title[b-3a2l7gtitq] {
    font-size: clamp(1.25rem, 3vw, 1.5rem);
    font-weight: 700;
    letter-spacing: -.02em;
    color: var(--color-text-primary, #1a2e2d);
    margin: 0;
}

.updates-effort-desc[b-3a2l7gtitq] {
    font-size: .9375rem;
    line-height: 1.5;
    color: var(--color-text-secondary, #4a6463);
    margin: 0 0 .5rem;
    max-width: 50ch;
}

.updates-list[b-3a2l7gtitq] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.updates-entry[b-3a2l7gtitq] {
    display: grid;
    grid-template-columns: 7rem 1fr;
    gap: 1.5rem;
    padding-block: 1.5rem;
    border-bottom: 1px solid var(--color-border, #eef2f2);
}

.updates-entry:last-child[b-3a2l7gtitq] {
    border-bottom: 0;
}

.updates-date[b-3a2l7gtitq] {
    font-size: .8125rem;
    font-variant-numeric: tabular-nums;
    color: var(--color-text-muted, #6b8382);
    padding-top: .15rem;
}

.updates-entry-title[b-3a2l7gtitq] {
    font-size: 1.0625rem;
    font-weight: 650;
    color: var(--color-text-primary, #1a2e2d);
    margin: 0 0 .3rem;
}

.updates-benefit[b-3a2l7gtitq] {
    font-size: .9375rem;
    line-height: 1.55;
    color: var(--color-text-secondary, #4a6463);
    margin: 0 0 .6rem;
    max-width: 46ch;
}

.updates-meta[b-3a2l7gtitq] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5rem .75rem;
}

.updates-open[b-3a2l7gtitq] {
    font-size: .875rem;
    font-weight: 600;
    color: var(--color-primary, #00857c);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.updates-open:hover[b-3a2l7gtitq],
.updates-open:focus-visible[b-3a2l7gtitq] {
    text-decoration: underline;
}

.updates-open span[b-3a2l7gtitq] {
    transition: transform .15s ease;
}

.updates-open:hover span[b-3a2l7gtitq] {
    transform: translateX(2px);
}

.updates-kind[b-3a2l7gtitq] {
    font-size: .8125rem;
    color: var(--color-text-muted, #6b8382);
}

@media (max-width: 34rem) {
    .updates-entry[b-3a2l7gtitq] {
        grid-template-columns: 1fr;
        gap: .35rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .updates-open span[b-3a2l7gtitq] {
        transition: none;
    }
}
/* /Components/Shared/Assignments/AssignmentDatePickerDialog.razor.rz.scp.css */
/* Multi-calendar layout */
.multi-calendar-container[b-0rtqa8wju0] {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
    justify-content: center;
}

.calendar-month[b-0rtqa8wju0] {
    min-width: 280px;
    flex: 1;
    max-width: 320px;
}

/* Calendar grid */
.calendar-grid[b-0rtqa8wju0] {
    border: 1px solid var(--color-border);
    border-radius: 0.375rem;
    overflow: hidden;
}

.calendar-weekdays[b-0rtqa8wju0] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    background-color: var(--color-bg-header);
    border-bottom: 1px solid var(--color-border);
}

.weekday[b-0rtqa8wju0] {
    padding: 0.5rem 0.25rem;
    text-align: center;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--color-text-muted);
}

.weekday.weekend[b-0rtqa8wju0] {
    color: var(--color-text-muted);
}

.calendar-days[b-0rtqa8wju0] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 1px;
    background-color: var(--color-border);
}

/* Calendar day button */
.calendar-day[b-0rtqa8wju0] {
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--color-bg-surface);
    border: none;
    font-size: 0.875rem;
    color: var(--color-text-primary);
    cursor: pointer;
    transition: background-color 0.15s ease-in-out;
    padding: 0;
    min-height: 36px;
}

/* Default hover - used as fallback */
.calendar-day:hover:not(.disabled)[b-0rtqa8wju0] {
    background-color: var(--color-bg-hover);
}

/* Individual mode - will select (green glow) */
.mode-individual.action-add .calendar-day:not(.selected):not(.disabled):hover[b-0rtqa8wju0] {
    box-shadow: inset 0 0 0 2px var(--color-success);
    background-color: rgba(25, 135, 84, 0.1);
}

/* Individual mode - will deselect (red glow) */
.mode-individual.action-add .calendar-day.selected:not(.disabled):hover[b-0rtqa8wju0] {
    box-shadow: inset 0 0 0 2px var(--color-error);
    background-color: var(--color-accent);
}

/* Range mode - Add action: preview will-select */
.mode-range.action-add .calendar-day:not(.disabled):hover[b-0rtqa8wju0],
.mode-range.action-add .calendar-day.range-preview:not(.disabled)[b-0rtqa8wju0] {
    box-shadow: inset 0 0 0 2px var(--color-success);
    background-color: rgba(25, 135, 84, 0.15);
}

.mode-range.action-add .calendar-day.selected.range-preview:not(.disabled)[b-0rtqa8wju0] {
    box-shadow: inset 0 0 0 2px var(--color-success);
    background-color: var(--color-accent);
}

/* Range mode - Remove action: preview will-deselect */
.mode-range.action-remove .calendar-day:not(.disabled):hover[b-0rtqa8wju0],
.mode-range.action-remove .calendar-day.range-preview:not(.disabled)[b-0rtqa8wju0] {
    box-shadow: inset 0 0 0 2px var(--color-error);
    background-color: rgba(220, 53, 69, 0.15);
}

.mode-range.action-remove .calendar-day.selected.range-preview:not(.disabled)[b-0rtqa8wju0] {
    box-shadow: inset 0 0 0 2px var(--color-error);
    background-color: rgba(220, 53, 69, 0.3);
}

/* Weekend styling */
.calendar-day.weekend[b-0rtqa8wju0] {
    background-color: var(--color-bg-muted);
}

/* Disabled weekend */
.calendar-day.disabled[b-0rtqa8wju0] {
    color: var(--color-text-muted);
    cursor: not-allowed;
    background-color: var(--color-bg-hover);
}

.calendar-day.disabled:hover[b-0rtqa8wju0] {
    background-color: var(--color-bg-hover);
}

/* Other month days */
.calendar-day.other-month[b-0rtqa8wju0] {
    color: var(--color-text-muted);
    cursor: pointer;
}

/* Selected date */
.calendar-day.selected[b-0rtqa8wju0] {
    background-color: var(--color-accent);
    color: var(--color-accent-text);
}

.calendar-day.selected.weekend[b-0rtqa8wju0] {
    background-color: var(--color-accent);
}

/* Partial selection — the date is on some, but not all, of the assignments
   in scope (bulk edit). Renders with a lighter fill than fully-selected to
   communicate "this date is only partially shared." Once the user touches
   the date in this picker session, the partial styling clears. */
.calendar-day.selected.partial[b-0rtqa8wju0] {
    background-color: color-mix(in srgb, var(--color-accent) 45%, var(--color-bg-surface) 55%);
}

/* Selected dates shown in other month overflow areas */
.calendar-day.selected.other-month[b-0rtqa8wju0] {
    background-color: #6673a8;
    color: rgba(255, 255, 255, 0.7);
    cursor: pointer;
}

/* Range start indicator */
.calendar-day.range-start[b-0rtqa8wju0] {
    box-shadow: inset 0 0 0 2px var(--color-success);
}

.calendar-day.range-start.selected[b-0rtqa8wju0] {
    box-shadow: inset 0 0 0 2px var(--color-accent-text);
}

/* Today indicator */
.calendar-day.today[b-0rtqa8wju0] {
    font-weight: 700;
    border: 2px solid var(--color-accent);
}

.calendar-day.today.selected[b-0rtqa8wju0] {
    border-color: var(--color-accent-text);
}

/* Selection summary */
.selection-summary[b-0rtqa8wju0] {
    background-color: var(--color-bg-selected);
    border-radius: 0.375rem;
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
    color: var(--color-accent);
}

/* Header controls */
.calendar-header[b-0rtqa8wju0] {
    padding: 0.25rem 0;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .multi-calendar-container[b-0rtqa8wju0] {
        flex-direction: column;
        align-items: center;
    }

    .calendar-month[b-0rtqa8wju0] {
        width: 100%;
        max-width: 100%;
    }

    .calendar-day[b-0rtqa8wju0] {
        min-height: 40px;
        font-size: 0.9375rem;
    }
}

/* Tablet touch targets */
@media (pointer: coarse) {
    .calendar-day[b-0rtqa8wju0] {
        min-height: 44px;
    }
}
/* /Components/Shared/Dashboard/ConflictResolutionDialog.razor.rz.scp.css */
/* Conflict row layout — flex row with fixed-width slots for date, kind, action area. */
.conflict-row[b-mppkdh9x7e] {
    border-top: 1px solid var(--bs-border-color, #dee2e6);
}

.conflict-row:first-child[b-mppkdh9x7e] {
    border-top: none;
}

/* Locked bar shown on time-off rows in place of the strategy buttons. */
.conflict-locked-bar[b-mppkdh9x7e] {
    background-color: #e9ecef;
    color: #495057;
    border-radius: 0.375rem;
    padding: 0.4rem 0.75rem;
    text-align: center;
    font-size: 0.85rem;
    border: 1px solid #adb5bd;
}

/* Strategy chip buttons — three-up layout, equal width within the action slot. */
.strategy-chip[b-mppkdh9x7e] {
    min-width: 0; /* allow flex shrink */
    white-space: nowrap;
}

/* Card header tints — yellow while unresolved, green when fully reviewed.
   Use Bootstrap's *-subtle utility colors so they match the rest of the app. */
.card-header.bg-warning-subtle[b-mppkdh9x7e] {
    background-color: #fff3cd !important;
}

.card-header.bg-success-subtle[b-mppkdh9x7e] {
    background-color: #d1e7dd !important;
}

/* Filter chip toolbar separator. */
.chip-toolbar .vr[b-mppkdh9x7e] {
    height: 24px;
    color: #dee2e6;
    opacity: 1;
}
/* /Components/Shared/Development/Organizer/AffectedPagesPanel.razor.rz.scp.css */
.pages-title[b-jgnzzporkr] {
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--color-text-muted, #6b8382);
    margin: 0 0 .35rem;
}

.pages-empty[b-jgnzzporkr] {
    font-size: .8125rem;
    color: var(--color-text-muted, #6b8382);
    margin: 0 0 .5rem;
}

.pages-list[b-jgnzzporkr] {
    list-style: none;
    margin: 0 0 .5rem;
    padding: 0;
}

.pages-row[b-jgnzzporkr] {
    display: flex;
    align-items: center;
    gap: .625rem;
    padding-block: .3rem;
}

.pages-name[b-jgnzzporkr] {
    flex: 1 1 auto;
    min-width: 0;
    font-size: .8125rem;
    font-family: var(--bs-font-monospace, monospace);
    color: var(--color-text-secondary, #4a6463);
    overflow-wrap: anywhere;
}

/* Unconfirmed rows read as provisional — they gate nothing yet. */
.pages-row:not(.is-confirmed) .pages-name[b-jgnzzporkr] {
    opacity: .65;
    font-style: italic;
}

.pages-tag[b-jgnzzporkr] {
    font-size: .6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--color-primary, #00857c);
}

.pages-btn[b-jgnzzporkr],
.pages-remove[b-jgnzzporkr] {
    flex: 0 0 auto;
    font-size: .75rem;
    padding: .125rem .5rem;
}

.pages-remove[b-jgnzzporkr] {
    color: var(--color-text-muted, #6b8382);
    text-decoration: none;
}

.pages-remove:hover[b-jgnzzporkr] {
    color: var(--bs-danger, #dc3545);
}
/* /Components/Shared/Development/Organizer/RecentlyDeletedPanel.razor.rz.scp.css */
.org-deleted[b-gpbsrv1f7g] {
    margin-top: .5rem;
}

.org-deleted-toggle[b-gpbsrv1f7g] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .25rem 0;
    border: 0;
    background: none;
    font-size: .8125rem;
    color: var(--color-text-muted, #6b8382);
    cursor: pointer;
}

.org-deleted-toggle i[b-gpbsrv1f7g] {
    transition: transform .15s ease;
    font-size: .7rem;
}

.org-deleted-toggle.is-open i[b-gpbsrv1f7g] {
    transform: rotate(90deg);
}

.org-deleted-list[b-gpbsrv1f7g] {
    list-style: none;
    margin: .25rem 0 0;
    padding: 0;
}

.org-deleted-row[b-gpbsrv1f7g] {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: .25rem .5rem;
    font-size: .8125rem;
    color: var(--color-text-muted, #6b8382);
    border-radius: .25rem;
}

.org-deleted-row:hover[b-gpbsrv1f7g] {
    background: var(--bs-tertiary-bg, #f1f4f4);
}

.org-deleted-label[b-gpbsrv1f7g] {
    flex: 1 1 auto;
    text-decoration: line-through;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.org-deleted-when[b-gpbsrv1f7g] {
    flex: 0 0 auto;
    font-size: .75rem;
}

.org-deleted-undo[b-gpbsrv1f7g] {
    flex: 0 0 auto;
    border: 0;
    background: none;
    padding: 0 .25rem;
    font-size: .8125rem;
    color: var(--bs-primary, #17a2b8);
    cursor: pointer;
}

.org-deleted-undo:hover[b-gpbsrv1f7g] {
    text-decoration: underline;
}

@media (prefers-reduced-motion: reduce) {
    .org-deleted-toggle i[b-gpbsrv1f7g] {
        transition: none;
    }
}
/* /Components/Shared/Development/Organizer/SavedIndicator.razor.rz.scp.css */
.saved-indicator[b-ux6xztod6i] {
    display: inline-flex;
    align-items: center;
    font-size: .8125rem;
    color: var(--color-text-muted, #6b8382);
    opacity: 0;
    transition: opacity .25s ease;
    min-height: 1.25rem;
}

.saved-indicator.is-visible[b-ux6xztod6i] {
    opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
    .saved-indicator[b-ux6xztod6i] {
        transition: none;
    }
}
/* /Components/Shared/Development/Organizer/SignOffModePicker.razor.rz.scp.css */
/* Colour is decorative — the option text always states the mode, so nothing is
   carried by contrast alone. */

.signoff-mode[b-01a5o1updt] {
    width: auto;
    font-size: .75rem;
    padding-block: .15rem;
}

.signoff-mode.mode-follow[b-01a5o1updt] {
    color: var(--color-text-muted, #6b8382);
}

.signoff-mode.mode-always-on[b-01a5o1updt] {
    color: var(--color-primary, #00857c);
    font-weight: 600;
}

.signoff-mode.mode-always-off[b-01a5o1updt] {
    color: var(--color-text-muted, #9db0af);
    font-style: italic;
}

.signoff-mode:disabled[b-01a5o1updt] {
    color: var(--color-text-muted, #9db0af);
    font-style: normal;
}
/* /Components/Shared/Field/DailyReportContent.razor.rz.scp.css */
/* Step rail. Phone-first: one scrollable row that never wraps and never widens the page.
   The chips are the primary navigation, so they stay put while the step body scrolls. */
[b-q4jqw46s7k] .dr-chips {
    overflow-x: auto;
    flex-wrap: nowrap;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    position: sticky;
    top: 0;
    z-index: 2;
    background-color: var(--bs-body-bg);
    padding-block: 0.5rem;
}

[b-q4jqw46s7k] .dr-chips::-webkit-scrollbar {
    display: none;
}

/* Pill with a leading number chip: idle / active / done, the same three-state rail the wage
   sheets and T&M builder use. */
[b-q4jqw46s7k] .dr-chip {
    flex: 0 0 auto;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--bs-border-color);
    background: var(--bs-body-bg);
    color: var(--bs-secondary-color);
    border-radius: 999px;
    padding: 0.25rem 0.75rem 0.25rem 0.3rem;
    font-size: 0.875rem;
    line-height: 1.4;
}

[b-q4jqw46s7k] .dr-chip-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.25rem;
    height: 1.25rem;
    border-radius: 50%;
    background: var(--bs-tertiary-bg);
    font-size: 0.7rem;
    margin-right: 0.35rem;
    flex: 0 0 auto;
}

[b-q4jqw46s7k] .dr-chip-active {
    border-color: var(--bs-primary);
    color: var(--bs-primary);
    font-weight: 600;
}

[b-q4jqw46s7k] .dr-chip-active .dr-chip-num {
    background: var(--bs-primary);
    color: #fff;
}

[b-q4jqw46s7k] .dr-chip-done {
    border-color: var(--bs-success);
    color: var(--bs-success);
}

[b-q4jqw46s7k] .dr-chip-done .dr-chip-num {
    background: var(--bs-success);
    color: #fff;
}

[b-q4jqw46s7k] .dr-chip-partial {
    border-color: var(--bs-warning);
    color: var(--bs-warning-text-emphasis, var(--bs-warning));
}

[b-q4jqw46s7k] .dr-chip-partial .dr-chip-num {
    background: var(--bs-warning);
    color: #000;
}

[b-q4jqw46s7k] .dr-chip-sep {
    flex: 0 0 auto;
}

@media (min-width: 768px) {
    [b-q4jqw46s7k] .dr-chips {
        flex-wrap: wrap;
        overflow-x: visible;
    }
}

/* Back / position / Next, pinned so there is always a way forward without reaching for the rail.
   Sits above the iOS home indicator rather than under it. */
[b-q4jqw46s7k] .dr-wizard-footer {
    position: sticky;
    bottom: 0;
    z-index: 2;
    background-color: var(--bs-body-bg);
    border-top: 1px solid var(--bs-border-color);
    padding-top: 0.75rem;
    padding-bottom: calc(0.75rem + env(safe-area-inset-bottom, 0px));
    margin-top: 1rem;
}

[b-q4jqw46s7k] .dr-save-status {
    white-space: nowrap;
}

/* Allocator swatch: ties a scope row to its segment in the budget bar. Colours come from the
   shared --dr-seg-* tokens in theme.css, since scoped CSS cannot cross component boundaries and
   the bar, the swatch and the slider must all name the same palette. */
[b-q4jqw46s7k] .dr-swatch {
    display: inline-block;
    width: 0.6rem;
    height: 0.6rem;
    border-radius: 2px;
    margin-right: 0.35rem;
    vertical-align: baseline;
    flex: 0 0 auto;
}

[b-q4jqw46s7k] .dr-swatch.dr-seg-1 { background-color: var(--dr-seg-1); }
[b-q4jqw46s7k] .dr-swatch.dr-seg-2 { background-color: var(--dr-seg-2); }
[b-q4jqw46s7k] .dr-swatch.dr-seg-3 { background-color: var(--dr-seg-3); }
[b-q4jqw46s7k] .dr-swatch.dr-seg-4 { background-color: var(--dr-seg-4); }
[b-q4jqw46s7k] .dr-swatch.dr-seg-5 { background-color: var(--dr-seg-5); }
[b-q4jqw46s7k] .dr-swatch.dr-seg-6 { background-color: var(--dr-seg-6); }

/* Lets the scope name truncate instead of pushing the trash button off a narrow screen. */
[b-q4jqw46s7k] .min-width-0 {
    min-width: 0;
}

/* Phone-first sizing: the -sm controls the wizard uses everywhere give ~31px tap targets, which
   is too small for a form filled in on a jobsite. Below the sm breakpoint they render at base
   size; desktop keeps the denser -sm scale. Done here rather than in nine step files. */
@media (max-width: 575.98px) {
    [b-q4jqw46s7k] .form-control-sm,
    [b-q4jqw46s7k] .form-select-sm {
        min-height: 2.75rem;
        padding: 0.5rem 0.75rem;
        font-size: 1rem;
        border-radius: var(--bs-border-radius);
    }

    [b-q4jqw46s7k] .btn-sm {
        --bs-btn-padding-y: 0.5rem;
        --bs-btn-padding-x: 0.75rem;
        --bs-btn-font-size: 1rem;
        --bs-btn-border-radius: var(--bs-border-radius);
    }

    /* The rail's chips are navigation, not form controls — keep them compact so all seven stay
       scannable on a phone. */
    [b-q4jqw46s7k] .dr-chip {
        font-size: 0.875rem;
        padding: 0.25rem 0.75rem 0.25rem 0.3rem;
    }
}
/* /Components/Shared/Help/HelpHint.razor.rz.scp.css */
.help-hint-icon[b-ch6pmt2z41] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    border: 1px solid var(--bs-border-color, #dee2e6);
    background: var(--bs-body-bg, #fff);
    color: var(--bs-secondary-color, #6c757d);
    cursor: pointer;
    font-size: 0.75rem;
    padding: 0;
    transition: color 0.15s ease, border-color 0.15s ease;
}

.help-hint-icon:hover[b-ch6pmt2z41] {
    color: var(--bs-primary, #0d6efd);
    border-color: var(--bs-primary, #0d6efd);
}

.help-hint-text[b-ch6pmt2z41] {
    display: inline-flex;
    align-items: center;
    background: none;
    border: none;
    padding: 0;
    color: var(--bs-secondary-color, #6c757d);
    font-size: 0.85rem;
    cursor: pointer;
    transition: color 0.15s ease;
}

.help-hint-text:hover[b-ch6pmt2z41] {
    color: var(--bs-primary, #0d6efd);
    text-decoration: underline;
}
/* /Components/Shared/Modals/LinkEstimatingEdgeScenariosModal.razor.rz.scp.css */
.sticky-header-table thead th[b-7c3hyi6wwe] {
    position: sticky;
    top: 0;
    z-index: 1;
    background-color: var(--bs-body-bg);
}
/* /Components/Shared/UI/ComboBox.razor.rz.scp.css */
.combo-box-container[b-qbsofcateg] {
    position: relative;
}

.combo-box-dropdown[b-qbsofcateg] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: var(--color-bg-elevated, #fff);
    border: 1px solid var(--color-border, #dee2e6);
    border-radius: 0.375rem;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    z-index: 1060;
    margin-top: 2px;
    max-height: 200px;
    overflow-y: auto;
}

.combo-box-option[b-qbsofcateg] {
    padding: 0.375rem 0.75rem;
    cursor: pointer;
    font-size: 0.875rem;
    transition: background-color 0.1s;
}

.combo-box-option:hover[b-qbsofcateg],
.combo-box-option.highlighted[b-qbsofcateg] {
    background-color: var(--color-bg-hover, #e9ecef);
}
/* /Components/Shared/UI/DatePicker.razor.rz.scp.css */
.date-picker-container[b-128sx1szac] {
    position: relative;
}

.date-picker-dropdown[b-128sx1szac] {
    position: absolute;
    top: 100%;
    left: 0;
    background: var(--color-bg-elevated);
    border: 1px solid var(--color-border);
    border-radius: 0.375rem;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    z-index: 1060;
    margin-top: 2px;
    padding: 0.5rem;
    min-width: 280px;
}

.calendar-header[b-128sx1szac] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.25rem 0;
    margin-bottom: 0.5rem;
}

.calendar-title[b-128sx1szac] {
    font-weight: 600;
    color: var(--color-accent);
}

.calendar-grid[b-128sx1szac] {
    width: 100%;
}

.calendar-weekdays[b-128sx1szac] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
    margin-bottom: 0.25rem;
}

.weekday[b-128sx1szac] {
    text-align: center;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--color-text-muted);
    padding: 0.25rem;
}

.calendar-days[b-128sx1szac] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 2px;
}

.calendar-day[b-128sx1szac] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    border-radius: 50%;
    cursor: pointer;
    font-size: 0.875rem;
    color: var(--color-text-primary);
    transition: background-color 0.15s, color 0.15s;
}

.calendar-day:hover[b-128sx1szac] {
    background-color: var(--color-bg-hover);
}

.calendar-day.other-month[b-128sx1szac] {
    color: var(--color-text-muted);
}

.calendar-day.today[b-128sx1szac] {
    border: 2px solid var(--color-accent);
}

.calendar-day.selected[b-128sx1szac] {
    background-color: var(--color-accent);
    color: var(--color-accent-text);
}

.calendar-day.selected:hover[b-128sx1szac] {
    background-color: var(--color-accent-hover);
}

.calendar-footer[b-128sx1szac] {
    display: flex;
    justify-content: center;
    padding-top: 0.5rem;
    border-top: 1px solid var(--color-border);
    margin-top: 0.5rem;
}

.date-picker-backdrop[b-128sx1szac] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1055;
}

.form-control.focus[b-128sx1szac] {
    border-color: var(--color-border-focus);
    box-shadow: 0 0 0 0.25rem var(--color-focus-ring);
}
/* /Components/Shared/UI/Dropdown.razor.rz.scp.css */
.dropdown[b-2b8014zx6f] {
    position: relative;
    display: inline-block;
}

.dropdown-menu[b-2b8014zx6f] {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 200px;
    padding: 0.5rem 0;
    margin-top: 2px;
    background: var(--color-bg-elevated);
    border: 1px solid var(--color-border);
    border-radius: 0.375rem;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    z-index: 1060;
}

.dropdown-menu-end[b-2b8014zx6f] {
    left: auto;
    right: 0;
}

.dropdown-backdrop[b-2b8014zx6f] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1055;
}

[b-2b8014zx6f] .dropdown-item {
    display: flex;
    align-items: center;
    padding: 0.5rem 1rem;
    color: var(--color-text-primary);
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.15s;
}

[b-2b8014zx6f] .dropdown-item:hover {
    background-color: var(--color-bg-hover);
}

[b-2b8014zx6f] .dropdown-item.active {
    background-color: var(--color-bg-selected);
    color: var(--color-primary);
}

[b-2b8014zx6f] .dropdown-divider {
    height: 0;
    margin: 0.5rem 0;
    overflow: hidden;
    border-top: 1px solid var(--color-border);
}

[b-2b8014zx6f] .dropdown-header {
    display: block;
    padding: 0.5rem 1rem;
    font-size: 0.75rem;
    color: var(--color-text-muted);
    white-space: nowrap;
    font-weight: 600;
    text-transform: uppercase;
}
/* /Components/Shared/UI/FlyoutSelect.razor.rz.scp.css */
.flyout-select[b-d2u9b1zijx] {
    position: relative;
    display: inline-block;
    width: 100%;
}

.flyout-select-trigger[b-d2u9b1zijx] {
    width: 100%;
    background: var(--color-bg-surface);
    cursor: pointer;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

.flyout-select-menu[b-d2u9b1zijx] {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1050;
    min-width: 200px;
    background: var(--color-bg-elevated);
    border: 1px solid var(--color-border);
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    padding: 4px 0;
    margin-top: 2px;
}

.flyout-select-group[b-d2u9b1zijx] {
    position: relative;
}

.flyout-select-item[b-d2u9b1zijx] {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 8px 12px;
    border: none;
    background: none;
    text-align: left;
    cursor: pointer;
    font-size: 0.875rem;
    color: var(--color-text-primary);
    white-space: nowrap;
}

    .flyout-select-item:hover[b-d2u9b1zijx],
    .flyout-select-item.active[b-d2u9b1zijx] {
        background-color: var(--color-bg-hover);
    }

    .flyout-select-item.selected[b-d2u9b1zijx] {
        background-color: var(--color-bg-selected);
        font-weight: 500;
    }

.flyout-clear-item[b-d2u9b1zijx] {
    color: var(--color-text-muted);
    font-style: italic;
}

    .flyout-clear-item:hover[b-d2u9b1zijx] {
        color: var(--color-error);
        background-color: var(--color-error-bg);
    }

.flyout-group-trigger[b-d2u9b1zijx] {
    font-weight: 600;
    color: var(--color-text-secondary);
}

.flyout-divider[b-d2u9b1zijx] {
    height: 1px;
    margin: 4px 0;
    background-color: var(--color-border);
}

.flyout-submenu[b-d2u9b1zijx] {
    position: absolute;
    left: 100%;
    top: 0;
    min-width: 200px;
    background: var(--color-bg-elevated);
    border: 1px solid var(--color-border);
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    padding: 4px 0;
    margin-left: 2px;
}

.flyout-sub-submenu[b-d2u9b1zijx] {
    position: absolute;
    left: 100%;
    top: 0;
    min-width: 180px;
    background: var(--color-bg-elevated);
    border: 1px solid var(--color-border);
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    padding: 4px 0;
    margin-left: 2px;
}

.flyout-backdrop[b-d2u9b1zijx] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1049;
}
/* /Components/Shared/UI/LandingNavList.razor.rz.scp.css */
.landing-nav-table[b-70z8m7ld06] {
    margin-bottom: 0;
}

.landing-nav-group-row td.landing-nav-group-heading[b-70z8m7ld06] {
    background-color: transparent;
    border-bottom: 2px solid var(--bs-border-color, #dee2e6);
    color: var(--bs-secondary-color, #6c757d);
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.05em;
    padding: 1rem 0.75rem 0.5rem;
    text-transform: uppercase;
}

.landing-nav-row[b-70z8m7ld06] {
    cursor: pointer;
}

.landing-nav-row td[b-70z8m7ld06] {
    padding-bottom: 0.85rem;
    padding-top: 0.85rem;
    vertical-align: middle;
}

.landing-nav-title-cell[b-70z8m7ld06] {
    width: 280px;
    min-width: 280px;
}

.landing-nav-title[b-70z8m7ld06] {
    font-weight: 500;
}

.landing-nav-description[b-70z8m7ld06] {
    font-size: 0.95rem;
}

.landing-nav-action[b-70z8m7ld06] {
    width: 100px;
    text-align: right;
}

.landing-nav-card[b-70z8m7ld06] {
    transition: box-shadow 0.15s ease-in-out, transform 0.15s ease-in-out;
}

.landing-nav-card:hover[b-70z8m7ld06] {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.12);
    transform: translateY(-2px);
}

.landing-nav-list-loading[b-70z8m7ld06] {
    height: 200px;
}
/* /Components/Shared/UI/Modal.razor.rz.scp.css */
.modal-backdrop[b-6mjldkera3] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 1080;
}

.modal[b-6mjldkera3] {
    z-index: 1090;
}

.modal-content[b-6mjldkera3] {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
}

.modal-header[b-6mjldkera3] {
    border-bottom: 1px solid var(--color-border);
    background-color: var(--color-bg-header);
}

.modal-title[b-6mjldkera3] {
    color: var(--color-accent);
    font-weight: 600;
}

.modal-footer[b-6mjldkera3] {
    border-top: 1px solid var(--color-border);
    background-color: var(--color-bg-header);
}

/* Draggable header */
.modal-header.modal-draggable[b-6mjldkera3] {
    cursor: move;
    user-select: none;
}

/* During active drag/resize, disable transitions */
[b-6mjldkera3] .modal-dialog.interacting {
    transition: none !important;
}

/* Resize handles — invisible but interactive */
[b-6mjldkera3] .resize-handle {
    position: absolute;
    z-index: 1;
    background: transparent;
}

[b-6mjldkera3] .resize-handle-n,
[b-6mjldkera3] .resize-handle-s {
    left: 12px;
    right: 12px;
    height: 8px;
    cursor: ns-resize;
}

[b-6mjldkera3] .resize-handle-n { top: -4px; }
[b-6mjldkera3] .resize-handle-s { bottom: -4px; }

[b-6mjldkera3] .resize-handle-e,
[b-6mjldkera3] .resize-handle-w {
    top: 12px;
    bottom: 12px;
    width: 8px;
    cursor: ew-resize;
}

[b-6mjldkera3] .resize-handle-e { right: -4px; }
[b-6mjldkera3] .resize-handle-w { left: -4px; }

[b-6mjldkera3] .resize-handle-nw,
[b-6mjldkera3] .resize-handle-ne,
[b-6mjldkera3] .resize-handle-sw,
[b-6mjldkera3] .resize-handle-se {
    width: 12px;
    height: 12px;
}

[b-6mjldkera3] .resize-handle-nw { top: -4px; left: -4px; cursor: nwse-resize; }
[b-6mjldkera3] .resize-handle-ne { top: -4px; right: -4px; cursor: nesw-resize; }
[b-6mjldkera3] .resize-handle-sw { bottom: -4px; left: -4px; cursor: nesw-resize; }
[b-6mjldkera3] .resize-handle-se { bottom: -4px; right: -4px; cursor: nwse-resize; }

/* FillBody: let the body's single child fill the available vertical space after a
   taller resize instead of leaving a gap below fixed/intrinsic-height content.
   ::deep is required because the child is supplied by the consumer and does not
   carry this component's scoped-CSS attribute (mirrors the ::deep .resize-handle rules
   above, which style JS-created descendants). min-height:0 lets internal scroll
   containers shrink and own their own scrollbar instead of overflowing. */
.modal-body-fill[b-6mjldkera3] {
    display: flex;
    flex-direction: column;
    min-height: 0;
}

[b-6mjldkera3] .modal-body-fill > * {
    flex: 1 1 auto;
    min-height: 0;
}

/* Takeover size: ~95vw × 95vh with a small inset so the backdrop and any parent
   modal underneath are still visible at the edges. Used for screens that need
   maximum real estate without going fully chromeless. */
[b-6mjldkera3] .modal-dialog.modal-takeover {
    max-width: 95vw;
    width: 95vw;
    max-height: 95vh;
    height: 95vh;
    margin: 2.5vh auto;
}

[b-6mjldkera3] .modal-dialog.modal-takeover .modal-content {
    max-height: 95vh;
    height: 95vh;
}
/* /Components/Shared/UI/SearchableSelect.razor.rz.scp.css */
.searchable-select-container[b-v8t6g0paya] {
    position: relative;
}

.searchable-select-container.disabled[b-v8t6g0paya] {
    opacity: 0.6;
    pointer-events: none;
}

.searchable-select-input[b-v8t6g0paya] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 38px;
    cursor: pointer;
    padding: 0.375rem 0.75rem;
}

.searchable-select-input.focus[b-v8t6g0paya] {
    border-color: var(--color-border-focus);
    box-shadow: 0 0 0 0.25rem var(--color-focus-ring);
}

.selected-value[b-v8t6g0paya] {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.searchable-select-actions[b-v8t6g0paya] {
    display: flex;
    align-items: center;
    margin-left: 0.5rem;
}

/* Popover wrapper — promoted to the browser top layer when shown via showPopover().
   Neutralize user-agent popover defaults (centered position, borders, padding) so
   the inline top/left/width set by the JS interop owns positioning. */
.searchable-select-popover[b-v8t6g0paya] {
    position: fixed;
    margin: 0;
    padding: 0;
    border: none;
    background: transparent;
    overflow: visible;
    max-width: none;
    max-height: none;
}

.searchable-select-popover:popover-open[b-v8t6g0paya] {
    display: block;
}

.searchable-select-dropdown[b-v8t6g0paya] {
    background: var(--color-bg-elevated);
    border: 1px solid var(--color-border);
    border-radius: 0.375rem;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    max-height: 300px;
    display: flex;
    flex-direction: column;
}

.searchable-select-options[b-v8t6g0paya] {
    overflow-y: auto;
    max-height: 250px;
}

.searchable-select-option[b-v8t6g0paya] {
    display: flex;
    align-items: center;
    padding: 0.5rem 0.75rem;
    cursor: pointer;
    transition: background-color 0.15s;
}

.searchable-select-option:hover[b-v8t6g0paya] {
    background-color: var(--color-bg-hover);
}

.searchable-select-option.selected[b-v8t6g0paya] {
    background-color: var(--color-bg-selected);
}

.searchable-select-option.disabled[b-v8t6g0paya] {
    cursor: not-allowed;
    opacity: 0.5;
}

.searchable-select-option.disabled:hover[b-v8t6g0paya] {
    background-color: transparent;
}

.searchable-select-option-content[b-v8t6g0paya] {
    flex: 1;
    min-width: 0;
}

/* Commit row for a typed value that is not in the list — reads as an action, not an option. */
.searchable-select-custom-option[b-v8t6g0paya] {
    font-style: italic;
    color: var(--color-text-muted);
    border-top: 1px solid var(--color-border);
}

.searchable-select-secondary[b-v8t6g0paya] {
    font-size: 0.8em;
    line-height: 1.2;
}
