/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-rcd4vdrwx1] {
    --shell-gradient: linear-gradient(180deg, #bba32a 0%, #5e5215 100%);
    --content-corner-radius: 12px;
    --survey-selected-score-text: #fff8d7;
    --survey-selected-score-text-shadow: none;
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

.page.dark-mode[b-rcd4vdrwx1] {
    --survey-selected-score-text: #fff8d7;
    --survey-selected-score-text-shadow: 0 1px 2px rgba(0, 0, 0, 0.55);
}

main[b-rcd4vdrwx1] {
    flex: 1;
    /* Allow this flex item to shrink below its children's intrinsic (max-content)
       width. Without this, a wide child (e.g. the ~10-column District/User grids)
       forces <main> past the viewport width and the whole page scrolls sideways.
       min-width:0 lets article.content's overflow:hidden + MudTable's own
       horizontal scroll contain the width instead. */
    min-width: 0;
    display: flex;
    flex-direction: column;
    background-color: #5e5215;
    background-image: var(--shell-gradient, linear-gradient(180deg, #bba32a 0%, #5e5215 100%));
    background-size: 100% 100vh;
    background-position: top left;
    background-repeat: no-repeat;
}

.sidebar[b-rcd4vdrwx1] {
    /*background-image: linear-gradient(180deg, rgb(5, 39, 103) 0%, #3a0647 70%);*/
    /*background-image: linear-gradient(180deg, #5e5215 0%, #bba32a 100%);*/
    /*background-image: linear-gradient(180deg, #bba32a 0%, #5e5215 100%);*/
    background-color: #5e5215;
    background-image: var(--shell-gradient, linear-gradient(180deg, #bba32a 0%, #5e5215 100%));
    background-size: 100% 100vh;
    background-position: top left;
    background-repeat: no-repeat;
    transition: width 0.2s ease;
    overflow-x: hidden;
    z-index: 1050;
}

.sidebar-backdrop[b-rcd4vdrwx1] {
    display: none;
}

.top-row[b-rcd4vdrwx1]  .tablet-nav-toggle {
    display: none;
}

.top-row[b-rcd4vdrwx1] {
    /*background-color: #f7f7f7;*/
    background-image: var(--shell-gradient, linear-gradient(180deg, #bba32a 0%, #5e5215 100%));
    background-size: 100% 100vh;
    background-position: top left;
    background-repeat: no-repeat;
    /*border-bottom: 1px solid #d6d5d5;*/
    border-bottom: none;

    justify-content: flex-end;
    height: 3.5rem;
    display: flex;
    align-items: center;
    position: relative;
    z-index: 100;
}

    .top-row[b-rcd4vdrwx1]  a, .top-row[b-rcd4vdrwx1]  .btn-link {
        white-space: nowrap;
        margin-left: 1.5rem;
        text-decoration: none;
    }

    .top-row[b-rcd4vdrwx1]  a:hover, .top-row[b-rcd4vdrwx1]  .btn-link:hover {
        text-decoration: underline;
    }

    .top-row[b-rcd4vdrwx1]  a:first-child {
        overflow: hidden;
        text-overflow: ellipsis;
    }

@media (max-width: 640.98px) {
    .top-row[b-rcd4vdrwx1] {
        justify-content: space-between;
    }

    .top-row[b-rcd4vdrwx1]  a, .top-row[b-rcd4vdrwx1]  .btn-link {
        margin-left: 0;
    }
}

@media (min-width: 641px) {
    .page[b-rcd4vdrwx1] {
        flex-direction: row;
    }

    .sidebar[b-rcd4vdrwx1] {
        width: 250px;
        height: 100vh;
        position: sticky;
        top: 0;
    }
    .sidebar.collapsed[b-rcd4vdrwx1] {
        width: 78px;
    }

    .top-row[b-rcd4vdrwx1] {
        position: sticky;
        top: 0;
        z-index: 100;
    }

    .top-row.auth[b-rcd4vdrwx1]  a:first-child {
        flex: 1;
        text-align: right;
        width: 0;
    }

    .top-row[b-rcd4vdrwx1], article[b-rcd4vdrwx1] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }
}

article.content[b-rcd4vdrwx1] {
    position: relative;
    z-index: 1;
    flex: 1 1 auto;
    background-color: var(--mud-palette-background, #ffffff);
    color: var(--mud-palette-text-primary, inherit);
    border-top-left-radius: var(--content-corner-radius);
    border-bottom-left-radius: var(--content-corner-radius);
    overflow: hidden;
}

.page.dark-mode article.content[b-rcd4vdrwx1] {
    background-color: var(--mud-palette-background, #121212);
}

.shell-footer[b-rcd4vdrwx1] {
    position: relative;
    z-index: 0;
    min-height: 2.55rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, 0.92);
    background-image: var(--shell-gradient, linear-gradient(180deg, #bba32a 0%, #5e5215 100%));
    background-size: 100% 100vh;
    background-position: bottom left;
    background-repeat: no-repeat;
}

.shell-footer a[b-rcd4vdrwx1],
.shell-footer a:visited[b-rcd4vdrwx1],
.shell-footer a:hover[b-rcd4vdrwx1],
.shell-footer a:focus[b-rcd4vdrwx1] {
    color: #ffffff;
    text-decoration-color: rgba(255, 255, 255, 0.78);
}

.shell-footer-content[b-rcd4vdrwx1] {
    text-align: center;
    font-size: 8pt;
    line-height: 1.35;
    opacity: 0.9;
}

@media (min-width: 641px) {
    .top-row[b-rcd4vdrwx1]::after {
        content: "";
        position: absolute;
        bottom: calc(-1 * var(--content-corner-radius));
        left: 0;
        width: var(--content-corner-radius);
        height: var(--content-corner-radius);
        background-image: var(--shell-gradient, linear-gradient(180deg, #bba32a 0%, #5e5215 100%));
        background-size: 100% 100vh;
        background-position: left -3.5rem;
        background-repeat: no-repeat;
        -webkit-mask-image: radial-gradient(
            circle at bottom right,
            transparent 0 calc(var(--content-corner-radius) - 0.5px),
            #000000 var(--content-corner-radius)
        );
        mask-image: radial-gradient(
            circle at bottom right,
            transparent 0 calc(var(--content-corner-radius) - 0.5px),
            #000000 var(--content-corner-radius)
        );
        pointer-events: none;
        z-index: 101;
    }

    .shell-footer[b-rcd4vdrwx1] {
        padding-left: 2rem !important;
        padding-right: 1.5rem !important;
    }

}

@media (min-width: 641px) and (max-width: 1024px) {
    .top-row[b-rcd4vdrwx1]  .tablet-nav-toggle {
        display: inline-flex;
        margin-right: 0.75rem;
    }

    .sidebar[b-rcd4vdrwx1] {
        width: 280px;
        min-width: 280px;
        height: 100vh;
        position: fixed;
        left: 0;
        top: 0;
        transform: translateX(-100%);
        transition: transform 0.2s ease;
        box-shadow: 0 10px 30px rgba(0, 0, 0, 0.32);
    }

    .sidebar.collapsed[b-rcd4vdrwx1] {
        width: 280px;
        min-width: 280px;
    }

    .sidebar.tablet-open[b-rcd4vdrwx1] {
        transform: translateX(0);
    }

    .sidebar-backdrop[b-rcd4vdrwx1] {
        display: block;
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.34);
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.2s ease;
        z-index: 1040;
    }

    .page.tablet-nav-open .sidebar-backdrop[b-rcd4vdrwx1] {
        opacity: 1;
        pointer-events: auto;
    }

    main[b-rcd4vdrwx1] {
        width: 100%;
    }

    .sidebar[b-rcd4vdrwx1] {
        margin-left: 0;
    }

    .top-row[b-rcd4vdrwx1], article[b-rcd4vdrwx1] {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    .shell-footer[b-rcd4vdrwx1] {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }
}

@media (min-width: 1025px) {
    .top-row[b-rcd4vdrwx1]  .tablet-nav-toggle {
        display: none !important;
    }
}

@media (max-width: 640.98px) {
    article.content[b-rcd4vdrwx1] {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
    }

    .shell-footer[b-rcd4vdrwx1] {
        min-height: 3.75rem;
    }
}

#blazor-error-ui[b-rcd4vdrwx1] {
    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-rcd4vdrwx1] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.nav-menu-root[b-jkjr768w0e] {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.navbar-toggler[b-jkjr768w0e] {
    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-jkjr768w0e] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-jkjr768w0e] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-jkjr768w0e] {
    font-size: 1.0rem;
}

.nav-branding[b-jkjr768w0e] {
    color: #20328F;
    line-height: 1.02rem;
    padding-top: 10px;
    margin-left: 0;
    text-decoration: none;
}

.nav-branding:hover[b-jkjr768w0e],
.nav-branding:focus[b-jkjr768w0e] {
    color: #20328F;
    text-decoration: none;
}

.nav-branding-logo[b-jkjr768w0e] {
    width: 117px;
    height: auto;
    flex: 0 0 auto;
    filter: drop-shadow(0 1px 1px rgba(255,255,255,.35)) drop-shadow(2px 2px 3px rgba(0,0,0,.4));
}

.nav-branding-title[b-jkjr768w0e] {
    line-height: 1.30;
    margin: 0;
    font-weight: 800;
    /*text-shadow: 0 1px 0 rgba(255, 255, 255, 0.35), 2px 2px 4px rgba(0, 0, 0, 0.35);*/
    filter: drop-shadow(1px 1px 1px rgba(255,255,255,.35)) drop-shadow(1px 1px 2px rgba(0,0,0,.4));
}

.nav-brand-line1[b-jkjr768w0e] {
    display: block;
    white-space: nowrap;
    margin-left:-17px;
}
.nav-brand-line2[b-jkjr768w0e] {
    display: block;
    white-space: nowrap;
    margin-left: -10px;
}
.nav-brand-line3[b-jkjr768w0e] {
    display: block;
    white-space: nowrap;
    margin-left: -3px;
}

.bi[b-jkjr768w0e] {
    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 {
    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 {
    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 {
    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");
}*/

.nav-item[b-jkjr768w0e] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-jkjr768w0e] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-jkjr768w0e] {
        padding-bottom: 1rem;
    }

.nav-item[b-jkjr768w0e]  .nav-link {
        color: white;/*#d7d7d7;*/
        background: none;
        border: none;
        border-radius: 4px;
        font-weight: 600;
        text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2), 0 2px 3px rgba(0, 0, 0, 0.45), 0 0 1px rgba(0, 0, 0, 0.5);
        height: calc(3rem - 6px);
        display: flex;
        align-items: center;
        line-height: calc(3rem - 6px);
        width: 100%;
    }

.nav-item[b-jkjr768w0e]  a.active {
    background-color: rgba(255,255,255,0.25);
    color: white;
}

.nav-item[b-jkjr768w0e]  .nav-link:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

.nav-scrollable[b-jkjr768w0e] {
    display: none;
    flex: 1 1 auto;
}

.nav-scrollable[b-jkjr768w0e]  .mud-tooltip-root {
    display: block;
    width: 100%;
}

.navbar-toggler:checked ~ .nav-scrollable[b-jkjr768w0e] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-jkjr768w0e] {
        display: none;
    }

    .nav-scrollable[b-jkjr768w0e] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        max-height: calc(100vh - 3.5rem);
        overflow-y: auto;
        overflow-x: hidden;
    }
}

.district-logo[b-jkjr768w0e] {
    width: 100%;
    max-height: 130px;
    object-fit: contain;
    /*filter: drop-shadow(0 2px 6px rgba(0,0,0,0.2));*/
    filter: drop-shadow(0 1px 1px rgba(255,255,255,.35)) drop-shadow(2px 2px 3px rgba(0,0,0,.4));
}

.navmenu-footer[b-jkjr768w0e] {
    padding: 12px 16px 0 16px;
    display: flex;
    flex-direction: column;
    gap: 0px;
    color: white;
}



.management-toggle .mud-icon-root[b-jkjr768w0e] {
    margin-left: 12px !important;
    margin-right: -4px !important;
}
.management-subitem[b-jkjr768w0e] {
    padding-left: 1.75rem !important;
}
.management-toggle-item[b-jkjr768w0e] {
    padding-bottom: 0;
    margin-bottom: 0;
}

.management-toggle-icon[b-jkjr768w0e] {
    min-width: 0;
}

.nav-collapse-item[b-jkjr768w0e] {
    display: none;
}

.nav-collapse-toggle[b-jkjr768w0e] {
    justify-content: flex-start;
    cursor: pointer;
}

.management-toggle-icon[b-jkjr768w0e] {
    display: flex;
    justify-content: center;
    width: 100%;
    border-radius: 4px;
}

@media (min-width: 641px) {
    .nav-collapse-item[b-jkjr768w0e] {
        display: block;
    }

    .nav-menu-root.collapsed .navbar-brand[b-jkjr768w0e] {
        display: none;
    }

    .nav-menu-root.collapsed .container-fluid[b-jkjr768w0e] {
        justify-content: center !important;
        margin-left: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .nav-menu-root.collapsed .container-fluid img[b-jkjr768w0e] {
        width: 44px;
        margin-right: 0 !important;
    }

    .nav-menu-root.collapsed .navmenu-footer[b-jkjr768w0e] {
        display: flex;
        align-items: center;
        padding: 0.75rem 0.5rem 0.5rem 0.5rem;
    }

    .nav-menu-root.collapsed .district-selector-panel[b-jkjr768w0e] {
        display: none;
    }

    .nav-menu-root.collapsed .district-logo[b-jkjr768w0e] {
        display: block;
        width: 100%;
        max-width: 54px;
        max-height: 54px;
        object-fit: contain;
        margin: 0 auto;
    }

    .nav-menu-root.collapsed .nav-item[b-jkjr768w0e] {
        padding-bottom: 0.35rem;
    }

    .nav-menu-root.collapsed .nav-collapse-item[b-jkjr768w0e],
    .nav-menu-root.collapsed .management-toggle-item[b-jkjr768w0e] {
        padding-top: 0 !important;
        padding-bottom: 0.35rem !important;
    }

    .nav-menu-root.collapsed .management-subitem[b-jkjr768w0e] {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    .nav-menu-root.collapsed .nav-item[b-jkjr768w0e]  .nav-link,
    .nav-menu-root.collapsed .management-toggle-icon[b-jkjr768w0e] {
        justify-content: center;
        padding-left: 0.35rem;
        padding-right: 0.35rem;
        gap: 0;
    }

    .nav-menu-root.collapsed .nav-collapse-toggle[b-jkjr768w0e] {
        justify-content: center;
    }

    .nav-menu-root.collapsed .nav-item[b-jkjr768w0e]  .mud-icon-root {
        margin-right: 0 !important;
    }

    .nav-menu-root.collapsed[b-jkjr768w0e]  .nav-label {
        display: none !important;
    }

    .nav-menu-root.collapsed[b-jkjr768w0e]  .mud-button-label {
        justify-content: center;
    }

    .nav-menu-root.collapsed[b-jkjr768w0e]  .mud-typography {
        white-space: nowrap;
    }
}

@media (min-width: 641px) and (hover: hover) and (pointer: fine) {
    .nav-menu-root.collapsed .nav-item[data-tooltip][b-jkjr768w0e] {
        position: relative;
    }

    .nav-menu-root.collapsed .nav-item[data-tooltip][b-jkjr768w0e]::after {
        content: attr(data-tooltip);
        position: absolute;
        top: 50%;
        left: calc(100% + 10px);
        transform: translateY(-50%);
        opacity: 0;
        pointer-events: none;
        white-space: nowrap;
        z-index: 1200;
        background: rgba(13, 33, 79, 0.96);
        color: #fff;
        border-radius: 6px;
        padding: 0.4rem 0.55rem;
        font-size: 0.78rem;
        line-height: 1;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.28);
        transition: opacity 0.12s ease;
    }

    .nav-menu-root.collapsed .nav-item[data-tooltip][b-jkjr768w0e]::before {
        content: "";
        position: absolute;
        top: 50%;
        left: calc(100% + 4px);
        transform: translateY(-50%);
        opacity: 0;
        pointer-events: none;
        z-index: 1200;
        border-top: 6px solid transparent;
        border-bottom: 6px solid transparent;
        border-right: 6px solid rgba(13, 33, 79, 0.96);
        transition: opacity 0.12s ease;
    }

    .nav-menu-root.collapsed .nav-item[data-tooltip]:hover[b-jkjr768w0e]::after,
    .nav-menu-root.collapsed .nav-item[data-tooltip]:hover[b-jkjr768w0e]::before,
    .nav-menu-root.collapsed .nav-item[data-tooltip]:focus-within[b-jkjr768w0e]::after,
    .nav-menu-root.collapsed .nav-item[data-tooltip]:focus-within[b-jkjr768w0e]::before {
        opacity: 1;
    }
}

@media (min-width: 641px) and (max-width: 1024px) {
    .nav-branding[b-jkjr768w0e],
    .nav-menu-root.collapsed .container-fluid[b-jkjr768w0e] {
        width: 100%;
        justify-content: center !important;
        gap: 0.35rem;
        padding: 0.6rem 0.75rem 0.45rem 0.75rem;
    }

    .nav-branding-logo[b-jkjr768w0e] {
        width: 125px;
        /*max-width: 42%;*/
    }

    .nav-menu-root.collapsed .navbar-brand[b-jkjr768w0e] {
        display: inline-block;
    }

    .nav-menu-root.collapsed .container-fluid img[b-jkjr768w0e] {
        width: 96px;
        max-width: 50%;
        margin-right: 0.5rem !important;
    }

    .nav-branding-title[b-jkjr768w0e] {
        flex: 0 1 auto;
        min-width: 0;
        font-size: 1.1rem;
        line-height: 1.30;
    }


    .nav-brand-line1[b-jkjr768w0e] {
        margin-left: -17px;
    }

    .nav-brand-line2[b-jkjr768w0e] {
        margin-left: -10px;
    }

    .nav-brand-line3[b-jkjr768w0e] {
        margin-left: -3px;
    }


    /*.nav-brand-line1,
    .nav-brand-line2,
    .nav-brand-line3 {
        margin-left: 0;
    }*/

    .district-menu-value[b-jkjr768w0e] {
        font-size: 0.8rem;
        line-height: 1.12;
    }

    .nav-item[b-jkjr768w0e] {
        font-size: 0.84rem;
    }

    .nav-item[b-jkjr768w0e]  .nav-link {
        height: calc(2.6rem - 6px);
        line-height: calc(2.6rem - 6px);
    }

    .nav-collapse-item[b-jkjr768w0e] {
        display: none !important;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-i4k7u9e9lp],
.components-reconnect-repeated-attempt-visible[b-i4k7u9e9lp],
.components-reconnect-failed-visible[b-i4k7u9e9lp],
.components-pause-visible[b-i4k7u9e9lp],
.components-resume-failed-visible[b-i4k7u9e9lp],
.components-rejoining-animation[b-i4k7u9e9lp] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-i4k7u9e9lp],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-i4k7u9e9lp],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-i4k7u9e9lp],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-i4k7u9e9lp],
#components-reconnect-modal.components-reconnect-retrying[b-i4k7u9e9lp],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-i4k7u9e9lp],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-i4k7u9e9lp],
#components-reconnect-modal.components-reconnect-failed[b-i4k7u9e9lp],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-i4k7u9e9lp] {
    display: block;
}


#components-reconnect-modal[b-i4k7u9e9lp] {
    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-i4k7u9e9lp 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-i4k7u9e9lp 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-i4k7u9e9lp 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-i4k7u9e9lp]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-i4k7u9e9lp 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-i4k7u9e9lp {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-i4k7u9e9lp {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-i4k7u9e9lp {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-i4k7u9e9lp] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-i4k7u9e9lp] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-i4k7u9e9lp] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-i4k7u9e9lp] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-i4k7u9e9lp] {
        background-color: #6b9ed2;
    }


/* Sized to the dialog rather than stretched to it, so the mark keeps its
   proportions and leaves the spinner below it room. */
.components-reconnect-logo[b-i4k7u9e9lp] {
    display: block;
    width: 100%;
    max-width: 11rem;
    height: auto;
}

.components-rejoining-animation[b-i4k7u9e9lp] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-i4k7u9e9lp] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-i4k7u9e9lp 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-i4k7u9e9lp] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-i4k7u9e9lp {
    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/Survey.razor.rz.scp.css */
.survey-page[b-5fnpzji437] {
    padding-bottom: 2rem;
}

/* Saving indicator: a fixed, dimmed overlay centered on the viewport so it
   stays visible regardless of scroll position. The show delay and minimum
   visible time are handled in Survey.razor.cs; here we just fade it in. */
.survey-saving-overlay[b-5fnpzji437] {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.45);
    opacity: 0;
    animation: survey-saving-overlay-in-b-5fnpzji437 0.15s ease-out forwards;
}

