/* /Components/Layout/AppHeader.razor.rz.scp.css */
.app-header[b-hhzyin7dhe] {
    position: sticky;
    z-index: 1040;
    top: 0;
    min-height: 64px;
    padding: .55rem 0;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
    background: linear-gradient(105deg, #0d3822, #14532d 58%, #166534);
    box-shadow: 0 5px 20px rgba(13, 56, 34, .2);
}

.app-header-inner[b-hhzyin7dhe] {
    padding-inline: 2rem;
}

.app-brand[b-hhzyin7dhe] {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: 0;
}

.app-brand img[b-hhzyin7dhe] {
    width: 38px;
    height: 38px;
    object-fit: cover;
    border: 1px solid rgba(255, 255, 255, .3);
    border-radius: .7rem;
    background: #fff;
    box-shadow: 0 2px 6px rgba(0, 0, 0, .12);
}

.app-brand-title[b-hhzyin7dhe] {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
}

.app-brand-title strong[b-hhzyin7dhe] {
    color: #fff;
    font-size: 1.05rem;
    font-weight: 780;
    letter-spacing: -.015em;
}

.app-brand-badge[b-hhzyin7dhe] {
    display: inline-block;
    padding: .14rem .5rem;
    border-radius: .45rem;
    background: rgba(255, 255, 255, .18);
    border: 1px solid rgba(255, 255, 255, .28);
    color: #f0fdf4;
    font-size: .67rem;
    font-weight: 750;
    letter-spacing: .04em;
    line-height: 1.2;
}

.app-nav[b-hhzyin7dhe] {
    gap: .24rem;
}

.app-nav[b-hhzyin7dhe]  .nav-link {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .48rem .72rem;
    border-radius: .62rem;
    color: rgba(240, 253, 244, .78);
    font-size: .76rem;
    font-weight: 650;
}

.app-nav[b-hhzyin7dhe]  .nav-link:hover,
.app-nav[b-hhzyin7dhe]  .nav-link:focus-visible {
    color: #fff;
    background: rgba(255, 255, 255, .12);
}

.app-nav[b-hhzyin7dhe]  .nav-link.active {
    color: #fff;
    background: rgba(255, 255, 255, .22);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .25);
}

@media (max-width: 767px) {
    .app-header-inner[b-hhzyin7dhe] {
        padding-inline: .9rem;
    }

    .app-nav[b-hhzyin7dhe] {
        gap: .15rem;
        padding-top: .65rem;
    }

    .app-nav[b-hhzyin7dhe]  .nav-link {
        width: 100%;
    }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.app-shell[b-lg1ev72tg5] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.app-main[b-lg1ev72tg5] {
    flex: 1 1 auto;
    padding: 1.7rem 2rem 2.25rem;
}

.guest-main[b-lg1ev72tg5] {
    min-height: 100vh;
    padding: 1.5rem;
}

#blazor-error-ui[b-lg1ev72tg5] {
    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-lg1ev72tg5] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }

@media (max-width: 720px) {
    .app-main[b-lg1ev72tg5] {
        padding: 1.2rem .8rem 1.6rem;
    }

    .guest-main[b-lg1ev72tg5] {
        padding: .8rem;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-5wu28ru9kp],
.components-reconnect-repeated-attempt-visible[b-5wu28ru9kp],
.components-reconnect-failed-visible[b-5wu28ru9kp],
.components-pause-visible[b-5wu28ru9kp],
.components-resume-failed-visible[b-5wu28ru9kp],
.components-rejoining-animation[b-5wu28ru9kp] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-5wu28ru9kp],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-5wu28ru9kp],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-5wu28ru9kp],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-5wu28ru9kp],
#components-reconnect-modal.components-reconnect-retrying[b-5wu28ru9kp],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-5wu28ru9kp],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-5wu28ru9kp],
#components-reconnect-modal.components-reconnect-failed[b-5wu28ru9kp],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-5wu28ru9kp] {
    display: block;
}


#components-reconnect-modal[b-5wu28ru9kp] {
    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-5wu28ru9kp 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-5wu28ru9kp 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-5wu28ru9kp 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-5wu28ru9kp]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-5wu28ru9kp 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-5wu28ru9kp {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-5wu28ru9kp {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-5wu28ru9kp {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-5wu28ru9kp] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-5wu28ru9kp] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-5wu28ru9kp] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-5wu28ru9kp] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-5wu28ru9kp] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-5wu28ru9kp] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-5wu28ru9kp] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-5wu28ru9kp 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-5wu28ru9kp] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-5wu28ru9kp {
    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/Login.razor.rz.scp.css */
.login-page[b-sqlaccylea] {
    min-height: calc(100vh - 3rem);
    display: grid;
    place-items: center;
    padding: 2rem 1rem;
}

.login-card[b-sqlaccylea] {
    width: min(430px, 100%);
    padding: 1.7rem;
    border: 1px solid #e3e9ef;
    border-radius: 1.3rem;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 24px 60px rgba(20, 39, 60, .12);
}

.login-brand[b-sqlaccylea] {
    display: flex;
    align-items: center;
    gap: .8rem;
    padding-bottom: 1.2rem;
    margin-bottom: 1.35rem;
    border-bottom: 1px solid #edf0f4;
}

.login-brand-logo[b-sqlaccylea] {
    width: 44px;
    height: 44px;
    object-fit: cover;
    border: 1px solid #e1e7ec;
    border-radius: .78rem;
    background: #fff;
    padding: 2px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, .05);
    flex-shrink: 0;
}

.login-brand-title[b-sqlaccylea] {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
}

.login-brand-title strong[b-sqlaccylea] {
    color: #14532d;
    font-size: 1.15rem;
    font-weight: 800;
    letter-spacing: -.02em;
}

.login-brand-badge[b-sqlaccylea] {
    display: inline-block;
    padding: .15rem .55rem;
    border-radius: .45rem;
    background: #dcfce7;
    border: 1px solid #86efac;
    color: #166534;
    font-size: .68rem;
    font-weight: 750;
    letter-spacing: .04em;
    line-height: 1.2;
}

.login-heading[b-sqlaccylea] {
    margin-bottom: 1.3rem;
}

.login-eyebrow[b-sqlaccylea] {
    margin-bottom: .26rem;
    color: #15803d;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.login-heading h1[b-sqlaccylea] {
    margin: 0;
    color: #172033;
    font-size: 1.45rem;
    font-weight: 780;
    letter-spacing: -.02em;
}

.login-heading p[b-sqlaccylea] {
    margin: .4rem 0 0;
    color: #718096;
    font-size: .8rem;
    line-height: 1.5;
}

.login-field[b-sqlaccylea] {
    margin-bottom: 1rem;
}

.login-field > label[b-sqlaccylea] {
    display: block;
    margin-bottom: .35rem;
    color: #526177;
    font-size: .72rem;
    font-weight: 720;
}

