/* /Components/Layout/NavGroup.razor.rz.scp.css */
@position-try --flyout-up {
    top: auto;
    bottom: anchor(bottom);
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-vdurl1wmct],
.components-reconnect-repeated-attempt-visible[b-vdurl1wmct],
.components-reconnect-failed-visible[b-vdurl1wmct],
.components-pause-visible[b-vdurl1wmct],
.components-resume-failed-visible[b-vdurl1wmct],
.components-rejoining-animation[b-vdurl1wmct] {
    display: none;
}

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

#components-reconnect-modal[b-vdurl1wmct] {
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-vdurl1wmct 0.5s both;

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

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

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

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

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

    100% {
        opacity: 1;
    }
}

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

    100% {
        opacity: 0;
    }
}

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

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

@keyframes components-rejoining-animation-b-vdurl1wmct {
    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/Admin/Records/ImportHistory.razor.rz.scp.css */
/* Import History grid (2026-10-13): the issue-count columns made the table wider than the page, and its horizontal
   scrollbar sat at the bottom of a long list, out of sight. Capping the scroll box at the viewport height keeps that
   scrollbar on screen; FixedHeader pins the column headers while scrolling down. */
.import-history-grid[b-g4y7fa3cox]  .mud-table-container {
    max-height: 70vh;
}
/* /Components/Pages/Admin/Records/ImportIssueRepair.razor.rz.scp.css */
/* Import Issue Repair grid (2026-10-13): the report can run to thousands of rows and is wider than the page, so it
   scrolls inside a viewport-height box that keeps the horizontal scrollbar on screen, as on Import History. */
.issue-repair-grid[b-mm1ivog7pq]  .mud-table-container {
    max-height: 70vh;
}
/* /Components/Pages/Reports/BoxScoreReportPage.razor.rz.scp.css */
[b-tj6yev47pd] .mud-chart-line {
    overflow: visible;
}

/* Box Score grid (2026-10-06): with many months selected the table is wider than the page, and its horizontal
   scrollbar used to sit at the very bottom of a long expanded table, out of sight. Capping the scroll box at
   the viewport height keeps that scrollbar on screen; FixedHeader pins the month headers, and the expand +
   label columns are pinned on the left so rows stay identifiable while scrolling across. The PDF export lifts
   the height cap on its copy (box-score-export.js) so nothing is cut off there. */
.box-score-grid[b-tj6yev47pd]  .mud-table-container {
    max-height: 70vh;
}

.box-score-grid[b-tj6yev47pd]  .mud-table-root tr > :nth-child(1) {
    position: sticky;
    left: 0;
    width: 3rem;
    min-width: 3rem;
    z-index: 1;
    background-color: var(--mud-palette-surface);
}

.box-score-grid[b-tj6yev47pd]  .mud-table-root tr > :nth-child(2) {
    position: sticky;
    left: 3rem;
    min-width: 16rem;
    z-index: 1;
    background-color: var(--mud-palette-surface);
}

/* The pinned header corner sits above both the pinned column and the scrolling header cells. Needs
   .mud-table-cell in the selector to outrank MudBlazor's own sticky-header z-index rule. */
.box-score-grid[b-tj6yev47pd]  .mud-table-head .mud-table-cell:nth-child(-n+2) {
    z-index: 3;
}

/* Pinned cells need an opaque background, so re-apply the (translucent) hover tint on top of it. */
.box-score-grid[b-tj6yev47pd]  .mud-table-row:hover > td:nth-child(-n+2) {
    background: linear-gradient(var(--mud-palette-table-hover), var(--mud-palette-table-hover)), var(--mud-palette-surface);
}
/* /Components/Pages/Reports/DomainsAndQuestionsReportPage.razor.rz.scp.css */
/* Same treatment as the Box Score grid (2026-10-06): with many months selected the table is wider than the page,
   and its horizontal scrollbar sat at the bottom of a long table, out of sight. Capping the scroll box at the
   viewport height keeps that scrollbar on screen; FixedHeader pins the month headers, and the label column is
   pinned on the left so rows stay identifiable while scrolling across. The PDF export lifts the height cap on
   its copy (box-score-export.js) so no rows are cut off there. */
.domains-questions-grid[b-jybfp0fzeg]  .mud-table-container {
    max-height: 70vh;
}

.domains-questions-grid[b-jybfp0fzeg]  .mud-table-root tr > :first-child {
    position: sticky;
    left: 0;
    min-width: 16rem;
    z-index: 1;
    background-color: var(--mud-palette-surface);
}

/* The pinned header corner sits above both the pinned column and the scrolling header cells. Needs
   .mud-table-cell in the selector to outrank MudBlazor's own sticky-header z-index rule. */
.domains-questions-grid[b-jybfp0fzeg]  .mud-table-head .mud-table-cell:first-child {
    z-index: 3;
}

/* Pinned cells need an opaque background, so re-apply the (translucent) hover tint on top of it. */
.domains-questions-grid[b-jybfp0fzeg]  .mud-table-row:hover > td:first-child {
    background: linear-gradient(var(--mud-palette-table-hover), var(--mud-palette-table-hover)), var(--mud-palette-surface);
}