@keyframes survey-saving-overlay-in-b-5fnpzji437 {
    to {
        opacity: 1;
    }
}

.survey-saving-modal[b-5fnpzji437] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.5rem 2rem;
    border-radius: 12px;
    background: var(--mud-palette-surface);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.4);
}

.survey-header[b-5fnpzji437] {
    background: linear-gradient(180deg, color-mix(in srgb, var(--mud-palette-surface) 94%, var(--mud-palette-primary) 6%), var(--mud-palette-surface));
}

.disposal-header[b-5fnpzji437] {
    width: 100%;
    align-self: stretch;
    overflow: hidden;
}

.survey-status-alert[b-5fnpzji437] {
    display: flex;
    width: 100%;
    padding: 0;
}

.survey-new-status-header[b-5fnpzji437] {
    align-items: center;
    justify-content: center;
    min-height: 72px;
    text-align: center;
}

/* Holds the centered title between the optional NDE logo columns. */
.survey-new-status-identity[b-5fnpzji437] {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    justify-content: center;
    min-width: 0;
}

.survey-new-status-title[b-5fnpzji437] {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.2;
}

.survey-status-header[b-5fnpzji437] {
    display: flex;
    align-items: stretch;
    flex: 1 1 auto;
    width: 100%;
    min-height: 72px;
}

