/* /Components/Layout/AuditCorner.razor.rz.scp.css */
.audit-corner[b-y62ljaihlv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8rem;
    color: var(--muted, #6b7482);
    flex-wrap: wrap;
}

.audit-corner-link[b-y62ljaihlv] {
    color: var(--blue, #0079C2);
    text-decoration: none;
    font-weight: 600;
    white-space: nowrap;
}

.audit-corner-link:hover[b-y62ljaihlv] {
    text-decoration: underline;
}

/* Header chip instead of a floating debug-style line: the name sits in a bordered pill with a
   CSS divider from the Audit Trail link (no literal "|" character in the markup anymore). */
.audit-corner-acting[b-y62ljaihlv] {
    white-space: nowrap;
    background-color: #fff;
    border: 1px solid var(--line, #e3e8f0);
    border-radius: 999px;
    padding: 0.25rem 0.75rem;
}

.audit-corner-acting-label[b-y62ljaihlv] {
    color: var(--muted, #6b7482);
}

.audit-corner-change[b-y62ljaihlv] {
    text-decoration: none;
    font-size: 0.8rem;
    vertical-align: baseline;
}

.audit-corner select[b-y62ljaihlv] {
    font-size: 0.8rem;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-yuqnyo3jx5] {
    position: relative;
    display: flex;
    flex-direction: column;
}

main[b-yuqnyo3jx5] {
    flex: 1;
    background-color: var(--bg, #f4f6f9);
    min-height: 100vh;
}

.sidebar[b-yuqnyo3jx5] {
    /* Navy, not near-black - matches the real brand block treatment already live in the sibling
       weaver-resourcing app (Bonus/Commissions), which Jason confirmed as the standard to match.
       See docs/page-review-notes.md General/Cross-Cutting. */
    background-color: var(--navy, #1F3467);
}

#blazor-error-ui[b-yuqnyo3jx5] {
    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-yuqnyo3jx5] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }

.top-corner-bar[b-yuqnyo3jx5] {
    display: flex;
    justify-content: flex-end;
    padding: 0.5rem 1.5rem 0;
    /* Reserve the bar's height so the page doesn't shift while CurrentUser populates. */
    min-height: 2.4rem;
}

@media (min-width: 641px) {
    .page[b-yuqnyo3jx5] {
        flex-direction: row;
    }

    .sidebar[b-yuqnyo3jx5] {
        width: 220px;
        height: 100vh;
        position: sticky;
        top: 0;
    }

    article[b-yuqnyo3jx5] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
        padding-top: 1.5rem !important;
    }
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-us59l8nxd2] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-us59l8nxd2] {
    background-color: rgba(255, 255, 255, 0.5);
}

.brand[b-us59l8nxd2] {
    padding: 18px 18px 14px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
}

    .brand .wordmark-img[b-us59l8nxd2] {
        max-width: 170px;
        width: 100%;
        height: auto;
        display: block;
    }

    .brand .app-name[b-us59l8nxd2] {
        font-size: 10px;
        color: var(--blue2, #00A4E4);
        letter-spacing: .8px;
        text-transform: uppercase;
        font-weight: 700;
        margin-top: 4px;
    }

.bi[b-us59l8nxd2] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.bi-person-check-fill-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-person-check-fill' viewBox='0 0 16 16'%3E%3Cpath d='M12.5 16a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7Zm1.679-4.493-1.335 2.226a.75.75 0 0 1-1.174.144l-.774-.773a.5.5 0 0 1 .708-.708l.547.548 1.17-1.951a.5.5 0 1 1 .858.514ZM11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm-9 8c0 1 1 1 1 1h5.256A4.493 4.493 0 0 1 8 13.5c0-1.01.377-1.933 1-2.634V13c0-1.616.815-2.762 2.417-3.176.02-.02.032-.06.032-.06.007-.03-.008-.062-.049-.096A5.526 5.526 0 0 0 8 8c-5 0-6 3-6 4v1Z'/%3E%3C/svg%3E");
}

.bi-building-fill-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-building-fill' viewBox='0 0 16 16'%3E%3Cpath d='M3 0a1 1 0 0 0-1 1v14H1a.5.5 0 0 0 0 1h14a.5.5 0 0 0 0-1h-1V1a1 1 0 0 0-1-1H3Zm2 14h2v-3H5v3Zm3-9v1H4V5h4Zm2 0h-1v1h1V5Zm-3 3v1H4V8h4Zm2 0h-1v1h1V8Zm-2 3v1H4v-1h4Zm2 0h-1v1h1v-1ZM5 2h1v1H5V2Zm3 0H7v1h1V2Zm2 0h1v1h-1V2Z'/%3E%3C/svg%3E");
}

.bi-briefcase-fill-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-briefcase-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 1A1.5 1.5 0 0 0 5 2.5V3H1.5A1.5 1.5 0 0 0 0 4.5v1.978c.5.28 1.06.483 1.66.591C2.99 6.918 4.92 7 8 7s5.01-.082 6.34-.331c.6-.108 1.16-.31 1.66-.59V4.5A1.5 1.5 0 0 0 14.5 3H11v-.5A1.5 1.5 0 0 0 9.5 1h-3ZM10 3H6v-.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 .5.5V3ZM0 7.686v4.816A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5V7.686c-.408.204-.859.359-1.339.47C13.14 8.5 11.144 8.5 8 8.5s-5.14 0-6.661-.344A6.98 6.98 0 0 1 0 7.686ZM6.5 9.5A.5.5 0 0 1 7 9h2a.5.5 0 0 1 0 1H7a.5.5 0 0 1-.5-.5Z'/%3E%3C/svg%3E");
}