.login-input[b-sqlaccylea] {
    min-height: 44px;
    display: flex;
    align-items: center;
    gap: .55rem;
    padding: 0 .75rem;
    border: 1px solid #dce2e9;
    border-radius: .72rem;
    background: #f9fafb;
    transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

.login-input:focus-within[b-sqlaccylea] {
    border-color: #22c55e;
    background: #fff;
    box-shadow: 0 0 0 .2rem rgba(34, 197, 94, .14);
}

.login-input i[b-sqlaccylea] {
    color: #8792a1;
}

.login-input[b-sqlaccylea]  input {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    color: #29374b;
    background: transparent;
    font-size: .82rem;
}

.login-field[b-sqlaccylea]  .validation-message {
    display: block;
    margin-top: .3rem;
    color: #b42318;
    font-size: .69rem;
}

.remember-field[b-sqlaccylea] {
    display: flex;
    align-items: center;
    gap: .45rem;
    margin: .1rem 0 1.1rem;
}

.remember-field[b-sqlaccylea]  input {
    width: 16px;
    height: 16px;
    accent-color: #15803d;
}

.remember-field label[b-sqlaccylea] {
    color: #617086;
    font-size: .74rem;
}

.login-submit[b-sqlaccylea] {
    width: 100%;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    border: 0;
    border-radius: .75rem;
    color: #fff;
    background: linear-gradient(110deg, #15803d, #166534);
    box-shadow: 0 8px 18px rgba(21, 128, 61, .25);
    font-size: .8rem;
    font-weight: 750;
}

.login-submit:hover[b-sqlaccylea],
.login-submit:focus-visible[b-sqlaccylea] {
    background: linear-gradient(110deg, #166534, #14532d);
}

.login-submit:disabled[b-sqlaccylea] {
    opacity: .7;
}

.login-alert[b-sqlaccylea] {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    padding: .7rem .75rem;
    margin-top: .85rem;
    border: 1px solid #f0c9cd;
    border-radius: .7rem;
    color: #7c2831;
    background: #fff6f7;
    font-size: .72rem;
    line-height: 1.4;
}

.login-security-note[b-sqlaccylea] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .42rem;
    padding-top: 1.15rem;
    margin-top: 1.2rem;
    border-top: 1px solid #edf0f4;
    color: #8792a1;
    font-size: .67rem;
    text-align: center;
}

.login-security-note i[b-sqlaccylea] {
    color: #4c937f;
}

@media (max-width: 520px) {
    .login-page[b-sqlaccylea] {
        padding: 1rem .25rem;
    }

    .login-card[b-sqlaccylea] {
        padding: 1.3rem;
        border-radius: 1.05rem;
    }
}
/* /Components/Pages/Profile.razor.rz.scp.css */
.profile-page[b-n4uu86vx8w] {
    width: min(1180px, 100%);
    margin: 0 auto;
    color: #172033;
}

.profile-loading[b-n4uu86vx8w] {
    min-height: 420px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    color: #5f6c7b;
    font-weight: 600;
}

.profile-hero[b-n4uu86vx8w] {
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    padding: 2rem 2.25rem;
    margin-bottom: 1.5rem;
    border-radius: 1.5rem;
    color: #fff;
    background:
        radial-gradient(circle at 86% 8%, rgba(255, 255, 255, .2), transparent 28%),
        linear-gradient(125deg, #0d3822 0%, #14532d 54%, #166534 100%);
    box-shadow: 0 18px 45px rgba(13, 56, 34, .2);
}

.profile-hero[b-n4uu86vx8w]::after {
    content: "";
    position: absolute;
    right: -60px;
    bottom: -110px;
    width: 280px;
    height: 280px;
    border: 42px solid rgba(255, 255, 255, .06);
    border-radius: 50%;
    pointer-events: none;
}

.profile-hero-content[b-n4uu86vx8w] {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 1.25rem;
}

.profile-avatar[b-n4uu86vx8w] {
    flex: 0 0 auto;
    width: 88px;
    height: 88px;
    display: grid;
    place-items: center;
    border: 3px solid rgba(255, 255, 255, .38);
    border-radius: 1.4rem;
    background: rgba(255, 255, 255, .16);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2);
    font-size: 1.65rem;
    font-weight: 800;
    letter-spacing: .04em;
    backdrop-filter: blur(8px);
}

.profile-identity[b-n4uu86vx8w] {
    min-width: 0;
}

.profile-eyebrow[b-n4uu86vx8w] {
    margin-bottom: .25rem;
    color: #bbf7d0;
    font-size: .74rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.profile-identity h1[b-n4uu86vx8w] {
    margin: 0;
    overflow: hidden;
    color: #fff;
    font-size: clamp(1.55rem, 3vw, 2.15rem);
    font-weight: 750;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.profile-identity p[b-n4uu86vx8w] {
    margin: .3rem 0 .8rem;
    color: rgba(255, 255, 255, .78);
}

.profile-badges[b-n4uu86vx8w] {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
}

.profile-badge[b-n4uu86vx8w] {
    display: inline-flex;
    align-items: center;
    gap: .42rem;
    padding: .38rem .65rem;
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 700;
}

.profile-badge-light[b-n4uu86vx8w] {
    color: #fff;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .18);
}

.profile-badge-success[b-n4uu86vx8w] {
    color: #d8ffe8;
    background: rgba(17, 118, 66, .38);
    border: 1px solid rgba(157, 255, 198, .18);
}

.status-dot[b-n4uu86vx8w] {
    width: .45rem;
    height: .45rem;
    border-radius: 50%;
    background: #5ee69a;
    box-shadow: 0 0 0 3px rgba(94, 230, 154, .14);
}

.profile-hero form[b-n4uu86vx8w] {
    position: relative;
    z-index: 1;
    flex: 0 0 auto;
}

.profile-logout-button[b-n4uu86vx8w] {
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    padding: .72rem 1rem;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: .8rem;
    color: #fff;
    background: rgba(7, 24, 39, .2);
    font-weight: 700;
    backdrop-filter: blur(8px);
}

.profile-logout-button:hover[b-n4uu86vx8w],
.profile-logout-button:focus-visible[b-n4uu86vx8w] {
    color: #fff;
    background: rgba(7, 24, 39, .38);
    border-color: rgba(255, 255, 255, .45);
}

.profile-grid[b-n4uu86vx8w] {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(340px, .92fr);
    gap: 1.5rem;
    align-items: start;
}

.profile-card[b-n4uu86vx8w] {
    padding: 1.6rem;
    border: 1px solid #e5eaf0;
    border-radius: 1.25rem;
    background: #fff;
    box-shadow: 0 12px 35px rgba(23, 32, 51, .07);
}

.profile-card-header[b-n4uu86vx8w] {
    display: flex;
    align-items: flex-start;
    gap: .9rem;
    padding-bottom: 1.25rem;
    margin-bottom: 1.25rem;
    border-bottom: 1px solid #edf0f4;
}

.profile-card-header h2[b-n4uu86vx8w] {
    margin: .08rem 0 .18rem;
    color: #172033;
    font-size: 1.08rem;
    font-weight: 750;
}

.profile-card-header p[b-n4uu86vx8w] {
    margin: 0;
    color: #718096;
    font-size: .86rem;
    line-height: 1.45;
}

.section-icon[b-n4uu86vx8w] {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: .8rem;
    font-size: 1.1rem;
}

.section-icon-blue[b-n4uu86vx8w] {
    color: #176b98;
    background: #e9f6fd;
}

.section-icon-amber[b-n4uu86vx8w] {
    color: #9b6214;
    background: #fff5df;
}

.account-details[b-n4uu86vx8w] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
    margin: 0;
}

.detail-item[b-n4uu86vx8w] {
    min-width: 0;
    padding: .9rem 1rem;
    border: 1px solid #edf0f4;
    border-radius: .9rem;
    background: #fafbfc;
}

.detail-item-wide[b-n4uu86vx8w] {
    grid-column: 1 / -1;
}

.detail-item dt[b-n4uu86vx8w] {
    display: flex;
    align-items: center;
    gap: .42rem;
    margin-bottom: .38rem;
    color: #788699;
    font-size: .72rem;
    font-weight: 750;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.detail-item dd[b-n4uu86vx8w] {
    margin: 0;
    overflow-wrap: anywhere;
    color: #263349;
    font-size: .91rem;
    font-weight: 650;
}

.password-field[b-n4uu86vx8w] {
    margin-bottom: 1rem;
}

.password-field .form-label[b-n4uu86vx8w] {
    margin-bottom: .4rem;
    color: #344258;
    font-size: .83rem;
    font-weight: 700;
}

.password-field[b-n4uu86vx8w]  .form-control {
    min-height: 44px;
    border-color: #dce2e9;
    box-shadow: none;
}

.password-field[b-n4uu86vx8w]  .form-control:focus {
    border-color: #2d87b5;
    box-shadow: 0 0 0 .2rem rgba(45, 135, 181, .12);
}

.password-toggle[b-n4uu86vx8w] {
    width: 46px;
    border-color: #dce2e9;
    color: #607087;
    background: #f7f9fb;
}

.password-toggle:hover[b-n4uu86vx8w],
.password-toggle:focus-visible[b-n4uu86vx8w] {
    color: #176b98;
    background: #eef6fa;
    border-color: #a9cddd;
}

.password-field[b-n4uu86vx8w]  .validation-message {
    display: block;
    margin-top: .3rem;
    color: #bd2c3c;
    font-size: .76rem;
}

.password-hint[b-n4uu86vx8w] {
    display: flex;
    gap: .5rem;
    padding: .7rem .8rem;
    margin: .2rem 0 1rem;
    border-radius: .72rem;
    color: #617084;
    background: #f3f6f9;
    font-size: .78rem;
    line-height: 1.4;
}

.profile-message[b-n4uu86vx8w] {
    display: flex;
    align-items: flex-start;
    gap: .55rem;
    padding: .75rem .85rem;
    font-size: .82rem;
}

.password-submit[b-n4uu86vx8w] {
    width: 100%;
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    border: 0;
    border-radius: .8rem;
    color: #fff;
    background: linear-gradient(110deg, #175f8b, #1682ad);
    box-shadow: 0 8px 18px rgba(22, 106, 145, .18);
    font-weight: 750;
}

.password-submit:hover[b-n4uu86vx8w],
.password-submit:focus-visible[b-n4uu86vx8w] {
    color: #fff;
    background: linear-gradient(110deg, #124e74, #126f96);
}

.password-submit:disabled[b-n4uu86vx8w] {
    opacity: .7;
}

@media (max-width: 900px) {
    .profile-grid[b-n4uu86vx8w] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .profile-hero[b-n4uu86vx8w] {
        align-items: stretch;
        flex-direction: column;
        padding: 1.35rem;
        border-radius: 1.15rem;
    }

    .profile-avatar[b-n4uu86vx8w] {
        width: 68px;
        height: 68px;
        border-radius: 1.05rem;
        font-size: 1.25rem;
    }

    .profile-identity h1[b-n4uu86vx8w] {
        white-space: normal;
    }

    .profile-logout-button[b-n4uu86vx8w] {
        width: 100%;
        justify-content: center;
    }

    .profile-card[b-n4uu86vx8w] {
        padding: 1.15rem;
        border-radius: 1rem;
    }

    .account-details[b-n4uu86vx8w] {
        grid-template-columns: 1fr;
    }

    .detail-item-wide[b-n4uu86vx8w] {
        grid-column: auto;
    }
}
/* /Components/Pages/Users.razor.rz.scp.css */
.users-page[b-12qwrl9ga2] {
    width: min(1280px, 100%);
    margin: 0 auto;
    color: #172033;
}

.users-hero[b-12qwrl9ga2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    margin-bottom: 1.4rem;
}

.page-eyebrow[b-12qwrl9ga2] {
    margin-bottom: .25rem;
    color: #15803d;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.users-hero h1[b-12qwrl9ga2] {
    margin: 0;
    color: #172033;
    font-size: clamp(1.7rem, 3vw, 2.2rem);
    font-weight: 780;
    letter-spacing: -.025em;
}

.users-hero p[b-12qwrl9ga2] {
    max-width: 650px;
    margin: .35rem 0 0;
    color: #718096;
    font-size: .93rem;
}

.add-user-button[b-12qwrl9ga2] {
    flex: 0 0 auto;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    gap: .55rem;
    padding: .65rem 1rem;
    border: 0;
    border-radius: .8rem;
    color: #fff;
    background: linear-gradient(110deg, #15803d, #166534);
    box-shadow: 0 8px 18px rgba(21, 128, 61, .25);
    font-weight: 720;
}

.add-user-button:hover[b-12qwrl9ga2],
.add-user-button:focus-visible[b-12qwrl9ga2] {
    color: #fff;
    background: linear-gradient(110deg, #166534, #14532d);
}

.page-alert[b-12qwrl9ga2] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: .8rem;
    padding: .85rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid #f0c9cd;
    border-radius: .9rem;
    color: #7c2831;
    background: #fff6f7;
}

.page-alert-icon[b-12qwrl9ga2] {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border-radius: .65rem;
    background: #fbe3e6;
}

.page-alert strong[b-12qwrl9ga2],
.page-alert span[b-12qwrl9ga2] {
    display: block;
}

.page-alert strong[b-12qwrl9ga2] {
    font-size: .86rem;
}

.page-alert span[b-12qwrl9ga2] {
    margin-top: .12rem;
    font-size: .78rem;
}

.summary-grid[b-12qwrl9ga2] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.summary-card[b-12qwrl9ga2] {
    display: flex;
    align-items: center;
    gap: .9rem;
    min-width: 0;
    padding: 1rem 1.1rem;
    border: 1px solid #e5eaf0;
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 8px 24px rgba(23, 32, 51, .055);
}

.summary-icon[b-12qwrl9ga2] {
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border-radius: .82rem;
    font-size: 1.05rem;
}

.summary-icon-blue[b-12qwrl9ga2] {
    color: #15803d;
    background: #f0fdf4;
}

.summary-icon-teal[b-12qwrl9ga2] {
    color: #177764;
    background: #e7f7f2;
}

.summary-icon-amber[b-12qwrl9ga2] {
    color: #9b6214;
    background: #fff5df;
}

.summary-card span[b-12qwrl9ga2],
.summary-card strong[b-12qwrl9ga2] {
    display: block;
}

.summary-card span[b-12qwrl9ga2] {
    color: #7a8797;
    font-size: .76rem;
    font-weight: 650;
}

.summary-card strong[b-12qwrl9ga2] {
    margin-top: .12rem;
    color: #1f2d40;
    font-size: 1.45rem;
    line-height: 1.1;
}

.users-card[b-12qwrl9ga2] {
    overflow: hidden;
    border: 1px solid #e5eaf0;
    border-radius: 1.2rem;
    background: #fff;
    box-shadow: 0 12px 35px rgba(23, 32, 51, .07);
}

.users-card-toolbar[b-12qwrl9ga2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.2rem 1.35rem;
    border-bottom: 1px solid #edf0f4;
}

.users-card-toolbar h2[b-12qwrl9ga2] {
    margin: 0;
    color: #1e2b3d;
    font-size: 1.02rem;
    font-weight: 760;
}

.users-card-toolbar p[b-12qwrl9ga2] {
    margin: .2rem 0 0;
    color: #7a8797;
    font-size: .76rem;
}

.user-search[b-12qwrl9ga2] {
    width: min(390px, 100%);
    min-height: 40px;
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: 0 .72rem;
    border: 1px solid #dce2e9;
    border-radius: .75rem;
    background: #f9fafb;
    transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

.user-search:focus-within[b-12qwrl9ga2] {
    border-color: #5e9fbd;
    background: #fff;
    box-shadow: 0 0 0 .2rem rgba(35, 124, 163, .11);
}

.user-search > i[b-12qwrl9ga2] {
    color: #8792a1;
}

.user-search input[b-12qwrl9ga2] {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    color: #29374b;
    background: transparent;
    font-size: .82rem;
}

.user-search button[b-12qwrl9ga2] {
    width: 28px;
    height: 28px;
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    border: 0;
    border-radius: .45rem;
    color: #69788a;
    background: transparent;
}

.user-search button:hover[b-12qwrl9ga2],
.user-search button:focus-visible[b-12qwrl9ga2] {
    color: #176b98;
    background: #e9f4f9;
}

.users-loading[b-12qwrl9ga2],
.empty-state[b-12qwrl9ga2] {
    min-height: 330px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .8rem;
    padding: 2rem;
    color: #718096;
    text-align: center;
}

.users-loading span[b-12qwrl9ga2] {
    font-size: .84rem;
    font-weight: 650;
}

.empty-state-icon[b-12qwrl9ga2] {
    width: 62px;
    height: 62px;
    display: grid;
    place-items: center;
    border-radius: 1.05rem;
    color: #477c98;
    background: #edf6fa;
    font-size: 1.55rem;
}

.empty-state h3[b-12qwrl9ga2] {
    margin: .15rem 0 0;
    color: #334155;
    font-size: 1rem;
    font-weight: 750;
}

.empty-state p[b-12qwrl9ga2] {
    margin: -.35rem 0 .35rem;
    font-size: .82rem;
}

.users-table-wrapper[b-12qwrl9ga2] {
    overflow-x: auto;
}

.users-table[b-12qwrl9ga2] {
    width: 100%;
    border-collapse: collapse;
}

.users-table th[b-12qwrl9ga2] {
    padding: .72rem 1rem;
    border-bottom: 1px solid #e8edf2;
    color: #7c8898;
    background: #f8fafb;
    font-size: .67rem;
    font-weight: 800;
    letter-spacing: .055em;
    text-align: left;
    text-transform: uppercase;
    white-space: nowrap;
}

.users-table td[b-12qwrl9ga2] {
    padding: .92rem 1rem;
    border-bottom: 1px solid #edf0f4;
    color: #405066;
    font-size: .8rem;
    vertical-align: middle;
}

.users-table tbody tr:last-child td[b-12qwrl9ga2] {
    border-bottom: 0;
}

.users-table tbody tr[b-12qwrl9ga2] {
    transition: background .15s ease;
}

.users-table tbody tr:hover[b-12qwrl9ga2] {
    background: #fbfcfd;
}

.user-identity-cell[b-12qwrl9ga2] {
    display: flex;
    align-items: center;
    gap: .72rem;
    min-width: 220px;
}

.user-avatar[b-12qwrl9ga2] {
    flex: 0 0 auto;
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: .72rem;
    color: #176b98;
    background: #e8f4fa;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .03em;
}

.user-avatar-admin[b-12qwrl9ga2] {
    color: #6d45a1;
    background: #f0eafa;
}

.user-identity-text[b-12qwrl9ga2],
.firm-cell[b-12qwrl9ga2] {
    min-width: 0;
}

.user-identity-text strong[b-12qwrl9ga2],
.user-identity-text span[b-12qwrl9ga2],
.firm-cell strong[b-12qwrl9ga2],
.firm-cell span[b-12qwrl9ga2] {
    display: block;
}

.user-identity-text strong[b-12qwrl9ga2] {
    overflow: hidden;
    max-width: 240px;
    color: #263449;
    font-size: .83rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.user-identity-text span[b-12qwrl9ga2],
.firm-cell span[b-12qwrl9ga2] {
    margin-top: .15rem;
    color: #8a95a4;
    font-size: .69rem;
}

.firm-cell strong[b-12qwrl9ga2] {
    max-width: 210px;
    overflow: hidden;
    color: #405066;
    font-size: .78rem;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.role-badge[b-12qwrl9ga2],
.report-access[b-12qwrl9ga2],
.protected-account[b-12qwrl9ga2] {
    display: inline-flex;
    align-items: center;
    gap: .36rem;
    white-space: nowrap;
}

.role-badge[b-12qwrl9ga2] {
    padding: .34rem .55rem;
    border-radius: 999px;
    font-size: .69rem;
    font-weight: 720;
}

.role-badge-admin[b-12qwrl9ga2] {
    color: #684394;
    background: #f1eafa;
}

.role-badge-user[b-12qwrl9ga2] {
    color: #176c5c;
    background: #e8f7f2;
}

.report-access[b-12qwrl9ga2] {
    color: #55667a;
    font-size: .74rem;
}

.report-access i[b-12qwrl9ga2] {
    color: #5790ad;
}

.users-table time[b-12qwrl9ga2] {
    color: #607087;
    font-size: .74rem;
    white-space: nowrap;
}

.actions-cell[b-12qwrl9ga2] {
    text-align: right;
}

.edit-user-button[b-12qwrl9ga2] {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .38rem;
    padding: .38rem .65rem;
    border: 1px solid #b9d5e3;
    border-radius: .6rem;
    color: #176b98;
    background: #fff;
    font-size: .72rem;
    font-weight: 700;
}

.edit-user-button:hover[b-12qwrl9ga2],
.edit-user-button:focus-visible[b-12qwrl9ga2] {
    color: #105577;
    background: #eef7fb;
    border-color: #7fb2c8;
}

.protected-account[b-12qwrl9ga2] {
    color: #929ca9;
    font-size: .7rem;
}

.user-modal-backdrop[b-12qwrl9ga2] {
    position: fixed;
    z-index: 1060;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 1.5rem;
    overflow-y: auto;
    background: rgba(10, 24, 39, .64);
    backdrop-filter: blur(5px);
}

.user-modal[b-12qwrl9ga2] {
    width: min(900px, 100%);
    max-height: calc(100vh - 3rem);
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .35);
    border-radius: 1.25rem;
    background: #fff;
    box-shadow: 0 28px 80px rgba(6, 20, 34, .35);
}

.user-modal-header[b-12qwrl9ga2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.15rem 1.3rem;
    border-bottom: 1px solid #e8edf2;
    background: #fbfcfd;
}

.modal-title-group[b-12qwrl9ga2] {
    display: flex;
    align-items: center;
    gap: .8rem;
    min-width: 0;
}

.modal-title-icon[b-12qwrl9ga2] {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: .78rem;
    color: #176b98;
    background: #e8f4fa;
    font-size: 1.05rem;
}

.modal-title-group h2[b-12qwrl9ga2] {
    margin: 0;
    color: #1f2d40;
    font-size: 1.08rem;
    font-weight: 780;
}

.modal-title-group p[b-12qwrl9ga2] {
    margin: .15rem 0 0;
    color: #7a8797;
    font-size: .76rem;
}

.modal-close-button[b-12qwrl9ga2] {
    flex: 0 0 auto;
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: .65rem;
    color: #68778a;
    background: transparent;
}

.modal-close-button:hover:not(:disabled)[b-12qwrl9ga2],
.modal-close-button:focus-visible:not(:disabled)[b-12qwrl9ga2] {
    color: #9f2936;
    background: #fbecee;
}

.user-modal[b-12qwrl9ga2]  form {
    display: flex;
    max-height: calc(100vh - 8.3rem);
    flex-direction: column;
}

.user-modal-body[b-12qwrl9ga2] {
    overflow-y: auto;
    padding: 1.3rem;
}

.form-section + .form-section[b-12qwrl9ga2] {
    padding-top: 1.25rem;
    margin-top: 1.25rem;
    border-top: 1px solid #edf0f4;
}

.form-section-heading[b-12qwrl9ga2] {
    display: flex;
    align-items: flex-start;
    gap: .7rem;
    margin-bottom: 1rem;
}

.form-section-heading > span[b-12qwrl9ga2] {
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    display: grid;
    place-items: center;
    border-radius: .55rem;
    color: #176b98;
    background: #e8f4fa;
    font-size: .72rem;
    font-weight: 800;
}

.form-section-heading h3[b-12qwrl9ga2] {
    margin: .05rem 0 0;
    color: #27364a;
    font-size: .9rem;
    font-weight: 760;
}

.form-section-heading p[b-12qwrl9ga2] {
    margin: .16rem 0 0;
    color: #8290a1;
    font-size: .72rem;
}

.report-section-heading[b-12qwrl9ga2] {
    align-items: center;
}

.selected-report-count[b-12qwrl9ga2] {
    flex: 0 0 auto;
    padding: .3rem .55rem;
    margin-left: auto;
    border-radius: 999px;
    color: #176b98;
    background: #edf6fa;
    font-size: .68rem;
    font-weight: 750;
}

.form-grid[b-12qwrl9ga2] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.form-field[b-12qwrl9ga2] {
    min-width: 0;
}

.form-field > label[b-12qwrl9ga2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    margin-bottom: .38rem;
    color: #405066;
    font-size: .74rem;
    font-weight: 720;
}

.form-field > label span[b-12qwrl9ga2] {
    padding: .16rem .4rem;
    border-radius: 999px;
    color: #7d8998;
    background: #f1f3f6;
    font-size: .62rem;
    font-weight: 650;
}

.field-control[b-12qwrl9ga2] {
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: .5rem;
    padding-left: .7rem;
    border: 1px solid #dce2e9;
    border-radius: .72rem;
    background: #fff;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.field-control:focus-within[b-12qwrl9ga2] {
    border-color: #5e9fbd;
    box-shadow: 0 0 0 .2rem rgba(35, 124, 163, .1);
}

.field-control > i[b-12qwrl9ga2] {
    flex: 0 0 auto;
    color: #8592a2;
}

.field-control[b-12qwrl9ga2]  .form-control {
    min-width: 0;
    min-height: 40px;
    padding: .45rem .7rem .45rem 0;
    border: 0;
    outline: 0;
    box-shadow: none;
    color: #27364a;
    background: transparent;
    font-size: .8rem;
}

.password-control[b-12qwrl9ga2]  .form-control {
    padding-right: 0;
}

.password-control button[b-12qwrl9ga2] {
    align-self: stretch;
    width: 42px;
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    border: 0;
    border-radius: 0 .68rem .68rem 0;
    color: #69788a;
    background: #f7f9fb;
}

.password-control button:hover[b-12qwrl9ga2],
.password-control button:focus-visible[b-12qwrl9ga2] {
    color: #176b98;
    background: #eef6fa;
}

.form-field[b-12qwrl9ga2]  .validation-message,
.field-error[b-12qwrl9ga2] {
    display: block;
    margin-top: .3rem;
    color: #bd2c3c;
    font-size: .68rem;
}

.form-field > small[b-12qwrl9ga2] {
    display: block;
    margin-top: .3rem;
    color: #8793a2;
    font-size: .66rem;
}

.all-reports-option[b-12qwrl9ga2] {
    display: flex;
    align-items: center;
    gap: .72rem;
    padding: .85rem .9rem;
    margin-bottom: .8rem;
    border: 1px solid #b9dbe8;
    border-radius: .82rem;
    color: #25566f;
    background: #f0f9fc;
    cursor: pointer;
}

.all-reports-option input[b-12qwrl9ga2],
.report-option input[b-12qwrl9ga2] {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}

.all-reports-check[b-12qwrl9ga2],
.report-option-check[b-12qwrl9ga2] {
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border: 1px solid #aac2ce;
    color: transparent;
    background: #fff;
}

.all-reports-check[b-12qwrl9ga2] {
    width: 22px;
    height: 22px;
    border-radius: .42rem;
}

.all-reports-option input:checked + .all-reports-check[b-12qwrl9ga2],
.report-option input:checked + .report-option-check[b-12qwrl9ga2] {
    border-color: #17759f;
    color: #fff;
    background: #17759f;
}

.all-reports-option input:focus-visible + .all-reports-check[b-12qwrl9ga2],
.report-option input:focus-visible + .report-option-check[b-12qwrl9ga2] {
    box-shadow: 0 0 0 .2rem rgba(23, 117, 159, .18);
}

.all-reports-option > span:last-child[b-12qwrl9ga2] {
    min-width: 0;
}

.all-reports-option strong[b-12qwrl9ga2],
.all-reports-option small[b-12qwrl9ga2] {
    display: block;
}

.all-reports-option strong[b-12qwrl9ga2] {
    font-size: .78rem;
}

.all-reports-option small[b-12qwrl9ga2] {
    margin-top: .12rem;
    color: #668294;
    font-size: .67rem;
}

.report-toolbar[b-12qwrl9ga2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .8rem;
    margin-bottom: .7rem;
}

.report-search[b-12qwrl9ga2] {
    width: min(310px, 100%);
    min-height: 36px;
    display: flex;
    align-items: center;
    gap: .45rem;
    padding: 0 .65rem;
    border: 1px solid #dce2e9;
    border-radius: .65rem;
    background: #f9fafb;
}

.report-search i[b-12qwrl9ga2] {
    color: #8793a2;
}

.report-search input[b-12qwrl9ga2] {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    color: #344258;
    background: transparent;
    font-size: .74rem;
}

.report-selection-actions[b-12qwrl9ga2] {
    display: flex;
    gap: .35rem;
}

.report-selection-actions button[b-12qwrl9ga2] {
    padding: .34rem .55rem;
    border: 0;
    border-radius: .5rem;
    color: #176b98;
    background: #edf6fa;
    font-size: .66rem;
    font-weight: 720;
}

.report-selection-actions button:hover:not(:disabled)[b-12qwrl9ga2],
.report-selection-actions button:focus-visible:not(:disabled)[b-12qwrl9ga2] {
    color: #105577;
    background: #dceff7;
}

.report-selection-actions button:disabled[b-12qwrl9ga2],
.report-toolbar.is-disabled[b-12qwrl9ga2] {
    opacity: .55;
}

.reports-panel[b-12qwrl9ga2] {
    max-height: 265px;
    overflow-y: auto;
    padding: .7rem;
    border: 1px solid #e2e7ec;
    border-radius: .82rem;
    background: #fafbfc;
}

.reports-panel.is-disabled[b-12qwrl9ga2] {
    opacity: .55;
}

.report-options-grid[b-12qwrl9ga2] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .55rem;
}

.report-option[b-12qwrl9ga2] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: .6rem;
    padding: .68rem .72rem;
    border: 1px solid #e1e6eb;
    border-radius: .68rem;
    background: #fff;
    cursor: pointer;
    transition: border-color .15s ease, background .15s ease, transform .15s ease;
}

.report-option:hover[b-12qwrl9ga2] {
    border-color: #a9cddd;
    background: #fbfeff;
    transform: translateY(-1px);
}

.report-option.is-selected[b-12qwrl9ga2] {
    border-color: #94c4d7;
    background: #f1f9fc;
}

.report-option-check[b-12qwrl9ga2] {
    width: 19px;
    height: 19px;
    border-radius: .38rem;
    font-size: .72rem;
}

.report-option-text[b-12qwrl9ga2] {
    min-width: 0;
}

.report-option-text strong[b-12qwrl9ga2],
.report-option-text small[b-12qwrl9ga2] {
    display: block;
}

.report-option-text strong[b-12qwrl9ga2] {
    overflow: hidden;
    color: #35445a;
    font-size: .72rem;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.report-option-text small[b-12qwrl9ga2] {
    margin-top: .12rem;
    color: #8995a4;
    font-size: .62rem;
}

.reports-empty[b-12qwrl9ga2] {
    min-height: 100px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    color: #8995a4;
    font-size: .72rem;
}

.reports-empty i[b-12qwrl9ga2] {
    font-size: 1.25rem;
}

.form-message[b-12qwrl9ga2] {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    padding: .72rem .8rem;
    margin-top: 1rem;
    border: 1px solid;
    border-radius: .7rem;
    font-size: .74rem;
}

.form-message-success[b-12qwrl9ga2] {
    border-color: #b9dfcb;
    color: #256b45;
    background: #effaf4;
}

.form-message-error[b-12qwrl9ga2] {
    border-color: #efc4c9;
    color: #902e39;
    background: #fff5f6;
}

.user-modal-footer[b-12qwrl9ga2] {
    display: flex;
    justify-content: flex-end;
    gap: .65rem;
    padding: 1rem 1.3rem;
    border-top: 1px solid #e8edf2;
    background: #fbfcfd;
}

.cancel-button[b-12qwrl9ga2],
.save-user-button[b-12qwrl9ga2] {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    padding: .55rem .85rem;
    border-radius: .68rem;
    font-size: .76rem;
    font-weight: 720;
}

.cancel-button[b-12qwrl9ga2] {
    border: 1px solid #d8dee5;
    color: #607087;
    background: #fff;
}

.cancel-button:hover:not(:disabled)[b-12qwrl9ga2] {
    color: #39485d;
    background: #f3f5f7;
}

.save-user-button[b-12qwrl9ga2] {
    min-width: 170px;
    border: 0;
    color: #fff;
    background: linear-gradient(110deg, #176587, #1684a8);
}

.save-user-button:hover:not(:disabled)[b-12qwrl9ga2],
.save-user-button:focus-visible:not(:disabled)[b-12qwrl9ga2] {
    color: #fff;
    background: linear-gradient(110deg, #124f6b, #126f90);
}

.save-user-button:disabled[b-12qwrl9ga2],
.cancel-button:disabled[b-12qwrl9ga2],
.modal-close-button:disabled[b-12qwrl9ga2] {
    opacity: .65;
}

@media (max-width: 980px) {
    .users-table th:nth-child(5)[b-12qwrl9ga2],
    .users-table td:nth-child(5)[b-12qwrl9ga2] {
        display: none;
    }
}

@media (max-width: 760px) {
    .users-hero[b-12qwrl9ga2],
    .users-card-toolbar[b-12qwrl9ga2] {
        align-items: stretch;
        flex-direction: column;
    }

    .add-user-button[b-12qwrl9ga2],
    .user-search[b-12qwrl9ga2] {
        width: 100%;
    }

    .summary-grid[b-12qwrl9ga2] {
        grid-template-columns: 1fr;
    }

    .summary-card[b-12qwrl9ga2] {
        padding: .85rem 1rem;
    }

    .users-table-wrapper[b-12qwrl9ga2] {
        overflow: visible;
        padding: .7rem;
        background: #f7f9fb;
    }

    .users-table[b-12qwrl9ga2],
    .users-table tbody[b-12qwrl9ga2],
    .users-table tr[b-12qwrl9ga2],
    .users-table td[b-12qwrl9ga2] {
        display: block;
        width: 100%;
    }

    .users-table thead[b-12qwrl9ga2] {
        display: none;
    }

    .users-table tbody tr[b-12qwrl9ga2] {
        padding: .35rem .8rem;
        margin-bottom: .65rem;
        border: 1px solid #e2e7ec;
        border-radius: .85rem;
        background: #fff;
        box-shadow: 0 5px 14px rgba(23, 32, 51, .045);
    }

    .users-table tbody tr:last-child[b-12qwrl9ga2] {
        margin-bottom: 0;
    }

    .users-table td[b-12qwrl9ga2],
    .users-table td:nth-child(5)[b-12qwrl9ga2] {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
        padding: .65rem 0;
        border-bottom: 1px solid #edf0f4;
        text-align: right;
    }

    .users-table td[b-12qwrl9ga2]::before {
        content: attr(data-label);
        flex: 0 0 auto;
        color: #8792a1;
        font-size: .65rem;
        font-weight: 750;
        text-transform: uppercase;
    }

    .users-table td:first-child[b-12qwrl9ga2] {
        justify-content: flex-start;
    }

    .users-table td:first-child[b-12qwrl9ga2]::before,
    .users-table .actions-cell[b-12qwrl9ga2]::before {
        display: none;
    }

    .users-table .actions-cell[b-12qwrl9ga2] {
        justify-content: flex-end;
        border-bottom: 0;
    }

    .user-identity-cell[b-12qwrl9ga2] {
        min-width: 0;
        text-align: left;
    }

    .user-identity-text strong[b-12qwrl9ga2] {
        max-width: min(230px, 58vw);
    }

    .form-grid[b-12qwrl9ga2],
    .report-options-grid[b-12qwrl9ga2] {
        grid-template-columns: 1fr;
    }

    .report-toolbar[b-12qwrl9ga2] {
        align-items: stretch;
        flex-direction: column;
    }

    .report-search[b-12qwrl9ga2] {
        width: 100%;
    }

    .report-selection-actions[b-12qwrl9ga2] {
        justify-content: flex-end;
    }
}

@media (max-width: 560px) {
    .user-modal-backdrop[b-12qwrl9ga2] {
        align-items: end;
        padding: 0;
    }

    .user-modal[b-12qwrl9ga2] {
        max-height: 94vh;
        border-radius: 1.15rem 1.15rem 0 0;
    }

    .user-modal[b-12qwrl9ga2]  form {
        max-height: calc(94vh - 4.7rem);
    }

    .user-modal-header[b-12qwrl9ga2],
    .user-modal-body[b-12qwrl9ga2],
    .user-modal-footer[b-12qwrl9ga2] {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .modal-title-group p[b-12qwrl9ga2] {
        display: none;
    }

    .report-section-heading[b-12qwrl9ga2] {
        flex-wrap: wrap;
    }

    .selected-report-count[b-12qwrl9ga2] {
        margin-left: 2.4rem;
    }

    .user-modal-footer[b-12qwrl9ga2] {
        display: grid;
        grid-template-columns: .8fr 1.2fr;
    }

    .save-user-button[b-12qwrl9ga2] {
        min-width: 0;
    }

    .page-alert[b-12qwrl9ga2] {
        grid-template-columns: auto 1fr;
    }

    .page-alert .btn[b-12qwrl9ga2] {
        grid-column: 1 / -1;
    }
}
/* /Components/Reports/ReportFilter.razor.rz.scp.css */
.report-filter[b-0zn0d3lwwy] {
    position: relative;
    z-index: 10;
    margin-bottom: 1rem;
    border: 1px solid #e5eaf0;
    border-radius: .95rem;
    background: #fbfcfd;
}

.filter-header[b-0zn0d3lwwy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .85rem 1rem;
    border-bottom: 1px solid #e8edf2;
}

.filter-title[b-0zn0d3lwwy] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: .65rem;
}

.filter-title-icon[b-0zn0d3lwwy] {
    width: 36px;
    height: 36px;
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    border-radius: .65rem;
    color: #15803d;
    background: #f0fdf4;
}

.filter-title h3[b-0zn0d3lwwy] {
    margin: 0;
    color: #263449;
    font-size: .86rem;
    font-weight: 760;
}

.filter-title p[b-0zn0d3lwwy] {
    margin: .12rem 0 0;
    color: #84909f;
    font-size: .7rem;
}

.filter-actions[b-0zn0d3lwwy],
.filter-fields[b-0zn0d3lwwy],
.date-filter-group[b-0zn0d3lwwy] {
    display: flex;
    align-items: flex-end;
    gap: .65rem;
}

.filter-fields[b-0zn0d3lwwy] {
    min-width: 0;
    flex-wrap: wrap;
    padding: .9rem 1rem 1rem;
}

.filter-field[b-0zn0d3lwwy] {
    display: flex;
    flex-direction: column;
    gap: .3rem;
}

.search-filter-field[b-0zn0d3lwwy] {
    min-width: 230px;
    max-width: 390px;
    flex: 1 1 280px;
}

.search-field[b-0zn0d3lwwy] {
    width: 100%;
    min-width: 0;
    min-height: 40px;
    display: flex;
    align-items: center;
    gap: .48rem;
    padding: 0 .68rem;
    border: 1px solid #dce2e9;
    border-radius: .7rem;
    background: #fff;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.search-field:focus-within[b-0zn0d3lwwy] {
    border-color: #22c55e;
    box-shadow: 0 0 0 .2rem rgba(34, 197, 94, .14);
}

.search-field > i[b-0zn0d3lwwy] {
    color: #8792a1;
}

.search-field input[b-0zn0d3lwwy] {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    color: #29374b;
    background: transparent;
    font-size: .8rem;
}

.search-field button[b-0zn0d3lwwy] {
    width: 27px;
    height: 27px;
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    border: 0;
    border-radius: .42rem;
    color: #69788a;
    background: transparent;
    font-size: .72rem;
}

.search-field button:hover[b-0zn0d3lwwy],
.search-field button:focus-visible[b-0zn0d3lwwy] {
    color: #15803d;
    background: #f0fdf4;
    outline: none;
}

.filter-field-label[b-0zn0d3lwwy],
.date-filter-label[b-0zn0d3lwwy] {
    min-height: 14px;
    color: #667589;
    font-size: .67rem;
    font-weight: 750;
}

.date-filter-area[b-0zn0d3lwwy] {
    display: flex;
    flex-direction: column;
    gap: .38rem;
}

.date-filter-label[b-0zn0d3lwwy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .45rem;
}

.date-range-badge[b-0zn0d3lwwy] {
    padding: .08rem .35rem;
    border-radius: 999px;
    color: #15803d;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    font-size: .59rem;
    font-weight: 750;
    white-space: nowrap;
}

.date-filter-validation[b-0zn0d3lwwy] {
    display: flex;
    align-items: center;
    gap: .35rem;
    color: #b42318;
    font-size: .69rem;
    font-weight: 650;
}

.filter-button[b-0zn0d3lwwy] {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    padding: .48rem .72rem;
    border: 1px solid transparent;
    border-radius: .68rem;
    color: #fff;
    background: linear-gradient(110deg, #15803d, #166534);
    box-shadow: 0 5px 12px rgba(21, 128, 61, .2);
    font-size: .72rem;
    font-weight: 720;
    white-space: nowrap;
}

.filter-button:hover[b-0zn0d3lwwy],
.filter-button:focus-visible[b-0zn0d3lwwy] {
    color: #fff;
    background: linear-gradient(110deg, #166534, #14532d);
    outline: none;
}

.filter-button.secondary[b-0zn0d3lwwy] {
    color: #5b6a7d;
    border-color: #d8e0e7;
    background: #fff;
    box-shadow: none;
}

.filter-button.secondary:hover[b-0zn0d3lwwy],
.filter-button.secondary:focus-visible[b-0zn0d3lwwy] {
    color: #15803d;
    border-color: #86efac;
    background: #f0fdf4;
}

.filter-button.export[b-0zn0d3lwwy] {
    color: #15803d;
    border-color: #bbf7d0;
    background: #f0fdf4;
    box-shadow: none;
}

.filter-button.export:hover[b-0zn0d3lwwy],
.filter-button.export:focus-visible[b-0zn0d3lwwy] {
    color: #166534;
    border-color: #4ade80;
    background: #dcfce7;
}

.filter-button:disabled[b-0zn0d3lwwy] {
    opacity: .5;
    box-shadow: none;
    cursor: not-allowed;
}

@media (max-width: 1120px) {
    .search-filter-field[b-0zn0d3lwwy] {
        max-width: none;
        flex-basis: 100%;
    }
}

@media (max-width: 720px) {
    .filter-header[b-0zn0d3lwwy] {
        align-items: stretch;
        flex-direction: column;
    }

    .filter-actions[b-0zn0d3lwwy] {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    .date-filter-area[b-0zn0d3lwwy],
    .date-filter-group[b-0zn0d3lwwy] {
        width: 100%;
    }

    .date-filter-group[b-0zn0d3lwwy] {
        align-items: stretch;
        flex-wrap: wrap;
    }

    .date-filter-field[b-0zn0d3lwwy] {
        flex: 1 1 170px;
    }

    .query-button[b-0zn0d3lwwy] {
        flex: 1 1 100%;
    }
}

@media (max-width: 520px) {
    .filter-title p[b-0zn0d3lwwy] {
        display: none;
    }

    .search-filter-field[b-0zn0d3lwwy],
    .date-filter-field[b-0zn0d3lwwy] {
        min-width: 100%;
    }
}
/* /Components/Reports/ReportGrid.razor.rz.scp.css */
.report-grid-container[b-t8yc3k4uyu] {
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

.grid-toolbar[b-t8yc3k4uyu] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .15rem .1rem .35rem;
}

.grid-toolbar-info[b-t8yc3k4uyu] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: .5rem;
    overflow: hidden;
}

.grid-toolbar-title[b-t8yc3k4uyu] {
    display: inline-flex;
    align-items: center;
    gap: .38rem;
    overflow: hidden;
    color: #34445a;
    font-size: .82rem;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.grid-toolbar-title i[b-t8yc3k4uyu] {
    color: #15803d;
    font-size: .95rem;
}

.grid-count-badge[b-t8yc3k4uyu] {
    display: inline-flex;
    align-items: center;
    padding: .18rem .5rem;
    border-radius: 999px;
    color: #15803d;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    font-size: .68rem;
    font-weight: 700;
    white-space: nowrap;
}

.grid-toolbar-actions[b-t8yc3k4uyu] {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: .5rem;
    margin-left: auto;
}

.grid-expand-btn[b-t8yc3k4uyu] {
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .42rem;
    padding: .38rem .75rem;
    border: 1px solid #bbf7d0;
    border-radius: .62rem;
    color: #15803d;
    background: #fff;
    box-shadow: 0 1px 3px rgba(21, 128, 61, .08);
    font-size: .74rem;
    font-weight: 700;
    cursor: pointer;
    transition: all .18s ease;
}

.grid-expand-btn:hover[b-t8yc3k4uyu] {
    border-color: #86efac;
    color: #166534;
    background: #f0fdf4;
    transform: translateY(-1px);
}

.grid-expand-btn:active[b-t8yc3k4uyu] {
    transform: translateY(0);
    background: #dcfce7;
}

.grid-expand-btn.active[b-t8yc3k4uyu] {
    border-color: #15803d;
    color: #fff;
    background: #15803d;
    box-shadow: 0 2px 6px rgba(21, 128, 61, .25);
}

.grid-expand-btn.active:hover[b-t8yc3k4uyu] {
    border-color: #166534;
    color: #fff;
    background: #166534;
}

.report-grid-card[b-t8yc3k4uyu] {
    position: relative;
    min-height: 400px;
    overflow: hidden;
    border: 1px solid #e5eaf0;
    border-radius: .95rem;
    background: #fff;
}

.report-table-scroll[b-t8yc3k4uyu] {
    max-height: 560px;
    overflow: auto;
}

.report-table[b-t8yc3k4uyu] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    white-space: nowrap;
}

.report-table th[b-t8yc3k4uyu] {
    position: sticky;
    z-index: 2;
    top: 0;
    padding: .72rem .85rem;
    border-right: 1px solid #e8edf2;
    border-bottom: 1px solid #dfe6ed;
    color: #68778a;
    background: #f5f8fa;
    box-shadow: 0 1px 0 rgba(31, 45, 64, .03);
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .05em;
    text-align: left;
    text-transform: uppercase;
}

.report-table th:last-child[b-t8yc3k4uyu],
.report-table td:last-child[b-t8yc3k4uyu] {
    border-right: 0;
}

.report-table td[b-t8yc3k4uyu] {
    max-width: 360px;
    overflow: hidden;
    padding: .68rem .85rem;
    border-right: 1px solid #edf0f4;
    border-bottom: 1px solid #edf0f4;
    color: #405066;
    font-size: .76rem;
    text-overflow: ellipsis;
}

.report-table tbody tr:nth-child(even)[b-t8yc3k4uyu] {
    background: #fbfcfd;
}

.report-table tbody tr:hover[b-t8yc3k4uyu] {
    background: #f0fdf4;
}

.report-table tbody tr:last-child td[b-t8yc3k4uyu] {
    border-bottom: 0;
}

.grid-state[b-t8yc3k4uyu] {
    min-height: 400px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .62rem;
    padding: 2rem;
    color: #718096;
    text-align: center;
}

.grid-state strong[b-t8yc3k4uyu] {
    margin-top: .1rem;
    color: #334155;
    font-size: .96rem;
}

.grid-state > span:last-child[b-t8yc3k4uyu] {
    max-width: 430px;
    font-size: .78rem;
}

.grid-state-icon[b-t8yc3k4uyu] {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    border-radius: .95rem;
    color: #15803d;
    background: #f0fdf4;
    font-size: 1.4rem;
}

.grid-state.error .grid-state-icon[b-t8yc3k4uyu] {
    color: #a83b47;
    background: #fff0f2;
}

.grid-state.error strong[b-t8yc3k4uyu] {
    color: #7c2831;
}

.grid-footer[b-t8yc3k4uyu] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .78rem .1rem 0;
    color: #748195;
    font-size: .72rem;
}

.result-summary[b-t8yc3k4uyu],
.pagination-controls[b-t8yc3k4uyu],
.page-buttons[b-t8yc3k4uyu],
.page-size-field[b-t8yc3k4uyu] {
    display: flex;
    align-items: center;
}

.result-summary[b-t8yc3k4uyu] {
    flex-wrap: wrap;
    gap: .42rem;
}

.result-summary strong[b-t8yc3k4uyu] {
    color: #34445a;
    font-weight: 750;
}

.summary-separator[b-t8yc3k4uyu] {
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: #a8b1bd;
}

.summary-muted[b-t8yc3k4uyu] {
    color: #98a2af;
}

.pagination-controls[b-t8yc3k4uyu] {
    gap: .7rem;
}

.page-buttons[b-t8yc3k4uyu] {
    overflow: hidden;
    border: 1px solid #dce3ea;
    border-radius: .62rem;
    background: #fff;
}

.page-button[b-t8yc3k4uyu],
.page-indicator[b-t8yc3k4uyu] {
    min-height: 34px;
    display: grid;
    place-items: center;
}

.page-button[b-t8yc3k4uyu] {
    width: 34px;
    border: 0;
    color: #526579;
    background: #fff;
}

.page-button:first-child[b-t8yc3k4uyu] {
    border-right: 1px solid #e1e6eb;
}

.page-button:last-child[b-t8yc3k4uyu] {
    border-left: 1px solid #e1e6eb;
}

.page-button:hover:not(:disabled)[b-t8yc3k4uyu],
.page-button:focus-visible:not(:disabled)[b-t8yc3k4uyu] {
    color: #15803d;
    background: #f0fdf4;
    outline: none;
}

.page-button:disabled[b-t8yc3k4uyu] {
    color: #bac1ca;
    background: #f8fafb;
}

.page-indicator[b-t8yc3k4uyu] {
    min-width: 66px;
    padding: 0 .5rem;
    color: #69788a;
    font-size: .7rem;
}

.page-indicator strong[b-t8yc3k4uyu] {
    color: #27364a;
}

.page-size-field[b-t8yc3k4uyu] {
    gap: .42rem;
    margin: 0;
    white-space: nowrap;
}

.page-size-field select[b-t8yc3k4uyu] {
    min-height: 34px;
    padding: .28rem 1.8rem .28rem .55rem;
    border: 1px solid #dce3ea;
    border-radius: .58rem;
    color: #405066;
    background-color: #fff;
    font-size: .72rem;
}

@media (max-width: 720px) {
    .grid-footer[b-t8yc3k4uyu] {
        align-items: stretch;
        flex-direction: column;
    }

    .pagination-controls[b-t8yc3k4uyu] {
        justify-content: space-between;
    }
}

@media (max-width: 480px) {
    .pagination-controls[b-t8yc3k4uyu] {
        align-items: stretch;
        flex-direction: column;
    }

    .page-size-field[b-t8yc3k4uyu] {
        justify-content: space-between;
    }
}

.report-grid-container.is-expanded[b-t8yc3k4uyu] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100vw;
    height: 100vh;
    height: 100dvh;
    z-index: 9999;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: .5rem;
    padding: max(.5rem, env(safe-area-inset-top)) max(.6rem, env(safe-area-inset-right)) max(.5rem, env(safe-area-inset-bottom)) max(.6rem, env(safe-area-inset-left));
    margin: 0;
    background: #f1f5f9;
    overflow: hidden;
    animation: fadeInExpand-b-t8yc3k4uyu .2s ease-out;
}

@keyframes fadeInExpand-b-t8yc3k4uyu {
    from {
        opacity: 0;
        transform: scale(.99);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.report-grid-container.is-expanded .grid-toolbar[b-t8yc3k4uyu] {
    flex: 0 0 auto;
    padding: .6rem .9rem;
    border: 1px solid #e2e8f0;
    border-radius: .75rem;
    background: #fff;
    box-shadow: 0 4px 12px rgba(15, 23, 42, .05);
}

.report-grid-container.is-expanded .grid-toolbar-title[b-t8yc3k4uyu] {
    font-size: .92rem;
}

.report-grid-container.is-expanded .report-grid-card[b-t8yc3k4uyu] {
    flex: 1 1 0;
    min-height: 0;
    height: 100%;
    display: flex;
    flex-direction: column;
    border-radius: .75rem;
    box-shadow: 0 4px 12px rgba(15, 23, 42, .05);
}

.report-grid-container.is-expanded .report-table-scroll[b-t8yc3k4uyu] {
    flex: 1 1 auto;
    max-height: none;
    height: 100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

.report-grid-container.is-expanded .grid-footer[b-t8yc3k4uyu] {
    flex: 0 0 auto;
    padding: .55rem .85rem;
    border: 1px solid #e2e8f0;
    border-radius: .75rem;
    background: #fff;
    box-shadow: 0 4px 12px rgba(15, 23, 42, .05);
}
/* /Components/Reports/ReportList.razor.rz.scp.css */
.report-sidebar[b-pywyiznc5o] {
    width: 272px;
    max-height: 760px;
    display: flex;
    flex: 0 0 272px;
    flex-direction: column;
    border-right: 1px solid #e8edf2;
    background: #fbfcfd;
}

.report-sidebar-header[b-pywyiznc5o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: 1.2rem 1rem 1rem;
    border-bottom: 1px solid #e8edf2;
}

.report-sidebar-header span[b-pywyiznc5o] {
    display: block;
    margin-bottom: .15rem;
    color: #8792a1;
    font-size: .65rem;
    font-weight: 750;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.report-sidebar-header h2[b-pywyiznc5o] {
    margin: 0;
    color: #1f2d40;
    font-size: .95rem;
    font-weight: 760;
}

.sidebar-toggle[b-pywyiznc5o] {
    width: 34px;
    height: 34px;
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    border: 1px solid #dce4eb;
    border-radius: .6rem;
    color: #607087;
    background: #fff;
}

.sidebar-toggle:hover[b-pywyiznc5o],
.sidebar-toggle:focus-visible[b-pywyiznc5o] {
    color: #15803d;
    border-color: #86efac;
    background: #f0fdf4;
    outline: none;
}

.report-list[b-pywyiznc5o] {
    min-height: 0;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: .32rem;
    padding: .7rem;
    overflow-y: auto;
}

.report-list-item[b-pywyiznc5o] {
    width: 100%;
    min-height: 48px;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) auto;
    align-items: center;
    gap: .58rem;
    padding: .48rem .55rem;
    border: 1px solid transparent;
    border-radius: .72rem;
    color: #526177;
    background: transparent;
    text-align: left;
    transition: color .15s ease, border-color .15s ease, background .15s ease, box-shadow .15s ease;
}

.report-list-item:hover[b-pywyiznc5o],
.report-list-item:focus-visible[b-pywyiznc5o] {
    color: #15803d;
    border-color: #bbf7d0;
    background: #f0fdf4;
    outline: none;
}

.report-list-item.active[b-pywyiznc5o] {
    color: #14532d;
    border-color: #86efac;
    background: #f0fdf4;
    box-shadow: 0 5px 14px rgba(22, 101, 52, .1);
}

.report-item-icon[b-pywyiznc5o] {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: .58rem;
    color: #15803d;
    background: #f0fdf4;
}

.report-list-item.active .report-item-icon[b-pywyiznc5o] {
    color: #fff;
    background: linear-gradient(125deg, #15803d, #166534);
}

.report-item-name[b-pywyiznc5o] {
    overflow: hidden;
    font-size: .76rem;
    font-weight: 690;
    line-height: 1.25;
    text-overflow: ellipsis;
}

.report-item-arrow[b-pywyiznc5o] {
    color: #a2adb9;
    font-size: .72rem;
}

.report-list-item.active .report-item-arrow[b-pywyiznc5o] {
    color: #15803d;
}

.report-list-state[b-pywyiznc5o] {
    min-height: 170px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .6rem;
    padding: 1rem;
    color: #7a8797;
    font-size: .76rem;
    line-height: 1.4;
    text-align: center;
}

.report-list-state > i[b-pywyiznc5o] {
    color: #15803d;
    font-size: 1.35rem;
}

@media (max-width: 860px) {
    .report-sidebar[b-pywyiznc5o] {
        width: 100%;
        max-height: 320px;
        flex-basis: auto;
        border-right: 0;
        border-bottom: 1px solid #e8edf2;
    }

    .report-list[b-pywyiznc5o] {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .report-list[b-pywyiznc5o] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Reports/ReportViewer.razor.rz.scp.css */
.reports-page[b-gcaun59mb3] {
    width: min(1480px, 100%);
    margin: 0 auto;
    color: #172033;
}

.reports-hero[b-gcaun59mb3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    margin-bottom: 1.4rem;
}

.page-eyebrow[b-gcaun59mb3] {
    margin-bottom: .25rem;
    color: #15803d;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.reports-hero h1[b-gcaun59mb3] {
    margin: 0;
    color: #172033;
    font-size: clamp(1.7rem, 3vw, 2.2rem);
    font-weight: 780;
    letter-spacing: -.025em;
}

.reports-hero p[b-gcaun59mb3] {
    max-width: 680px;
    margin: .35rem 0 0;
    color: #718096;
    font-size: .93rem;
}

.report-count-card[b-gcaun59mb3] {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: .75rem;
    min-width: 170px;
    padding: .75rem .9rem;
    border: 1px solid #e5eaf0;
    border-radius: .95rem;
    background: #fff;
    box-shadow: 0 8px 24px rgba(23, 32, 51, .055);
}

.report-count-icon[b-gcaun59mb3] {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: .75rem;
    color: #15803d;
    background: #f0fdf4;
}

.report-count-card small[b-gcaun59mb3],
.report-count-card strong[b-gcaun59mb3] {
    display: block;
}

.report-count-card small[b-gcaun59mb3] {
    color: #7a8797;
    font-size: .7rem;
    font-weight: 650;
}

.report-count-card strong[b-gcaun59mb3] {
    margin-top: .05rem;
    color: #1f2d40;
    font-size: 1.25rem;
    line-height: 1.1;
}

.report-workspace[b-gcaun59mb3] {
    min-height: 590px;
    display: flex;
    overflow: hidden;
    border: 1px solid #e5eaf0;
    border-radius: 1.2rem;
    background: #fff;
    box-shadow: 0 12px 35px rgba(23, 32, 51, .07);
}

.report-content[b-gcaun59mb3] {
    min-width: 0;
    flex: 1 1 auto;
    padding: 1.25rem;
}

.report-heading[b-gcaun59mb3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid #edf0f4;
}

.report-title-group[b-gcaun59mb3] {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: .7rem;
}

.report-title-group span[b-gcaun59mb3] {
    display: block;
    margin-bottom: .16rem;
    color: #8591a0;
    font-size: .67rem;
    font-weight: 750;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.report-title-group h2[b-gcaun59mb3] {
    overflow: hidden;
    margin: 0;
    color: #1f2d40;
    font-size: 1.08rem;
    font-weight: 780;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.report-status[b-gcaun59mb3] {
    display: inline-flex;
    align-items: center;
    gap: .38rem;
    padding: .32rem .55rem;
    border-radius: 999px;
    color: #166534;
    background: #dcfce7;
    font-size: .68rem;
    font-weight: 720;
}

.report-status > span[b-gcaun59mb3] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #15803d;
}

.report-list-open[b-gcaun59mb3] {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    padding: .45rem .7rem;
    border: 1px solid #86efac;
    border-radius: .65rem;
    color: #15803d;
    background: #fff;
    font-size: .74rem;
    font-weight: 700;
}

.report-list-open:hover[b-gcaun59mb3],
.report-list-open:focus-visible[b-gcaun59mb3] {
    color: #166534;
    border-color: #4ade80;
    background: #f0fdf4;
}

.report-list-open.icon-only[b-gcaun59mb3] {
    width: 38px;
    flex: 0 0 auto;
    padding: 0;
}

.report-empty-state[b-gcaun59mb3] {
    min-height: 510px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .72rem;
    padding: 2rem;
    color: #718096;
    text-align: center;
}

.report-empty-icon[b-gcaun59mb3] {
    width: 66px;
    height: 66px;
    display: grid;
    place-items: center;
    border-radius: 1.05rem;
    color: #15803d;
    background: #f0fdf4;
    font-size: 1.65rem;
}

.report-empty-state h2[b-gcaun59mb3] {
    margin: .15rem 0 0;
    color: #334155;
    font-size: 1.05rem;
    font-weight: 750;
}

.report-empty-state p[b-gcaun59mb3] {
    max-width: 430px;
    margin: -.25rem 0 0;
    font-size: .82rem;
}

@media (max-width: 860px) {
    .report-workspace[b-gcaun59mb3] {
        min-height: 0;
        flex-direction: column;
    }

    .report-content[b-gcaun59mb3] {
        padding: 1rem;
    }
}

@media (max-width: 640px) {
    .reports-hero[b-gcaun59mb3] {
        align-items: stretch;
        flex-direction: column;
    }

    .report-count-card[b-gcaun59mb3] {
        width: 100%;
    }

    .report-workspace[b-gcaun59mb3] {
        border-radius: 1rem;
    }

    .report-heading[b-gcaun59mb3] {
        align-items: flex-start;
    }
}

/* Export Modal / Popup */
.export-modal-backdrop[b-gcaun59mb3] {
    position: fixed;
    inset: 0;
    z-index: 1060;
    display: grid;
    place-items: center;
    padding: 1.5rem;
    background: rgba(15, 23, 42, .48);
    backdrop-filter: blur(4px);
    animation: fadeIn-b-gcaun59mb3 .18s ease-out;
}

.export-modal-card[b-gcaun59mb3] {
    width: min(520px, 100%);
    border: 1px solid #e2e8f0;
    border-radius: 1.1rem;
    background: #fff;
    box-shadow: 0 25px 50px -12px rgba(15, 23, 42, .25);
    overflow: hidden;
    animation: slideUp-b-gcaun59mb3 .2s cubic-bezier(0.16, 1, 0.3, 1);
}

.export-modal-header[b-gcaun59mb3] {
    display: flex;
    align-items: center;
    gap: .85rem;
    padding: 1.1rem 1.35rem;
    border-bottom: 1px solid #edf2f7;
}

.export-modal-header.warning[b-gcaun59mb3] {
    background: #fffdf5;
}

.export-modal-header.error[b-gcaun59mb3] {
    background: #fef2f2;
}

.export-modal-icon[b-gcaun59mb3] {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: .75rem;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.export-modal-header.warning .export-modal-icon[b-gcaun59mb3] {
    color: #b45309;
    background: #fef3c7;
}

.export-modal-header.error .export-modal-icon[b-gcaun59mb3] {
    color: #b91c1c;
    background: #fee2e2;
}

.export-modal-title-group[b-gcaun59mb3] {
    flex: 1 1 auto;
    min-width: 0;
}

.export-modal-title-group h4[b-gcaun59mb3] {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 750;
    color: #1e293b;
    letter-spacing: -.01em;
}

.export-modal-subtitle[b-gcaun59mb3] {
    display: block;
    margin-top: .1rem;
    font-size: .73rem;
    color: #64748b;
}

.export-modal-close[b-gcaun59mb3] {
    border: 0;
    background: transparent;
    color: #94a3b8;
    padding: .3rem;
    border-radius: .5rem;
    cursor: pointer;
    line-height: 1;
    font-size: 1rem;
    transition: color .15s ease, background .15s ease;
}

.export-modal-close:hover[b-gcaun59mb3] {
    color: #334155;
    background: #f1f5f9;
}

.export-modal-body[b-gcaun59mb3] {
    padding: 1.35rem;
    color: #334155;
    font-size: .88rem;
    line-height: 1.55;
}

.export-modal-message[b-gcaun59mb3] {
    margin: 0 0 1rem;
}

.export-limit-tip[b-gcaun59mb3] {
    display: flex;
    gap: .75rem;
    padding: .85rem 1rem;
    border-radius: .8rem;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    color: #166534;
    font-size: .82rem;
    line-height: 1.45;
}

.export-limit-tip i[b-gcaun59mb3] {
    font-size: 1.1rem;
    color: #15803d;
    flex-shrink: 0;
    margin-top: .05rem;
}

.export-limit-tip strong[b-gcaun59mb3] {
    color: #14532d;
    display: inline-block;
    margin-right: .25rem;
}

.export-modal-footer[b-gcaun59mb3] {
    display: flex;
    justify-content: flex-end;
    gap: .65rem;
    padding: .85rem 1.35rem;
    background: #f8fafc;
    border-top: 1px solid #edf2f7;
}

@keyframes fadeIn-b-gcaun59mb3 {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideUp-b-gcaun59mb3 {
    from {
        opacity: 0;
        transform: translateY(12px) scale(0.97);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}
/* /Components/Reports/TurkishDatePicker.razor.rz.scp.css */
.date-picker[b-nmc8svhxel] {
    position: relative;
    width: 156px;
}

.date-picker-input[b-nmc8svhxel] {
    width: 100%;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    padding: .4rem .65rem;
    border: 1px solid #dce2e9;
    border-radius: .7rem;
    color: #27364a;
    background: #fff;
    font-size: .8rem;
    text-align: left;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.date-picker-input:hover[b-nmc8svhxel] {
    border-color: #86efac;
}

.date-picker-input:focus-visible[b-nmc8svhxel] {
    outline: 0;
    border-color: #22c55e;
    box-shadow: 0 0 0 .2rem rgba(34, 197, 94, .14);
}

.date-picker-input i[b-nmc8svhxel] {
    color: #15803d;
}

.date-picker-placeholder[b-nmc8svhxel] {
    color: #7c8795;
}

.date-picker-popover[b-nmc8svhxel] {
    position: absolute;
    z-index: 1080;
    top: calc(100% + .45rem);
    left: 0;
    width: 292px;
    padding: .85rem;
    border: 1px solid #dfe5eb;
    border-radius: .85rem;
    background: #fff;
    box-shadow: 0 16px 38px rgba(20, 37, 57, .18);
}

.calendar-header[b-nmc8svhxel] {
    display: grid;
    grid-template-columns: 30px 30px minmax(100px, 1fr) 30px 30px;
    align-items: center;
    gap: .2rem;
    margin-bottom: .7rem;
}

.calendar-header strong[b-nmc8svhxel] {
    color: #27364a;
    font-size: .9rem;
    text-align: center;
}

.calendar-nav[b-nmc8svhxel] {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: .55rem;
    color: #526579;
    background: transparent;
}

.calendar-nav:hover[b-nmc8svhxel],
.calendar-nav:focus-visible[b-nmc8svhxel] {
    color: #15803d;
    background: #f0fdf4;
    outline: none;
}

.calendar-nav:disabled[b-nmc8svhxel] {
    color: #c2c8d0;
    background: transparent;
}

.calendar-grid[b-nmc8svhxel] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: .2rem;
}

.calendar-weekdays[b-nmc8svhxel] {
    margin-bottom: .25rem;
}

.calendar-weekdays span[b-nmc8svhxel] {
    padding: .25rem 0;
    color: #8792a1;
    font-size: .66rem;
    font-weight: 750;
    text-align: center;
}

.calendar-day[b-nmc8svhxel],
.calendar-empty[b-nmc8svhxel] {
    aspect-ratio: 1;
}

.calendar-day[b-nmc8svhxel] {
    display: grid;
    place-items: center;
    border: 0;
    border-radius: .55rem;
    color: #334155;
    background: transparent;
    font-size: .78rem;
}

.calendar-day:hover[b-nmc8svhxel],
.calendar-day:focus-visible[b-nmc8svhxel] {
    color: #15803d;
    background: #f0fdf4;
    outline: none;
}

.calendar-day.is-today[b-nmc8svhxel] {
    box-shadow: inset 0 0 0 1px #86efac;
    color: #15803d;
    font-weight: 750;
}

.calendar-day.is-selected[b-nmc8svhxel],
.calendar-day.is-selected:hover[b-nmc8svhxel] {
    color: #fff;
    background: #15803d;
    box-shadow: 0 5px 12px rgba(21, 128, 61, .25);
    font-weight: 750;
}

.calendar-day:disabled[b-nmc8svhxel],
.calendar-day:disabled:hover[b-nmc8svhxel] {
    color: #c3c9d1;
    background: transparent;
    box-shadow: none;
    cursor: not-allowed;
}

.calendar-helper[b-nmc8svhxel] {
    display: flex;
    align-items: flex-start;
    gap: .4rem;
    padding: .55rem .6rem;
    margin-top: .65rem;
    border-radius: .55rem;
    color: #166534;
    background: #f0fdf4;
    font-size: .7rem;
    line-height: 1.35;
}

.calendar-helper i[b-nmc8svhxel] {
    flex: 0 0 auto;
    margin-top: .05rem;
    color: #15803d;
}

.calendar-footer[b-nmc8svhxel] {
    display: flex;
    justify-content: space-between;
    padding-top: .7rem;
    margin-top: .6rem;
    border-top: 1px solid #edf0f4;
}

.calendar-footer button[b-nmc8svhxel] {
    padding: .25rem .35rem;
    border: 0;
    color: #15803d;
    background: transparent;
    font-size: .75rem;
    font-weight: 700;
}

.calendar-footer button:hover:not(:disabled)[b-nmc8svhxel],
.calendar-footer button:focus-visible:not(:disabled)[b-nmc8svhxel] {
    color: #166534;
    text-decoration: underline;
}

.calendar-footer button:disabled[b-nmc8svhxel] {
    color: #aab2bd;
}

@media (max-width: 520px) {
    .date-picker[b-nmc8svhxel] {
        width: 100%;
    }

    .date-picker-popover[b-nmc8svhxel] {
        width: min(292px, calc(100vw - 3rem));
    }
}