[b-5fnpzji437] .survey-status-alert .mud-alert-position {
    flex: 1 1 100%;
    width: 100%;
    min-width: 0;
    align-items: stretch;
    justify-content: stretch !important;
}

[b-5fnpzji437] .survey-status-alert .mud-alert-message {
    width: 100%;
    flex: 1 1 auto;
    min-width: 0;
    padding: 0;
}

[b-5fnpzji437] .survey-status-alert .mud-alert-content {
    width: 100%;
    flex: 1 1 auto;
    align-items: stretch;
    padding: 0;
}

.survey-status-side[b-5fnpzji437],
.survey-status-identity[b-5fnpzji437],
.survey-status-info[b-5fnpzji437] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
}

.survey-status-identity[b-5fnpzji437] {
    text-align: center;
    flex-direction: column;
    flex: 1.4 1 180px;
    padding: 0.55rem 0.75rem;
    border-left: 1px solid rgba(255, 255, 255, 0.24);
}

.survey-status-header > .survey-status-identity:first-child[b-5fnpzji437] {
    border-left: 0;
}

.survey-status-side + .survey-status-identity[b-5fnpzji437] {
    border-left: 0;
}

.survey-status-side[b-5fnpzji437] {
    flex: 0 0 112px;
    padding: 0.45rem 1rem;
}