.bi-file-earmark-text-fill-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-file-earmark-text-fill' viewBox='0 0 16 16'%3E%3Cpath d='M9.293 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.707A1 1 0 0 0 13.707 4L10 .293A1 1 0 0 0 9.293 0M9.5 3.5v-2l3 3h-2a1 1 0 0 1-1-1M4.5 9a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5m0 2a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5'/%3E%3C/svg%3E");
}

.bi-clock-fill-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-clock-fill' viewBox='0 0 16 16'%3E%3Cpath d='M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0ZM8.5 4.5a.5.5 0 0 0-1 0v3.793l2.146 2.147a.5.5 0 0 0 .708-.708L8.5 7.793V4.5Z'/%3E%3C/svg%3E");
}

.bi-people-fill-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-people-fill' viewBox='0 0 16 16'%3E%3Cpath d='M7 14s-1 0-1-1 1-4 5-4 5 3 5 4-1 1-1 1H7Zm4-6a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm-9.995 7H6c-.001-.246.076-.68.302-1.124C6.746 13.032 7.596 12 9 12H1.005ZM6 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6Z'/%3E%3C/svg%3E");
}

.bi-kanban-fill-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-kanban-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 2a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h1.5a.5.5 0 0 0 .5-.5V2.5a.5.5 0 0 0-.5-.5H2Zm4 0a.5.5 0 0 0-.5.5v6a.5.5 0 0 0 .5.5h1.5a.5.5 0 0 0 .5-.5v-6a.5.5 0 0 0-.5-.5H6Zm4.5.5a.5.5 0 0 1 .5-.5H12a2 2 0 0 1 2 2v4a2 2 0 0 1-2 2h-1.5a.5.5 0 0 1-.5-.5v-7Z'/%3E%3C/svg%3E");
}

.bi-question-circle-fill-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-question-circle-fill' viewBox='0 0 16 16'%3E%3Cpath d='M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0ZM5.496 6.033h.825c.138 0 .248-.113.266-.25.09-.656.54-1.134 1.342-1.134.686 0 1.314.343 1.314 1.168 0 .635-.374.927-.965 1.371-.673.489-1.206 1.06-1.168 1.987l.003.217a.25.25 0 0 0 .25.246h.811a.25.25 0 0 0 .25-.25v-.105c0-.718.273-.927 1.01-1.486.609-.463 1.244-.977 1.244-2.056 0-1.511-1.276-2.241-2.673-2.241-1.267 0-2.655.59-2.75 2.286a.237.237 0 0 0 .241.247zm2.325 6.443c.61 0 1.029-.394 1.029-.927 0-.552-.42-.94-1.029-.94-.584 0-1.009.388-1.009.94 0 .533.425.927 1.01.927z'/%3E%3C/svg%3E");
}