.survey-status-info[b-5fnpzji437] {
    flex: 1 1 130px;
    flex-direction: column;
    gap: 0.08rem;
    padding: 0.5rem 0.65rem;
    text-align: center;
    border-left: 1px solid rgba(255, 255, 255, 0.24);
}

.survey-status-info-nde[b-5fnpzji437] {
    flex-basis: 160px;
}

.survey-status-info-label[b-5fnpzji437] {
    font-weight: 700;
    line-height: 1.15;
}

.survey-status-info-value[b-5fnpzji437],
.survey-status-info-date[b-5fnpzji437] {
    line-height: 1.18;
    overflow-wrap: anywhere;
}

.survey-status-teacher[b-5fnpzji437] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

    .survey-status-teacher span + span[b-5fnpzji437] {
        margin-left: 0.35rem;
    }

.survey-status-meta[b-5fnpzji437] {
    font-size: 1rem;
    line-height: 1.25;
}

.survey-status-side img[b-5fnpzji437] {
    height: 72px;
    width: 72px;
    object-fit: contain;
    margin: 0;
}

@media (max-width: 960px) {
    .survey-status-header[b-5fnpzji437] {
        flex-wrap: wrap;
    }

    .survey-status-side[b-5fnpzji437] {
        flex: 0 0 88px;
        padding: 0 0.75rem;
        min-height: 64px;
    }

        .survey-status-side img[b-5fnpzji437] {
            height: 64px;
            width: 64px;
        }

    .survey-status-identity[b-5fnpzji437] {
        flex: 1 1 calc(100% - 144px);
    }

    .survey-status-info[b-5fnpzji437] {
        flex: 1 1 33.333%;
    }
}

@media (max-width: 820px) {
    .survey-status-header[b-5fnpzji437] {
        min-height: 0;
    }

    .survey-status-header-standard[b-5fnpzji437] {
        flex-wrap: nowrap;
        align-items: stretch;
    }

        .survey-status-header-standard .survey-status-identity[b-5fnpzji437],
        .survey-status-header-standard .survey-status-info[b-5fnpzji437] {
            flex: 1 1 25%;
            padding: 0.42rem 0.3rem;
        }

        .survey-status-header-standard .survey-status-identity[b-5fnpzji437] {
            border-left: 0;
        }

        .survey-status-header-standard .survey-status-teacher[b-5fnpzji437] {
            flex-direction: column;
            align-items: center;
            gap: 0;
            font-size: 0.78rem;
            line-height: 1.05;
        }

            .survey-status-header-standard .survey-status-teacher span + span[b-5fnpzji437] {
                margin-left: 0;
            }

        .survey-status-header-standard .survey-status-meta[b-5fnpzji437],
        .survey-status-header-standard .survey-status-info-value[b-5fnpzji437],
        .survey-status-header-standard .survey-status-info-date[b-5fnpzji437] {
            font-size: 0.62rem;
            line-height: 1.06;
        }

        .survey-status-header-standard .survey-status-info-label[b-5fnpzji437] {
            font-size: 0.64rem;
            line-height: 1.05;
        }

    .survey-status-header-nde[b-5fnpzji437] {
        flex-wrap: wrap;
    }

        .survey-status-header-nde .survey-status-side[b-5fnpzji437] {
            flex: 0 0 20%;
            order: 0;
            min-height: 58px;
        }

            .survey-status-header-nde .survey-status-side img[b-5fnpzji437] {
                height: 54px;
                width: 54px;
            }

        .survey-status-header-nde .survey-status-identity[b-5fnpzji437] {
            flex: 1 1 60%;
            order: 0;
            padding: 0.42rem 0.35rem;
            border-left: 0;
        }

        .survey-status-header-nde .survey-status-info[b-5fnpzji437] {
            flex: 1 1 25%;
            order: 1;
            padding: 0.38rem 0.22rem;
            border-top: 1px solid rgba(255, 255, 255, 0.24);
        }

        .survey-status-header-nde .survey-status-identity + .survey-status-info[b-5fnpzji437] {
            border-left: 0;
        }

        .survey-status-header-nde .survey-status-teacher[b-5fnpzji437] {
            font-size: 0.95rem;
            line-height: 1.05;
        }

        .survey-status-header-nde .survey-status-meta[b-5fnpzji437] {
            font-size: 0.68rem;
            line-height: 1.05;
        }

        .survey-status-header-nde .survey-status-info-label[b-5fnpzji437] {
            font-size: 0.58rem;
            line-height: 1;
        }

        .survey-status-header-nde .survey-status-info-value[b-5fnpzji437],
        .survey-status-header-nde .survey-status-info-date[b-5fnpzji437] {
            font-size: 0.56rem;
            line-height: 1;
        }
}