.bi-calendar-week-fill-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-calendar-week-fill' viewBox='0 0 16 16'%3E%3Cpath d='M4 .5a.5.5 0 0 0-1 0V1H2a2 2 0 0 0-2 2v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2h-1V.5a.5.5 0 0 0-1 0V1H4V.5zM1 4a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v1H1V4zm0 2h14v9a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V6zm7 2a1 1 0 1 0 0 2h4a1 1 0 1 0 0-2H8z'/%3E%3C/svg%3E");
}

.bi-award-fill-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-award-fill' viewBox='0 0 16 16'%3E%3Cpath d='m8 0 1.669.864 1.858.282.842 1.68 1.337 1.32L13.4 6l.306 1.854-1.337 1.32-.842 1.68-1.858.282L8 12l-1.669-.864-1.858-.282-.842-1.68-1.337-1.32L2.6 6l-.306-1.854 1.337-1.32.842-1.68L6.331.864z'/%3E%3Cpath d='M4 11.794V16l4-1 4 1v-4.206l-2.018.306L8 13.126 6.018 12.1z'/%3E%3C/svg%3E");
}

.bi-bar-chart-steps-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-bar-chart-steps' viewBox='0 0 16 16'%3E%3Cpath d='M.5 0a.5.5 0 0 1 .5.5v15a.5.5 0 0 1-1 0V.5A.5.5 0 0 1 .5 0zM6 4a1 1 0 0 1 1-1h7a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V4zm-2 5a1 1 0 0 1 1-1h9a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1V9zm-2 5a1 1 0 0 1 1-1h11a1 1 0 0 1 1 1v1a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1v-1z'/%3E%3C/svg%3E");
}

.bi-credit-card-fill-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-credit-card-fill' viewBox='0 0 16 16'%3E%3Cpath d='M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v1H0V4Zm0 3h16v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V7Zm3 2a1 1 0 0 0 0 2h1a1 1 0 1 0 0-2H3Z'/%3E%3C/svg%3E");
}

.bi-graph-up-nav-menu[b-us59l8nxd2] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-graph-up' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M0 0h1v15h15v1H0V0Zm14.817 3.113a.5.5 0 0 1 .07.704l-4.5 5.5a.5.5 0 0 1-.74.037L7.06 6.767l-3.656 5.027a.5.5 0 0 1-.808-.588l4-5.5a.5.5 0 0 1 .758-.06l2.609 2.61 4.15-5.073a.5.5 0 0 1 .704-.07Z'/%3E%3C/svg%3E");
}

.nav-item[b-us59l8nxd2] {
    font-size: 0.85rem;
    padding: 0 0.75rem 0.2rem;
}

    .nav-item:first-of-type[b-us59l8nxd2] {
        padding-top: 0.75rem;
    }

    .nav-item:last-of-type[b-us59l8nxd2] {
        padding-bottom: 1rem;
    }

    .nav-item[b-us59l8nxd2]  .nav-link {
        color: #cdd7e8;
        font-weight: 600;
        background: none;
        border: none;
        border-radius: 8px;
        height: 2.75rem;
        display: flex;
        align-items: center;
        line-height: 2.75rem;
        width: 100%;
        padding-left: 0.5rem;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

.nav-item[b-us59l8nxd2]  a.active {
    background-color: var(--blue, #0079C2);
    color: #fff;
}

.nav-item[b-us59l8nxd2]  .nav-link:hover {
    background-color: rgba(255,255,255,0.08);
    color: #fff;
}

.nav-scrollable[b-us59l8nxd2] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-us59l8nxd2] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-us59l8nxd2] {
        display: none;
    }

    .nav-scrollable[b-us59l8nxd2] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 65px);
        overflow-y: auto;
    }
}

/* ---- Signed-in identity + sign out (Entra ID, backlog #175) ---- */

/* Pushed to the bottom of the nav column and separated by a rule, so "Sign out" reads as a
   different kind of action from the page links above it. */
.signed-in[b-us59l8nxd2] {
    margin-top: auto;
    padding-top: 0.75rem;
    padding-bottom: 0.5rem;
    border-top: 1px solid rgba(255,255,255,0.12);
}