.survey-summary[b-5fnpzji437] {
    background: rgba(25, 118, 210, 0.05);
    border: 1px solid rgba(25, 118, 210, 0.12);
    border-radius: 12px;
}

.survey-section[b-5fnpzji437] {
    border-left: 5px solid var(--mud-palette-primary);
    background: color-mix(in srgb, var(--mud-palette-surface) 88%, var(--mud-palette-lines-default) 12%);
}

.survey-section-description[b-5fnpzji437] {
    margin-top: 0.25rem;
}

.survey-indicator[b-5fnpzji437] {
    background: var(--mud-palette-surface);
    border-radius: 10px;
    border: 1px solid var(--mud-palette-lines-default);
}

.survey-score-set[b-5fnpzji437] {
    background: color-mix(in srgb, var(--mud-palette-surface) 94%, var(--mud-palette-primary) 6%);
    border: 1px solid color-mix(in srgb, var(--mud-palette-lines-default) 70%, var(--mud-palette-primary) 30%);
    border-radius: 10px;
    transition: background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.survey-score-set-complete[b-5fnpzji437] {
    background: linear-gradient(180deg, color-mix(in srgb, var(--mud-palette-surface) 84%, var(--mud-palette-success) 16%), color-mix(in srgb, var(--mud-palette-surface) 92%, var(--mud-palette-success) 8%));
    border-color: color-mix(in srgb, var(--mud-palette-success) 70%, var(--mud-palette-lines-default) 30%);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--mud-palette-success) 28%, transparent);
}

.survey-score-select-wrapper[b-5fnpzji437] {
    position: relative;
    z-index: 1;
    border-radius: 10px;
    padding: 0.65rem;
    min-width: 0;
    /*transition: background-color 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;*/
}

    .survey-score-select-wrapper:not(.survey-score-select-complete)[b-5fnpzji437] {
        background: color-mix(in srgb, var(--mud-palette-surface) 94%, var(--mud-palette-error) 6%);
        border: 1px dashed color-mix(in srgb, var(--mud-palette-error) 48%, var(--mud-palette-lines-default) 52%);
    }

.survey-score-select-wrapper-open[b-5fnpzji437] {
    z-index: 40;
}

.survey-score-select-complete[b-5fnpzji437] {
    background: linear-gradient(180deg, color-mix(in srgb, var(--mud-palette-surface) 82%, var(--mud-palette-success) 18%), color-mix(in srgb, var(--mud-palette-surface) 92%, var(--mud-palette-success) 8%));
    border: 2px solid color-mix(in srgb, var(--mud-palette-success) 74%, var(--mud-palette-lines-default) 26%);
    /*box-shadow: 0 0 0 1px rgba(46, 125, 50, 0.1);*/
}

    /*.survey-score-complete-chip {
    margin-bottom: 0.5rem;
    font-weight: 700;
}*/

    /*.survey-score-select-complete ::deep .mud-input-slot,
.survey-score-select-complete ::deep .mud-input-root,
.survey-score-select-complete ::deep .mud-select {
    background: rgba(46, 125, 50, 0.08) !important;
    border-radius: 8px;
}*/

    .survey-score-select-complete[b-5fnpzji437]  input,
    .survey-score-select-complete[b-5fnpzji437]  .mud-select-input,
    .survey-score-select-complete[b-5fnpzji437]  .mud-input-label,
    .survey-score-select-complete[b-5fnpzji437]  .mud-select-value {
        color: var(--mud-palette-success) !important;
        font-weight: 700 !important;
    }

    .survey-score-select-complete[b-5fnpzji437]  .mud-input-outlined-border,
    .survey-score-select-complete[b-5fnpzji437]  .mud-notched-outline {
        border-color: var(--mud-palette-success) !important;
        border-width: 2px !important;
    }

    .survey-score-select-complete[b-5fnpzji437]  .mud-select-adornment,
    .survey-score-select-complete[b-5fnpzji437]  .mud-input-adornment {
        color: var(--mud-palette-success) !important;
    }