.signed-in-name[b-us59l8nxd2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: #cdd7e8;
    font-size: 0.8125rem;
    font-weight: 600;
    padding: 0.25rem 0;
    /* Names can be long; keep the sidebar width stable rather than wrapping. */
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.signed-in form[b-us59l8nxd2] {
    margin: 0;
}

/* Matches .nav-link above so the submit button is visually a nav item, not a form control. */
.signout-btn[b-us59l8nxd2] {
    color: #cdd7e8;
    font-weight: 600;
    background: none;
    border: none;
    border-radius: 8px;
    height: 2.75rem;
    display: flex;
    align-items: center;
    width: 100%;
    text-align: left;
    cursor: pointer;
    font-family: inherit;
    font-size: inherit;
}

.signout-btn:hover[b-us59l8nxd2] {
    background-color: rgba(255,255,255,0.08);
    color: #fff;
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-flq7uk0e3i],
.components-reconnect-repeated-attempt-visible[b-flq7uk0e3i],
.components-reconnect-failed-visible[b-flq7uk0e3i],
.components-pause-visible[b-flq7uk0e3i],
.components-resume-failed-visible[b-flq7uk0e3i],
.components-rejoining-animation[b-flq7uk0e3i] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-flq7uk0e3i],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-flq7uk0e3i],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-flq7uk0e3i],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-flq7uk0e3i],
#components-reconnect-modal.components-reconnect-retrying[b-flq7uk0e3i],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-flq7uk0e3i],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-flq7uk0e3i],
#components-reconnect-modal.components-reconnect-failed[b-flq7uk0e3i],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-flq7uk0e3i] {
    display: block;
}


#components-reconnect-modal[b-flq7uk0e3i] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-flq7uk0e3i 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-flq7uk0e3i 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-flq7uk0e3i 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-flq7uk0e3i]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-flq7uk0e3i 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-flq7uk0e3i {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-flq7uk0e3i {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-flq7uk0e3i {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-flq7uk0e3i] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-flq7uk0e3i] {
    margin: 0;
    text-align: center;
}

/* Weaver blue, not the Blazor template's stock blues - this overlay is the one screen everyone
   sees when a circuit hiccups, so it should look like ours. */
#components-reconnect-modal button[b-flq7uk0e3i] {
    border: 0;
    background-color: #0079C2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
    font-family: "Montserrat", Arial, sans-serif;
    font-weight: 600;
}

    #components-reconnect-modal button:hover[b-flq7uk0e3i] {
        background-color: #0068a8;
    }

    #components-reconnect-modal button:active[b-flq7uk0e3i] {
        background-color: #005a91;
    }

.components-rejoining-animation[b-flq7uk0e3i] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-flq7uk0e3i] {
        position: absolute;
        border: 3px solid #00A4E4;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-flq7uk0e3i 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-flq7uk0e3i] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-flq7uk0e3i {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/AccountManager/AccountManagerView.razor.rz.scp.css */
/* KPI tile click-through - same pattern as My Workbench's PM KPI strip. Only tiles with a
   nonzero count get the pointer/hover treatment since a tile sitting at 0 has nothing to filter to. */
.kpi-clickable[b-l72rp6utx6] {
    cursor: pointer;
    transition: box-shadow 0.15s ease, transform 0.15s ease;
}

.kpi-clickable:hover[b-l72rp6utx6] {
    box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
    transform: translateY(-1px);
}

/* Lets multi-word column headers (Block Hours Remaining, Agreement Expiration, etc.) wrap onto a
   second line and stay a reasonable width, instead of stretching the whole table wider than it
   needs to be to fit one long header on a single line. */
.wrap-header[b-l72rp6utx6] {
    white-space: normal;
    max-width: 110px;
}
/* /Components/Pages/MyTracker/MyTracker.razor.rz.scp.css */
/* Mood picker styles moved to MyWorkbenchCheckIn.razor.css - CSS isolation scopes this file to
   MyTracker.razor, and the mood buttons render in MyWorkbenchCheckIn.razor, so the rules never
   applied from here. */

/* Temporary highlight for a card that was jumped to but has more than one match, so there's no
   single row to land on (e.g. Unassigned Tasks). Fades in, holds, then the C# side clears the
   class after ~2.5s - see JumpToUnassignedAsync. */
.kpi-flash[b-pqp94mvicw] {
    animation: kpi-flash-pulse-b-pqp94mvicw 2.5s ease-out;
}

@keyframes kpi-flash-pulse-b-pqp94mvicw {
    0% {
        box-shadow: 0 0 0 3px rgba(0, 121, 194, 0.5);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(0, 121, 194, 0);
    }
}
/* /Components/Pages/MyTracker/MyWorkbenchCheckIn.razor.rz.scp.css */
/* Mood picker for the Weekly Check-In form. These rules used to live in MyTracker.razor.css,
   but Blazor CSS isolation scopes a .razor.css file to the component that owns it - the mood
   buttons are rendered by THIS component, so over there the selectors never matched and the
   picker rendered unstyled. Moved here so the scoping attribute actually lands on the buttons. */
.mood-btn[b-l9utwy6z3x] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    background: none;
    border: 2px solid transparent;
    border-radius: 12px;
    padding: 0.5rem 0.75rem;
    cursor: pointer;
    transition: transform 0.1s ease, border-color 0.1s ease;
}