.survey-selected-score-label[b-5fnpzji437] {
    margin-top: 0.4rem;
    padding: 0.45rem 0.7rem;
    border-radius: 8px;
    background: color-mix(in srgb, var(--mud-palette-surface) 88%, var(--mud-palette-primary) 12%);
    border: 1px solid color-mix(in srgb, var(--mud-palette-lines-default) 65%, var(--mud-palette-primary) 35%);
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.score-radio-header[b-5fnpzji437] {
    margin-bottom: 0.45rem;
    font-size: 0.75rem;
    color: var(--mud-palette-text-secondary);
}

.score-dropdown-required-indicator[b-5fnpzji437] {
    color: var(--mud-palette-error);
    font-weight: 700;
}

/* Layout for the score answers.
   The .score-radio-group class lives on MudBlazor's MudRadioGroup root, and the
   option cards live in its .mud-input-control-input-container child. Neither
   receives this component's CSS-isolation scope attribute, so these rules reach
   them via ::deep from a wrapper this component actually owns.

   DEFAULT is one-answer-per-row (a column). That layout can never overflow the
   card, which matters: a single non-wrapping row of non-shrinking answers
   reports a huge min-content width that MudBlazor's flex ancestors happily grow
   to fit, ballooning the whole page (horizontal scrollbar). By defaulting to a
   column we keep the page bounded, so clientWidth is always the true available
   width. surveyScroll.js then measures the natural single-row width OFF-FLOW
   (see .score-radio-measuring) and adds .fits-one-line only when every answer
   genuinely fits on one line. No partial "2 of 2" wrap state ever occurs. */
/* The group is a plain full-width block so it can never shrink-wrap to its
   content (a flex element can, which was starving the row of free width). */
.survey-score-select-wrapper[b-5fnpzji437]  .score-radio-group {
    display: block;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

/* Full-width passthrough wrapper. MudBlazor nests the options an extra level:
   .score-radio-group > .mud-input-control-input-container > .mud-radio-group >
   .score-radio-option. Only the innermost .mud-radio-group is the real options
   container, so everything above it just needs to carry full width down. */
.survey-score-select-wrapper[b-5fnpzji437]  .mud-input-control-input-container {
    display: block;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

/* Default: the options container (.mud-radio-group) stacks answers per row. */
.survey-score-select-wrapper[b-5fnpzji437]  .mud-radio-group {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

/* Off-flow MEASUREMENT container: a real flex row at natural widths so the JS
   can read each answer's true single-line width. Self-contained (the clone has
   its .mud-input-control-input-container class stripped) so the .fits-one-line
   grid rule below can never match and hijack the measurement. */
.survey-score-select-wrapper[b-5fnpzji437]  .score-radio-measuring {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 0.5rem;
}

/* DISPLAYED single row: equal-width columns filling the full row width.
   Grid with 1fr tracks guarantees equal cells that span 100% regardless of
   content, which plain flex-grow did not achieve here (the flex container was
   shrink-wrapping to its content). */
.survey-score-select-wrapper[b-5fnpzji437]  .score-radio-group.fits-one-line .mud-radio-group {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
    align-items: stretch;
    gap: 0.5rem;
    width: 100%;
}

/* Off-flow measurement: size to content without disturbing page layout. */
.survey-score-select-wrapper[b-5fnpzji437]  .score-radio-measuring {
    position: absolute;
    visibility: hidden;
    width: max-content;
    max-width: none;
}

/* Column default: answers fill the row and wrap their text. */
.survey-score-select-wrapper[b-5fnpzji437]  .score-radio-option {
    flex: 1 1 auto;
    width: 100%;
}

.survey-score-select-wrapper[b-5fnpzji437]  .score-radio-option-text {
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* DISPLAYED single row: the answers that fit share the row as equal-width
   grid cells spanning the full width, mirroring the full-width stacked look.
   (Grid items stretch to fill their 1fr cell; min-width:0 lets long labels
   wrap inside the cell instead of forcing the track wider.) */
.survey-score-select-wrapper[b-5fnpzji437]  .score-radio-group.fits-one-line .score-radio-option {
    width: auto;
    min-width: 0;
}

/* On tablets and narrower, hide the radio dot on ALL score answers for a
   consistent look and to give tight single-row cells room (e.g. so "Consi
   stently" stops wrapping). Selection stays clearly shown by the highlighted
   cell background. Centering is applied only to the single-row (fits-one-line)
   cells; stacked full-width answers keep their labels left-aligned. */
@media (max-width: 1024px) {
    .survey-score-select-wrapper[b-5fnpzji437]  .score-radio-control {
        display: none;
    }

    .survey-score-select-wrapper[b-5fnpzji437]  .score-radio-group.fits-one-line .score-radio-option {
        gap: 0;
        justify-content: center;
        text-align: center;
    }
}

/* Off-flow MEASUREMENT only (on the hidden clone): answers take their natural
   single-line width so we can read the true one-row width. Placed after the
   .fits-one-line rule so it wins on the clone via later source order. */
.survey-score-select-wrapper[b-5fnpzji437]  .score-radio-measuring .score-radio-option {
    flex: 0 0 auto;
    width: auto;
}

.survey-score-select-wrapper[b-5fnpzji437]  .score-radio-measuring .score-radio-option-text {
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
}

.score-radio-option[b-5fnpzji437] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    border: 1px solid color-mix(in srgb, var(--mud-palette-lines-default) 60%, var(--mud-palette-success) 40%);
    border-radius: 8px;
    padding: 0.55rem 0.7rem;
    background: color-mix(in srgb, var(--mud-palette-surface) 92%, var(--mud-palette-background) 8%);
    transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

    .score-radio-option:hover[b-5fnpzji437] {
        background: color-mix(in srgb, var(--mud-palette-surface) 86%, var(--mud-palette-primary) 14%);
    }

/*.score-radio-option-selected {
    background: linear-gradient(
        180deg,
        color-mix(in srgb, var(--mud-palette-surface) 46%, var(--mud-palette-warning) 38%, var(--mud-palette-success) 16%),
        color-mix(in srgb, var(--mud-palette-surface) 58%, var(--mud-palette-warning) 24%, var(--mud-palette-success) 18%)
    );
    border: 2px solid color-mix(in srgb, var(--mud-palette-warning) 72%, var(--mud-palette-success) 28%);
    box-shadow:
        inset 0 0 0 1px color-mix(in srgb, var(--mud-palette-warning) 40%, transparent),
        0 0 0 1px color-mix(in srgb, var(--mud-palette-success) 35%, transparent),
        0 8px 18px color-mix(in srgb, var(--mud-palette-warning) 20%, transparent);
}*/


.score-radio-option-selected[b-5fnpzji437] {
    background: #5f561f;
    border: 2px solid color-mix(in srgb, var(--mud-palette-warning) 72%, var(--mud-palette-success) 28%);
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--mud-palette-warning) 40%, transparent), 0 0 0 1px color-mix(in srgb, var(--mud-palette-success) 35%, transparent), 0 8px 18px color-mix(in srgb, var(--mud-palette-warning) 20%, transparent);
}


    .score-radio-option-selected .score-radio-option-text[b-5fnpzji437] {
        color: var(--survey-selected-score-text, #fff8d7);
        /*font-weight: 800;*/
        text-shadow: var(--survey-selected-score-text-shadow, none);
    }

        .score-radio-option-selected:hover[b-5fnpzji437] {
            color: var(--survey-selected-score-text, #fff8d7);
            background: #5f561f;
            /*font-weight: 800;*/
            text-shadow: var(--survey-selected-score-text-shadow, none);
        }

.score-radio-control[b-5fnpzji437] {
    margin-top: 0;
}

/* Keep a white disc inside the radio icon so the selected cell's dark
   background doesn't show through the ring and swallow the control. The
   gradient fills the ring interior only (stops just under the ring), so there
   is no white halo around the outside of the icon. If a sliver of the cell
   background still shows inside the ring, nudge the 78% stop upward slightly. */
.survey-score-select-wrapper[b-5fnpzji437]  .score-radio-control svg {
    background-image: radial-gradient(circle closest-side, #fff 0 78%, transparent 79%);
    border-radius: 50%;
}

.score-radio-option-text[b-5fnpzji437] {
    line-height: 1.35;
    flex: 1;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.survey-guide-select-row[b-5fnpzji437] {
    min-width: 0;
}

.survey-guide-details-button[b-5fnpzji437] {
    margin-top: 0.7rem;
}

.survey-action-col[b-5fnpzji437] {
    display: flex;
}

.survey-action-col-left[b-5fnpzji437] {
    justify-content: flex-start;
}

.survey-action-col-center[b-5fnpzji437] {
    justify-content: center;
}

.survey-action-col-right[b-5fnpzji437] {
    justify-content: flex-end;
}

.survey-action-group[b-5fnpzji437] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

@media (max-width: 959.98px) {
    .survey-status-header[b-5fnpzji437] {
        min-height: 52px;
        padding: 0 3.75rem;
    }

    .survey-status-logo img[b-5fnpzji437] {
        height: 48px;
        width: 48px;
    }

    .survey-action-grid[b-5fnpzji437] {
        margin-top: 0.35rem;
    }

    .survey-action-col[b-5fnpzji437] {
        width: 100%;
        margin-bottom: 0.85rem;
    }

    .survey-action-col-left[b-5fnpzji437] {
        justify-content: flex-start !important;
    }

    .survey-action-col-center[b-5fnpzji437] {
        justify-content: center !important;
    }

    .survey-action-col-right[b-5fnpzji437] {
        justify-content: flex-end !important;
    }

    .survey-action-group[b-5fnpzji437] {
        gap: 0.9rem;
    }

        .survey-action-group .mud-button-root[b-5fnpzji437] {
            min-height: 3rem;
            padding: 0.7rem 1.25rem;
            font-size: 1rem;
            font-weight: 600;
        }
}

.section-header[b-5fnpzji437] {
    background-color: rgba(255, 240, 240, 0.9);
    border: 1px solid rgba(244, 67, 54, 0.35);
    border-radius: 8px;
}

@media (min-width: 600px) and (max-width: 1024px) {
    .survey-section-description[b-5fnpzji437] {
        font-size: 1.02rem;
    }

    .survey-indicator-group-chip[b-5fnpzji437] {
        font-size: 1.3rem;
    }

    .survey-indicator-text[b-5fnpzji437] {
        font-size: 1.08rem;
    }

    .survey-scale-description[b-5fnpzji437] {
        font-size: 1.1rem;
    }

    .survey-scoreset-description[b-5fnpzji437] {
        font-size: 1rem;
    }

    .score-radio-option-text[b-5fnpzji437] {
        font-size: 1.02rem;
    }
}

/* Note under the survey action buttons: force it onto its own full-width row
   below the inline-flex button group. */
.survey-action-note[b-5fnpzji437] {
    flex-basis: 100%;
    width: 100%;
    margin-top: 0.5rem;
}

/* "Look For" collapsible box: the entire alert is the toggle target, so make
   the whole thing read as clickable. The "(click to show/hide)" label conveys
   the affordance, so no chevron is needed. */
.survey-lookfor-toggle[b-5fnpzji437] {
    cursor: pointer;
    user-select: none;
}

    .survey-lookfor-toggle:hover[b-5fnpzji437] {
        opacity: 0.85;
    }

    .survey-lookfor-toggle:focus-visible[b-5fnpzji437] {
        outline: 2px solid var(--mud-palette-primary);
        outline-offset: 2px;
        border-radius: 6px;
    }