.mood-btn:hover[b-l9utwy6z3x] {
    border-color: var(--line, #e3e8f0);
}

.mood-btn.selected[b-l9utwy6z3x] {
    border-color: var(--blue, #0079C2);
    transform: scale(1.08);
}

.mood-emoji[b-l9utwy6z3x] {
    font-size: 2rem;
    line-height: 1;
}

.mood-label[b-l9utwy6z3x] {
    font-size: 0.75rem;
    color: var(--muted, #6b7482);
}

.mood-btn.selected .mood-label[b-l9utwy6z3x] {
    color: var(--blue, #0079C2);
    font-weight: 600;
}
/* /Components/Pages/SignIn.razor.rz.scp.css */
/* Weaver brand tokens (--navy, --blue, --gray, --muted, --font) come from wwwroot/app.css.
   Fallbacks are inlined so the page still renders on-brand if it is ever loaded before app.css. */

.signin-shell[b-fyzrv9ne71] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem 1rem;
    background-color: var(--navy, #1F3467);
}

.signin-inner[b-fyzrv9ne71] {
    width: 100%;
    max-width: 27rem;
}

/* 17.5rem = 280px, comfortably clear of the 2in (~192px at 96dpi) minimum width the brand
   standards set for the primary logo. Aspect ratio is preserved - never stretched. */
.signin-logo[b-fyzrv9ne71] {
    display: block;
    width: 17.5rem;
    max-width: 100%;
    height: auto;
    margin: 0 auto 2.5rem;
}

.signin-card[b-fyzrv9ne71] {
    background-color: #ffffff;
    border-radius: 0.75rem;
    padding: 2.5rem 2rem;
    box-shadow: 0 1.25rem 2.5rem rgba(0, 0, 0, 0.25);
}

.signin-card h1[b-fyzrv9ne71] {
    font-family: var(--font, "Montserrat", Arial, sans-serif);
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--navy, #1F3467);
    margin: 0 0 0.35rem;
}

.signin-sub[b-fyzrv9ne71] {
    font-size: 0.9375rem;
    color: var(--gray, #484848);
    margin: 0 0 1.75rem;
}

.signin-btn[b-fyzrv9ne71] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    width: 100%;
    padding: 0.8125rem 1rem;
    background-color: var(--blue, #0079C2);
    color: #ffffff;
    font-family: var(--font, "Montserrat", Arial, sans-serif);
    font-size: 1rem;
    font-weight: 600;
    border-radius: 0.375rem;
    text-decoration: none;
    transition: background-color 0.15s ease-in-out;
}

.signin-btn:hover[b-fyzrv9ne71] {
    /* Darker shade of the primary blue rather than a second palette colour. */
    background-color: #00629F;
    color: #ffffff;
    text-decoration: none;
}

.signin-btn:focus-visible[b-fyzrv9ne71] {
    outline: 3px solid var(--blue2, #00A4E4);
    outline-offset: 2px;
}

.signin-btn-mark[b-fyzrv9ne71] {
    width: 1.25rem;
    height: 1.25rem;
    flex: 0 0 auto;
}

.signin-note[b-fyzrv9ne71] {
    margin: 1.5rem 0 0;
    font-size: 0.8125rem;
    line-height: 1.5;
    color: var(--muted, #6b7482);
    text-align: center;
}

@media (max-width: 24rem) {
    .signin-card[b-fyzrv9ne71] {
        padding: 2rem 1.25rem;
    }

    .signin-logo[b-fyzrv9ne71] {
        width: 14rem;
        margin-bottom: 2rem;
    }
}
