/* /Components/Account/Pages/Login.razor.rz.scp.css */
.login-card[b-597ze21pnz] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
    overflow: hidden;
    border: 1px solid var(--ott-line);
    border-radius: var(--ott-radius-shell);
    background: var(--ott-surface);
    box-shadow: var(--ott-shadow);
}

.login-brand[b-597ze21pnz] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding: 3rem;
    background: var(--ott-sidebar);
    color: var(--ott-sidebar-text);
}

.login-brand img[b-597ze21pnz] {
    width: min(100%, 14rem);
    height: auto;
    margin-bottom: 1.5rem;
}

.login-brand span[b-597ze21pnz] {
    color: var(--ott-sidebar-muted);
    font-size: var(--ott-text-small);
    letter-spacing: .08em;
    text-transform: uppercase;
}

.login-brand h2[b-597ze21pnz] {
    margin: 1.5rem 0 1rem;
    font-size: 2.4375rem;
    font-weight: 500;
    line-height: 1.15;
    letter-spacing: -.035em;
}

.login-brand p[b-597ze21pnz] {
    margin: 0;
    color: var(--ott-sidebar-muted);
    line-height: 1.7;
}

.login-panel[b-597ze21pnz] {
    width: 100%;
    max-width: 30.5rem;
    margin: auto;
    padding: 3rem 2rem;
}

.login-heading[b-597ze21pnz] {
    margin-bottom: 1.5rem;
}

.login-heading h1[b-597ze21pnz] {
    margin: .25rem 0 .5rem;
    color: var(--ott-ink);
    font-size: var(--ott-text-title);
    font-weight: 600;
    letter-spacing: -.035em;
}

.login-heading p[b-597ze21pnz] {
    margin: 0;
    color: var(--ott-muted);
}

.login-heading .login-kicker[b-597ze21pnz] {
    color: var(--ott-accent);
    font-size: var(--ott-text-small);
    font-weight: 600;
}

.login-field[b-597ze21pnz] {
    margin-bottom: 1rem;
}

.login-field label[b-597ze21pnz] {
    display: block;
    margin-bottom: .5rem;
    font-weight: 500;
}

.login-validation-summary[b-597ze21pnz] {
    margin-bottom: 1rem;
    padding: .75rem;
    border: 1px solid var(--ott-negative);
    border-radius: var(--ott-radius-control);
    background: var(--ott-negative-surface);
}

.login-validation-summary ul[b-597ze21pnz] {
    margin: 0;
    padding-left: 1rem;
}

.login-options[b-597ze21pnz] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: .5rem;
    margin-bottom: 1rem;
    font-size: var(--ott-text-small);
}

.login-remember[b-597ze21pnz], .login-options a[b-597ze21pnz] {
    display: inline-flex;
    align-items: center;
    min-height: var(--ott-target);
    gap: .5rem;
}

.login-remember[b-597ze21pnz] {
    color: var(--ott-muted);
}

.login-submit[b-597ze21pnz] {
    width: 100%;
}

.login-footer[b-597ze21pnz] {
    margin: 1.25rem 0 0;
    color: var(--ott-muted);
    font-size: var(--ott-text-small);
}

@media (max-width: 760px) {
    .login-card[b-597ze21pnz] {
        grid-template-columns: 1fr;
    }
    .login-brand[b-597ze21pnz] {
        padding: 1.25rem;
    }
    .login-brand img[b-597ze21pnz] {
        width: 135px;
        margin-bottom: .5rem;
    }
    .login-brand h2[b-597ze21pnz], .login-brand p[b-597ze21pnz] {
        display: none;
    }
    .login-panel[b-597ze21pnz] {
        max-width: none;
        padding: 1.5rem 1.25rem;
    }
}
/* /Components/Account/Pages/Manage/Index.razor.rz.scp.css */
.profile-summary[b-d9ui5al64y] {
    display: flex;
    align-items: center;
    gap: 1.4rem;
    margin-bottom: 1.5rem;
}

.profile-summary > div[b-d9ui5al64y] {
    min-width: 0;
    overflow-wrap: anywhere;
}

.profile-summary h3[b-d9ui5al64y] {
    margin: 0.1rem 0 0.55rem;
}

.profile-eyebrow[b-d9ui5al64y] {
    margin: 0;
    color: var(--ott-accent);
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.profile-role[b-d9ui5al64y],
.membership-status[b-d9ui5al64y] {
    display: inline-flex;
    margin: 0 0.35rem 0.25rem 0;
    padding: 0.33rem 0.62rem;
    border-radius: 999px;
    background: var(--ott-info-surface);
    color: var(--ott-info);
    font-size: 0.74rem;
    font-weight: 500;
}

.membership-status[b-d9ui5al64y] {
    background: var(--ott-background);
    color: var(--ott-muted);
}

.membership-status.is-member[b-d9ui5al64y] {
    background: var(--ott-positive-surface);
    color: var(--ott-positive);
}

.profile-notice[b-d9ui5al64y] {
    margin-bottom: 1.4rem;
    padding: 0.85rem 1rem;
    border: 1px solid var(--ott-line);
    border-radius: 0.8rem;
    background: var(--ott-background);
    color: var(--ott-muted);
    font-size: 0.85rem;
}

.profile-details[b-d9ui5al64y] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0;
    border: 1px solid var(--ott-line);
    border-radius: 1rem;
    overflow: hidden;
}

.profile-details > div[b-d9ui5al64y] {
    min-width: 0;
    padding: 1rem 1.1rem;
    border-bottom: 1px solid var(--ott-line);
}

.profile-details > div:nth-child(odd)[b-d9ui5al64y] {
    border-right: 1px solid var(--ott-line);
}

.profile-details > div:last-child[b-d9ui5al64y] {
    border-bottom: 0;
}

.profile-details .profile-address[b-d9ui5al64y] {
    grid-column: 1 / -1;
    border-right: 0;
}

.profile-details dt[b-d9ui5al64y] {
    margin-bottom: 0.3rem;
    color: var(--ott-muted);
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.045em;
    text-transform: uppercase;
}

.profile-details dd[b-d9ui5al64y] {
    margin: 0;
    color: var(--ott-ink);
    font-weight: 500;
    overflow-wrap: anywhere;
    white-space: pre-line;
}

@media (max-width: 650px) {
    .profile-summary[b-d9ui5al64y] {
        align-items: flex-start;
        flex-direction: column;
    }

    .profile-details[b-d9ui5al64y] {
        grid-template-columns: 1fr;
    }

    .profile-details > div[b-d9ui5al64y],
    .profile-details > div:nth-child(odd)[b-d9ui5al64y] {
        border-right: 0;
        border-bottom: 1px solid var(--ott-line);
    }

    .profile-details > div:last-child[b-d9ui5al64y] {
        border-bottom: 0;
    }
}
/* /Components/Account/Shared/AccountPanel.razor.rz.scp.css */
.account-panel[b-9rswz0vu4p] {
    width: min(100%, 34rem);
    margin: 0 auto;
    padding: 2rem;
    border: 1px solid var(--ott-line);
    border-radius: var(--ott-radius-surface);
    background: var(--ott-surface);
    box-shadow: var(--ott-shadow);
    overflow-wrap: anywhere;
}

.account-panel-kicker[b-9rswz0vu4p] {
    color: var(--ott-accent);
    font-size: var(--ott-text-small);
    font-weight: 600;
}

.account-panel h1[b-9rswz0vu4p] {
    margin: .5rem 0 1rem;
    font-size: clamp(1.6875rem, 4vw, 2rem);
    font-weight: 600;
    letter-spacing: -.03em;
}

.account-panel-description[b-9rswz0vu4p] {
    color: var(--ott-muted);
    margin-bottom: 1.5rem;
}

.account-panel-back[b-9rswz0vu4p] {
    display: inline-flex;
    align-items: center;
    min-height: var(--ott-target);
    margin-top: 1rem;
}

@media (max-width: 760px) {
    .account-panel[b-9rswz0vu4p] {
        padding: 1.25rem;
    }
}
/* /Components/Account/Shared/ManageLayout.razor.rz.scp.css */
.account-heading[b-agzf8pgezf] {
    margin-bottom: 1.5rem;
}

.account-heading p[b-agzf8pgezf] {
    margin: 0;
    color: var(--ott-accent);
    font-size: var(--ott-text-small);
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.account-heading h1[b-agzf8pgezf] {
    margin: .25rem 0 .5rem;
    color: var(--ott-ink);
    font-size: var(--ott-text-title);
    font-weight: 600;
    letter-spacing: -.035em;
}

.account-heading span[b-agzf8pgezf] {
    color: var(--ott-muted);
}

.account-card[b-agzf8pgezf] {
    border: 1px solid var(--ott-line);
    border-radius: var(--ott-radius-surface);
    background: var(--ott-surface);
    color: var(--ott-ink);
    box-shadow: var(--ott-shadow);
}

.account-nav[b-agzf8pgezf] {
    padding: 1rem;
    border-right: 1px solid var(--ott-line);
}

.account-body[b-agzf8pgezf] {
    min-width: 0;
    padding: 1.5rem;
}

.account-body[b-agzf8pgezf]  h3 {
    margin-bottom: 1.25rem;
    color: var(--ott-ink);
    font-size: var(--ott-text-section);
    font-weight: 600;
}

.account-body[b-agzf8pgezf]  .account-form {
    max-width: 30rem;
}

@media (max-width: 991px) {
    .account-nav[b-agzf8pgezf] {
        border-right: 0;
        border-bottom: 1px solid var(--ott-line);
    }
}

@media (max-width: 760px) {
    .account-body[b-agzf8pgezf] {
        padding: 1.125rem;
    }
}
/* /Components/Account/Shared/ManageNavMenu.razor.rz.scp.css */
.nav[b-vthev5al1o] {
    gap: .5rem;
}

.nav[b-vthev5al1o]  .nav-link {
    display: flex;
    align-items: center;
    min-height: var(--ott-target);
    border-radius: var(--ott-radius-button);
    color: var(--ott-muted);
    font-size: var(--ott-text);
    font-weight: 500;
}

.nav[b-vthev5al1o]  .nav-link:hover {
    background: var(--ott-background);
    color: var(--ott-ink);
}

.nav[b-vthev5al1o]  .nav-link.active {
    background: var(--ott-due-surface);
    color: var(--ott-accent);
    box-shadow: inset 3px 0 var(--ott-accent);
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.page[b-6w21x73ilr] {
    min-height: 100dvh;
    display: grid;
    grid-template-columns: 224px minmax(0, 1fr);
}

.sidebar[b-6w21x73ilr] {
    background: var(--ott-sidebar);
    color: var(--ott-sidebar-text);
}

main[b-6w21x73ilr] {
    min-width: 0;
}

.content[b-6w21x73ilr] {
    max-width: 100rem;
    margin: 0 auto;
    padding: 2rem;
}

.skip-link[b-6w21x73ilr] {
    position: fixed;
    top: .5rem;
    left: .5rem;
    z-index: 100;
    padding: .75rem 1rem;
    border-radius: var(--ott-radius-button);
    background: var(--ott-surface);
    transform: translateY(-200%);
}

.skip-link:focus[b-6w21x73ilr] {
    transform: translateY(0);
}

.auth-shell[b-6w21x73ilr] {
    display: grid;
    align-items: center;
    min-height: 100dvh;
    padding: 2rem;
}

.auth-content[b-6w21x73ilr] {
    width: min(100%, 64rem);
    margin: 0 auto;
}

#blazor-error-ui[b-6w21x73ilr] {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    padding: 1rem 4rem 1rem 1rem;
    background: var(--ott-negative-surface);
    color: var(--ott-negative);
    border-top: 1px solid var(--ott-negative);
    box-shadow: var(--ott-shadow);
}

#blazor-error-ui .reload[b-6w21x73ilr] {
    display: inline-flex;
    align-items: center;
    min-height: var(--ott-target);
    margin-left: .5rem;
    color: var(--ott-negative);
    font-weight: 600;
}

#blazor-error-ui .dismiss[b-6w21x73ilr] {
    position: absolute;
    right: .5rem;
    top: .5rem;
    width: var(--ott-target);
    height: var(--ott-target);
    border: 0;
    background: transparent;
    color: inherit;
    font-size: 1.5rem;
}

@media (min-width: 1001px) {
    .sidebar[b-6w21x73ilr] {
        display: flex;
        flex-direction: column;
        position: sticky;
        top: 0;
        height: 100dvh;
        overflow-y: auto;
    }
}

@media (max-width: 1000px) {
    .page[b-6w21x73ilr] {
        display: block;
    }
    .content[b-6w21x73ilr] {
        padding: 1.5rem;
    }
}

@media (max-width: 760px) {
    .content[b-6w21x73ilr], .auth-shell[b-6w21x73ilr] {
        padding: 1.125rem;
    }
}

/* Compatibility for the inactive dues view. */
.content[b-6w21x73ilr]  .dues-heading {
    color: var(--ott-ink);
}

.content[b-6w21x73ilr]  .dues-heading h1 {
    color: var(--ott-ink);
}

.content[b-6w21x73ilr]  .dues-heading p {
    color: var(--ott-muted);
}

.content[b-6w21x73ilr]  .dues-kicker {
    color: var(--ott-accent);
}

.content[b-6w21x73ilr]  .dues-page {
    width: 100%;
    min-width: 0;
    margin: 0;
    transform: none;
}

.content[b-6w21x73ilr]  .year-switcher {
    background: var(--ott-surface);
    color: var(--ott-ink);
    border-color: var(--ott-control-border);
    box-shadow: none;
}

.content[b-6w21x73ilr]  .year-switcher button {
    min-height: var(--ott-target);
    min-width: var(--ott-target);
    color: var(--ott-accent);
}

.content[b-6w21x73ilr]  .year-switcher button:hover:not(:disabled) {
    background: var(--ott-background);
    color: var(--ott-accent-hover);
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.top-row[b-djdc508vj6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.25rem 1rem .75rem;
}

.navbar-brand[b-djdc508vj6] {
    display: block;
    min-width: 0;
    margin: 0;
    padding: 0;
}

.navbar-brand img[b-djdc508vj6] {
    display: block;
    width: 160px;
    max-width: 100%;
    height: auto;
}

.menu-toggle[b-djdc508vj6] {
    display: none;
    min-height: var(--ott-target);
    padding: .5rem 1rem;
    border: 1px solid var(--ott-sidebar-muted);
    border-radius: var(--ott-radius-button);
    color: var(--ott-sidebar-text);
    background: transparent;
    font: inherit;
}

.nav-scrollable nav[b-djdc508vj6] {
    min-height: calc(100dvh - 6.5rem);
}

@media (min-width: 1001px) {
    .top-row[b-djdc508vj6] {
        flex-shrink: 0;
    }
    .nav-scrollable[b-djdc508vj6] {
        flex: 1;
        min-height: 0;
    }
    .nav-scrollable nav[b-djdc508vj6] {
        height: 100%;
        min-height: 0;
    }
    .nav-primary[b-djdc508vj6] {
        flex: 1;
        min-height: 0;
        overflow-y: auto;
    }
    .nav-account[b-djdc508vj6] {
        flex-shrink: 0;
    }
}

.nav-primary[b-djdc508vj6] {
    padding: 0 .75rem 1rem;
}

.nav-section[b-djdc508vj6] {
    margin: .75rem .625rem .375rem;
    color: var(--ott-sidebar-muted);
    font-size: var(--ott-text-label);
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.nav-item[b-djdc508vj6] {
    padding: 0;
    font-size: .8125rem;
}

.nav-item[b-djdc508vj6]  .nav-link {
    display: flex;
    align-items: center;
    gap: .625rem;
    width: 100%;
    min-height: var(--ott-target);
    padding: .625rem;
    border: 0;
    border-radius: var(--ott-radius-button);
    color: var(--ott-sidebar-muted);
    background: transparent;
    line-height: 1.35;
    text-align: left;
    overflow-wrap: anywhere;
}

.nav-item[b-djdc508vj6]  .nav-link:hover {
    color: var(--ott-sidebar-text);
    background: var(--ott-sidebar-selected);
}

.nav-item[b-djdc508vj6]  a.active {
    color: var(--ott-sidebar-text);
    background: var(--ott-sidebar-selected);
    box-shadow: inset 3px 0 var(--ott-focus-on-dark);
}

.nav-account[b-djdc508vj6] {
    margin-top: auto;
    padding: 0 .75rem .75rem;
    border-top: 1px solid var(--ott-sidebar-selected);
}

.nav-item[b-djdc508vj6]  .nav-user-link {
    gap: .625rem;
}

.nav-user-copy[b-djdc508vj6] {
    display: flex;
    flex: 1;
    min-width: 0;
    flex-direction: column;
    gap: .15rem;
    overflow-wrap: anywhere;
}

.nav-user-copy strong[b-djdc508vj6] {
    color: var(--ott-sidebar-text);
    font-size: var(--ott-text-small);
    font-weight: 600;
}

.nav-user-copy small[b-djdc508vj6], .nav-account-label[b-djdc508vj6] {
    color: var(--ott-sidebar-muted);
    font-size: var(--ott-text-label);
}

.bi[b-djdc508vj6] {
    display: inline-flex;
    flex: 0 0 1.125rem;
    align-items: center;
    justify-content: center;
    width: 1.125rem;
    height: 1.125rem;
    background-size: contain;
    background-repeat: no-repeat;
    font-size: 1.25rem;
}

.top-row :is(a, button):focus-visible[b-djdc508vj6], .nav-item[b-djdc508vj6]  :is(a, button):focus-visible {
    outline: 3px solid var(--ott-focus-on-dark);
    outline-offset: 2px;
    box-shadow: none;
}

.bi-key-nav-menu[b-djdc508vj6] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M3 8a4 4 0 1 1 7.465 2H16v2h-2v2h-2v2H9v-4.535A4 4 0 0 1 3 8Zm4-3a3 3 0 1 0 0 6 3 3 0 0 0 0-6Z'/%3E%3C/svg%3E");
}

.bi-person-plus-nav-menu[b-djdc508vj6] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M6 8c1.657 0 3-1.343 3-3S7.657 2 6 2 3 3.343 3 5s1.343 3 3 3zm0-1C4.895 7 4 6.105 4 5s.895-2 2-2 2 .895 2 2-.895 2-2 2zm6-2a.5.5 0 0 1 .5.5V7H14a.5.5 0 0 1 0 1h-1.5v1.5a.5.5 0 0 1-1 0V8H10a.5.5 0 0 1 0-1h1.5V5.5A.5.5 0 0 1 12 5zM1 13c0-2 2-4 5-4 1.184 0 2.19.312 2.982.817a3.5 3.5 0 0 0-.649.76C7.726 10.218 6.944 10 6 10c-2.5 0-4 1.5-4 3 0 .552.448 1 1 1h5.337c.152.36.363.697.621 1H3a2 2 0 0 1-2-2z'/%3E%3C/svg%3E");
}

.bi-membership-nav-menu[b-djdc508vj6] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M3.5 2a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3zM1 3.5a2.5 2.5 0 1 1 5 0 2.5 2.5 0 0 1-5 0zM11.5 2a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3zM9 3.5a2.5 2.5 0 1 1 5 0 2.5 2.5 0 0 1-5 0zM3.5 7C1.567 7 0 8.567 0 10.5V12a1 1 0 0 0 1 1h5v-1H1v-1.5a2.5 2.5 0 0 1 5 0V12h1v-1.5A3.5 3.5 0 0 0 3.5 7zM12.5 7A3.5 3.5 0 0 0 9 10.5V12h1v-1.5a2.5 2.5 0 0 1 5 0V12h-5v1h5a1 1 0 0 0 1-1v-1.5A3.5 3.5 0 0 0 12.5 7z'/%3E%3C/svg%3E");
}

.bi-dues-nav-menu[b-djdc508vj6] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2H0Zm0 1h16v7a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V5Zm3 4a1 1 0 0 0 0 2h2a1 1 0 0 0 0-2H3Z'/%3E%3C/svg%3E");
}

.bi-transactions-nav-menu[b-djdc508vj6] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M0 4a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V4Zm2-1a1 1 0 0 0-1 1v1h14V4a1 1 0 0 0-1-1H2Zm13 4H1v5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V7ZM3 9.5a.5.5 0 0 1 .5-.5h4a.5.5 0 0 1 0 1h-4a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5h6a.5.5 0 0 1 0 1h-6a.5.5 0 0 1-.5-.5Z'/%3E%3C/svg%3E");
}

.bi-recurring-expenses-nav-menu[b-djdc508vj6] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M2 2a1 1 0 0 0-1 1v2h14V3a1 1 0 0 0-1-1H2Zm13 4H1v7a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V6ZM4 8.5a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Z'/%3E%3C/svg%3E");
}

.bi-expense-documents-nav-menu[b-djdc508vj6] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M4 0h6l4 4v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2Zm5 1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V5h-3a1 1 0 0 1-1-1V1Zm1 .5V4h2.5L10 1.5ZM5 7.5A.5.5 0 0 1 5.5 7h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm0 2A.5.5 0 0 1 5.5 9h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5Zm0 2a.5.5 0 0 1 .5-.5h3a.5.5 0 0 1 0 1h-3a.5.5 0 0 1-.5-.5Z'/%3E%3C/svg%3E");
}

.bi-events-nav-menu[b-djdc508vj6] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M11 0a.5.5 0 0 1 .5.5V1h1A2.5 2.5 0 0 1 15 3.5v10a2.5 2.5 0 0 1-2.5 2.5h-9A2.5 2.5 0 0 1 1 13.5v-10A2.5 2.5 0 0 1 3.5 1h1V.5a.5.5 0 0 1 1 0V1h5V.5A.5.5 0 0 1 11 0ZM2 5v8.5A1.5 1.5 0 0 0 3.5 15h9a1.5 1.5 0 0 0 1.5-1.5V5H2Zm1.5-3A1.5 1.5 0 0 0 2 3.5V4h12v-.5A1.5 1.5 0 0 0 12.5 2h-1v.5a.5.5 0 0 1-1 0V2h-5v.5a.5.5 0 0 1-1 0V2h-1Z'/%3E%3Cpath d='M8 7a.5.5 0 0 1 .5.5V9H10a.5.5 0 0 1 0 1H8.5v1.5a.5.5 0 0 1-1 0V10H6a.5.5 0 0 1 0-1h1.5V7.5A.5.5 0 0 1 8 7Z'/%3E%3C/svg%3E");
}

.bi-arrow-bar-left-nav-menu[b-djdc508vj6] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-arrow-bar-left' viewBox='0 0 16 16'%3E%3Cpath d='M12.5 15a.5.5 0 0 1-.5-.5v-13a.5.5 0 0 1 1 0v13a.5.5 0 0 1-.5.5ZM10 8a.5.5 0 0 1-.5.5H3.707l2.147 2.146a.5.5 0 0 1-.708.708l-3-3a.5.5 0 0 1 0-.708l3-3a.5.5 0 1 1 .708.708L3.707 7.5H9.5a.5.5 0 0 1 .5.5Z'/%3E%3C/svg%3E");
}

@media (max-width: 1000px) {
    .top-row[b-djdc508vj6] {
        padding: .75rem 1.125rem;
    }
    .navbar-brand img[b-djdc508vj6] {
        width: 130px;
    }
    .menu-toggle:not([hidden])[b-djdc508vj6] {
        display: inline-flex;
        align-items: center;
    }
    .nav-scrollable nav[b-djdc508vj6] {
        min-height: 0;
    }
    .nav-scrollable[hidden][b-djdc508vj6] {
        display: none;
    }
    .nav-primary[b-djdc508vj6] {
        padding-bottom: .75rem;
    }
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-yxoe87y6a7], .components-reconnect-repeated-attempt-visible[b-yxoe87y6a7], .components-reconnect-failed-visible[b-yxoe87y6a7], .components-pause-visible[b-yxoe87y6a7], .components-resume-failed-visible[b-yxoe87y6a7], .components-rejoining-animation[b-yxoe87y6a7] {
    display: none;
}

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

#components-reconnect-modal[b-yxoe87y6a7] {
    width: 25rem;
    margin: auto;
}

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

#components-reconnect-modal h2[b-yxoe87y6a7] {
    margin: 0;
    font-size: var(--ott-text-section);
    font-weight: 600;
}

#components-reconnect-modal p[b-yxoe87y6a7] {
    margin: 0;
    color: var(--ott-muted);
}

#components-reconnect-modal a[b-yxoe87y6a7] {
    min-height: var(--ott-target);
    padding: .625rem 0;
}

.components-rejoining-animation[b-yxoe87y6a7] {
    height: .25rem;
    border-radius: 1rem;
    background: var(--ott-accent);
    animation: reconnect-pulse-b-yxoe87y6a7 1.5s ease-in-out infinite alternate;
}

@keyframes reconnect-pulse-b-yxoe87y6a7 {
    to {
        opacity: .4;
    }
}

@media (prefers-reduced-motion: reduce) {
    .components-rejoining-animation[b-yxoe87y6a7] {
        animation: none;
    }
}
/* /Components/Pages/BankTransactionReconciliationPanel.razor.rz.scp.css */
.reconciliation-card[b-0avtxlopkn] {
    min-height: 23rem;
    background: #fff;
    color: #2b2230;
}

.reconciliation-feedback[b-0avtxlopkn] {
    display: flex;
    align-items: flex-start;
    gap: 0.8rem;
    margin-bottom: 1rem;
    padding: 0.9rem 1rem;
    border: 1px solid;
    border-radius: 0.95rem;
}

.reconciliation-feedback > span[b-0avtxlopkn] {
    display: grid;
    width: 1.7rem;
    height: 1.7rem;
    flex: 0 0 1.7rem;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    font-weight: 800;
}

.reconciliation-feedback strong[b-0avtxlopkn],
.reconciliation-feedback p[b-0avtxlopkn] {
    display: block;
    margin: 0;
}

.reconciliation-feedback p[b-0avtxlopkn] {
    margin-top: 0.1rem;
    font-size: 0.78rem;
}

.reconciliation-feedback-success[b-0avtxlopkn] {
    border-color: #bfe4cc;
    background: #f1faf4;
    color: #1f6338;
}

.reconciliation-feedback-success > span[b-0avtxlopkn] {
    background: #2d8b50;
}

.reconciliation-feedback-error[b-0avtxlopkn] {
    border-color: #efcbd3;
    background: #fff4f6;
    color: #8a2940;
}

.reconciliation-feedback-error > span[b-0avtxlopkn] {
    background: #bb3e5c;
}

.reconciliation-toolbar[b-0avtxlopkn] {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1.25rem;
    padding: 1.35rem 1.5rem;
    border-bottom: 1px solid #ece5f0;
    background: linear-gradient(135deg, #fff, #fbf7fd);
}

.reconciliation-summary[b-0avtxlopkn] {
    display: flex;
    min-width: 14rem;
    flex-direction: column;
    gap: 0.15rem;
}

.reconciliation-summary strong[b-0avtxlopkn] {
    font-size: 1.05rem;
}

.reconciliation-summary span[b-0avtxlopkn] {
    color: #786c7f;
    font-size: 0.77rem;
}

.reconciliation-filters[b-0avtxlopkn] {
    display: grid;
    width: min(100%, 42rem);
    grid-template-columns: minmax(14rem, 1.6fr) minmax(10rem, 1fr) 6.5rem;
    gap: 0.75rem;
}

.reconciliation-filters label[b-0avtxlopkn],
.member-due-search label[b-0avtxlopkn] {
    display: block;
    margin-bottom: 0.3rem;
    color: #67596f;
    font-size: 0.68rem;
    font-weight: 750;
    letter-spacing: 0.035em;
    text-transform: uppercase;
}

.reconciliation-filters .form-control[b-0avtxlopkn],
.reconciliation-filters .form-select[b-0avtxlopkn],
.member-due-search .form-control[b-0avtxlopkn] {
    min-height: 2.65rem;
    border-color: #d9d1de;
    border-radius: 0.7rem;
    font-size: 0.8rem;
}

.reconciliation-table-scroll[b-0avtxlopkn] {
    overflow-x: auto;
}

.reconciliation-table[b-0avtxlopkn] {
    width: 100%;
    min-width: 66rem;
    border-collapse: collapse;
    font-size: 0.76rem;
}

.reconciliation-table th[b-0avtxlopkn] {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #4e3759;
    background: #402b49;
    color: #fff;
    font-size: 0.67rem;
    letter-spacing: 0.025em;
    text-transform: uppercase;
}

.reconciliation-table td[b-0avtxlopkn] {
    padding: 0.8rem 1rem;
    border-bottom: 1px solid #eee8f1;
    vertical-align: middle;
}

.reconciliation-table tbody tr:hover[b-0avtxlopkn] {
    background: #fcf9fd;
}

.date-column[b-0avtxlopkn],
.number-column[b-0avtxlopkn],
.action-column[b-0avtxlopkn] {
    white-space: nowrap;
}

.number-column[b-0avtxlopkn] {
    text-align: right;
}

.description-column[b-0avtxlopkn] {
    width: 35%;
    max-width: 28rem;
}

.description-column strong[b-0avtxlopkn],
.description-column span[b-0avtxlopkn] {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.description-column span[b-0avtxlopkn] {
    margin-top: 0.15rem;
    color: #746778;
}

.suggestion-column span[b-0avtxlopkn] {
    color: #6f2d99;
    font-weight: 700;
}

.suggestion-column em[b-0avtxlopkn] {
    color: #948799;
    font-size: 0.68rem;
}

.amount-column strong[b-0avtxlopkn],
.amount-column small[b-0avtxlopkn] {
    display: block;
}

.amount-column small[b-0avtxlopkn] {
    margin-top: 0.15rem;
    color: #817488;
    font-size: 0.64rem;
}

.reconciliation-status[b-0avtxlopkn] {
    display: inline-flex;
    padding: 0.3rem 0.55rem;
    border-radius: 999px;
    font-size: 0.66rem;
    font-weight: 750;
    white-space: nowrap;
}

.status-open[b-0avtxlopkn] {
    background: #f0e7f5;
    color: #702a98;
}

.status-partial[b-0avtxlopkn],
.status-difference[b-0avtxlopkn] {
    background: #fff0d8;
    color: #986000;
}

.status-reconciled[b-0avtxlopkn] {
    background: #e2f5e8;
    color: #247143;
}

.status-non-membership[b-0avtxlopkn] {
    background: #ece9ef;
    color: #665d6d;
}

.attention-label[b-0avtxlopkn] {
    display: block;
    margin-top: 0.25rem;
    color: #a04458;
    font-size: 0.62rem;
}

.reconcile-action[b-0avtxlopkn] {
    border: 1px solid #d6c7df;
    border-radius: 0.6rem;
    background: #fff;
    color: #6f2d99;
    font-weight: 750;
}

.reconciliation-empty[b-0avtxlopkn] {
    display: flex;
    min-height: 17rem;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 0.5rem;
    padding: 2rem;
    color: #796d80;
    text-align: center;
}

.reconciliation-empty > span:not(.reconciliation-loader)[b-0avtxlopkn] {
    color: #a24dd1;
    font-size: 2rem;
}

.reconciliation-empty p[b-0avtxlopkn] {
    margin: 0;
    font-size: 0.8rem;
}

.reconciliation-loader[b-0avtxlopkn] {
    width: 2rem;
    height: 2rem;
    border: 3px solid #eadff0;
    border-top-color: #8c3dbc;
    border-radius: 50%;
    animation: reconciliation-spin-b-0avtxlopkn 700ms linear infinite;
}

@keyframes reconciliation-spin-b-0avtxlopkn { to { transform: rotate(360deg); } }

.reconciliation-pagination[b-0avtxlopkn] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.9rem 1.5rem;
    border-top: 1px solid #eee8f1;
    color: #756a7c;
    font-size: 0.75rem;
}

.reconciliation-pagination div[b-0avtxlopkn] {
    display: flex;
    gap: 0.5rem;
}

.reconciliation-pagination .btn[b-0avtxlopkn] {
    border: 1px solid #d9cde0;
    background: #fff;
    color: #6f2d99;
}

.reconciliation-dialog-backdrop[b-0avtxlopkn] {
    position: fixed;
    z-index: 1050;
    inset: 0;
    display: flex;
    justify-content: flex-end;
    padding-left: min(8vw, 7rem);
    background: rgba(12, 6, 20, 0.68);
    backdrop-filter: blur(3px);
}

.reconciliation-dialog[b-0avtxlopkn] {
    width: min(64rem, 100%);
    height: 100%;
    overflow-y: auto;
    padding: 1.5rem;
    background: #faf7fc;
    color: #2c2232;
    box-shadow: -1.5rem 0 4rem rgba(7, 3, 12, 0.35);
}

.reconciliation-dialog-header[b-0avtxlopkn] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.reconciliation-dialog-header p[b-0avtxlopkn] {
    margin: 0 0 0.2rem;
    color: #9746c6;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.reconciliation-dialog-header h2[b-0avtxlopkn] {
    margin: 0;
    font-size: 1.45rem;
}

.reconciliation-dialog-header span[b-0avtxlopkn] {
    color: #7d7084;
    font-size: 0.76rem;
}

.reconciliation-dialog-header button[b-0avtxlopkn] {
    width: 2.4rem;
    height: 2.4rem;
    border: 1px solid #dfd3e5;
    border-radius: 50%;
    background: #fff;
    color: #5f4f68;
    font-size: 1.35rem;
}

.transaction-facts[b-0avtxlopkn] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.transaction-facts > div[b-0avtxlopkn],
.transaction-source-details[b-0avtxlopkn],
.suggested-members[b-0avtxlopkn],
.member-due-search[b-0avtxlopkn],
.due-member-group[b-0avtxlopkn] {
    border: 1px solid #e2d7e8;
    border-radius: 0.85rem;
    background: #fff;
}

.transaction-facts > div[b-0avtxlopkn] {
    display: flex;
    flex-direction: column;
    padding: 0.8rem 0.95rem;
}

.transaction-facts span[b-0avtxlopkn],
.transaction-source-details span[b-0avtxlopkn],
.suggested-members > span[b-0avtxlopkn] {
    color: #817487;
    font-size: 0.66rem;
    font-weight: 700;
    text-transform: uppercase;
}

.transaction-facts strong[b-0avtxlopkn] {
    margin-top: 0.15rem;
    font-size: 1.05rem;
}

.fact-warning strong[b-0avtxlopkn] {
    color: #ae3d55;
}

.fact-open strong[b-0avtxlopkn] {
    color: #9c6300;
}

.fact-balanced strong[b-0avtxlopkn] {
    color: #257143;
}

.transaction-source-details[b-0avtxlopkn] {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 1rem;
    margin-bottom: 1rem;
    padding: 0.85rem 1rem;
}

.transaction-source-details div[b-0avtxlopkn] {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.transaction-source-details strong[b-0avtxlopkn] {
    overflow-wrap: anywhere;
    font-size: 0.78rem;
}

.expense-source-details[b-0avtxlopkn] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.expense-allocation-section[b-0avtxlopkn],
.expense-form-section[b-0avtxlopkn] {
    margin-bottom: 1rem;
    padding: 1rem;
    border: 1px solid #e2d7e8;
    border-radius: 0.85rem;
    background: #fff;
}

.expense-allocation-section > header[b-0avtxlopkn],
.expense-form-section > header[b-0avtxlopkn] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.8rem;
}

.expense-allocation-section > header div[b-0avtxlopkn],
.expense-form-section > header[b-0avtxlopkn] {
    flex-direction: column;
    align-items: flex-start;
}

.expense-allocation-section > header div[b-0avtxlopkn] {
    display: flex;
    flex-direction: column;
}

.expense-allocation-section > header span[b-0avtxlopkn],
.expense-form-section > header span[b-0avtxlopkn] {
    color: #9746c6;
    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.expense-allocation-section > header em[b-0avtxlopkn] {
    display: grid;
    width: 2rem;
    height: 2rem;
    place-items: center;
    border-radius: 50%;
    background: #f1e6f7;
    color: #713095;
    font-style: normal;
    font-weight: 800;
}

.expense-empty[b-0avtxlopkn] {
    margin: 0;
    padding: 1rem;
    border-radius: 0.7rem;
    background: #faf7fc;
    color: #7c7083;
    font-size: 0.76rem;
}

.invoice-search[b-0avtxlopkn] {
    display: block;
    margin-bottom: 0.75rem;
    color: #67596f;
    font-size: 0.68rem;
    font-weight: 750;
    letter-spacing: 0.035em;
    text-transform: uppercase;
}

.invoice-search .form-control[b-0avtxlopkn] {
    min-height: 2.55rem;
    margin-top: 0.3rem;
    border-color: #d9d1de;
    border-radius: 0.7rem;
    font-size: 0.78rem;
}

.invoice-option-list[b-0avtxlopkn] {
    display: grid;
    gap: 0.55rem;
}

.invoice-option-list article[b-0avtxlopkn] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 0.8rem;
    padding: 0.75rem 0.85rem;
    border: 1px solid #e5dce9;
    border-radius: 0.75rem;
    background: #fcfafc;
}

.invoice-option-list article.is-selected[b-0avtxlopkn] {
    border-color: #b96fda;
    background: #faf2fd;
    box-shadow: inset 0 0 0 1px rgba(157, 70, 198, 0.12);
}

.invoice-option-list article.is-linked[b-0avtxlopkn] {
    border-color: #bddfc9;
    background: #f4fbf6;
}

.invoice-option-main[b-0avtxlopkn] {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    gap: 0.65rem;
    margin: 0;
    cursor: pointer;
}

.invoice-option-main input[b-0avtxlopkn] {
    margin-top: 0.25rem;
    accent-color: #8c3dbc;
}

.invoice-option-main span[b-0avtxlopkn] {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.invoice-option-main strong[b-0avtxlopkn],
.invoice-option-main small[b-0avtxlopkn] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.invoice-option-main small[b-0avtxlopkn] {
    margin-top: 0.12rem;
    color: #776a7e;
    font-size: 0.66rem;
}

.invoice-option-state[b-0avtxlopkn] {
    display: flex;
    align-items: flex-end;
    flex-direction: column;
    color: #6e6274;
    text-align: right;
    white-space: nowrap;
}

.invoice-option-state strong[b-0avtxlopkn] {
    font-size: 0.73rem;
}

.invoice-option-state small[b-0avtxlopkn] {
    margin-top: 0.1rem;
    font-size: 0.62rem;
}

.invoice-option-state.is-balanced[b-0avtxlopkn],
.invoice-payment-editor .is-balanced[b-0avtxlopkn] {
    color: #247143;
}

.invoice-option-state.is-short[b-0avtxlopkn],
.invoice-payment-editor .is-short[b-0avtxlopkn] {
    color: #a13b51;
}

.invoice-option-state.is-surplus[b-0avtxlopkn],
.invoice-payment-editor .is-surplus[b-0avtxlopkn] {
    color: #315f83;
}

.invoice-unlink[b-0avtxlopkn] {
    padding: 0.38rem 0.55rem;
    border: 1px solid #e4c6ce;
    border-radius: 0.55rem;
    background: #fff;
    color: #a13950;
    font-size: 0.67rem;
    font-weight: 750;
}

.invoice-payment-editor[b-0avtxlopkn] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 10rem auto;
    align-items: end;
    gap: 0.8rem;
    margin-top: 0.75rem;
    padding: 0.85rem;
    border: 1px solid #d7c5df;
    border-radius: 0.75rem;
    background: #faf6fc;
}

.invoice-payment-editor > div[b-0avtxlopkn] {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.invoice-payment-editor > div > span[b-0avtxlopkn],
.invoice-payment-editor label[b-0avtxlopkn] {
    color: #67596f;
    font-size: 0.66rem;
    font-weight: 750;
    text-transform: uppercase;
}

.invoice-payment-editor > div strong[b-0avtxlopkn] {
    overflow-wrap: anywhere;
}

.invoice-payment-editor > div small[b-0avtxlopkn] {
    margin-top: 0.18rem;
    font-size: 0.68rem;
}

.invoice-payment-editor label[b-0avtxlopkn] {
    margin: 0;
}

.invoice-payment-editor .form-control[b-0avtxlopkn] {
    margin-top: 0.25rem;
}

.invoice-payment-editor .btn[b-0avtxlopkn] {
    min-height: 2.4rem;
    border-radius: 0.65rem;
    font-size: 0.74rem;
    font-weight: 750;
}

.expense-allocation-list[b-0avtxlopkn] {
    display: grid;
    gap: 0.55rem;
}

.expense-allocation-list article[b-0avtxlopkn] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 1rem;
    padding: 0.75rem 0.85rem;
    border: 1px solid #e7dfea;
    border-radius: 0.7rem;
    background: #fcfafc;
}

.expense-allocation-list article > div:first-child[b-0avtxlopkn] {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.expense-allocation-list article span[b-0avtxlopkn] {
    overflow: hidden;
    color: #7c7083;
    font-size: 0.68rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.expense-allocation-list article > b[b-0avtxlopkn] {
    color: #9a334b;
    white-space: nowrap;
}

.expense-allocation-actions[b-0avtxlopkn] {
    display: flex;
    gap: 0.4rem;
}

.expense-allocation-actions button[b-0avtxlopkn] {
    padding: 0.35rem 0.55rem;
    border: 1px solid #d8cce0;
    border-radius: 0.5rem;
    background: #fff;
    color: #6f2d99;
    font-size: 0.68rem;
    font-weight: 750;
}

.expense-allocation-actions .remove[b-0avtxlopkn] {
    border-color: #e7c8cf;
    color: #a23a51;
}

.expense-form-grid[b-0avtxlopkn] {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) minmax(8rem, 0.55fr);
    gap: 0.75rem;
}

.expense-form-grid label[b-0avtxlopkn] {
    color: #5e5165;
    font-size: 0.7rem;
    font-weight: 750;
}

.expense-form-grid label small[b-0avtxlopkn] {
    color: #8b7d91;
    font-weight: 500;
}

.expense-form-grid .form-control[b-0avtxlopkn],
.expense-form-grid .form-select[b-0avtxlopkn] {
    margin-top: 0.3rem;
}

.expense-form-grid .wide[b-0avtxlopkn] {
    grid-column: 1 / -1;
}

.expense-form-actions[b-0avtxlopkn] {
    display: flex;
    gap: 0.6rem;
    margin-top: 0.85rem;
}

.expense-form-actions .btn[b-0avtxlopkn] {
    border-radius: 0.7rem;
    font-size: 0.76rem;
    font-weight: 750;
}

.suggested-members[b-0avtxlopkn],
.member-due-search[b-0avtxlopkn] {
    margin-bottom: 1rem;
    padding: 0.9rem 1rem;
}

.suggested-members > div[b-0avtxlopkn] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin-top: 0.5rem;
}

.suggested-members button[b-0avtxlopkn] {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    padding: 0.55rem 0.7rem;
    border: 1px solid #decce8;
    border-radius: 0.65rem;
    background: #faf5fd;
    color: #5e2b79;
    text-align: left;
}

.suggested-members small[b-0avtxlopkn] {
    margin-top: 0.1rem;
    color: #83728d;
    font-size: 0.62rem;
}

.member-due-search small[b-0avtxlopkn] {
    display: block;
    margin-top: 0.35rem;
    color: #83778a;
    font-size: 0.67rem;
}

.due-groups[b-0avtxlopkn] {
    display: grid;
    gap: 0.8rem;
}

.due-member-group[b-0avtxlopkn] {
    padding: 0.85rem;
}

.due-member-group > header[b-0avtxlopkn] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.65rem;
}

.due-member-group > header span[b-0avtxlopkn] {
    color: #817488;
    font-size: 0.68rem;
}

.due-option-grid[b-0avtxlopkn] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
    gap: 0.5rem;
}

.due-option[b-0avtxlopkn] {
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
    padding: 0.65rem;
    border: 1px solid #e1d9e6;
    border-radius: 0.65rem;
    background: #fcfafc;
    cursor: pointer;
}

.due-option-selected[b-0avtxlopkn] {
    border-color: #a859d2;
    background: #f7ecfc;
    box-shadow: inset 0 0 0 1px rgba(168, 89, 210, 0.15);
}

.due-option-disabled[b-0avtxlopkn] {
    cursor: not-allowed;
    opacity: 0.55;
}

.due-option input[b-0avtxlopkn] {
    margin-top: 0.18rem;
    accent-color: #8c3dbc;
}

.due-option span[b-0avtxlopkn],
.due-option strong[b-0avtxlopkn],
.due-option small[b-0avtxlopkn],
.due-option em[b-0avtxlopkn] {
    display: block;
}

.due-option small[b-0avtxlopkn],
.due-option em[b-0avtxlopkn] {
    margin-top: 0.1rem;
    color: #7c6e83;
    font-size: 0.62rem;
}

.due-option em[b-0avtxlopkn] {
    color: #7d3ca1;
}

.dialog-feedback[b-0avtxlopkn] {
    margin-top: 1rem;
    padding: 0.8rem 0.9rem;
    border: 1px solid;
    border-radius: 0.75rem;
    font-size: 0.76rem;
}

.dialog-feedback p[b-0avtxlopkn] {
    margin: 0.15rem 0 0;
}

.dialog-feedback-error[b-0avtxlopkn] {
    border-color: #efcbd3;
    background: #fff4f6;
    color: #8a2940;
}

.dialog-feedback-warning[b-0avtxlopkn] {
    border-color: #efd49f;
    background: #fff9eb;
    color: #805400;
}

.dialog-feedback-warning div[b-0avtxlopkn] {
    display: flex;
    gap: 0.5rem;
    margin-top: 0.65rem;
}

.confirm-action[b-0avtxlopkn] {
    background: #9d6500;
    color: #fff;
}

.cancel-action[b-0avtxlopkn] {
    border: 1px solid #decfae;
    background: #fff;
    color: #6f5b32;
}

.reconciliation-dialog-actions[b-0avtxlopkn] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 1rem;
    padding: 1rem 0 0.5rem;
    border-top: 1px solid #e6dce9;
}

.reconciliation-dialog-actions .btn[b-0avtxlopkn] {
    border-radius: 0.7rem;
    font-size: 0.76rem;
    font-weight: 750;
}

.primary-action[b-0avtxlopkn] {
    background: linear-gradient(135deg, #7d34ad, #a64bd2);
    color: #fff;
}

.secondary-action[b-0avtxlopkn] {
    border: 1px solid #d8c5e2;
    background: #fff;
    color: #6e2c94;
}

.reset-action[b-0avtxlopkn] {
    margin-left: auto;
    border: 1px solid #e5c4cc;
    background: #fff;
    color: #a03951;
}

.recurring-option-list[b-0avtxlopkn] {
    display: grid;
    gap: 0.5rem;
}

.recurring-option-list article[b-0avtxlopkn] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 8rem;
    align-items: center;
    gap: 0.75rem;
    padding: 0.7rem 0.8rem;
    border: 1px solid #e7deeb;
    border-radius: 0.75rem;
    background: #fff;
}

.recurring-option-list article.is-selected[b-0avtxlopkn] {
    border-color: #c79ddd;
    background: #fbf6fd;
}

.recurring-option-check[b-0avtxlopkn] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    margin: 0;
    cursor: pointer;
}

.recurring-option-check input[b-0avtxlopkn] {
    width: 1.15rem;
    height: 1.15rem;
    accent-color: #8a36b8;
}

.recurring-option-check span[b-0avtxlopkn] {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.recurring-option-check small[b-0avtxlopkn],
.recurring-option-amount[b-0avtxlopkn] {
    color: #776a7e;
    font-size: 0.68rem;
}

.recurring-option-amount[b-0avtxlopkn] {
    margin: 0;
    font-weight: 700;
}

.recurring-option-amount .form-control[b-0avtxlopkn] {
    min-height: 2.15rem;
    margin-top: 0.2rem;
    font-size: 0.75rem;
}

.recurring-show-more[b-0avtxlopkn] {
    margin-top: 0.55rem;
    padding: 0;
    border: 0;
    background: transparent;
    color: #772ba1;
    font-size: 0.72rem;
    font-weight: 700;
}

@media (max-width: 1050px) {
    .reconciliation-toolbar[b-0avtxlopkn] {
        align-items: stretch;
        flex-direction: column;
    }

    .reconciliation-filters[b-0avtxlopkn] {
        width: 100%;
    }
}

@media (max-width: 680px) {
    .reconciliation-filters[b-0avtxlopkn],
    .transaction-facts[b-0avtxlopkn],
    .transaction-source-details[b-0avtxlopkn] {
        grid-template-columns: 1fr;
    }

    .reconciliation-dialog-backdrop[b-0avtxlopkn] {
        padding-left: 0;
    }

    .reconciliation-dialog[b-0avtxlopkn] {
        padding: 1rem;
    }

    .expense-source-details[b-0avtxlopkn],
    .expense-form-grid[b-0avtxlopkn] {
        grid-template-columns: 1fr;
    }

    .expense-allocation-list article[b-0avtxlopkn] {
        grid-template-columns: 1fr;
        gap: 0.45rem;
    }

    .invoice-option-list article[b-0avtxlopkn],
    .invoice-payment-editor[b-0avtxlopkn] {
        grid-template-columns: 1fr;
    }

    .invoice-option-state[b-0avtxlopkn] {
        align-items: flex-start;
        text-align: left;
        white-space: normal;
    }

    .recurring-option-list article[b-0avtxlopkn] {
        grid-template-columns: 1fr;
    }

    .expense-allocation-actions[b-0avtxlopkn] {
        justify-content: flex-start;
    }

    .reset-action[b-0avtxlopkn] {
        width: 100%;
        margin-left: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .reconciliation-loader[b-0avtxlopkn] {
        animation: none;
    }
}
/* /Components/Pages/BankTransactions.razor.rz.scp.css */
.transactions-page[b-k1igaomstd] {
    width: 100%;
}

.transactions-heading[b-k1igaomstd] {
    margin-bottom: 1.5rem;
}

.transactions-heading h1[b-k1igaomstd] {
    margin: 0.15rem 0 0.35rem;
    color: #fff;
    font-weight: 750;
    letter-spacing: -0.035em;
}

.transactions-heading > p:last-child[b-k1igaomstd] {
    margin: 0;
    color: rgba(255, 255, 255, 0.66);
}

.transactions-kicker[b-k1igaomstd] {
    margin: 0;
    color: #c384ec;
    font-size: 0.75rem;
    font-weight: 750;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.transaction-feedback[b-k1igaomstd] {
    display: flex;
    align-items: flex-start;
    gap: 0.8rem;
    margin-bottom: 1.1rem;
    padding: 0.9rem 1rem;
    border: 1px solid;
    border-radius: 0.95rem;
    box-shadow: 0 0.8rem 2rem rgba(8, 4, 14, 0.12);
}

.transaction-feedback strong[b-k1igaomstd] {
    display: block;
    margin-bottom: 0.1rem;
    font-size: 0.84rem;
}

.transaction-feedback p[b-k1igaomstd] {
    margin: 0;
    font-size: 0.78rem;
    line-height: 1.45;
}

.transaction-feedback-icon[b-k1igaomstd] {
    display: inline-grid;
    width: 1.7rem;
    height: 1.7rem;
    flex: 0 0 1.7rem;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    font-size: 0.8rem;
    font-weight: 800;
}

.transaction-feedback-success[b-k1igaomstd] {
    border-color: #bfe4cc;
    background: linear-gradient(135deg, #f4fcf7, #edf8f1);
    color: #1f6338;
}

.transaction-feedback-success .transaction-feedback-icon[b-k1igaomstd] {
    background: #2d8b50;
}

.transaction-feedback-error[b-k1igaomstd] {
    border-color: #efcbd3;
    background: linear-gradient(135deg, #fff8f9, #fff2f5);
    color: #8a2940;
}

.transaction-feedback-error .transaction-feedback-icon[b-k1igaomstd] {
    background: #bb3e5c;
}

.import-card[b-k1igaomstd] {
    margin-bottom: 1.4rem;
    background: linear-gradient(135deg, #fff, #fbf8fd);
    color: #2e2334;
}

.transaction-tabs[b-k1igaomstd] {
    display: inline-flex;
    gap: 0.35rem;
    margin-bottom: 1rem;
    padding: 0.3rem;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 0.8rem;
    background: rgba(255, 255, 255, 0.06);
}

.transaction-tabs button[b-k1igaomstd] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.58rem 0.85rem;
    border: 0;
    border-radius: 0.6rem;
    background: transparent;
    color: rgba(255, 255, 255, 0.68);
    font-size: 0.76rem;
    font-weight: 750;
}

.transaction-tabs button:hover[b-k1igaomstd] {
    color: #fff;
}

.transaction-tabs button.active[b-k1igaomstd] {
    background: linear-gradient(135deg, #7d34ad, #a64bd2);
    box-shadow: 0 0.4rem 1rem rgba(103, 39, 143, 0.3);
    color: #fff;
}

.transaction-tabs span[b-k1igaomstd] {
    display: inline-grid;
    min-width: 1.35rem;
    height: 1.35rem;
    padding: 0 0.3rem;
    place-items: center;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.18);
    font-size: 0.62rem;
}

.import-toggle[b-k1igaomstd] {
    display: grid;
    width: 100%;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 0.85rem;
    padding: 1rem 1.15rem;
    border: 0;
    background: transparent;
    color: inherit;
    text-align: left;
}

.import-toggle:hover[b-k1igaomstd] {
    background: rgba(139, 62, 187, 0.035);
}

.import-toggle-icon[b-k1igaomstd] {
    display: grid;
    width: 2.35rem;
    height: 2.35rem;
    place-items: center;
    border-radius: 0.7rem;
    background: linear-gradient(135deg, #7d34ad, #a64bd2);
    box-shadow: 0 0.45rem 1rem rgba(110, 42, 152, 0.22);
    color: #fff;
    font-size: 1.15rem;
    font-weight: 800;
}

.import-toggle-copy[b-k1igaomstd] {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.import-toggle-copy strong[b-k1igaomstd] {
    font-size: 0.92rem;
}

.import-toggle-copy small[b-k1igaomstd] {
    margin-top: 0.15rem;
    color: #806f89;
    font-size: 0.72rem;
}

.import-toggle-action[b-k1igaomstd] {
    padding: 0.42rem 0.75rem;
    border: 1px solid #e0d0e8;
    border-radius: 999px;
    color: #762ba2;
    font-size: 0.72rem;
    font-weight: 750;
}

.import-toggle-chevron[b-k1igaomstd] {
    color: #8a4caf;
    font-weight: 800;
}

.import-body[b-k1igaomstd] {
    display: grid;
    grid-template-columns: minmax(16rem, 1fr) minmax(12rem, auto) auto;
    align-items: end;
    gap: 1rem;
    padding: 1.2rem 1.3rem 1.35rem;
    border-top: 1px solid #eee6f1;
    background: #faf7fc;
}

.import-file-field label[b-k1igaomstd],
.transactions-filters label[b-k1igaomstd] {
    display: block;
    margin-bottom: 0.3rem;
    color: #67596f;
    font-size: 0.68rem;
    font-weight: 750;
    letter-spacing: 0.035em;
    text-transform: uppercase;
}

.import-file-field small[b-k1igaomstd] {
    display: block;
    margin-top: 0.35rem;
    color: #84768b;
    font-size: 0.68rem;
}

.import-file-field .form-control[b-k1igaomstd],
.transactions-filters .form-control[b-k1igaomstd],
.transactions-filters .form-select[b-k1igaomstd] {
    min-height: 2.65rem;
    border-color: #d9d1de;
    border-radius: 0.7rem;
    font-size: 0.8rem;
}

.import-file-field .form-control:focus[b-k1igaomstd],
.transactions-filters .form-control:focus[b-k1igaomstd],
.transactions-filters .form-select:focus[b-k1igaomstd] {
    border-color: #9450c6;
    box-shadow: 0 0 0 0.2rem rgba(148, 80, 198, 0.13);
}

.import-selection[b-k1igaomstd] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding-bottom: 0.25rem;
    color: #796b80;
    font-size: 0.72rem;
}

.import-selection strong[b-k1igaomstd] {
    overflow: hidden;
    color: #392840;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.import-submit[b-k1igaomstd] {
    min-height: 2.65rem;
    padding: 0.55rem 1rem;
    border: 0;
    border-radius: 0.7rem;
    background: linear-gradient(135deg, #7d34ad, #a64bd2);
    color: #fff;
    font-size: 0.78rem;
    font-weight: 750;
    white-space: nowrap;
}

.import-submit:disabled[b-k1igaomstd] {
    opacity: 0.55;
}

.import-history[b-k1igaomstd] {
    grid-column: 1 / -1;
    padding-top: 0.4rem;
}

.import-history h2[b-k1igaomstd] {
    margin: 0 0 0.6rem;
    color: #5b4864;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.045em;
    text-transform: uppercase;
}

.import-history-list[b-k1igaomstd] {
    overflow: hidden;
    border: 1px solid #e5dce9;
    border-radius: 0.8rem;
    background: #fff;
}

.import-history-item[b-k1igaomstd] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 1rem;
    padding: 0.75rem 0.9rem;
    border-bottom: 1px solid #eee8f1;
    font-size: 0.72rem;
}

.import-history-item:last-child[b-k1igaomstd] {
    border-bottom: 0;
}

.import-history-item > div:first-child[b-k1igaomstd] {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.import-history-item strong[b-k1igaomstd] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.import-history-item small[b-k1igaomstd],
.import-history-item time[b-k1igaomstd] {
    color: #817488;
}

.import-history-counts[b-k1igaomstd] {
    display: flex;
    gap: 0.4rem;
}

.import-history-counts span[b-k1igaomstd] {
    padding: 0.25rem 0.45rem;
    border-radius: 999px;
    background: #f0e7f5;
    color: #6e2c94;
    white-space: nowrap;
}

.transactions-card[b-k1igaomstd] {
    min-height: 23rem;
    background: #fff;
    color: #2b2230;
}

.transactions-toolbar[b-k1igaomstd] {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1.25rem;
    padding: 1.35rem 1.5rem;
    border-bottom: 1px solid #ece5f0;
    background: linear-gradient(135deg, #fff, #fbf7fd);
}

.transactions-summary[b-k1igaomstd] {
    display: flex;
    min-width: 11rem;
    flex-direction: column;
    gap: 0.15rem;
}

.transactions-summary strong[b-k1igaomstd] {
    font-size: 1.05rem;
}

.transactions-summary span[b-k1igaomstd] {
    color: #786c7f;
    font-size: 0.77rem;
}

.transactions-filters[b-k1igaomstd] {
    display: grid;
    width: min(100%, 47rem);
    grid-template-columns: minmax(13rem, 1.5fr) minmax(8rem, 0.8fr) minmax(10rem, 1fr) 6.5rem;
    gap: 0.75rem;
}

.transactions-table-scroll[b-k1igaomstd] {
    overflow-x: auto;
    max-width: 100%;
}

.transactions-table[b-k1igaomstd] {
    width: 100%;
    min-width: 60rem;
    border-collapse: collapse;
    font-size: 0.78rem;
}

.transactions-table th[b-k1igaomstd] {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #4e3759;
    background: #402b49;
    color: #fff;
    font-size: 0.67rem;
    font-weight: 750;
    letter-spacing: 0.025em;
    text-transform: uppercase;
}

.transactions-table td[b-k1igaomstd] {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid #eee8f1;
    vertical-align: middle;
}

.transactions-table tbody tr:hover[b-k1igaomstd] {
    background: #fcf9fd;
}

.date-column[b-k1igaomstd] {
    width: 8.7rem;
    white-space: nowrap;
}

.date-column strong[b-k1igaomstd],
.date-column small[b-k1igaomstd] {
    display: block;
}

.date-column small[b-k1igaomstd] {
    margin-top: 0.15rem;
    color: #87798e;
    font-size: 0.65rem;
}

.transaction-description[b-k1igaomstd] {
    width: 42%;
    max-width: 31rem;
}

.transaction-description strong[b-k1igaomstd],
.transaction-description span[b-k1igaomstd],
.transaction-description small[b-k1igaomstd] {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.transaction-description strong[b-k1igaomstd] {
    color: #33243b;
}

.transaction-description span[b-k1igaomstd] {
    margin-top: 0.12rem;
    color: #685b70;
}

.transaction-description small[b-k1igaomstd] {
    margin-top: 0.18rem;
    color: #928599;
    font-size: 0.64rem;
}

.type-column[b-k1igaomstd] {
    width: 14rem;
    color: #6e6175;
    font-size: 0.7rem;
}

.number-column[b-k1igaomstd] {
    text-align: right;
    white-space: nowrap;
}

.amount-column[b-k1igaomstd] {
    font-weight: 800;
}

.amount-income[b-k1igaomstd] {
    color: #227443;
}

.amount-expense[b-k1igaomstd] {
    color: #a43a51;
}

.balance-column[b-k1igaomstd] {
    color: #6c6072;
}

.transaction-reconciliation-status[b-k1igaomstd] {
    display: inline-flex;
    padding: 0.3rem 0.5rem;
    border-radius: 999px;
    font-size: 0.64rem;
    font-weight: 750;
    white-space: nowrap;
}

.transaction-event-label[b-k1igaomstd] {
    display: block;
    width: fit-content;
    max-width: 12rem;
    margin-top: 0.3rem;
    overflow: hidden;
    color: #713096;
    font-size: 0.66rem;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.transaction-available[b-k1igaomstd] {
    display: block;
    margin-top: 0.25rem;
    color: #817487;
    font-size: 0.64rem;
}

.transaction-status-open[b-k1igaomstd] {
    background: #f0e7f5;
    color: #702a98;
}

.transaction-status-partial[b-k1igaomstd],
.transaction-status-difference[b-k1igaomstd] {
    background: #fff0d8;
    color: #986000;
}

.transaction-status-reconciled[b-k1igaomstd] {
    background: #e2f5e8;
    color: #247143;
}

.transaction-status-non-membership[b-k1igaomstd] {
    background: #ece9ef;
    color: #665d6d;
}

.transaction-not-applicable[b-k1igaomstd] {
    color: #a398a8;
}

.transaction-action-column[b-k1igaomstd] {
    text-align: right;
    white-space: nowrap;
}

.transaction-detail-action[b-k1igaomstd] {
    border: 1px solid #d6c7df;
    border-radius: 0.55rem;
    background: #fff;
    color: #6f2d99;
    font-weight: 750;
}

.transactions-state[b-k1igaomstd] {
    display: flex;
    min-height: 17rem;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 0.5rem;
    padding: 2rem;
    color: #796d80;
    text-align: center;
}

.transactions-state p[b-k1igaomstd] {
    margin: 0;
    font-size: 0.8rem;
}

.transactions-empty-icon[b-k1igaomstd] {
    color: #a24dd1;
    font-size: 2rem;
}

.transactions-loading[b-k1igaomstd] {
    width: 2rem;
    height: 2rem;
    border: 3px solid #eadff0;
    border-top-color: #8c3dbc;
    border-radius: 50%;
    animation: transactions-spin-b-k1igaomstd 700ms linear infinite;
}

@keyframes transactions-spin-b-k1igaomstd { to { transform: rotate(360deg); } }

.transactions-pagination[b-k1igaomstd] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.9rem 1.5rem;
    border-top: 1px solid #eee8f1;
    color: #756a7c;
    font-size: 0.75rem;
}

.transactions-pagination div[b-k1igaomstd] {
    display: flex;
    gap: 0.5rem;
}

.transactions-pagination .btn[b-k1igaomstd] {
    border: 1px solid #d9cde0;
    border-radius: 0.6rem;
    background: #fff;
    color: #6f2d99;
    font-weight: 700;
}

@media (max-width: 1150px) {
    .transactions-toolbar[b-k1igaomstd] {
        align-items: stretch;
        flex-direction: column;
    }

    .transactions-filters[b-k1igaomstd] {
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .import-body[b-k1igaomstd] {
        grid-template-columns: 1fr auto;
    }

    .import-file-field[b-k1igaomstd] {
        grid-column: 1 / -1;
    }
}

@media (max-width: 640px) {
    .import-toggle[b-k1igaomstd] {
        grid-template-columns: auto minmax(0, 1fr) auto;
    }

    .import-toggle-action[b-k1igaomstd] {
        display: none;
    }

    .import-body[b-k1igaomstd],
    .transactions-filters[b-k1igaomstd] {
        grid-template-columns: 1fr;
    }

    .import-file-field[b-k1igaomstd],
    .import-history[b-k1igaomstd] {
        grid-column: auto;
    }

    .import-submit[b-k1igaomstd] {
        width: 100%;
    }

    .import-history-item[b-k1igaomstd] {
        grid-template-columns: 1fr;
        gap: 0.45rem;
    }

    .import-history-counts[b-k1igaomstd] {
        flex-wrap: wrap;
    }

    .transactions-toolbar[b-k1igaomstd] {
        padding-right: 1rem;
        padding-left: 1rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .transactions-loading[b-k1igaomstd] {
        animation: none;
    }
}
/* /Components/Pages/Dashboard.razor.rz.scp.css */
.dashboard-hero[b-lcf4al1h14] {
    padding: 2rem;
    border: 1px solid var(--ott-line);
    border-radius: var(--ott-radius-surface);
    background: var(--ott-surface);
    box-shadow: var(--ott-shadow);
}

.dashboard-copy[b-lcf4al1h14] {
    max-width: 46rem;
}

.dashboard-copy h1[b-lcf4al1h14] {
    margin: .5rem 0 1rem;
    color: var(--ott-ink);
    font-size: clamp(1.9375rem, 3vw, 2.375rem);
    font-weight: 600;
    letter-spacing: -.035em;
    line-height: 1.15;
}

.dashboard-copy > p:not(.dashboard-kicker)[b-lcf4al1h14] {
    max-width: 65ch;
    margin-bottom: 1.25rem;
    color: var(--ott-muted);
    line-height: 1.65;
}

.dashboard-kicker[b-lcf4al1h14] {
    margin: 0;
    color: var(--ott-accent);
    font-size: var(--ott-text-small);
    font-weight: 600;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.dashboard-role[b-lcf4al1h14] {
    display: inline-flex;
    padding: .25rem .625rem;
    border-radius: .375rem;
    background: var(--ott-positive-surface);
    color: var(--ott-positive);
    font-size: var(--ott-text-small);
    font-weight: 500;
}

.dashboard-section-title[b-lcf4al1h14] {
    margin: 2rem 0 1rem;
    font-size: var(--ott-text-section);
    font-weight: 600;
}

.dashboard-grid[b-lcf4al1h14] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.dashboard-tile[b-lcf4al1h14] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem;
    border: 1px solid var(--ott-line);
    border-radius: var(--ott-radius-surface);
    background: var(--ott-surface);
    color: var(--ott-ink);
    text-decoration: none;
    transition: border-color var(--ott-motion-duration) var(--ott-motion-easing);
}

.dashboard-tile:hover[b-lcf4al1h14] {
    border-color: var(--ott-accent);
    color: var(--ott-ink);
}

.dashboard-tile strong[b-lcf4al1h14], .dashboard-tile small[b-lcf4al1h14] {
    display: block;
}

.dashboard-tile strong[b-lcf4al1h14] {
    margin-bottom: .25rem;
    font-weight: 600;
}

.dashboard-tile small[b-lcf4al1h14] {
    color: var(--ott-muted);
    font-size: var(--ott-text-small);
}

.tile-icon[b-lcf4al1h14] {
    display: grid;
    width: 2.75rem;
    height: 2.75rem;
    place-items: center;
    border-radius: var(--ott-radius-control);
    background: var(--ott-due-surface);
    color: var(--ott-accent);
    font-size: 1.25rem;
}

.tile-arrow[b-lcf4al1h14] {
    color: var(--ott-accent);
    font-size: 1.25rem;
}

@media (max-width: 760px) {
    .dashboard-hero[b-lcf4al1h14] {
        padding: 1.25rem;
    }
    .dashboard-grid[b-lcf4al1h14] {
        grid-template-columns: 1fr;
    }
    .dashboard-tile[b-lcf4al1h14] {
        padding: 1rem;
        gap: .75rem;
    }
}
/* /Components/Pages/EventDetails.razor.rz.scp.css */
.event-detail-page[b-tyy8s7lxa6] { min-width: 0; color: var(--ott-ink); }
.event-back[b-tyy8s7lxa6] { display: inline-flex; align-items: center; min-height: 44px; margin-bottom: 8px; color: var(--ott-accent); font-size: 12px; }
.event-detail-heading[b-tyy8s7lxa6] { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.event-detail-heading > div[b-tyy8s7lxa6] { min-width: 0; }
.event-detail-heading h1[b-tyy8s7lxa6] { margin: 8px 0 0; font-size: 32px; font-weight: 600; letter-spacing: -.03em; overflow-wrap: anywhere; }
.event-detail-meta[b-tyy8s7lxa6] { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: var(--ott-muted); font-size: 12px; overflow-wrap: anywhere; }
.event-detail-status[b-tyy8s7lxa6] { padding: 4px 8px; border-radius: 6px; background: var(--ott-positive-surface); color: var(--ott-positive); font-weight: 600; }
.status-draft[b-tyy8s7lxa6] { background: var(--ott-warning-surface); color: var(--ott-warning); }
.status-archived[b-tyy8s7lxa6] { background: var(--ott-background); color: var(--ott-muted); }
.event-heading-actions[b-tyy8s7lxa6] { display: flex; flex-shrink: 0; gap: 8px; }
.event-primary-button[b-tyy8s7lxa6], .event-light-button[b-tyy8s7lxa6] { min-height: 44px; border: 1px solid var(--ott-control-border); border-radius: 9px; background: var(--ott-surface); color: var(--ott-accent); font-size: 13px; font-weight: 600; }
.event-primary-button[b-tyy8s7lxa6] { border-color: var(--ott-accent); background: var(--ott-accent); color: var(--ott-surface); }
.event-primary-button:hover[b-tyy8s7lxa6] { background: var(--ott-accent-hover); color: var(--ott-surface); }
.event-light-button:hover[b-tyy8s7lxa6] { background: var(--ott-background); color: var(--ott-accent-hover); }
.event-feedback[b-tyy8s7lxa6] { display: flex; gap: 12px; margin-bottom: 16px; padding: 12px 16px; border: 1px solid; border-radius: 10px; }
.event-feedback strong[b-tyy8s7lxa6] { display: block; font-weight: 600; }
.event-feedback p[b-tyy8s7lxa6] { margin: 4px 0 0; font-size: 12px; }
.event-feedback.success[b-tyy8s7lxa6] { background: var(--ott-positive-surface); color: var(--ott-positive); }
.event-feedback.error[b-tyy8s7lxa6] { background: var(--ott-negative-surface); color: var(--ott-negative); }
.event-admin-panel[b-tyy8s7lxa6], .event-description-card[b-tyy8s7lxa6], .event-categories-card[b-tyy8s7lxa6], .event-finance-card[b-tyy8s7lxa6], .event-transactions-card[b-tyy8s7lxa6] { min-width: 0; border: 1px solid var(--ott-line); border-radius: 16px; background: var(--ott-surface); color: var(--ott-ink); box-shadow: var(--ott-shadow); }
.event-admin-panel[b-tyy8s7lxa6] { padding: 16px; margin-bottom: 16px; }
.event-panel-heading[b-tyy8s7lxa6] { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 12px; }
.event-panel-heading span[b-tyy8s7lxa6] { display: block; color: var(--ott-accent); font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .08em; }
.event-panel-heading h2[b-tyy8s7lxa6] { margin: 4px 0 0; font-size: 18px; font-weight: 600; }
.event-panel-heading small[b-tyy8s7lxa6] { color: var(--ott-muted); }
.event-form-grid[b-tyy8s7lxa6], .event-finance-form[b-tyy8s7lxa6] { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-bottom: 16px; }
.event-form-grid label[b-tyy8s7lxa6], .event-finance-form label[b-tyy8s7lxa6] { min-width: 0; font-size: 12px; font-weight: 600; }
.event-form-grid label small[b-tyy8s7lxa6], .event-finance-form label small[b-tyy8s7lxa6] { color: var(--ott-muted); font-weight: 400; }
.event-form-grid .form-control[b-tyy8s7lxa6], .event-finance-form .form-control[b-tyy8s7lxa6], .event-finance-form .form-select[b-tyy8s7lxa6], .new-category-form .form-control[b-tyy8s7lxa6], .new-category-form .form-select[b-tyy8s7lxa6] { min-height: 44px; margin-top: 4px; border-color: var(--ott-control-border); border-radius: 10px; }
.event-form-grid .wide[b-tyy8s7lxa6], .event-finance-form .wide[b-tyy8s7lxa6], .transaction-picker[b-tyy8s7lxa6] { grid-column: 1 / -1; }
.markdown-preview[b-tyy8s7lxa6] { min-width: 0; padding: 12px; border: 1px solid var(--ott-line); border-radius: 10px; }
.markdown-preview > span[b-tyy8s7lxa6] { color: var(--ott-muted); font-size: 12px; }
.event-metrics[b-tyy8s7lxa6] { overflow: hidden; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin-bottom: 12px; border: 1px solid var(--ott-line); border-radius: 14px; background: var(--ott-surface); }
.event-metrics article[b-tyy8s7lxa6] { min-width: 0; padding: 12px 16px; border-right: 1px solid var(--ott-line); }
.event-metrics article:last-child[b-tyy8s7lxa6] { border-right: 0; }
.event-metrics span[b-tyy8s7lxa6] { display: block; color: var(--ott-muted); font-size: 11px; }
.event-metrics strong[b-tyy8s7lxa6] { display: block; margin-top: 4px; font-size: 18px; font-weight: 600; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.event-metrics i[b-tyy8s7lxa6] { display: none; }
.event-metrics .positive[b-tyy8s7lxa6] { background: var(--ott-positive-surface); }
.event-metrics .negative[b-tyy8s7lxa6] { background: var(--ott-negative-surface); }
.event-metrics .positive strong[b-tyy8s7lxa6] { color: var(--ott-positive); }
.event-metrics .negative strong[b-tyy8s7lxa6] { color: var(--ott-negative); }
.event-financial-details[b-tyy8s7lxa6] { margin-bottom: 8px; }
.event-financial-details > summary[b-tyy8s7lxa6], .event-categories-card > summary[b-tyy8s7lxa6] { min-height: 44px; padding: 10px 0; color: var(--ott-ink); font-size: 14px; font-weight: 600; cursor: pointer; }
.event-financial-details .event-metrics[b-tyy8s7lxa6] { margin-top: 4px; }
.event-ledger-link[b-tyy8s7lxa6] { margin: 0 0 16px; font-size: 12px; }
.event-ledger-link a[b-tyy8s7lxa6] { display: inline-flex; align-items: center; min-height: 44px; color: var(--ott-accent); }
.event-detail-grid[b-tyy8s7lxa6] { display: grid; gap: 12px; margin-bottom: 16px; }
.event-description-card[b-tyy8s7lxa6], .event-categories-card[b-tyy8s7lxa6] { padding: 16px; }
/* Native disclosure needs normal list-item markers and no Bootstrap flex card layout. */
.event-categories-card[b-tyy8s7lxa6] { display: block; }
.event-description[b-tyy8s7lxa6] { min-width: 0; overflow-wrap: anywhere; color: var(--ott-ink); font-size: 14px; line-height: 1.5; }
.event-description[b-tyy8s7lxa6]  :is(h1,h2,h3,h4,h5,h6) { color: var(--ott-ink); font-weight: 600; }
.event-description[b-tyy8s7lxa6]  h1 { font-size: 24px; }
.event-description[b-tyy8s7lxa6]  h2 { font-size: 20px; }
.event-description[b-tyy8s7lxa6]  h3 { font-size: 18px; }
.event-description[b-tyy8s7lxa6]  a { color: var(--ott-accent); }
.event-description[b-tyy8s7lxa6]  img { max-width: 100%; height: auto; }
.event-description[b-tyy8s7lxa6]  pre { max-width: 100%; overflow: auto; padding: 12px; border: 1px solid var(--ott-line); border-radius: 9px; background: var(--ott-background); color: var(--ott-ink); white-space: pre-wrap; overflow-wrap: anywhere; }
.event-description[b-tyy8s7lxa6]  table { display: block; max-width: 100%; overflow-x: auto; }
.event-category-list[b-tyy8s7lxa6] { display: flex; flex-direction: column; }
.event-category-row[b-tyy8s7lxa6] { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 8px; padding: 4px 0; min-height: 44px; border-bottom: 1px solid var(--ott-line); }
.event-category-row div[b-tyy8s7lxa6] { display: flex; min-width: 0; flex-direction: column; overflow-wrap: anywhere; }
.event-category-row strong[b-tyy8s7lxa6] { font-size: 13px; font-weight: 600; }
.event-category-row small[b-tyy8s7lxa6] { color: var(--ott-muted); font-size: 12px; }
.event-category-row.archived strong[b-tyy8s7lxa6] { color: var(--ott-muted); text-decoration: line-through; }
.event-category-row button[b-tyy8s7lxa6], .actions button[b-tyy8s7lxa6] { min-width: 44px; min-height: 44px; padding: 8px; border: 0; border-radius: 9px; background: transparent; color: var(--ott-accent); font-size: 12px; font-weight: 500; }
.direction-dot[b-tyy8s7lxa6] { width: 8px; height: 8px; border-radius: 50%; }
.direction-dot.income[b-tyy8s7lxa6] { background: var(--ott-positive); }
.direction-dot.expense[b-tyy8s7lxa6] { background: var(--ott-negative); }
.new-category-form[b-tyy8s7lxa6] { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: end; gap: 8px; margin-top: 12px; }
.event-finance-card[b-tyy8s7lxa6] { margin-bottom: 16px; }
.event-finance-toggle[b-tyy8s7lxa6] { display: flex; width: 100%; align-items: center; gap: 12px; padding: 12px 16px; border: 0; background: var(--ott-surface); color: var(--ott-ink); text-align: left; }
.event-finance-toggle > span:nth-child(2)[b-tyy8s7lxa6] { display: flex; flex: 1; flex-direction: column; }
.event-finance-toggle small[b-tyy8s7lxa6] { color: var(--ott-muted); }
.event-finance-toggle em[b-tyy8s7lxa6] { color: var(--ott-accent); font-size: 12px; font-style: normal; }
.event-finance-icon[b-tyy8s7lxa6] { color: var(--ott-accent); font-size: 22px; }
.event-finance-body[b-tyy8s7lxa6] { padding: 16px; border-top: 1px solid var(--ott-line); }
.event-form-actions[b-tyy8s7lxa6] { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.allocation-warning[b-tyy8s7lxa6] { display: flex; flex-direction: column; padding: 12px; border: 1px solid var(--ott-warning); border-radius: 10px; background: var(--ott-warning-surface); color: var(--ott-warning); }
.event-transactions-card[b-tyy8s7lxa6] { margin-bottom: 16px; overflow: hidden; }
.transactions-heading[b-tyy8s7lxa6] { padding: 12px 16px; margin: 0; border-bottom: 1px solid var(--ott-line); }
.transactions-heading > strong[b-tyy8s7lxa6] { color: var(--ott-muted); font-size: 12px; }
.event-table-scroll[b-tyy8s7lxa6] { overflow-x: auto; }
table[b-tyy8s7lxa6] { width: 100%; border-collapse: collapse; font-size: 12px; }
th[b-tyy8s7lxa6] { padding: 8px 12px; background: var(--ott-background); color: var(--ott-muted); font-size: 11px; font-weight: 600; }
td[b-tyy8s7lxa6] { padding: 8px 12px; border-bottom: 1px solid var(--ott-line); vertical-align: middle; overflow-wrap: anywhere; }
td > strong[b-tyy8s7lxa6], td > small[b-tyy8s7lxa6] { display: block; }
td > small[b-tyy8s7lxa6] { max-width: 24rem; color: var(--ott-muted); }
.number[b-tyy8s7lxa6] { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.amount-income[b-tyy8s7lxa6] { color: var(--ott-positive); font-weight: 600; }
.amount-expense[b-tyy8s7lxa6], .actions .remove[b-tyy8s7lxa6] { color: var(--ott-negative); }
.category-pill[b-tyy8s7lxa6] { display: inline-flex; padding: 4px 8px; border-radius: 6px; background: var(--ott-positive-surface); color: var(--ott-positive); font-size: 11px; }
.category-pill.expense[b-tyy8s7lxa6] { background: var(--ott-negative-surface); color: var(--ott-negative); }
.actions[b-tyy8s7lxa6] { white-space: nowrap; }
.event-transactions-empty[b-tyy8s7lxa6], .event-detail-state[b-tyy8s7lxa6] { display: flex; min-height: 100px; padding: 16px; align-items: center; justify-content: center; flex-direction: column; gap: 8px; color: var(--ott-muted); }
.event-detail-state a[b-tyy8s7lxa6] { display: inline-flex; align-items: center; min-height: 44px; color: var(--ott-accent); }
@media (max-width: 1000px) {
    .event-detail-heading[b-tyy8s7lxa6] { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 760px) {
    .event-detail-heading h1[b-tyy8s7lxa6] { font-size: 27px; }
    .event-heading-actions[b-tyy8s7lxa6] { flex-wrap: wrap; }
    .event-metrics[b-tyy8s7lxa6] { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .event-metrics article[b-tyy8s7lxa6] { padding: 10px 12px; }
    .event-metrics article:nth-child(2n)[b-tyy8s7lxa6] { border-right: 0; }
    .event-metrics article:nth-child(-n+2)[b-tyy8s7lxa6] { border-bottom: 1px solid var(--ott-line); }
    .event-metrics strong[b-tyy8s7lxa6] { font-size: 16px; }
    .event-form-grid[b-tyy8s7lxa6], .event-finance-form[b-tyy8s7lxa6], .new-category-form[b-tyy8s7lxa6] { grid-template-columns: 1fr; }
    .event-form-grid .wide[b-tyy8s7lxa6], .event-finance-form .wide[b-tyy8s7lxa6], .transaction-picker[b-tyy8s7lxa6] { grid-column: auto; }
    .event-form-grid .form-control[b-tyy8s7lxa6], .event-finance-form .form-control[b-tyy8s7lxa6], .event-finance-form .form-select[b-tyy8s7lxa6], .new-category-form .form-control[b-tyy8s7lxa6], .new-category-form .form-select[b-tyy8s7lxa6] { font-size: 16px; }
}
/* /Components/Pages/Events.razor.rz.scp.css */
.events-page[b-v0xvd9jiih] { color: var(--ott-ink); }
.events-heading[b-v0xvd9jiih] { margin-bottom: 20px; }
.events-heading h1[b-v0xvd9jiih] { margin: 4px 0 8px; font-size: 32px; font-weight: 600; letter-spacing: -.03em; }
.events-heading p[b-v0xvd9jiih] { margin: 0; color: var(--ott-muted); }
.events-heading .events-kicker[b-v0xvd9jiih] { color: var(--ott-accent); font-size: 11px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.event-feedback[b-v0xvd9jiih] { display: flex; gap: 12px; margin-bottom: 16px; padding: 12px 16px; border: 1px solid var(--ott-negative); border-radius: 10px; background: var(--ott-negative-surface); color: var(--ott-negative); }
.event-feedback strong[b-v0xvd9jiih] { display: block; }
.event-feedback p[b-v0xvd9jiih] { margin: 4px 0 0; }
.event-create-card[b-v0xvd9jiih], .events-list-card[b-v0xvd9jiih] { overflow: hidden; border: 1px solid var(--ott-line); background: var(--ott-surface); color: var(--ott-ink); border-radius: 16px; box-shadow: var(--ott-shadow); }
.event-create-card[b-v0xvd9jiih] { margin-bottom: 16px; }
.event-create-toggle[b-v0xvd9jiih] { display: flex; width: 100%; align-items: center; gap: 12px; padding: 12px 16px; border: 0; background: var(--ott-surface); text-align: left; color: var(--ott-ink); }
.event-create-toggle > span:nth-child(2)[b-v0xvd9jiih] { display: flex; min-width: 0; flex: 1; flex-direction: column; }
.event-create-toggle small[b-v0xvd9jiih] { color: var(--ott-muted); font-size: 12px; }
.event-create-toggle em[b-v0xvd9jiih] { color: var(--ott-accent); font-size: 12px; font-style: normal; font-weight: 600; }
.event-create-icon[b-v0xvd9jiih] { display: grid; width: 32px; height: 32px; flex-shrink: 0; place-items: center; border-radius: 9px; background: var(--ott-accent); color: var(--ott-surface); font-size: 22px; }
.event-create-body[b-v0xvd9jiih] { padding: 16px; border-top: 1px solid var(--ott-line); }
.event-form-grid[b-v0xvd9jiih] { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
.event-form-grid label[b-v0xvd9jiih] { min-width: 0; font-size: 12px; font-weight: 600; }
.event-form-grid label small[b-v0xvd9jiih] { color: var(--ott-muted); font-weight: 400; }
.event-form-grid .form-control[b-v0xvd9jiih] { min-height: 44px; margin-top: 4px; border-color: var(--ott-control-border); border-radius: 10px; }
.event-form-grid textarea[b-v0xvd9jiih] { resize: vertical; }
.event-wide[b-v0xvd9jiih] { grid-column: 1 / -1; }
.event-money[b-v0xvd9jiih] { position: relative; display: block; }
.event-money i[b-v0xvd9jiih] { position: absolute; right: 12px; top: 12px; color: var(--ott-muted); font-style: normal; }
.event-money input[b-v0xvd9jiih] { padding-right: 40px; }
.event-primary[b-v0xvd9jiih] { min-height: 44px; margin-top: 16px; border: 1px solid var(--ott-accent); border-radius: 9px; background: var(--ott-accent); color: var(--ott-surface); font-weight: 600; }
.event-primary:hover[b-v0xvd9jiih] { background: var(--ott-accent-hover); color: var(--ott-surface); }
.events-toolbar[b-v0xvd9jiih] { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 16px; border-bottom: 1px solid var(--ott-line); }
.event-tabs[b-v0xvd9jiih] { display: flex; flex-wrap: wrap; gap: 4px; }
.event-tabs button[b-v0xvd9jiih] { min-height: 44px; border: 0; border-radius: 9px; background: transparent; color: var(--ott-muted); padding: 8px 10px; font-size: 12px; font-weight: 500; }
.event-tabs button.active[b-v0xvd9jiih] { background: var(--ott-accent); color: var(--ott-surface); }
.event-tabs span[b-v0xvd9jiih] { margin-left: 4px; font-variant-numeric: tabular-nums; }
.events-search[b-v0xvd9jiih] { width: min(18rem,100%); min-height: 44px; border-color: var(--ott-control-border); border-radius: 10px; }
.event-grid[b-v0xvd9jiih] { display: grid; }
.event-card[b-v0xvd9jiih] { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 16px; padding: 12px 16px; border-bottom: 1px solid var(--ott-line); color: var(--ott-ink); text-decoration: none; }
.event-card:last-child[b-v0xvd9jiih] { border-bottom: 0; }
.event-card:hover[b-v0xvd9jiih] { background: var(--ott-background); color: var(--ott-ink); }
.event-date[b-v0xvd9jiih] { display: grid; width: 48px; align-content: center; justify-items: center; padding: 8px 4px; border-radius: 10px; background: var(--ott-background); color: var(--ott-ink); line-height: 1.1; }
.event-date strong[b-v0xvd9jiih] { font-size: 20px; font-weight: 600; }
.event-date span[b-v0xvd9jiih] { margin-top: 4px; color: var(--ott-accent); font-size: 11px; font-weight: 600; }
.event-date small[b-v0xvd9jiih] { margin-top: 4px; color: var(--ott-muted); font-size: 11px; }
.event-card-copy[b-v0xvd9jiih] { display: grid; grid-template-columns: minmax(0,1fr) auto; column-gap: 16px; min-width: 0; }
.event-card-copy > div:first-child[b-v0xvd9jiih], .event-card-copy h2[b-v0xvd9jiih], .event-card-copy > p[b-v0xvd9jiih] { grid-column: 1; }
.event-card-copy h2[b-v0xvd9jiih] { margin: 4px 0; font-size: 16px; font-weight: 600; overflow-wrap: anywhere; }
.event-card-copy > p[b-v0xvd9jiih] { margin: 0; color: var(--ott-muted); font-size: 12px; overflow-wrap: anywhere; }
.event-status[b-v0xvd9jiih] { display: inline-flex; padding: 3px 8px; border-radius: 6px; background: var(--ott-positive-surface); color: var(--ott-positive); font-size: 11px; font-weight: 600; }
.status-draft[b-v0xvd9jiih] { background: var(--ott-warning-surface); color: var(--ott-warning); }
.status-archived[b-v0xvd9jiih] { background: var(--ott-background); color: var(--ott-muted); }
.event-finance-summary[b-v0xvd9jiih] { display: flex; gap: 20px; grid-column: 2; grid-row: 1 / 4; align-items: center; }
.event-finance-summary span[b-v0xvd9jiih] { display: flex; flex-direction: column; align-items: flex-end; color: var(--ott-muted); font-size: 11px; }
.event-finance-summary strong[b-v0xvd9jiih] { color: var(--ott-ink); font-size: 13px; font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; }
.event-finance-summary span:last-child strong[b-v0xvd9jiih] { color: var(--ott-positive); }
.event-finance-summary .negative[b-v0xvd9jiih] { color: var(--ott-negative) !important; }
.event-arrow[b-v0xvd9jiih] { color: var(--ott-accent); font-size: 20px; }
.events-empty[b-v0xvd9jiih] { display: flex; min-height: 160px; padding: 20px; align-items: center; justify-content: center; flex-direction: column; gap: 8px; color: var(--ott-muted); text-align: center; }
.events-empty b[b-v0xvd9jiih] { font-size: 24px; }
.events-empty span[b-v0xvd9jiih] { font-size: 12px; }
@media (max-width: 1100px) {
    .event-card-copy[b-v0xvd9jiih] { display: block; }
    .event-finance-summary[b-v0xvd9jiih] { margin-top: 8px; gap: 20px; }
    .event-finance-summary span[b-v0xvd9jiih] { align-items: flex-start; }
}
@media (max-width: 760px) {
    .events-heading h1[b-v0xvd9jiih] { font-size: 27px; }
    .events-toolbar[b-v0xvd9jiih] { flex-direction: column-reverse; align-items: stretch; padding: 12px; }
    .event-tabs[b-v0xvd9jiih] { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
    .events-search[b-v0xvd9jiih] { width: 100%; }
    .event-form-grid[b-v0xvd9jiih] { grid-template-columns: 1fr; }
    .event-wide[b-v0xvd9jiih] { grid-column: auto; }
    .event-create-toggle em[b-v0xvd9jiih] { display: none; }
    .event-create-toggle[b-v0xvd9jiih] { padding: 12px; }
    .event-card[b-v0xvd9jiih] { grid-template-columns: 40px minmax(0,1fr); gap: 12px; padding: 12px; }
    .event-date[b-v0xvd9jiih] { width: 40px; align-self: start; }
    .event-arrow[b-v0xvd9jiih] { display: none; }
    .event-finance-summary[b-v0xvd9jiih] { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; margin-left: -52px; margin-top: 12px; padding-top: 8px; border-top: 1px solid var(--ott-line); }
    .event-finance-summary strong[b-v0xvd9jiih] { font-size: 12px; white-space: normal; overflow-wrap: anywhere; }
    .event-form-grid .form-control[b-v0xvd9jiih], .events-search[b-v0xvd9jiih] { font-size: 16px; }
}

/* The list is a compact entry point; full names and locations are in event details. */
.event-card-copy h2[b-v0xvd9jiih], .event-card-copy > p[b-v0xvd9jiih] { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; }

.event-card:focus-visible[b-v0xvd9jiih], .event-create-toggle:focus-visible[b-v0xvd9jiih] { outline: 3px solid var(--ott-focus); outline-offset: -3px; }
/* /Components/Pages/ExpenseDocumentDetails.razor.rz.scp.css */
.review-page[b-yr7313cbk6] { max-width: 92rem; margin: 0 auto; padding: 2rem clamp(1rem, 3vw, 3rem) 4rem; color: #1b1220; }
.back-link[b-yr7313cbk6] { display: inline-block; margin-bottom: 1rem; color: #d4c5dc; font-size: .82rem; font-weight: 700; text-decoration: none; }.back-link:hover[b-yr7313cbk6] { color: #fff; }
.review-heading[b-yr7313cbk6] { display: flex; justify-content: space-between; align-items: end; gap: 1.5rem; margin-bottom: 1.4rem; color: #fff; }.review-heading h1[b-yr7313cbk6] { margin: .15rem 0 .25rem; font-size: clamp(1.8rem, 3vw, 2.8rem); font-weight: 800; letter-spacing: -.035em; }.review-heading p[b-yr7313cbk6] { margin: 0; color: #c9bfd1; }.review-kicker[b-yr7313cbk6] { color: #d567fb !important; font-size: .72rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.heading-actions[b-yr7313cbk6] { display: flex; align-items: center; gap: .7rem; }.secondary-button[b-yr7313cbk6],.primary-button[b-yr7313cbk6],.danger-button[b-yr7313cbk6] { display: inline-flex; align-items: center; justify-content: center; min-height: 2.55rem; padding: .58rem .9rem; border-radius: .65rem; font-size: .78rem; font-weight: 800; text-decoration: none; }.secondary-button[b-yr7313cbk6] { border: 1px solid #dac7e3; color: #712499; background: #faf4fc; }.primary-button[b-yr7313cbk6] { border: 0; color: #fff; background: linear-gradient(135deg,#8431b8,#b94ede); box-shadow: 0 .5rem 1rem rgba(112,34,151,.2); }.danger-button[b-yr7313cbk6] { border: 1px solid #d44767; color: #a31f40; background: #fff; }
.review-card[b-yr7313cbk6] { margin-bottom: 1.15rem; border: 1px solid rgba(131,72,159,.18); border-radius: 1.1rem; background: #fff; box-shadow: 0 1rem 2.4rem rgba(8,3,15,.14); overflow: hidden; }
.document-summary[b-yr7313cbk6] { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); padding: 1.1rem 1.2rem; }.document-summary > div[b-yr7313cbk6] { display: flex; flex-direction: column; gap: .15rem; padding: .25rem .9rem; border-left: 1px solid #eee6f1; }.document-summary > div:first-child[b-yr7313cbk6] { border-left: 0; padding-left: 0; }.document-summary small[b-yr7313cbk6],.document-summary span[b-yr7313cbk6] { color: #776a7e; font-size: .7rem; }.document-summary strong[b-yr7313cbk6] { overflow: hidden; font-size: .82rem; text-overflow: ellipsis; }.document-summary > div:first-child strong[b-yr7313cbk6] { font-size: 1.3rem; }.negative[b-yr7313cbk6] { color: #17714a !important; }
.status-badge[b-yr7313cbk6] { display: inline-flex; padding: .36rem .65rem; border-radius: 999px; font-size: .72rem; font-weight: 800; white-space: nowrap; }.status-review[b-yr7313cbk6] { color: #8b590b; background: #ffefcf; }.status-posted[b-yr7313cbk6] { color: #176742; background: #def3e7; }.status-reverted[b-yr7313cbk6] { color: #63566a; background: #ece7ef; }
.feedback-panel[b-yr7313cbk6] { display: flex; gap: .75rem; margin-bottom: 1rem; padding: .9rem 1rem; border-radius: .9rem; }.feedback-panel-success[b-yr7313cbk6] { color: #18613f; border: 1px solid #a8dbc2; background: #eefaf4; }.feedback-panel-error[b-yr7313cbk6] { color: #8c1736; border: 1px solid #e8b0be; background: #fff2f5; }.feedback-panel p[b-yr7313cbk6] { margin: .12rem 0 0; }.feedback-icon[b-yr7313cbk6] { display: grid; place-items: center; width: 1.6rem; height: 1.6rem; flex: 0 0 auto; border-radius: 50%; color: #fff; background: #319562; font-weight: 800; }.feedback-panel-error .feedback-icon[b-yr7313cbk6] { background: #c43a5e; }
.section-heading[b-yr7313cbk6] { padding: 1rem 1.2rem; border-bottom: 1px solid #eee7f1; background: linear-gradient(110deg,#fff,#fcf8fd); }.section-heading p[b-yr7313cbk6] { margin: 0 0 .15rem; color: #9b40bd; font-size: .65rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }.section-heading h2[b-yr7313cbk6] { margin: 0; font-size: 1.2rem; }.section-heading span[b-yr7313cbk6] { display: block; margin-top: .22rem; color: #76697c; font-size: .76rem; }
.mapping-list[b-yr7313cbk6] { display: grid; }.mapping-row[b-yr7313cbk6] { padding: 1rem 1.2rem 1.2rem; border-top: 1px solid #eee8f0; }.mapping-row:first-child[b-yr7313cbk6] { border-top: 0; }.line-copy[b-yr7313cbk6] { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .75rem; }.line-copy > span:nth-child(2)[b-yr7313cbk6] { display: flex; flex-direction: column; }.line-copy small[b-yr7313cbk6] { margin-top: .12rem; color: #796d7e; }.line-number[b-yr7313cbk6] { display: grid; place-items: center; width: 1.8rem; height: 1.8rem; border-radius: .5rem; color: #fff; background: #432750; font-size: .7rem; font-weight: 800; }.allocation-balance[b-yr7313cbk6] { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin: .75rem 0 .65rem 2.55rem; padding: .65rem .75rem; border: 1px solid #dfd4e4; border-radius: .7rem; background: #faf8fb; }.allocation-balance > span:first-child[b-yr7313cbk6] { display: flex; flex-direction: column; }.allocation-balance small[b-yr7313cbk6] { margin-top: .12rem; font-size: .7rem; }.allocation-balance.is-balanced[b-yr7313cbk6] { color: #176742; border-color: #b4dec7; background: #f0faf4; }.allocation-balance.is-under[b-yr7313cbk6] { color: #80550f; border-color: #ead39e; background: #fff9ed; }.allocation-balance.is-over[b-yr7313cbk6] { color: #9c2340; border-color: #ecc0cb; background: #fff4f6; }.allocation-count[b-yr7313cbk6] { flex: 0 0 auto; padding: .3rem .5rem; border-radius: 999px; color: #6f297f; background: rgba(145,58,174,.1); font-size: .68rem; font-weight: 800; }.allocation-card[b-yr7313cbk6] { margin: .65rem 0 0 2.55rem; padding: .85rem; border: 1px solid #e6dbe9; border-radius: .78rem; background: #fcfafc; }.allocation-card-heading[b-yr7313cbk6] { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: .7rem; color: #432750; font-size: .78rem; }.allocation-remove[b-yr7313cbk6] { padding: .3rem .52rem; border: 1px solid #e7aebc; border-radius: .5rem; color: #a51f40; background: #fff7f9; font-size: .68rem; font-weight: 800; }.mapping-controls[b-yr7313cbk6] { display: grid; grid-template-columns: repeat(2,minmax(15rem,1fr)); gap: .8rem; }.mapping-controls label[b-yr7313cbk6] { display: block; margin: 0 0 .25rem; color: #68596e; font-size: .67rem; font-weight: 800; text-transform: uppercase; }.allocation-description[b-yr7313cbk6] { grid-column: 1 / -1; }.form-control[b-yr7313cbk6],.form-select[b-yr7313cbk6] { width: 100%; min-height: 2.65rem; border: 1px solid #dcd0e2; border-radius: .65rem; background-color: #fff; font-size: .8rem; }.form-control:focus[b-yr7313cbk6],.form-select:focus[b-yr7313cbk6] { border-color: #9641bc; box-shadow: 0 0 0 .2rem rgba(150,65,188,.12); }.allocation-add-actions[b-yr7313cbk6] { display: flex; align-items: center; flex-wrap: wrap; gap: .45rem; margin: .75rem 0 0 2.55rem; }.allocation-add-actions > span[b-yr7313cbk6] { margin-right: .15rem; color: #716377; font-size: .7rem; font-weight: 700; }.allocation-add-actions button[b-yr7313cbk6] { min-height: 2.25rem; padding: .45rem .65rem; border: 1px solid #d8c3e2; border-radius: .58rem; color: #712499; background: #faf4fc; font-size: .7rem; font-weight: 800; }.allocation-add-actions button:hover[b-yr7313cbk6] { border-color: #a75ac6; background: #f4e8f9; }.match-note[b-yr7313cbk6] { display: flex; align-items: center; gap: .45rem; align-self: end; min-height: 2.65rem; color: #26714d; }.match-note span[b-yr7313cbk6] { display: grid; place-items: center; width: 1.45rem; height: 1.45rem; border-radius: 50%; color: #fff; background: #39a16b; }.credit-note[b-yr7313cbk6] { display: flex; flex-direction: column; margin: 0 1.2rem 1.2rem; padding: .85rem; border: 1px solid #add3e8; border-radius: .7rem; color: #245d80; background: #eef8fd; }.credit-note span[b-yr7313cbk6] { margin-top: .15rem; font-size: .75rem; }
.references-card[b-yr7313cbk6] { padding-bottom: .65rem; }.reference-row[b-yr7313cbk6] { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .7rem 1.2rem; border-top: 1px solid #f0e9f2; }.section-heading + .reference-row[b-yr7313cbk6] { border-top: 0; }.reference-row > span[b-yr7313cbk6] { display: flex; flex-direction: column; min-width: 0; }.reference-row > span strong[b-yr7313cbk6] { overflow-wrap: anywhere; }.reference-row small[b-yr7313cbk6],.reference-row em[b-yr7313cbk6] { color: #786b7e; font-size: .72rem; }.reference-actions[b-yr7313cbk6] { display: flex; align-items: center; gap: .4rem; }.reference-actions a[b-yr7313cbk6],.reference-actions button[b-yr7313cbk6],.reference-row > a[b-yr7313cbk6] { min-height: 2.15rem; padding: .45rem .68rem; border: 1px solid #dfd0e5; border-radius: .55rem; color: #7527a3; background: #fff; font-size: .72rem; font-weight: 800; line-height: 1.2; text-decoration: none; }.reference-actions a:hover[b-yr7313cbk6],.reference-actions button:hover[b-yr7313cbk6],.reference-row > a:hover[b-yr7313cbk6] { border-color: #a85bc7; background: #f8effb; }
.payment-options[b-yr7313cbk6] { display: grid; gap: .6rem; padding: 1rem 1.2rem; }.payment-option[b-yr7313cbk6] { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .7rem; padding: .75rem; border: 1px solid #dfd4e4; border-radius: .75rem; background: #fff; cursor: pointer; }.payment-option.selected[b-yr7313cbk6] { border-color: #9c48bf; background: #faf2fd; box-shadow: 0 0 0 .15rem rgba(155,64,190,.1); }.payment-option.conflict[b-yr7313cbk6] { opacity: .55; cursor: not-allowed; }.payment-option span[b-yr7313cbk6] { display: flex; flex-direction: column; }.payment-option small[b-yr7313cbk6] { margin-top: .15rem; color: #766a7c; }.payment-option em[b-yr7313cbk6] { color: #a62748; font-size: .68rem; }.payment-difference[b-yr7313cbk6] { padding: .32rem .52rem; border-radius: 999px; font-style: normal; font-weight: 800; white-space: nowrap; }.payment-difference.is-exact[b-yr7313cbk6] { color: #176742; background: #e3f5eb; }.payment-difference.is-partial[b-yr7313cbk6] { color: #89560c; background: #fff0d5; }.payment-difference.is-surplus[b-yr7313cbk6] { color: #315f83; background: #e7f2fa; }.payment-allocation[b-yr7313cbk6] { display: grid; grid-template-columns: 1fr minmax(14rem,20rem); align-items: end; gap: 1rem; margin: 0 1.2rem 1.1rem; padding: .85rem; border: 1px solid #d9cae0; border-radius: .75rem; background: #faf7fb; }.payment-allocation > div[b-yr7313cbk6] { display: flex; flex-direction: column; }.payment-allocation small[b-yr7313cbk6] { margin-top: .18rem; color: #75677b; }.payment-allocation label span[b-yr7313cbk6] { display: block; margin-bottom: .25rem; color: #68596e; font-size: .67rem; font-weight: 800; text-transform: uppercase; }.empty-inline[b-yr7313cbk6] { padding: 1.2rem; color: #796d7f; }
.posting-bar[b-yr7313cbk6] { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1rem 1.2rem; }.posting-bar label[b-yr7313cbk6] { font-size: .78rem; }.posting-bar input[b-yr7313cbk6] { accent-color: #963cbc; }
.posted-list[b-yr7313cbk6] { display: grid; padding: .35rem 1.2rem; }.posted-list > div[b-yr7313cbk6] { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .75rem 0; border-top: 1px solid #eee8f0; }.posted-list > div:first-child[b-yr7313cbk6] { border-top: 0; }.posted-list span[b-yr7313cbk6] { display: flex; flex-direction: column; }.posted-list small[b-yr7313cbk6] { margin-top: .12rem; color: #796d7e; }.payment-coverage[b-yr7313cbk6] { display: grid; grid-template-columns: repeat(3,1fr); gap: .75rem; margin: .4rem 1.2rem 1rem; padding: .85rem; border: 1px solid #dfd3e4; border-radius: .75rem; background: #faf8fb; }.payment-coverage > div[b-yr7313cbk6] { display: flex; flex-direction: column; padding-left: .75rem; border-left: 1px solid #e5dbe8; }.payment-coverage > div:first-child[b-yr7313cbk6] { padding-left: 0; border-left: 0; }.payment-coverage small[b-yr7313cbk6] { color: #776a7d; }.payment-coverage.is-covered[b-yr7313cbk6] { color: #176342; border-color: #b1dcc6; background: #eef9f3; }.payment-coverage.is-short[b-yr7313cbk6] { color: #89560c; border-color: #ead39e; background: #fff9ed; }.payment-coverage.is-excess[b-yr7313cbk6] { color: #315f83; border-color: #bed8e8; background: #eef7fc; }.settlement-box[b-yr7313cbk6],.late-payment-box[b-yr7313cbk6],.danger-zone[b-yr7313cbk6] { margin: .4rem 1.2rem 1.1rem; padding: .85rem; border-radius: .75rem; }.settlement-box[b-yr7313cbk6] { display: flex; flex-direction: column; gap: .55rem; color: #176342; border: 1px solid #b1dcc6; background: #eef9f3; }.settlement-row[b-yr7313cbk6] { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: center; gap: .7rem; padding-top: .55rem; border-top: 1px solid rgba(23,99,66,.16); }.settlement-row > span[b-yr7313cbk6] { display: flex; flex-direction: column; min-width: 0; font-size: .76rem; }.settlement-row small[b-yr7313cbk6] { overflow-wrap: anywhere; color: #527361; }.late-payment-box[b-yr7313cbk6] { display: grid; grid-template-columns: 1fr minmax(17rem,1fr) minmax(8rem,.5fr) auto; align-items: end; gap: .8rem; border: 1px solid #e1d4e7; background: #faf7fb; }.late-payment-box > div[b-yr7313cbk6] { display: flex; flex-direction: column; }.late-payment-box small[b-yr7313cbk6],.danger-zone small[b-yr7313cbk6] { color: #76697c; }.danger-zone[b-yr7313cbk6] { display: flex; justify-content: space-between; align-items: center; gap: 1rem; border: 1px solid #efd0d8; background: #fff8fa; }.danger-zone > div[b-yr7313cbk6] { display: flex; flex-direction: column; }
.empty-state[b-yr7313cbk6] { padding: 3rem; color: #766a7c; text-align: center; }
@media (max-width: 1100px) { .document-summary[b-yr7313cbk6] { grid-template-columns: repeat(3,1fr); }.document-summary > div:nth-child(4)[b-yr7313cbk6] { border-left: 0; }.late-payment-box[b-yr7313cbk6] { grid-template-columns: 1fr; align-items: stretch; } }
@media (max-width: 700px) { .review-page[b-yr7313cbk6] { padding-inline: .75rem; }.review-heading[b-yr7313cbk6] { align-items: flex-start; flex-direction: column; }.heading-actions[b-yr7313cbk6] { align-items: stretch; flex-direction: column; width: 100%; }.document-summary[b-yr7313cbk6] { grid-template-columns: 1fr 1fr; }.document-summary > div[b-yr7313cbk6] { border-left: 0; border-top: 1px solid #eee6f1; padding: .6rem; }.document-summary > div:first-child[b-yr7313cbk6],.document-summary > div:nth-child(2)[b-yr7313cbk6] { border-top: 0; }.allocation-balance[b-yr7313cbk6],.allocation-card[b-yr7313cbk6],.allocation-add-actions[b-yr7313cbk6] { margin-left: 0; }.allocation-balance[b-yr7313cbk6] { align-items: flex-start; flex-direction: column; }.mapping-controls[b-yr7313cbk6] { grid-template-columns: 1fr; }.allocation-description[b-yr7313cbk6] { grid-column: auto; }.allocation-add-actions[b-yr7313cbk6] { align-items: stretch; flex-direction: column; }.allocation-add-actions button[b-yr7313cbk6] { width: 100%; }.payment-option[b-yr7313cbk6] { grid-template-columns: auto 1fr; }.payment-difference[b-yr7313cbk6] { grid-column: 2; width: fit-content; white-space: normal; }.payment-allocation[b-yr7313cbk6],.payment-coverage[b-yr7313cbk6] { grid-template-columns: 1fr; }.payment-coverage > div[b-yr7313cbk6] { padding: .5rem 0 0; border-top: 1px solid #e5dbe8; border-left: 0; }.payment-coverage > div:first-child[b-yr7313cbk6] { padding-top: 0; border-top: 0; }.settlement-row[b-yr7313cbk6] { grid-template-columns: 1fr; }.settlement-row .payment-difference[b-yr7313cbk6] { grid-column: auto; }.late-payment-box[b-yr7313cbk6] { grid-template-columns: 1fr; }.posting-bar[b-yr7313cbk6],.danger-zone[b-yr7313cbk6] { align-items: stretch; flex-direction: column; }.posting-bar button[b-yr7313cbk6],.danger-zone button[b-yr7313cbk6] { width: 100%; }.reference-row[b-yr7313cbk6] { align-items: stretch; flex-direction: column; }.reference-actions > *[b-yr7313cbk6] { flex: 1; text-align: center; } }
/* /Components/Pages/ExpenseDocumentImport.razor.rz.scp.css */
.draft-page[b-rpshw8k584] { display: grid; gap: 1rem; width: 100%; min-width: 0; margin: 0; padding: 0; border: 0; color: var(--ott-ink); }
.draft-page > a[b-rpshw8k584] { display: inline-flex; align-items: center; width: fit-content; min-height: var(--ott-target); color: var(--ott-accent); font-size: var(--ott-text-small); text-decoration: none; }
.draft-page > header[b-rpshw8k584] { display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; gap: 1rem; }
.draft-page > header > div[b-rpshw8k584] { min-width: 0; }
.draft-page > header p[b-rpshw8k584] { margin: 0; color: var(--ott-accent); font-size: var(--ott-text-small); font-weight: 500; letter-spacing: .12em; text-transform: uppercase; }
.draft-page h1[b-rpshw8k584] { max-width: 60rem; margin: .2rem 0; overflow-wrap: anywhere; color: var(--ott-ink); font-size: var(--ott-text-title); font-weight: 600; letter-spacing: -.035em; }
.draft-page > header span[b-rpshw8k584] { color: var(--ott-muted); font-size: var(--ott-text-small); }
.draft-heading-actions[b-rpshw8k584] { display: flex; flex-wrap: wrap; gap: .5rem; }
.download[b-rpshw8k584], .preview-button[b-rpshw8k584], .delete-button[b-rpshw8k584], .lines-heading button[b-rpshw8k584], .line-row .remove[b-rpshw8k584], .primary[b-rpshw8k584] { display: inline-flex; align-items: center; justify-content: center; min-height: var(--ott-target); padding: .5rem .75rem; border: 1px solid var(--ott-control-border); border-radius: var(--ott-radius-button); color: var(--ott-ink); background: var(--ott-surface); font-size: var(--ott-text-small); font-weight: 500; text-decoration: none; }
.delete-button[b-rpshw8k584], .line-row .remove[b-rpshw8k584] { border-color: var(--ott-negative); color: var(--ott-negative); }
.draft-card[b-rpshw8k584] { min-width: 0; padding: 1rem; border: 1px solid var(--ott-line); border-radius: var(--ott-radius-surface); color: var(--ott-ink); background: var(--ott-surface); box-shadow: var(--ott-shadow); }
.draft-layout[b-rpshw8k584] { display: grid; grid-template-columns: minmax(0, 1.75fr) minmax(18rem, 1fr); gap: 1rem; align-items: stretch; }
.draft-card h2[b-rpshw8k584] { margin: 0; font-size: var(--ott-text-section); font-weight: 600; }
.fields[b-rpshw8k584] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; margin-top: 1rem; }
.fields label[b-rpshw8k584], .line-row label[b-rpshw8k584] { min-width: 0; font-size: var(--ott-text-small); font-weight: 500; }
.fields .wide[b-rpshw8k584] { grid-column: span 2; }
.form-control[b-rpshw8k584], .form-select[b-rpshw8k584] { width: 100%; min-height: var(--ott-target); margin-top: .25rem; border: 1px solid var(--ott-control-border); border-radius: var(--ott-radius-control); color: var(--ott-ink); background-color: var(--ott-surface); font-size: var(--ott-text); }
.form-control:disabled[b-rpshw8k584] { color: var(--ott-muted); background: var(--ott-disabled-surface); }
.source[b-rpshw8k584] { display: flex; flex-direction: column; min-height: 0; }
.source-heading[b-rpshw8k584] { display: flex; align-items: start; justify-content: space-between; gap: .75rem; margin-bottom: .75rem; }
.source-heading p[b-rpshw8k584] { margin: .25rem 0 0; color: var(--ott-muted); font-size: var(--ott-text-small); }
.source-heading button[b-rpshw8k584] { display: grid; width: var(--ott-target); height: var(--ott-target); flex: 0 0 auto; place-items: center; border: 1px solid var(--ott-control-border); border-radius: var(--ott-radius-button); color: var(--ott-ink); background: var(--ott-surface); font-size: 1rem; }
.source pre[b-rpshw8k584] { flex: 1; min-height: 12rem; max-height: 30rem; margin: 0; padding: .75rem; overflow: auto; border: 1px solid var(--ott-line); border-radius: var(--ott-radius-control); color: var(--ott-ink); background: var(--ott-background); font: .75rem/1.5 ui-monospace, SFMono-Regular, Consolas, monospace; white-space: pre-wrap; overflow-wrap: anywhere; }
.draft-feedback[b-rpshw8k584], .draft-warning[b-rpshw8k584] { padding: .875rem 1rem; border: 1px solid currentColor; border-radius: var(--ott-radius-control); }
.draft-feedback[b-rpshw8k584] { color: var(--ott-negative); background: var(--ott-negative-surface); }
.draft-feedback p[b-rpshw8k584] { margin: 0; }
.draft-warning[b-rpshw8k584] { color: var(--ott-warning); background: var(--ott-warning-surface); white-space: pre-line; }
.lines-heading[b-rpshw8k584], .save-row[b-rpshw8k584] { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .75rem; }
.lines-heading p[b-rpshw8k584] { margin: .25rem 0 0; color: var(--ott-muted); font-size: var(--ott-text-small); }
.line-list[b-rpshw8k584] { display: grid; gap: .75rem; margin: 1rem 0; }
.line-row[b-rpshw8k584] { display: grid; grid-template-columns: minmax(0, 2fr) repeat(3, minmax(0, 1fr)); gap: .75rem; align-items: end; padding: .75rem; border: 1px solid var(--ott-line); border-radius: var(--ott-radius-control); background: var(--ott-background); }
.line-row > label:first-child[b-rpshw8k584] { grid-column: 1 / -1; }
.line-row > label:has(input[type=checkbox])[b-rpshw8k584] { display: flex; align-items: center; gap: .5rem; min-height: var(--ott-target); }
.line-row input[type=checkbox][b-rpshw8k584] { flex: 0 0 auto; width: 1.125rem; height: 1.125rem; accent-color: var(--ott-accent); }
.save-row[b-rpshw8k584] { padding-top: 1rem; border-top: 1px solid var(--ott-line); font-variant-numeric: tabular-nums; }
.primary[b-rpshw8k584] { border-color: var(--ott-accent); color: var(--ott-on-accent); background: var(--ott-accent); }
.primary:hover[b-rpshw8k584] { background: var(--ott-accent-hover); }
button:disabled[b-rpshw8k584] { color: var(--ott-muted); background: var(--ott-disabled-surface); cursor: default; }
:is(button, a, input, select, pre):focus-visible[b-rpshw8k584] { outline: 3px solid var(--ott-focus); outline-offset: 2px; box-shadow: none; }
@media (max-width: 1200px) { .draft-layout[b-rpshw8k584] { grid-template-columns: 1fr; } .source pre[b-rpshw8k584] { max-height: 16rem; } }
@media (max-width: 900px) { .fields[b-rpshw8k584] { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 760px) {
    .draft-page h1[b-rpshw8k584] { font-size: 1.6875rem; }
    .draft-page > header[b-rpshw8k584], .save-row[b-rpshw8k584], .lines-heading[b-rpshw8k584] { align-items: stretch; flex-direction: column; }
    .draft-heading-actions[b-rpshw8k584] { width: 100%; }
    .draft-heading-actions > *[b-rpshw8k584] { flex: 1 1 8rem; text-align: center; }
    .fields[b-rpshw8k584] { grid-template-columns: minmax(0, 1fr); }
    .fields .wide[b-rpshw8k584] { grid-column: auto; }
    .line-row[b-rpshw8k584] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .form-control[b-rpshw8k584], .form-select[b-rpshw8k584] { font-size: 1rem; }
    .primary[b-rpshw8k584] { width: 100%; }
}
/* /Components/Pages/ExpenseDocuments.razor.rz.scp.css */
.documents-page[b-1clh3qyryv] { width: 100%; min-width: 0; margin: 0; color: var(--ott-ink); }
.documents-heading[b-1clh3qyryv] { margin-bottom: 1rem; }
.documents-heading h1[b-1clh3qyryv] { margin: .15rem 0 .35rem; font-size: var(--ott-text-title); font-weight: 600; letter-spacing: -.035em; }
.documents-heading p[b-1clh3qyryv] { margin: 0; color: var(--ott-muted); }
.documents-heading .documents-kicker[b-1clh3qyryv] { color: var(--ott-accent); font-size: var(--ott-text-small); font-weight: 500; letter-spacing: .12em; text-transform: uppercase; }
.document-card[b-1clh3qyryv] { min-width: 0; margin-bottom: 1rem; border: 1px solid var(--ott-line); border-radius: var(--ott-radius-surface); background: var(--ott-surface); box-shadow: var(--ott-shadow); overflow: hidden; }
.section-toggle[b-1clh3qyryv] { display: grid; grid-template-columns: auto minmax(0, 1fr) auto auto; align-items: center; gap: .75rem; width: 100%; min-height: var(--ott-target); padding: .875rem 1rem; border: 0; color: var(--ott-ink); background: var(--ott-background); text-align: left; }
.section-toggle-icon[b-1clh3qyryv] { display: grid; place-items: center; width: 2.25rem; height: 2.25rem; border-radius: var(--ott-radius-button); color: var(--ott-on-accent); background: var(--ott-accent); font-weight: 600; }
.section-toggle-copy[b-1clh3qyryv] { display: flex; flex-direction: column; }
.section-toggle-copy small[b-1clh3qyryv], .card-title-row span[b-1clh3qyryv] { margin-top: .125rem; color: var(--ott-muted); font-size: var(--ott-text-small); font-weight: 400; }
.section-toggle-action[b-1clh3qyryv] { padding: .375rem .625rem; border: 1px solid var(--ott-line); border-radius: var(--ott-radius-button); color: var(--ott-accent); background: var(--ott-surface); font-size: var(--ott-text-small); font-weight: 500; }
.section-toggle-chevron[b-1clh3qyryv] { color: var(--ott-accent); transition: transform var(--ott-motion-duration); }
.section-toggle-chevron.is-open[b-1clh3qyryv] { transform: rotate(180deg); }
.section-body[b-1clh3qyryv] { padding: 1rem; }
.file-drop[b-1clh3qyryv] { position: relative; display: flex; align-items: center; gap: .75rem; min-height: 6rem; padding: 1rem; border: 1px dashed var(--ott-control-border); border-radius: var(--ott-radius-control); color: var(--ott-ink); background: var(--ott-background); cursor: pointer; }
.file-drop:hover[b-1clh3qyryv] { border-color: var(--ott-accent); }
.file-drop.is-disabled[b-1clh3qyryv] { color: var(--ott-muted); background: var(--ott-disabled-surface); cursor: progress; }
.file-drop[b-1clh3qyryv]  input { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: inherit; }
.file-drop:focus-within[b-1clh3qyryv] { outline: 3px solid var(--ott-focus); outline-offset: 2px; }
.file-drop span:nth-child(2)[b-1clh3qyryv] { display: flex; flex-direction: column; min-width: 0; }
.file-drop small[b-1clh3qyryv] { color: var(--ott-muted); margin-top: .25rem; }
.file-drop-icon[b-1clh3qyryv] { display: grid; place-items: center; width: var(--ott-target); height: var(--ott-target); flex: 0 0 auto; border-radius: var(--ott-radius-button); color: var(--ott-on-accent); background: var(--ott-accent); font-size: 1.25rem; }
.feedback-panel[b-1clh3qyryv] { display: flex; gap: .75rem; margin-bottom: 1rem; padding: .875rem 1rem; border: 1px solid currentColor; border-radius: var(--ott-radius-control); }
.feedback-panel-error[b-1clh3qyryv] { color: var(--ott-negative); background: var(--ott-negative-surface); }
.feedback-panel-success[b-1clh3qyryv] { color: var(--ott-positive); background: var(--ott-positive-surface); }
.feedback-panel p[b-1clh3qyryv] { margin: .125rem 0 0; }
.feedback-icon[b-1clh3qyryv] { display: grid; place-items: center; width: 1.5rem; height: 1.5rem; flex: 0 0 auto; border-radius: 50%; color: var(--ott-surface); background: var(--ott-negative); font-weight: 600; }
.feedback-panel-success .feedback-icon[b-1clh3qyryv] { background: var(--ott-positive); }
.import-results[b-1clh3qyryv] { padding: 1rem; }
.card-title-row[b-1clh3qyryv] { display: flex; align-items: center; justify-content: space-between; gap: .75rem; }
.card-title-row > div[b-1clh3qyryv] { display: flex; flex-direction: column; }
.import-result-list[b-1clh3qyryv] { display: grid; gap: .5rem; margin-top: .75rem; }
.import-result[b-1clh3qyryv] { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: .75rem; align-items: center; padding: .75rem; border: 1px solid var(--ott-line); border-radius: var(--ott-radius-control); background: var(--ott-background); }
.import-result-copy[b-1clh3qyryv], .import-result > span:nth-child(2)[b-1clh3qyryv] { display: flex; flex-direction: column; min-width: 0; }
.import-result strong[b-1clh3qyryv] { overflow-wrap: anywhere; }
.import-result small[b-1clh3qyryv] { display: flex; flex-direction: column; gap: .125rem; margin-top: .125rem; color: var(--ott-muted); }
.queue-warning[b-1clh3qyryv] { color: var(--ott-warning); font-size: var(--ott-text-label); white-space: pre-line; }
.import-result-actions[b-1clh3qyryv] { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: .375rem; }
.import-result-actions a[b-1clh3qyryv], .import-result-actions button[b-1clh3qyryv], .card-title-row > button[b-1clh3qyryv] { display: inline-flex; align-items: center; justify-content: center; min-height: var(--ott-target); padding: .5rem .625rem; border: 1px solid var(--ott-control-border); border-radius: var(--ott-radius-button); color: var(--ott-ink); background: var(--ott-surface); font-size: var(--ott-text-small); font-weight: 500; line-height: 1.3; text-decoration: none; }
.import-result-actions a:hover[b-1clh3qyryv], .import-result-actions button:hover[b-1clh3qyryv] { border-color: var(--ott-accent); color: var(--ott-accent); }
.import-result-actions .primary-row-action[b-1clh3qyryv] { border-color: var(--ott-accent); color: var(--ott-on-accent); background: var(--ott-accent); }
.import-result-actions .primary-row-action:hover[b-1clh3qyryv] { color: var(--ott-on-accent); background: var(--ott-accent-hover); }
.import-result-actions .danger-row-action[b-1clh3qyryv] { color: var(--ott-negative); border-color: var(--ott-negative); }
.result-mark[b-1clh3qyryv] { display: grid; place-items: center; width: 1.75rem; height: 1.75rem; border-radius: 50%; color: var(--ott-on-accent); background: var(--ott-positive); font-size: var(--ott-text-small); font-weight: 600; }
.import-result-pending .result-mark[b-1clh3qyryv], .import-result-needsinput .result-mark[b-1clh3qyryv], .import-result-duplicate .result-mark[b-1clh3qyryv] { color: var(--ott-warning); background: var(--ott-warning-surface); }
.import-result-processing .result-mark[b-1clh3qyryv] { color: var(--ott-info); background: var(--ott-info-surface); animation: queue-spin-b-1clh3qyryv 1.2s linear infinite; }
.import-result-needsinput[b-1clh3qyryv] { border-color: var(--ott-warning); }
.import-result-conflict[b-1clh3qyryv], .import-result-failed[b-1clh3qyryv], .import-result-error[b-1clh3qyryv] { border-color: var(--ott-negative); background: var(--ott-negative-surface); }
.import-result-conflict .result-mark[b-1clh3qyryv], .import-result-failed .result-mark[b-1clh3qyryv], .import-result-error .result-mark[b-1clh3qyryv] { background: var(--ott-negative); }
@keyframes queue-spin-b-1clh3qyryv { to { transform: rotate(360deg); } }
.register-toolbar[b-1clh3qyryv] { display: flex; align-items: center; flex-wrap: wrap; gap: .75rem; padding: 1rem; }
.document-toolbar-tools[b-1clh3qyryv] { flex: 1 1 27rem; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .5rem; align-items: end; min-width: 0; }
.document-extra-filters[open][b-1clh3qyryv] { grid-column: 1 / -1; }
.document-extra-filters > summary[b-1clh3qyryv] { min-height: var(--ott-target); padding: .625rem .75rem; border: 1px solid var(--ott-control-border); border-radius: var(--ott-radius-button); color: var(--ott-ink); font-size: var(--ott-text-small); cursor: pointer; }
.document-filters[b-1clh3qyryv] { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .75rem; padding-top: .75rem; }
.document-toolbar-tools label[b-1clh3qyryv] { display: block; margin-bottom: .25rem; color: var(--ott-muted); font-size: var(--ott-text-label); font-weight: 500; }
.form-control[b-1clh3qyryv], .form-select[b-1clh3qyryv] { width: 100%; min-height: var(--ott-target); padding: .5rem .75rem; border: 1px solid var(--ott-control-border); border-radius: var(--ott-radius-control); background-color: var(--ott-surface); color: var(--ott-ink); font-size: var(--ott-text); }
.documents-table-wrap[b-1clh3qyryv] { overflow-x: auto; border-top: 1px solid var(--ott-line); }
.documents-table[b-1clh3qyryv] { width: 100%; border-collapse: collapse; min-width: 68rem; table-layout: fixed; }
.documents-table th:nth-child(3)[b-1clh3qyryv] { width: 7rem; }
.documents-table th:nth-child(4)[b-1clh3qyryv] { width: 8.5rem; }
.documents-table th:nth-child(5)[b-1clh3qyryv] { width: 8.5rem; }
.documents-table th:nth-child(6)[b-1clh3qyryv] { width: 8rem; }
.documents-table th:nth-child(7)[b-1clh3qyryv] { width: 9rem; }
.documents-table th:nth-child(8)[b-1clh3qyryv] { width: 7rem; }
.documents-table td:nth-child(3)[b-1clh3qyryv] { white-space: nowrap; }
.documents-table th[b-1clh3qyryv] { padding: .625rem .75rem; color: var(--ott-muted); background: var(--ott-background); font-size: var(--ott-text-label); font-weight: 500; text-align: left; }
.documents-table td[b-1clh3qyryv] { padding: .5rem .75rem; border-top: 1px solid var(--ott-line); vertical-align: middle; font-size: var(--ott-text-small); overflow-wrap: anywhere; }
.documents-table td > strong[b-1clh3qyryv], .documents-table td > small[b-1clh3qyryv] { display: block; }
.documents-table td small[b-1clh3qyryv] { max-width: 22rem; color: var(--ott-muted); font-size: var(--ott-text-label); overflow-wrap: anywhere; }
.documents-table tbody tr:hover[b-1clh3qyryv] { background: var(--ott-background); }
.money[b-1clh3qyryv] { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.amount-negative[b-1clh3qyryv] { color: var(--ott-positive); }
.amount-positive[b-1clh3qyryv] { color: var(--ott-ink); }
.type-badge[b-1clh3qyryv], .status-badge[b-1clh3qyryv], .payment-label[b-1clh3qyryv] { display: inline-flex; padding: .25rem .5rem; border-radius: var(--ott-radius-button); font-size: var(--ott-text-label); font-weight: 500; white-space: nowrap; }
.type-badge[b-1clh3qyryv] { white-space: normal; overflow-wrap: normal; color: var(--ott-info); background: var(--ott-info-surface); }
.status-review[b-1clh3qyryv], .payment-partiallypaid[b-1clh3qyryv] { color: var(--ott-warning); background: var(--ott-warning-surface); }
.status-posted[b-1clh3qyryv], .payment-paid[b-1clh3qyryv] { color: var(--ott-positive); background: var(--ott-positive-surface); }
.status-reverted[b-1clh3qyryv] { color: var(--ott-muted); background: var(--ott-background); }
.payment-unpaid[b-1clh3qyryv] { color: var(--ott-negative); background: var(--ott-negative-surface); }
.payment-credit[b-1clh3qyryv] { color: var(--ott-info); background: var(--ott-info-surface); }
.row-link[b-1clh3qyryv] { white-space: nowrap; display: inline-flex; align-items: center; min-height: var(--ott-target); color: var(--ott-accent); font-size: var(--ott-text-small); font-weight: 500; text-decoration: none; }
.pagination-row[b-1clh3qyryv] { display: flex; justify-content: space-between; align-items: center; padding: .75rem 1rem; color: var(--ott-muted); font-size: var(--ott-text-small); }
.pagination-row div[b-1clh3qyryv] { display: flex; gap: .5rem; }
.pagination-row button[b-1clh3qyryv] { width: var(--ott-target); height: var(--ott-target); border: 1px solid var(--ott-control-border); border-radius: var(--ott-radius-button); color: var(--ott-ink); background: var(--ott-surface); }
button:disabled[b-1clh3qyryv] { color: var(--ott-muted); background: var(--ott-disabled-surface); cursor: default; }
.empty-state[b-1clh3qyryv] { padding: 2rem 1rem; color: var(--ott-muted); text-align: center; }
.empty-state span[b-1clh3qyryv], .empty-state strong[b-1clh3qyryv], .empty-state p[b-1clh3qyryv] { display: block; }
.empty-state span[b-1clh3qyryv] { color: var(--ott-accent); font-size: 2rem; }
.empty-state p[b-1clh3qyryv] { margin: .25rem 0 0; }
:is(button, a, input, select, summary):focus-visible[b-1clh3qyryv] { outline: 3px solid var(--ott-focus); outline-offset: 2px; box-shadow: none; }
@media (max-width: 760px) {
    .type-badge[b-1clh3qyryv], .status-badge[b-1clh3qyryv], .payment-label[b-1clh3qyryv] { max-width: 100%; white-space: normal; }
    .documents-heading h1[b-1clh3qyryv] { font-size: 1.6875rem; }
    .document-filters[b-1clh3qyryv] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .document-toolbar-tools[b-1clh3qyryv] { flex-basis: 100%; }
    .form-control[b-1clh3qyryv], .form-select[b-1clh3qyryv] { font-size: 1rem; }
    .section-toggle[b-1clh3qyryv] { grid-template-columns: auto minmax(0, 1fr) auto; }
    .section-toggle-action[b-1clh3qyryv] { display: none; }
    .import-result[b-1clh3qyryv] { grid-template-columns: auto minmax(0, 1fr); align-items: start; }
    .import-result-actions[b-1clh3qyryv] { grid-column: 1 / -1; justify-content: stretch; }
    .import-result-actions > *[b-1clh3qyryv] { flex: 1; text-align: center; }
    .documents-table[b-1clh3qyryv] { display: block; min-width: 0; }
    .documents-table thead[b-1clh3qyryv] { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
    .documents-table tbody[b-1clh3qyryv] { display: block; }
    .documents-table tr[b-1clh3qyryv] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem .75rem; padding: .75rem 1rem; border-bottom: 1px solid var(--ott-line); }
    .documents-table td[b-1clh3qyryv] { min-width: 0; padding: 0; border: 0; text-align: left; white-space: normal; }
    .documents-table td:first-child[b-1clh3qyryv], .documents-table td:nth-child(2)[b-1clh3qyryv], .documents-table td:last-child[b-1clh3qyryv] { grid-column: 1 / -1; }
    .documents-table td[data-label][b-1clh3qyryv]::before { display: block; margin-bottom: .125rem; color: var(--ott-muted); content: attr(data-label); font-size: var(--ott-text-label); }
    .documents-table td small[b-1clh3qyryv] { max-width: none; }
}
@media (prefers-reduced-motion: reduce) { .section-toggle-chevron[b-1clh3qyryv] { transition: none; } .import-result-processing .result-mark[b-1clh3qyryv] { animation: none; } }
/* /Components/Pages/MembershipDues.razor.rz.scp.css */
.dues-page[b-ott-dues] {
    width: min(calc(100vw - 270px - 6rem), 100rem);
    margin-left: 50%;
    transform: translateX(-50%);
}

.dues-heading[b-ott-dues] {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.dues-heading h1[b-ott-dues] {
    margin: 0.15rem 0 0.35rem;
    color: #fff;
    font-weight: 750;
    letter-spacing: -0.035em;
}

.dues-heading p[b-ott-dues] {
    margin: 0;
    color: rgba(255, 255, 255, 0.66);
}

.dues-heading .dues-kicker[b-ott-dues] {
    color: #c384ec;
    font-size: 0.75rem;
    font-weight: 750;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.year-switcher[b-ott-dues] {
    display: inline-flex;
    overflow: hidden;
    align-items: center;
    flex: 0 0 auto;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 0.85rem;
    background: rgba(255, 255, 255, 0.08);
    box-shadow: 0 0.8rem 2rem rgba(6, 3, 12, 0.18);
    color: #fff;
    backdrop-filter: blur(0.7rem);
}

.year-switcher strong[b-ott-dues] {
    min-width: 5rem;
    padding: 0.65rem 0.8rem;
    text-align: center;
}

.year-switcher button[b-ott-dues] {
    display: grid;
    width: 2.7rem;
    min-height: 2.7rem;
    place-items: center;
    border: 0;
    background: transparent;
    color: #e3c5f5;
    font-size: 1.55rem;
}

.year-switcher button:hover:not(:disabled)[b-ott-dues] {
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
}

.feedback-panel[b-ott-dues] {
    display: flex;
    align-items: flex-start;
    gap: 0.8rem;
    margin-bottom: 1.25rem;
    padding: 0.9rem 1rem;
    border: 1px solid;
    border-radius: 0.95rem;
    box-shadow: 0 0.8rem 2rem rgba(8, 4, 14, 0.12);
}

.feedback-panel strong[b-ott-dues] {
    display: block;
    margin-bottom: 0.1rem;
    font-size: 0.84rem;
}

.feedback-panel p[b-ott-dues] {
    margin: 0;
    font-size: 0.78rem;
    line-height: 1.45;
}

.feedback-icon[b-ott-dues] {
    display: inline-grid;
    width: 1.7rem;
    height: 1.7rem;
    flex: 0 0 1.7rem;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    font-size: 0.8rem;
    font-weight: 800;
}

.feedback-panel-success[b-ott-dues] {
    border-color: #bfe4cc;
    background: linear-gradient(135deg, #f4fcf7, #edf8f1);
    color: #1f6338;
}

.feedback-panel-success .feedback-icon[b-ott-dues] {
    background: #2d8b50;
}

.feedback-panel-error[b-ott-dues] {
    border-color: #efcbd3;
    background: linear-gradient(135deg, #fff8f9, #fff2f5);
    color: #8a2940;
}

.feedback-panel-error .feedback-icon[b-ott-dues] {
    background: #bb3e5c;
}

.dues-card[b-ott-dues] {
    min-height: 22rem;
    background: #fff;
    color: #2b2230;
}

.dues-toolbar[b-ott-dues] {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1.25rem;
    padding: 1.35rem 1.5rem;
    border-bottom: 1px solid #ece5f0;
    background: linear-gradient(135deg, #fff, #fbf7fd);
}

.dues-summary[b-ott-dues] {
    display: flex;
    min-width: 12rem;
    flex-direction: column;
    gap: 0.15rem;
}

.dues-summary strong[b-ott-dues] {
    font-size: 1.05rem;
}

.dues-summary span[b-ott-dues] {
    color: #786c7f;
    font-size: 0.77rem;
}

.dues-filters[b-ott-dues] {
    display: grid;
    width: min(100%, 50rem);
    grid-template-columns: minmax(12rem, 1.4fr) minmax(10rem, 1fr) minmax(10rem, 1fr) 6.5rem;
    gap: 0.75rem;
}

.dues-filters label[b-ott-dues] {
    display: block;
    margin-bottom: 0.3rem;
    color: #66586e;
    font-size: 0.68rem;
    font-weight: 750;
    letter-spacing: 0.035em;
    text-transform: uppercase;
}

.dues-filters .form-control[b-ott-dues],
.dues-filters .form-select[b-ott-dues],
.dialog-field .form-control[b-ott-dues] {
    min-height: 2.65rem;
    border-color: #d9d1de;
    border-radius: 0.7rem;
    font-size: 0.82rem;
}

.dues-filters .form-control:focus[b-ott-dues],
.dues-filters .form-select:focus[b-ott-dues],
.dialog-field .form-control:focus[b-ott-dues] {
    border-color: #9450c6;
    box-shadow: 0 0 0 0.2rem rgba(148, 80, 198, 0.13);
}

.dues-legend[b-ott-dues] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem 1rem;
    padding: 0.75rem 1.5rem;
    border-bottom: 1px solid #eee8f1;
    color: #706477;
    font-size: 0.7rem;
}

.dues-legend span[b-ott-dues] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

.dues-legend i[b-ott-dues] {
    width: 0.7rem;
    height: 0.7rem;
    border: 1px solid;
    border-radius: 0.22rem;
}

.legend-paid[b-ott-dues] { border-color: #83b994 !important; background: #dff2e5; }
.legend-late[b-ott-dues] { border-color: #d3a846 !important; background: #fff0c8; }
.legend-overdue[b-ott-dues] { border-color: #d27686 !important; background: #fde7eb; }
.legend-due[b-ott-dues] { border-color: #cfc7d4 !important; background: #f8f6f9; }
.legend-na[b-ott-dues] { border-color: #cbc7cd !important; background: #dedbe0; }

.dues-matrix-scroll[b-ott-dues] {
    overflow: auto;
    max-width: 100%;
    scrollbar-color: #a98bb9 #f1ecf3;
}

.dues-matrix[b-ott-dues] {
    width: max-content;
    min-width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 0.78rem;
}

.dues-matrix th[b-ott-dues],
.dues-matrix td[b-ott-dues] {
    border-right: 1px solid #eee9f1;
    border-bottom: 1px solid #eee9f1;
}

.dues-matrix thead th[b-ott-dues] {
    position: sticky;
    z-index: 3;
    top: 0;
    min-width: 5.65rem;
    padding: 0.8rem 0.5rem;
    background: #46304f;
    color: #fff;
    font-size: 0.69rem;
    font-weight: 700;
    text-align: center;
}

.dues-matrix .member-column[b-ott-dues] {
    position: sticky;
    z-index: 2;
    left: 0;
    width: 14rem;
    min-width: 14rem;
    max-width: 14rem;
    background: #fff;
    box-shadow: 0.4rem 0 0.8rem -0.75rem rgba(33, 20, 41, 0.55);
}

.dues-matrix thead .member-column[b-ott-dues] {
    z-index: 4;
    padding-left: 1.25rem;
    background: #382540;
    text-align: left;
}

.member-identity[b-ott-dues] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.65rem 0.85rem;
    text-align: left;
}

.member-initial[b-ott-dues] {
    display: grid;
    width: 2.1rem;
    height: 2.1rem;
    flex: 0 0 2.1rem;
    place-items: center;
    border-radius: 50%;
    background: linear-gradient(135deg, #7c35ad, #a24dd1);
    box-shadow: 0 0.35rem 0.8rem rgba(73, 29, 103, 0.22);
    color: #fff;
    font-size: 0.72rem;
    font-weight: 800;
}

.member-identity > span:last-child[b-ott-dues] {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.member-identity strong[b-ott-dues],
.member-identity small[b-ott-dues] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.member-identity strong[b-ott-dues] {
    color: #2f2335;
    font-size: 0.79rem;
}

.member-identity small[b-ott-dues] {
    margin-top: 0.08rem;
    color: #87798e;
    font-size: 0.68rem;
    font-weight: 500;
}

.due-table-cell[b-ott-dues] {
    height: 3.55rem;
    padding: 0.28rem;
    background: #fff;
}

.due-cell-button[b-ott-dues] {
    display: flex;
    width: 100%;
    min-height: 2.95rem;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    padding: 0.35rem 0.4rem;
    border: 1px solid;
    border-radius: 0.62rem;
    transition: transform 120ms ease, box-shadow 120ms ease, filter 120ms ease;
}

.due-cell-button:not(:disabled):hover[b-ott-dues] {
    z-index: 1;
    transform: translateY(-1px);
    box-shadow: 0 0.45rem 0.9rem rgba(42, 25, 51, 0.13);
    filter: saturate(1.1);
}

.due-cell-button:disabled[b-ott-dues] {
    cursor: default;
    opacity: 1;
}

.cell-status-mark[b-ott-dues] {
    display: grid;
    width: 1.25rem;
    height: 1.25rem;
    flex: 0 0 1.25rem;
    place-items: center;
    border: 1.5px solid currentColor;
    border-radius: 0.32rem;
    font-size: 0.72rem;
    font-weight: 850;
}

.status-due .cell-status-mark[b-ott-dues] {
    background: #fff;
    color: #9e94a4;
}

.cell-copy[b-ott-dues] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    text-align: left;
}

.cell-copy strong[b-ott-dues] {
    font-size: 0.67rem;
    white-space: nowrap;
}

.cell-copy small[b-ott-dues] {
    font-size: 0.6rem;
    white-space: nowrap;
}

.cell-copy small:empty[b-ott-dues] {
    display: none;
}

.status-paid[b-ott-dues] {
    border-color: #aed7ba;
    background: linear-gradient(135deg, #eef9f1, #dff2e5);
    color: #21643a;
}

.status-paid-late[b-ott-dues] {
    border-color: #e5c46f;
    background: linear-gradient(135deg, #fff9e9, #fff0c8);
    color: #8b5b00;
}

.status-overdue[b-ott-dues] {
    border-color: #e6a6b1;
    background: linear-gradient(135deg, #fff5f6, #fde7eb);
    color: #9a3046;
}

.status-due[b-ott-dues] {
    border-color: #ddd6e1;
    background: linear-gradient(135deg, #fff, #f8f6f9);
    color: #6e6374;
}

.not-applicable-cell[b-ott-dues] {
    height: 3.55rem;
    background: repeating-linear-gradient(135deg, #e5e2e6, #e5e2e6 0.35rem, #dedbe0 0.35rem, #dedbe0 0.7rem);
    color: #716d74;
    text-align: center;
}

.not-applicable[b-ott-dues] {
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.05em;
}

.dues-loading[b-ott-dues],
.dues-empty-state[b-ott-dues] {
    display: flex;
    min-height: 17rem;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 0.5rem;
    padding: 2rem;
    color: #796d80;
    text-align: center;
}

.dues-empty-state > span[b-ott-dues] {
    color: #a24dd1;
    font-size: 2rem;
}

.dues-empty-state p[b-ott-dues] {
    max-width: 30rem;
    margin: 0;
    font-size: 0.8rem;
}

.loading-mark[b-ott-dues] {
    width: 2rem;
    height: 2rem;
    border: 3px solid #eadff0;
    border-top-color: #8c3dbc;
    border-radius: 50%;
    animation: dues-spin-b-ott-dues 700ms linear infinite;
}

@keyframes dues-spin-b-ott-dues { to { transform: rotate(360deg); } }

.dues-pagination[b-ott-dues] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.9rem 1.5rem;
    border-top: 1px solid #eee8f1;
    color: #756a7c;
    font-size: 0.75rem;
}

.dues-pagination div[b-ott-dues] {
    display: flex;
    gap: 0.5rem;
}

.dues-pagination .btn[b-ott-dues] {
    border: 1px solid #d9cde0;
    border-radius: 0.6rem;
    background: #fff;
    color: #6f2d99;
    font-weight: 700;
}

.dues-dialog-backdrop[b-ott-dues] {
    position: fixed;
    z-index: 1200;
    inset: 0;
    display: grid;
    overflow-y: auto;
    place-items: center;
    padding: 1.25rem;
    background: rgba(12, 7, 18, 0.7);
    backdrop-filter: blur(0.45rem);
}

.dues-dialog[b-ott-dues] {
    position: relative;
    width: min(100%, 27rem);
    padding: 1.6rem;
    border: 1px solid rgba(151, 94, 184, 0.2);
    border-radius: 1.25rem;
    background: linear-gradient(145deg, #fff, #faf6fc);
    box-shadow: 0 2rem 5rem rgba(5, 2, 9, 0.42);
    color: #2e2433;
}

.dialog-close[b-ott-dues] {
    position: absolute;
    top: 0.85rem;
    right: 0.85rem;
    display: grid;
    width: 2rem;
    height: 2rem;
    place-items: center;
    border: 0;
    border-radius: 50%;
    background: #f0eaf3;
    color: #6d5c76;
    font-size: 1.2rem;
}

.dialog-icon[b-ott-dues] {
    display: grid;
    width: 2.8rem;
    height: 2.8rem;
    margin-bottom: 1rem;
    place-items: center;
    border: 1px solid;
    border-radius: 0.85rem;
    font-size: 1.1rem;
    font-weight: 850;
}

.dialog-kicker[b-ott-dues] {
    margin: 0 0 0.15rem;
    color: #8a4bae;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.dues-dialog h2[b-ott-dues] {
    margin: 0;
    font-size: 1.3rem;
    font-weight: 750;
}

.dialog-due-details[b-ott-dues] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin: 1rem 0 1.2rem;
    padding: 0.8rem 0.9rem;
    border: 1px solid #e7ddec;
    border-radius: 0.75rem;
    background: #fff;
    color: #75667d;
    font-size: 0.77rem;
}

.dialog-due-details strong[b-ott-dues] {
    color: #3b2945;
    white-space: nowrap;
}

.dialog-field label[b-ott-dues] {
    display: block;
    margin-bottom: 0.35rem;
    font-size: 0.78rem;
    font-weight: 750;
}

.dialog-field small[b-ott-dues] {
    display: block;
    margin-top: 0.35rem;
    color: #84768b;
    font-size: 0.69rem;
}

.dialog-primary-action[b-ott-dues],
.dialog-remove-action[b-ott-dues] {
    width: 100%;
    min-height: 2.9rem;
    margin-top: 1.2rem;
    border-radius: 0.72rem;
    font-weight: 750;
}

.dialog-primary-action[b-ott-dues] {
    border: 0;
    background: linear-gradient(135deg, #7c35ad, #a24dd1);
    color: #fff;
}

.dialog-remove-action[b-ott-dues] {
    border: 1px solid #e2a7b2;
    background: #fff5f6;
    color: #a13048;
}

.payment-recorded[b-ott-dues] {
    display: flex;
    flex-direction: column;
    padding: 0.95rem 1rem;
    border: 1px solid #d8eadc;
    border-radius: 0.8rem;
    background: #f3faf5;
}

.payment-recorded span[b-ott-dues] {
    color: #68786b;
    font-size: 0.68rem;
    font-weight: 750;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.payment-recorded strong[b-ott-dues] {
    margin: 0.15rem 0;
    color: #215e35;
    font-size: 1.05rem;
}

.payment-recorded small[b-ott-dues],
.remove-hint[b-ott-dues] {
    color: #786d7e;
    font-size: 0.68rem;
    line-height: 1.4;
}

.payment-bank-source[b-ott-dues] {
    display: flex;
    flex-direction: column;
    margin-top: 0.7rem;
    padding: 0.8rem 0.9rem;
    border: 1px solid #dfd2e6;
    border-radius: 0.75rem;
    background: #faf5fd;
}

.payment-bank-source span[b-ott-dues] {
    color: #806e89;
    font-size: 0.64rem;
    font-weight: 750;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.payment-bank-source strong[b-ott-dues] {
    margin-top: 0.12rem;
    color: #493252;
    font-size: 0.78rem;
}

.payment-bank-source a[b-ott-dues] {
    margin-top: 0.3rem;
    color: #792da4;
    font-size: 0.72rem;
    font-weight: 750;
    text-decoration: none;
}

.payment-bank-source a:hover[b-ott-dues] {
    text-decoration: underline;
}

.remove-hint[b-ott-dues] {
    display: block;
    margin-top: 0.45rem;
    text-align: center;
}

.dialog-error[b-ott-dues] {
    margin: 0.8rem 0 0;
    padding: 0.6rem 0.7rem;
    border-left: 3px solid #c94b65;
    border-radius: 0 0.5rem 0.5rem 0;
    background: #fff0f3;
    color: #912e45;
    font-size: 0.73rem;
}

@media (max-width: 1150px) {
    .dues-toolbar[b-ott-dues] {
        align-items: stretch;
        flex-direction: column;
    }

    .dues-filters[b-ott-dues] {
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 641px) and (max-width: 1050px) {
    .dues-page[b-ott-dues] {
        width: calc(100vw - 230px - 4rem);
    }
}

@media (max-width: 640px) {
    .dues-page[b-ott-dues] {
        width: 100%;
        margin-left: 0;
        transform: none;
    }

    .dues-heading[b-ott-dues] {
        align-items: stretch;
        flex-direction: column;
    }

    .year-switcher[b-ott-dues] {
        align-self: flex-start;
    }

    .dues-toolbar[b-ott-dues],
    .dues-legend[b-ott-dues] {
        padding-right: 1rem;
        padding-left: 1rem;
    }

    .dues-filters[b-ott-dues] {
        grid-template-columns: 1fr;
    }

    .dues-matrix .member-column[b-ott-dues] {
        width: 12rem;
        min-width: 12rem;
        max-width: 12rem;
    }

    .dues-dialog-backdrop[b-ott-dues] {
        align-items: end;
        padding: 0;
    }

    .dues-dialog[b-ott-dues] {
        width: 100%;
        border-radius: 1.25rem 1.25rem 0 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .due-cell-button[b-ott-dues],
    .loading-mark[b-ott-dues] {
        animation: none;
        transition: none;
    }
}
/* /Components/Pages/MembershipTypes.razor.rz.scp.css */
.membership-heading[b-wadbgcdmmc] {
    margin-bottom: 1.75rem;
}

.membership-heading h1[b-wadbgcdmmc] {
    font-size: var(--ott-text-title);
    margin: 0.15rem 0 0.35rem;
    color: var(--ott-ink);
    font-weight: 600;
    letter-spacing: -0.035em;
}

.membership-heading p[b-wadbgcdmmc] {
    margin: 0;
    color: var(--ott-muted);
}

.membership-heading .membership-kicker[b-wadbgcdmmc] {
    color: var(--ott-accent);
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.feedback-panel[b-wadbgcdmmc] {
    display: flex;
    align-items: flex-start;
    gap: 0.8rem;
    margin-bottom: 1.25rem;
    padding: 0.9rem 1rem;
    border: 1px solid;
    border-radius: 0.95rem;
    box-shadow: var(--ott-shadow);
}

.feedback-panel > div[b-wadbgcdmmc] {
    min-width: 0;
}

.feedback-panel strong[b-wadbgcdmmc] {
    display: block;
    margin-bottom: 0.1rem;
    font-size: 0.84rem;
}

.feedback-panel p[b-wadbgcdmmc],
.feedback-panel ul[b-wadbgcdmmc] {
    margin: 0;
    font-size: 0.78rem;
    line-height: 1.45;
}

.feedback-panel ul[b-wadbgcdmmc] {
    padding-left: 1.1rem;
}

.feedback-icon[b-wadbgcdmmc] {
    display: inline-grid;
    width: 1.7rem;
    height: 1.7rem;
    flex: 0 0 1.7rem;
    place-items: center;
    border-radius: 50%;
    color: var(--ott-on-accent);
    font-size: 0.8rem;
    font-weight: 600;
}

.feedback-panel-success[b-wadbgcdmmc] {
    border-color: var(--ott-line);
    background: var(--ott-background);
    color: var(--ott-ink);
}

.feedback-panel-success .feedback-icon[b-wadbgcdmmc] {
    background: var(--ott-positive);
    box-shadow: var(--ott-shadow);
}

.feedback-panel-error[b-wadbgcdmmc] {
    border-color: var(--ott-line);
    background: var(--ott-background);
    color: var(--ott-negative);
}

.feedback-panel-error .feedback-icon[b-wadbgcdmmc] {
    background: var(--ott-negative);
    box-shadow: var(--ott-shadow);
}

.form-control[b-wadbgcdmmc] {
    min-height: 3rem;
    border-color: var(--ott-line);
    border-radius: 0.7rem;
}

.form-control:focus[b-wadbgcdmmc] {
    border-color: var(--ott-line);
    box-shadow: var(--ott-shadow);
}

.form-control.invalid[b-wadbgcdmmc] {
    border-color: var(--ott-line);
    background-color: var(--ott-background);
    box-shadow: var(--ott-shadow);
}

[b-wadbgcdmmc] .field-validation-message {
    display: flex;
    align-items: flex-start;
    gap: 0.35rem;
    margin-top: 0.4rem;
    padding: 0.42rem 0.55rem;
    border-left: 2px solid var(--ott-line);
    border-radius: 0 0.5rem 0.5rem 0;
    background: var(--ott-background);
    color: var(--ott-negative);
    font-size: 0.72rem;
    font-weight: 600;
    line-height: 1.35;
}

[b-wadbgcdmmc] .field-validation-message::before {
    display: inline-grid;
    width: 1rem;
    height: 1rem;
    flex: 0 0 1rem;
    place-items: center;
    border-radius: 50%;
    background: var(--ott-negative);
    color: var(--ott-on-accent);
    content: "!";
    font-size: var(--ott-text-label);
    font-weight: 600;
}

.btn-primary[b-wadbgcdmmc] {
    border: 0;
    border-radius: 0.7rem;
    background: var(--ott-accent);
    font-weight: 600;
}

.create-membership-card[b-wadbgcdmmc] {
    margin-bottom: 1.5rem;
    overflow: hidden;
}

.section-toggle[b-wadbgcdmmc] {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 0.85rem;
    padding: 1rem 1.15rem;
    border: 0;
    background: var(--ott-background);
    color: var(--ott-ink);
    text-align: left;
}

.section-toggle:hover[b-wadbgcdmmc] {
    background: var(--ott-background);
}

.section-toggle:focus-visible[b-wadbgcdmmc] {
    outline: 3px solid var(--ott-line);
    outline-offset: -3px;
}

.section-toggle-icon[b-wadbgcdmmc] {
    display: inline-grid;
    width: 2.25rem;
    height: 2.25rem;
    flex: 0 0 2.25rem;
    place-items: center;
    border-radius: 0.7rem;
    background: var(--ott-accent);
    box-shadow: var(--ott-shadow);
    color: var(--ott-on-accent);
    font-size: 1.35rem;
    line-height: 1;
}

.section-toggle-copy[b-wadbgcdmmc] {
    display: flex;
    min-width: 0;
    flex: 1;
    flex-direction: column;
    gap: 0.1rem;
}

.section-toggle-copy strong[b-wadbgcdmmc] {
    font-size: 0.94rem;
}

.section-toggle-copy small[b-wadbgcdmmc] {
    overflow: hidden;
    color: var(--ott-muted);
    font-size: 0.74rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.section-toggle-action[b-wadbgcdmmc] {
    padding: 0.38rem 0.7rem;
    border: 1px solid var(--ott-line);
    border-radius: 999px;
    background: var(--ott-surface);
    color: var(--ott-accent);
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
}

.section-toggle-chevron[b-wadbgcdmmc] {
    display: inline-flex;
    width: 1rem;
    height: 1rem;
    flex: 0 0 1rem;
    align-items: center;
    justify-content: center;
    color: var(--ott-accent);
    transition: transform var(--ott-motion-duration) var(--ott-motion-easing);
}

.section-toggle-chevron svg[b-wadbgcdmmc] {
    width: 100%;
    height: 100%;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.75;
}

.section-toggle-chevron.is-open[b-wadbgcdmmc] {
    transform: rotate(180deg);
}

.section-content[b-wadbgcdmmc] {
    border-top: 1px solid var(--ott-line);
}

.section-body[b-wadbgcdmmc] {
    padding: 1.25rem 1.5rem 1.5rem;
}

.membership-form-grid[b-wadbgcdmmc] {
    display: grid;
    grid-template-columns: minmax(15rem, 2fr) repeat(3, minmax(10rem, 1fr));
    align-items: start;
    gap: 1rem;
}

.membership-form-grid .form-label[b-wadbgcdmmc] {
    margin-bottom: 0.35rem;
    font-size: 0.8rem;
    font-weight: 600;
}

.money-input[b-wadbgcdmmc] {
    position: relative;
}

.money-input .form-control[b-wadbgcdmmc] {
    padding-right: 2.8rem;
}

.money-input > span[b-wadbgcdmmc] {
    position: absolute;
    top: 50%;
    right: 1rem;
    color: var(--ott-muted);
    font-size: 0.8rem;
    font-weight: 600;
    transform: translateY(-50%);
    pointer-events: none;
}

.field-hint[b-wadbgcdmmc] {
    display: block;
    margin-top: 0.35rem;
    color: var(--ott-muted);
    font-size: 0.72rem;
}

.form-submit[b-wadbgcdmmc] {
    min-height: 3rem;
    margin-top: 1.25rem;
    padding-right: 1.25rem;
    padding-left: 1.25rem;
}

.membership-list-card[b-wadbgcdmmc] {
    overflow: hidden;
}

.membership-list-heading[b-wadbgcdmmc] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.archived-toggle[b-wadbgcdmmc] {
    border: 1px solid var(--ott-line);
    border-radius: 999px;
    background: var(--ott-background);
    color: var(--ott-accent);
    font-weight: 600;
}

.archived-toggle:hover[b-wadbgcdmmc] {
    border-color: var(--ott-line);
    background: var(--ott-due-surface);
    color: var(--ott-accent);
}

.membership-filters[b-wadbgcdmmc] {
    margin-bottom: 1.25rem;
    padding: 1rem;
    border: 1px solid var(--ott-line);
    border-radius: 0.9rem;
    background: var(--ott-background);
}

.membership-filters > div[b-wadbgcdmmc] {
    width: min(100%, 32rem);
}

.membership-filters label[b-wadbgcdmmc] {
    display: block;
    margin-bottom: 0.3rem;
    color: var(--ott-muted);
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.045em;
    text-transform: uppercase;
}

.membership-filters .form-control[b-wadbgcdmmc] {
    min-height: 2.65rem;
    background: var(--ott-surface);
    font-size: 0.82rem;
}

.empty-membership-state[b-wadbgcdmmc] {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 0.3rem;
    padding: 3rem 1rem;
    border: 1px dashed var(--ott-line);
    border-radius: 0.9rem;
    background: var(--ott-background);
    color: var(--ott-muted);
    text-align: center;
}

.empty-membership-state > span:last-child[b-wadbgcdmmc] {
    color: var(--ott-muted);
    font-size: 0.8rem;
}

.empty-state-icon[b-wadbgcdmmc] {
    display: grid;
    width: 2.4rem;
    height: 2.4rem;
    margin-bottom: 0.25rem;
    place-items: center;
    border-radius: 0.75rem;
    background: var(--ott-due-surface);
    color: var(--ott-accent);
    font-size: 1.35rem;
}

.membership-cards[b-wadbgcdmmc] {
    display: grid;
    gap: 1rem;
}

.membership-type-card[b-wadbgcdmmc] {
    overflow: hidden;
    border: 1px solid var(--ott-line);
    border-radius: 1rem;
    background: var(--ott-surface);
    box-shadow: var(--ott-shadow);
}

.membership-type-card.is-archived[b-wadbgcdmmc] {
    background: var(--ott-background);
}

.membership-type-summary[b-wadbgcdmmc] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.9rem;
    padding: 1rem 1.1rem;
}

.membership-type-mark[b-wadbgcdmmc] {
    display: grid;
    width: 2.8rem;
    height: 2.8rem;
    place-items: center;
    border-radius: 0.85rem;
    background: var(--ott-accent);
    box-shadow: var(--ott-shadow);
    color: var(--ott-on-accent);
    font-weight: 600;
}

.is-archived .membership-type-mark[b-wadbgcdmmc] {
    background: var(--ott-muted);
    box-shadow: none;
}

.membership-type-title[b-wadbgcdmmc] {
    min-width: 0;
}

.membership-name-line[b-wadbgcdmmc] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.membership-name-line h3[b-wadbgcdmmc] {
    overflow: hidden;
    margin: 0;
    color: var(--ott-ink);
    font-size: 1rem;
    font-weight: 600;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.membership-type-title p[b-wadbgcdmmc] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin: 0.25rem 0 0;
    color: var(--ott-muted);
    font-size: 0.76rem;
}

.membership-type-title p strong[b-wadbgcdmmc] {
    color: var(--ott-accent);
    font-size: 0.84rem;
}

.summary-divider[b-wadbgcdmmc] {
    color: var(--ott-muted);
}

.membership-status[b-wadbgcdmmc] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.23rem 0.5rem;
    border-radius: 999px;
    font-size: var(--ott-text-label);
    font-weight: 600;
}

.membership-status[b-wadbgcdmmc]::before {
    width: 0.38rem;
    height: 0.38rem;
    border-radius: 50%;
    background: currentColor;
    content: "";
}

.status-active[b-wadbgcdmmc] {
    background: var(--ott-positive-surface);
    color: var(--ott-positive);
}

.status-planned[b-wadbgcdmmc] {
    background: var(--ott-background);
    color: var(--ott-accent);
}

.status-ended[b-wadbgcdmmc],
.status-archived[b-wadbgcdmmc] {
    background: var(--ott-background);
    color: var(--ott-muted);
}

.membership-type-actions[b-wadbgcdmmc] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.4rem;
}

.membership-type-actions .btn[b-wadbgcdmmc],
.timeline-actions .btn[b-wadbgcdmmc] {
    border-radius: 0.55rem;
    font-weight: 600;
}

.archive-action[b-wadbgcdmmc] {
    border: 1px solid var(--ott-line);
    background: var(--ott-surface);
    color: var(--ott-muted);
}

.archive-action:hover[b-wadbgcdmmc] {
    border-color: var(--ott-line);
    background: var(--ott-background);
}

.new-version-panel[b-wadbgcdmmc] {
    padding: 1.1rem;
    border-top: 1px solid var(--ott-line);
    border-left: 3px solid var(--ott-line);
    background: var(--ott-background);
}

.edit-version-panel[b-wadbgcdmmc] {
    margin: 0.25rem 0 0.75rem 1.3rem;
    padding: 1rem;
    border: 1px solid var(--ott-line);
    border-left: 3px solid var(--ott-line);
    border-radius: 0.8rem;
    background: var(--ott-background);
}

.new-version-heading[b-wadbgcdmmc] {
    margin-bottom: 1rem;
}

.new-version-heading > div[b-wadbgcdmmc] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.new-version-heading strong[b-wadbgcdmmc] {
    color: var(--ott-ink);
    font-size: 0.9rem;
}

.new-version-heading span[b-wadbgcdmmc] {
    color: var(--ott-muted);
    font-size: 0.76rem;
}

.compact-form-grid[b-wadbgcdmmc] {
    grid-template-columns: minmax(14rem, 2fr) repeat(3, minmax(9rem, 1fr));
}

.version-form-actions[b-wadbgcdmmc] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 1rem;
}

.version-form-actions .btn-primary[b-wadbgcdmmc] {
    min-height: 2.65rem;
}

.version-form-actions .btn-link[b-wadbgcdmmc] {
    color: var(--ott-accent);
    text-decoration: none;
}

.version-timeline[b-wadbgcdmmc] {
    padding: 0 1.1rem 1rem;
    border-top: 1px solid var(--ott-line);
}

.timeline-heading[b-wadbgcdmmc] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.8rem 0 0.45rem;
    color: var(--ott-muted);
}

.timeline-heading strong[b-wadbgcdmmc] {
    font-size: 0.74rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.timeline-heading span[b-wadbgcdmmc] {
    color: var(--ott-muted);
    font-size: 0.7rem;
}

.timeline-row[b-wadbgcdmmc] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 0.75rem;
    min-height: 3rem;
    padding: 0.5rem 0;
    border-top: 1px solid var(--ott-line);
}

.timeline-dot[b-wadbgcdmmc] {
    width: 0.55rem;
    height: 0.55rem;
    border: 2px solid var(--ott-line);
    border-radius: 50%;
    background: var(--ott-surface);
}

.timeline-row.is-current .timeline-dot[b-wadbgcdmmc] {
    border-color: var(--ott-line);
    background: var(--ott-accent);
    box-shadow: var(--ott-shadow);
}

.timeline-copy[b-wadbgcdmmc] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 0.08rem;
}

.timeline-copy strong[b-wadbgcdmmc] {
    overflow: hidden;
    color: var(--ott-ink);
    font-size: 0.8rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.timeline-copy span[b-wadbgcdmmc] {
    color: var(--ott-muted);
    font-size: 0.7rem;
}

.timeline-fee[b-wadbgcdmmc] {
    color: var(--ott-accent);
    font-size: 0.8rem;
    white-space: nowrap;
}

.timeline-actions[b-wadbgcdmmc] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.35rem;
}

.timeline-actions .btn[b-wadbgcdmmc] {
    font-size: 0.7rem;
}

.edit-version-action[b-wadbgcdmmc] {
    border: 1px solid var(--ott-line);
    background: var(--ott-surface);
    color: var(--ott-accent);
}

.remove-version-action[b-wadbgcdmmc] {
    border: 1px solid var(--ott-line);
    background: var(--ott-background);
    color: var(--ott-negative);
}

.history-lock[b-wadbgcdmmc] {
    display: inline-flex;
    align-items: center;
    padding: 0.27rem 0.48rem;
    border-radius: 999px;
    background: var(--ott-background);
    color: var(--ott-muted);
    font-size: var(--ott-text-label);
    font-weight: 600;
    white-space: nowrap;
}

@media (max-width: 1199px) {
    .membership-form-grid[b-wadbgcdmmc],
    .compact-form-grid[b-wadbgcdmmc] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767px) {
    .section-toggle-action[b-wadbgcdmmc] {
        display: none;
    }

    .section-toggle-copy small[b-wadbgcdmmc] {
        white-space: normal;
    }

    .section-body[b-wadbgcdmmc] {
        padding: 1rem;
    }

    .membership-form-grid[b-wadbgcdmmc],
    .compact-form-grid[b-wadbgcdmmc] {
        grid-template-columns: 1fr;
    }

    .membership-list-heading[b-wadbgcdmmc],
    .membership-type-summary[b-wadbgcdmmc] {
        align-items: flex-start;
    }

    .membership-list-heading[b-wadbgcdmmc] {
        flex-direction: column;
    }

    .membership-type-summary[b-wadbgcdmmc] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .membership-type-actions[b-wadbgcdmmc] {
        grid-column: 1 / -1;
        justify-content: flex-start;
    }

    .timeline-row[b-wadbgcdmmc] {
        grid-template-columns: auto minmax(0, 1fr) auto;
    }

    .timeline-actions[b-wadbgcdmmc] {
        grid-column: 2 / -1;
        justify-self: start;
    }

    .edit-version-panel[b-wadbgcdmmc] {
        margin-left: 0;
    }
}

@media (max-width: 480px) {
    .membership-list-card .card-body[b-wadbgcdmmc] {
        padding: 1rem !important;
    }

    .membership-type-summary[b-wadbgcdmmc],
    .new-version-panel[b-wadbgcdmmc],
    .version-timeline[b-wadbgcdmmc] {
        padding-right: 0.85rem;
        padding-left: 0.85rem;
    }

    .membership-type-mark[b-wadbgcdmmc] {
        width: 2.4rem;
        height: 2.4rem;
    }

    .timeline-row[b-wadbgcdmmc] {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .timeline-fee[b-wadbgcdmmc],
    .timeline-actions[b-wadbgcdmmc] {
        grid-column: 2;
        justify-self: start;
    }
}

.ott-ui :is(button, .btn, .form-control, .form-select)[b-wadbgcdmmc] { min-height: var(--ott-target); }
.ott-ui :is(.form-control, .form-select)[b-wadbgcdmmc] { border-color: var(--ott-control-border); color: var(--ott-ink); border-radius: var(--ott-radius-control); }
.ott-ui :is(.form-control, .form-select):focus[b-wadbgcdmmc] { outline: 3px solid var(--ott-focus); outline-offset: 3px; border-color: var(--ott-focus); box-shadow: none; }
.ott-ui :is(.form-control, .form-select).invalid[b-wadbgcdmmc] { border-color: var(--ott-negative); }
.ott-ui :is(a, button, input, select, textarea):focus-visible[b-wadbgcdmmc] { outline: 3px solid var(--ott-focus); outline-offset: 3px; box-shadow: none; }
.ott-ui :is(button, input, select):disabled[b-wadbgcdmmc] { opacity: 1; color: var(--ott-muted); background: var(--ott-disabled-surface); }
@media (max-width: 760px) { .ott-ui :is(input, select, textarea, .form-control, .form-select)[b-wadbgcdmmc] { font-size: 1rem; } }
@media (prefers-reduced-motion: reduce) { *[b-wadbgcdmmc] { transition: none; animation: none; } }

.membership-name-line h3[b-wadbgcdmmc] { white-space: normal; overflow-wrap: anywhere; }
.ott-ui :is(.btn-primary):hover[b-wadbgcdmmc] { color: var(--ott-on-accent); background: var(--ott-accent-hover); }

.money-input[b-wadbgcdmmc], .timeline-version[b-wadbgcdmmc], .membership-type-title p strong[b-wadbgcdmmc] { font-variant-numeric: tabular-nums; }

.feedback-panel-error[b-wadbgcdmmc] { color: var(--ott-negative); background: var(--ott-negative-surface); border-color: var(--ott-negative); }
.feedback-panel-success[b-wadbgcdmmc] { color: var(--ott-positive); background: var(--ott-positive-surface); border-color: var(--ott-positive); }
[b-wadbgcdmmc] .field-validation-message { color: var(--ott-negative); background: var(--ott-negative-surface); border-color: var(--ott-negative); }
@media (max-width: 760px) { .membership-heading h1[b-wadbgcdmmc] { font-size: 1.6875rem; } }
/* /Components/Pages/OneTimeExpenses.razor.rz.scp.css */
.one-time-page[b-2zxoe85vzl]{display:grid;gap:1.5rem;max-width:1500px;margin:0 auto}.one-time-page header p[b-2zxoe85vzl]{color:#d85cff;text-transform:uppercase;font-weight:800;letter-spacing:.12em;margin:0}.one-time-page h1[b-2zxoe85vzl]{font-size:clamp(2rem,4vw,3.25rem);margin:.2rem 0}.one-time-page header span[b-2zxoe85vzl]{color:#c7bdd0}.one-card[b-2zxoe85vzl]{background:#fff;color:#1d1228;border-radius:22px;padding:1.5rem;box-shadow:0 18px 50px #09000b30}.one-card h2[b-2zxoe85vzl]{margin:0}.one-card p[b-2zxoe85vzl]{color:#75677e;margin:.3rem 0}.category-form[b-2zxoe85vzl],.toolbar[b-2zxoe85vzl]{display:flex;gap:.75rem;align-items:end;margin:1.25rem 0}.category-form input:first-child[b-2zxoe85vzl]{max-width:280px}.category-form input:nth-child(2)[b-2zxoe85vzl]{flex:1}.category-form button[b-2zxoe85vzl],.category-list button[b-2zxoe85vzl]{border:1px solid #9a3dd0;background:#9238c4;color:#fff;border-radius:10px;padding:.65rem 1rem;font-weight:700}.category-list[b-2zxoe85vzl]{display:grid;gap:.5rem}.category-list>div[b-2zxoe85vzl]{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #eee5f2;padding:.8rem 0}.category-list span[b-2zxoe85vzl]{display:grid}.category-list small[b-2zxoe85vzl]{color:#786a80}.category-list .archived[b-2zxoe85vzl]{opacity:.55}.toolbar[b-2zxoe85vzl]{justify-content:space-between}.toolbar input[b-2zxoe85vzl]{max-width:380px}.table-wrap[b-2zxoe85vzl]{overflow:auto}table[b-2zxoe85vzl]{width:100%;border-collapse:collapse}th[b-2zxoe85vzl],td[b-2zxoe85vzl]{text-align:left;padding:.85rem;border-bottom:1px solid #eee5f2}th[b-2zxoe85vzl]{font-size:.75rem;text-transform:uppercase;color:#705c79}.money[b-2zxoe85vzl]{text-align:right;font-weight:800}.paid[b-2zxoe85vzl],.waiting[b-2zxoe85vzl]{padding:.3rem .6rem;border-radius:999px;font-weight:700;font-size:.8rem}.paid[b-2zxoe85vzl]{background:#def4e7;color:#14713d}.waiting[b-2zxoe85vzl]{background:#fff0d5;color:#925500}.empty[b-2zxoe85vzl]{text-align:center;color:#786a80;padding:2rem}.one-feedback[b-2zxoe85vzl]{display:flex;gap:.8rem;padding:1rem;border-radius:15px}.one-feedback p[b-2zxoe85vzl]{margin:0}.one-feedback.error[b-2zxoe85vzl]{background:#fff0f3;color:#a71c42}.one-feedback.success[b-2zxoe85vzl]{background:#eaf8ef;color:#176f3e}@media(max-width:800px){.category-form[b-2zxoe85vzl],.toolbar[b-2zxoe85vzl]{align-items:stretch;flex-direction:column}.category-form input:first-child[b-2zxoe85vzl],.toolbar input[b-2zxoe85vzl]{max-width:none}}
/* /Components/Pages/RecurringExpenses.razor.rz.scp.css */
.expenses-page[b-awy44egoje] { width: min(calc(100vw - 270px - 4rem), 108rem); margin: 0 auto; color: #fff; }
.expenses-heading[b-awy44egoje] { display:flex; align-items:end; justify-content:space-between; gap:1rem; margin-bottom:1.35rem; }
.expenses-heading h1[b-awy44egoje] { margin:.15rem 0 .3rem; font-weight:760; letter-spacing:-.035em; }
.expenses-heading p[b-awy44egoje] { margin:0; color:rgba(255,255,255,.68); }
.expenses-heading .expenses-kicker[b-awy44egoje] { color:#c985ef; font-size:.74rem; font-weight:750; letter-spacing:.12em; text-transform:uppercase; }
.year-switcher[b-awy44egoje] { display:flex; align-items:center; overflow:hidden; border:1px solid rgba(255,255,255,.18); border-radius:.85rem; background:rgba(255,255,255,.08); }
.year-switcher strong[b-awy44egoje] { min-width:5rem; padding:.65rem; text-align:center; }
.year-switcher button[b-awy44egoje] { width:2.7rem; min-height:2.7rem; border:0; background:transparent; color:#e3c5f5; font-size:1.5rem; }
.expense-card[b-awy44egoje] { overflow:hidden; margin-bottom:1.25rem; border-radius:1.15rem; background:#fff; box-shadow:0 1rem 2.5rem rgba(5,2,10,.18); color:#2c2232; }
.section-toggle[b-awy44egoje] { display:flex; width:100%; align-items:center; gap:.85rem; padding:1rem 1.2rem; border:0; background:linear-gradient(135deg,#fff,#fbf7fd); text-align:left; }
.section-toggle-icon[b-awy44egoje] { display:grid; width:2.35rem; height:2.35rem; place-items:center; border-radius:.7rem; background:linear-gradient(135deg,#8132b5,#a64dd5); color:#fff; font-size:1.4rem; }
.section-toggle-copy[b-awy44egoje] { display:flex; flex:1; flex-direction:column; }.section-toggle-copy small[b-awy44egoje],.field-hint[b-awy44egoje],.inline-form small[b-awy44egoje],.rates-heading small[b-awy44egoje] { color:#776a7d; font-size:.76rem; }
.section-toggle-action[b-awy44egoje] { padding:.4rem .75rem; border:1px solid #dfcfe8; border-radius:2rem; color:#7c2daf; font-size:.78rem; font-weight:700; }
.section-toggle-chevron[b-awy44egoje] { color:#8030b2; transition:transform .2s; }.section-toggle-chevron.is-open[b-awy44egoje] { transform:rotate(180deg); }
.section-body[b-awy44egoje] { padding:1.25rem 1.4rem 1.4rem; border-top:1px solid #eee6f2; }
.expense-form-grid[b-awy44egoje] { display:grid; grid-template-columns:minmax(14rem,1.5fr) minmax(9rem,.7fr) minmax(11rem,1fr) minmax(11rem,1fr); gap:1rem; align-items:start; }
label[b-awy44egoje] { display:block; margin-bottom:.3rem; font-size:.76rem; font-weight:720; }
.form-control[b-awy44egoje],.form-select[b-awy44egoje] { min-height:2.65rem; border-color:#d9d0df; border-radius:.72rem; font-size:.84rem; }.form-control:focus[b-awy44egoje],.form-select:focus[b-awy44egoje] { border-color:#9851c8; box-shadow:0 0 0 .2rem rgba(152,81,200,.13); }
.money-input[b-awy44egoje] { position:relative; }.money-input input[b-awy44egoje] { padding-right:2.4rem; }.money-input span[b-awy44egoje] { position:absolute; right:.8rem; top:50%; transform:translateY(-50%); color:#736779; font-size:.78rem; }
.primary-button[b-awy44egoje],.secondary-button[b-awy44egoje],.danger-button[b-awy44egoje],.text-button[b-awy44egoje] { min-height:2.55rem; margin-top:1rem; padding:.55rem 1rem; border-radius:.72rem; font-weight:720; }
.primary-button[b-awy44egoje] { border:0; background:linear-gradient(135deg,#8433b8,#ac4bd5); color:#fff; }.secondary-button[b-awy44egoje] { border:1px solid #cda9df; background:#fff; color:#7929aa; }.danger-button[b-awy44egoje] { border:1px solid #e6a2b0; background:#fff6f8; color:#a92e49; }.text-button[b-awy44egoje] { border:0; background:transparent; color:#6b5b72; }
.feedback-panel[b-awy44egoje] { display:flex; gap:.8rem; margin-bottom:1rem; padding:.9rem 1rem; border:1px solid; border-radius:.95rem; }.feedback-panel strong[b-awy44egoje] { display:block; }.feedback-panel p[b-awy44egoje] { margin:.1rem 0 0; font-size:.78rem; }.feedback-icon[b-awy44egoje] { display:grid; width:1.7rem; height:1.7rem; flex:0 0 1.7rem; place-items:center; border-radius:50%; color:#fff; font-weight:800; }.feedback-panel-success[b-awy44egoje] { border-color:#bfe4cc; background:#f2fbf5; color:#21673b; }.feedback-panel-success .feedback-icon[b-awy44egoje] { background:#2d8b50; }.feedback-panel-error[b-awy44egoje] { border-color:#efcbd3; background:#fff4f6; color:#8a2940; }.feedback-panel-error .feedback-icon[b-awy44egoje] { background:#bb3e5c; }
.matrix-toolbar[b-awy44egoje] { display:grid; grid-template-columns:minmax(10rem,.7fr) auto minmax(34rem,1.7fr); gap:1.2rem; align-items:end; padding:1.25rem 1.4rem; background:linear-gradient(135deg,#fff,#fbf8fc); border-bottom:1px solid #eee7f1; }
.matrix-title[b-awy44egoje] { display:flex; flex-direction:column; }.matrix-title span[b-awy44egoje] { color:#776b7e; font-size:.76rem; }
.matrix-totals[b-awy44egoje] { display:flex; gap:.65rem; }.matrix-totals span[b-awy44egoje] { display:flex; min-width:6.4rem; flex-direction:column; padding:.55rem .7rem; border:1px solid #e9e0ed; border-radius:.7rem; background:#fff; }.matrix-totals small[b-awy44egoje] { color:#7b6f81; font-size:.62rem; text-transform:uppercase; }.matrix-totals strong[b-awy44egoje] { font-size:.82rem; }
.matrix-filters[b-awy44egoje] { display:grid; grid-template-columns:1.4fr 1fr 1fr 6rem; gap:.65rem; }.matrix-filters label[b-awy44egoje] { color:#66586e; font-size:.64rem; text-transform:uppercase; }.matrix-filters .form-control[b-awy44egoje],.matrix-filters .form-select[b-awy44egoje] { min-height:2.45rem; }
.expense-legend[b-awy44egoje] { display:flex; flex-wrap:wrap; align-items:center; gap:.6rem 1rem; padding:.7rem 1.4rem; border-bottom:1px solid #eee8f1; color:#706477; font-size:.69rem; }.expense-legend span[b-awy44egoje] { display:inline-flex; align-items:center; gap:.3rem; }.expense-legend i[b-awy44egoje] { width:.68rem; height:.68rem; border:1px solid; border-radius:.2rem; }.legend-paid[b-awy44egoje]{background:#dff2e5;border-color:#83b994!important}.legend-late[b-awy44egoje]{background:#fff0c8;border-color:#d3a846!important}.legend-overdue[b-awy44egoje]{background:#fde7eb;border-color:#d27686!important}.legend-due[b-awy44egoje]{background:#f8f6f9;border-color:#cfc7d4!important}.legend-planned[b-awy44egoje]{background:#f4eef8;border-color:#bfa9ca!important}.legend-na[b-awy44egoje]{background:#dedbe0;border-color:#cbc7cd!important}.archived-switch[b-awy44egoje] { margin:0 0 0 auto; font-weight:600; }
.matrix-scroll[b-awy44egoje] { max-width:100%; overflow:auto; scrollbar-color:#a98bb9 #f1ecf3; }.expense-matrix[b-awy44egoje] { width:max-content; min-width:100%; border-collapse:separate; border-spacing:0; font-size:.75rem; }.expense-matrix th[b-awy44egoje],.expense-matrix td[b-awy44egoje] { border-right:1px solid #eee9f1; border-bottom:1px solid #eee9f1; }.expense-matrix thead th[b-awy44egoje] { position:sticky; z-index:3; top:0; min-width:7.2rem; padding:.8rem .45rem; background:#46304f; color:#fff; text-align:center; }.expense-matrix .expense-column[b-awy44egoje] { position:sticky; z-index:2; left:0; width:16rem; min-width:16rem; max-width:16rem; background:#fff; color:#2d2332; box-shadow:.4rem 0 .8rem -.75rem #211429; }.expense-matrix thead .expense-column[b-awy44egoje] { z-index:4; background:#3d2945; color:#fff; text-align:left; }.expense-matrix td[b-awy44egoje] { padding:.35rem; background:#fff; }.expense-matrix td.is-na[b-awy44egoje] { background:repeating-linear-gradient(135deg,#e2dfe4,#e2dfe4 5px,#ebe8ec 5px,#ebe8ec 10px); text-align:center; }.expense-identity[b-awy44egoje] { display:flex; align-items:center; gap:.7rem; padding:.55rem .7rem; text-align:left; }.expense-identity>span:last-child[b-awy44egoje] { display:flex; min-width:0; flex-direction:column; }.expense-identity strong[b-awy44egoje] { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.expense-initial[b-awy44egoje] { display:grid; width:2rem; height:2rem; flex:0 0 2rem; place-items:center; border-radius:50%; background:linear-gradient(135deg,#8a35bd,#6d2a99); color:#fff; font-weight:800; }.text-action[b-awy44egoje],.danger-link[b-awy44egoje] { width:max-content; padding:0; border:0; background:transparent; font-size:.69rem; }.text-action[b-awy44egoje] { color:#812eb3; }.danger-link[b-awy44egoje] { color:#ad304b; }
.cell-button[b-awy44egoje] { display:grid; width:100%; min-height:3.2rem; grid-template-columns:1.35rem 1fr; align-items:center; gap:.3rem; padding:.4rem; border:1px solid; border-radius:.65rem; font-size:.68rem; }.cell-button strong[b-awy44egoje] { white-space:nowrap; }.cell-button small[b-awy44egoje] { grid-column:2; margin-top:-.35rem; font-size:.58rem; }.status-mark[b-awy44egoje] { display:grid; width:1.25rem; height:1.25rem; place-items:center; border:1px solid currentColor; border-radius:.35rem; font-weight:800; }.status-paid[b-awy44egoje]{border-color:#9dd1ae;background:#e8f6ec;color:#267544}.status-late[b-awy44egoje]{border-color:#dfbd68;background:#fff4d8;color:#8b6200}.status-overdue[b-awy44egoje]{border-color:#e7a4b0;background:#fff0f2;color:#af3049}.status-due[b-awy44egoje]{border-color:#d9d1de;background:#faf8fb;color:#594d60}.status-planned[b-awy44egoje]{border-color:#d9cbe0;background:#f6f1f8;color:#705e79}.not-applicable[b-awy44egoje]{font-weight:800;color:#605965}.empty-state[b-awy44egoje] { display:grid; min-height:12rem; place-items:center; align-content:center; gap:.35rem; color:#716578; }.empty-state span[b-awy44egoje]{font-size:2rem}.empty-state p[b-awy44egoje]{margin:0}.pagination[b-awy44egoje] { display:flex; justify-content:space-between; padding:.9rem 1.4rem; color:#776b7d; font-size:.78rem; }.pagination button[b-awy44egoje] { margin-left:.4rem; padding:.35rem .7rem; border:1px solid #ded4e3; border-radius:.55rem; background:#fff; color:#70279e; }
.dialog-backdrop[b-awy44egoje] { position:fixed; z-index:1050; inset:0; display:grid; place-items:center; padding:1.2rem; background:rgba(12,7,17,.67); backdrop-filter:blur(4px); }.expense-dialog[b-awy44egoje] { position:relative; width:min(31rem,100%); max-height:calc(100vh - 2.4rem); overflow:auto; padding:1.6rem; border-radius:1.15rem; background:#fff; color:#2d2332; box-shadow:0 2rem 5rem rgba(0,0,0,.35); }.definition-dialog[b-awy44egoje] { width:min(48rem,100%); }.dialog-close[b-awy44egoje] { position:absolute; top:.8rem; right:.9rem; width:2rem; height:2rem; border:0; border-radius:50%; background:#f4eef7; color:#5d4c66; font-size:1.35rem; }.dialog-kicker[b-awy44egoje] { margin:0; color:#923dc2; font-size:.7rem; font-weight:760; text-transform:uppercase; letter-spacing:.1em; }.expense-dialog h2[b-awy44egoje] { margin:.2rem 0 1.1rem; }.dialog-summary[b-awy44egoje] { display:grid; grid-template-columns:1fr 1fr; gap:.7rem; margin-bottom:1rem; }.dialog-summary span[b-awy44egoje] { display:flex; flex-direction:column; padding:.75rem; border-radius:.7rem; background:#f8f4fa; color:#776a7e; font-size:.72rem; }.dialog-summary strong[b-awy44egoje] { color:#2c2231; font-size:.87rem; }.dialog-field[b-awy44egoje] { margin-top:.8rem; }.dialog-field small[b-awy44egoje] { display:block; margin-top:.3rem; color:#776a7e; }.dialog-actions[b-awy44egoje] { display:flex; align-items:center; gap:.4rem; }.full-button[b-awy44egoje] { width:100%; }.expense-dialog hr[b-awy44egoje] { margin:1.15rem 0; border-color:#e8dfec; }.paid-panel[b-awy44egoje] { display:flex; gap:.8rem; padding:1rem; border-radius:.8rem; background:#eef9f2; color:#286d40; }.paid-panel p[b-awy44egoje] { margin:.1rem 0 0; font-size:.75rem; }.paid-mark[b-awy44egoje] { display:grid; width:2rem; height:2rem; flex:0 0 2rem; place-items:center; border-radius:50%; background:#2f8b50; color:#fff; }
.definition-grid[b-awy44egoje] { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:.75rem; }.rates-heading[b-awy44egoje] { display:flex; margin:1.5rem 0 .6rem; }.rates-heading div[b-awy44egoje] { display:flex; flex-direction:column; }.rate-list[b-awy44egoje] { border:1px solid #e8deec; border-radius:.8rem; }.rate-row[b-awy44egoje] { display:grid; grid-template-columns:1fr auto auto; gap:.8rem; align-items:center; padding:.75rem .9rem; border-bottom:1px solid #eee6f1; }.rate-row:last-child[b-awy44egoje] { border-bottom:0; }.rate-row span[b-awy44egoje] { display:flex; flex-direction:column; }.inline-form[b-awy44egoje] { display:flex; align-items:end; gap:.6rem; margin-top:.8rem; padding:.85rem; border-radius:.8rem; background:#f8f4fa; }.inline-form>strong[b-awy44egoje] { align-self:center; margin-right:auto; }.inline-form .money-input[b-awy44egoje] { width:9rem; }.inline-form .secondary-button[b-awy44egoje],.inline-form .text-button[b-awy44egoje] { margin-top:0; }.definition-danger-zone[b-awy44egoje] { display:flex; justify-content:space-between; gap:.8rem; margin-top:1.4rem; padding-top:1rem; border-top:1px solid #eadfec; }.definition-danger-zone button[b-awy44egoje] { margin:0; }
.legend-waived[b-awy44egoje] { background:#e5effa; border-color:#83a4c8!important; }
.status-waived[b-awy44egoje] { border-color:#9bb8d5; background:#edf5fc; color:#3c678f; }
.waived-panel[b-awy44egoje] { display:flex; gap:.8rem; padding:1rem; border-radius:.8rem; background:#edf5fc; color:#315f89; }
.waived-panel p[b-awy44egoje] { margin:.1rem 0 0; font-size:.75rem; }
.waived-mark[b-awy44egoje] { display:grid; width:2rem; height:2rem; flex:0 0 2rem; place-items:center; border-radius:50%; background:#527fa8; color:#fff; font-size:1.25rem; }
.waive-button[b-awy44egoje] { min-height:2.55rem; margin-top:.6rem; padding:.55rem 1rem; border:1px solid #aac3dc; border-radius:.72rem; background:#f4f8fc; color:#315f89; font-weight:720; }
@media(max-width:1100px){.expenses-page[b-awy44egoje]{width:100%}.matrix-toolbar[b-awy44egoje]{grid-template-columns:1fr}.matrix-filters[b-awy44egoje]{grid-template-columns:repeat(2,1fr)}.expense-form-grid[b-awy44egoje]{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.expenses-heading[b-awy44egoje]{align-items:flex-start;flex-direction:column}.expense-form-grid[b-awy44egoje],.definition-grid[b-awy44egoje],.matrix-filters[b-awy44egoje]{grid-template-columns:1fr}.matrix-totals[b-awy44egoje]{overflow:auto}.section-toggle-action[b-awy44egoje]{display:none}.inline-form[b-awy44egoje]{align-items:stretch;flex-direction:column}.inline-form .money-input[b-awy44egoje]{width:100%}}
/* /Components/Pages/UserDetailsFields.razor.rz.scp.css */
.member-data-note[b-ni6sd2iiam] {
    display: flex;
    align-items: flex-start;
    gap: 0.7rem;
    margin-bottom: 1rem;
    padding: 0.8rem 0.9rem;
    border: 1px solid var(--ott-line);
    border-radius: 0.8rem;
    background: var(--ott-background);
}

.member-data-note.is-required[b-ni6sd2iiam] {
    border-color: var(--ott-line);
    background: var(--ott-background);
}

.member-data-note-icon[b-ni6sd2iiam] {
    display: inline-grid;
    width: 1.45rem;
    height: 1.45rem;
    flex: 0 0 1.45rem;
    place-items: center;
    border-radius: 50%;
    background: var(--ott-due-surface);
    color: var(--ott-accent);
    font-size: 0.7rem;
    font-weight: 600;
}

.member-data-note.is-required .member-data-note-icon[b-ni6sd2iiam] {
    background: var(--ott-positive-surface);
    color: var(--ott-positive);
}

.member-data-note > div[b-ni6sd2iiam] {
    display: flex;
    flex-direction: column;
    gap: 0.12rem;
    color: var(--ott-ink);
}

.member-data-note span[b-ni6sd2iiam],
.field-hint[b-ni6sd2iiam] {
    color: var(--ott-muted);
    font-size: 0.75rem;
    font-weight: 400;
}

.user-details-grid[b-ni6sd2iiam] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.9rem 1rem;
}

.address-field[b-ni6sd2iiam] {
    grid-column: 1 / -1;
}

.address-field textarea[b-ni6sd2iiam] {
    resize: vertical;
}

.field-hint[b-ni6sd2iiam] {
    display: block;
    margin-top: 0.3rem;
}

.form-control.invalid[b-ni6sd2iiam] {
    border-color: var(--ott-line);
    background-color: var(--ott-background);
    box-shadow: var(--ott-shadow);
}

[b-ni6sd2iiam] .field-validation-message {
    display: flex;
    align-items: flex-start;
    gap: 0.35rem;
    margin-top: 0.4rem;
    padding: 0.42rem 0.55rem;
    border-left: 2px solid var(--ott-line);
    border-radius: 0 0.5rem 0.5rem 0;
    background: var(--ott-background);
    color: var(--ott-negative);
    font-size: 0.72rem;
    font-weight: 600;
    line-height: 1.35;
}

[b-ni6sd2iiam] .field-validation-message::before {
    display: inline-grid;
    width: 1rem;
    height: 1rem;
    flex: 0 0 1rem;
    place-items: center;
    border-radius: 50%;
    background: var(--ott-negative);
    color: var(--ott-on-accent);
    content: "!";
    font-size: var(--ott-text-label);
    font-weight: 600;
}

@media (max-width: 1199px) {
    .user-details-grid[b-ni6sd2iiam] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 799px) {
    .user-details-grid[b-ni6sd2iiam] {
        grid-template-columns: 1fr;
    }
}

.ott-ui :is(button, .btn, .form-control, .form-select)[b-ni6sd2iiam] { min-height: var(--ott-target); }
.ott-ui :is(.form-control, .form-select)[b-ni6sd2iiam] { border-color: var(--ott-control-border); color: var(--ott-ink); border-radius: var(--ott-radius-control); }
.ott-ui :is(.form-control, .form-select):focus[b-ni6sd2iiam] { outline: 3px solid var(--ott-focus); outline-offset: 3px; border-color: var(--ott-focus); box-shadow: none; }
.ott-ui :is(.form-control, .form-select).invalid[b-ni6sd2iiam] { border-color: var(--ott-negative); }
.ott-ui :is(a, button, input, select, textarea):focus-visible[b-ni6sd2iiam] { outline: 3px solid var(--ott-focus); outline-offset: 3px; box-shadow: none; }
.ott-ui :is(button, input, select):disabled[b-ni6sd2iiam] { opacity: 1; color: var(--ott-muted); background: var(--ott-disabled-surface); }
@media (max-width: 760px) { .ott-ui :is(input, select, textarea, .form-control, .form-select)[b-ni6sd2iiam] { font-size: 1rem; } }
@media (prefers-reduced-motion: reduce) { *[b-ni6sd2iiam] { transition: none; animation: none; } }

.field-validation-message[b-ni6sd2iiam] { color: var(--ott-negative); background: var(--ott-negative-surface); border-color: var(--ott-negative); }
/* /Components/Pages/UserMembershipEditor.razor.rz.scp.css */
.user-membership-editor[b-ne6xvm73yw] {
    display: grid;
    gap: 1rem;
    margin: 1rem 1.25rem 1.25rem;
    padding: 1.2rem;
    border: 1px solid var(--ott-line);
    border-left: 3px solid var(--ott-line);
    border-radius: 0.95rem;
    background: var(--ott-background);
}

.membership-editor-heading[b-ne6xvm73yw] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.membership-editor-heading > div[b-ne6xvm73yw] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 0.15rem;
}

.membership-editor-heading strong[b-ne6xvm73yw] {
    color: var(--ott-ink);
    font-size: 0.95rem;
}

.membership-editor-heading small[b-ne6xvm73yw],
.membership-period-form-copy span[b-ne6xvm73yw] {
    color: var(--ott-muted);
    font-size: 0.74rem;
}

.membership-editor-kicker[b-ne6xvm73yw] {
    color: var(--ott-accent);
    font-size: var(--ott-text-label);
    font-weight: 600;
    letter-spacing: 0.075em;
    text-transform: uppercase;
}

.add-membership-toggle[b-ne6xvm73yw] {
    border: 1px solid var(--ott-line);
    border-radius: 999px;
    background: var(--ott-surface);
    color: var(--ott-accent);
    font-weight: 600;
    white-space: nowrap;
}

.membership-feedback[b-ne6xvm73yw] {
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
    padding: 0.7rem 0.8rem;
    border: 1px solid;
    border-radius: 0.75rem;
}

.membership-feedback > span[b-ne6xvm73yw] {
    display: inline-grid;
    width: 1.35rem;
    height: 1.35rem;
    flex: 0 0 1.35rem;
    place-items: center;
    border-radius: 50%;
    color: var(--ott-on-accent);
    font-size: var(--ott-text-label);
    font-weight: 600;
}

.membership-feedback p[b-ne6xvm73yw] {
    margin: 0;
    font-size: 0.75rem;
    line-height: 1.45;
}

.membership-feedback-success[b-ne6xvm73yw] {
    border-color: var(--ott-line);
    background: var(--ott-background);
    color: var(--ott-ink);
}

.membership-feedback-success > span[b-ne6xvm73yw] {
    background: var(--ott-positive);
}

.membership-feedback-error[b-ne6xvm73yw] {
    border-color: var(--ott-line);
    background: var(--ott-background);
    color: var(--ott-negative);
}

.membership-feedback-error > span[b-ne6xvm73yw] {
    background: var(--ott-negative);
}

.membership-empty-state[b-ne6xvm73yw] {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 0.3rem;
    padding: 1rem;
    border: 1px dashed var(--ott-line);
    border-radius: 0.8rem;
    background: var(--ott-background);
}

.membership-empty-state.compact[b-ne6xvm73yw] {
    align-items: center;
    text-align: center;
}

.membership-empty-state strong[b-ne6xvm73yw] {
    color: var(--ott-ink);
    font-size: 0.82rem;
}

.membership-empty-state span[b-ne6xvm73yw] {
    color: var(--ott-muted);
    font-size: 0.74rem;
}

.membership-empty-state .btn[b-ne6xvm73yw] {
    margin-top: 0.4rem;
    border-radius: 0.55rem;
    font-weight: 600;
}

.membership-period-form[b-ne6xvm73yw] {
    padding: 1rem;
    border: 1px solid var(--ott-line);
    border-radius: 0.85rem;
    background: var(--ott-surface);
}

.membership-period-form-copy[b-ne6xvm73yw] {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    margin-bottom: 0.8rem;
}

.membership-period-fields[b-ne6xvm73yw] {
    display: grid;
    grid-template-columns: minmax(15rem, 2fr) repeat(2, minmax(10rem, 1fr));
    align-items: start;
    gap: 0.8rem;
}

.membership-period-fields label[b-ne6xvm73yw],
.close-membership-form label[b-ne6xvm73yw] {
    display: block;
    margin-bottom: 0.3rem;
    color: var(--ott-muted);
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.035em;
    text-transform: uppercase;
}

.membership-period-fields .form-control[b-ne6xvm73yw],
.membership-period-fields .form-select[b-ne6xvm73yw],
.close-membership-form .form-control[b-ne6xvm73yw] {
    min-height: 2.7rem;
    border-color: var(--ott-line);
    border-radius: 0.65rem;
    background-color: var(--ott-surface);
    font-size: 0.8rem;
}

.membership-period-fields small[b-ne6xvm73yw] {
    display: block;
    margin-top: 0.28rem;
    color: var(--ott-muted);
    font-size: var(--ott-text-label);
}

.membership-period-actions[b-ne6xvm73yw] {
    display: flex;
    gap: 0.45rem;
    margin-top: 0.9rem;
}

.membership-period-actions .btn[b-ne6xvm73yw],
.close-membership-form .btn[b-ne6xvm73yw],
.correct-membership-form .btn[b-ne6xvm73yw] {
    border-radius: 0.55rem;
    font-weight: 600;
}

.membership-period-actions .btn-primary[b-ne6xvm73yw],
.close-membership-form .btn-primary[b-ne6xvm73yw],
.correct-membership-form .btn-primary[b-ne6xvm73yw] {
    border: 0;
    background: var(--ott-accent);
}

.user-membership-timeline[b-ne6xvm73yw] {
    display: grid;
    gap: 0.6rem;
}

.user-membership-period[b-ne6xvm73yw] {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.8rem;
    padding: 0.85rem;
    border: 1px solid var(--ott-line);
    border-radius: 0.8rem;
    background: var(--ott-surface);
}

.period-timeline-dot[b-ne6xvm73yw] {
    width: 0.65rem;
    height: 0.65rem;
    border: 2px solid var(--ott-line);
    border-radius: 50%;
    background: var(--ott-surface);
}

.user-membership-period.is-current .period-timeline-dot[b-ne6xvm73yw] {
    border-color: var(--ott-line);
    background: var(--ott-positive);
    box-shadow: var(--ott-shadow);
}

.user-membership-period.is-planned .period-timeline-dot[b-ne6xvm73yw] {
    border-color: var(--ott-line);
    background: var(--ott-accent);
    box-shadow: var(--ott-shadow);
}

.period-main[b-ne6xvm73yw] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 0.13rem;
}

.period-title-line[b-ne6xvm73yw] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.4rem;
}

.period-title-line > strong[b-ne6xvm73yw] {
    overflow: hidden;
    color: var(--ott-ink);
    font-size: 0.84rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.period-main > span[b-ne6xvm73yw],
.period-main > small[b-ne6xvm73yw] {
    color: var(--ott-muted);
    font-size: 0.7rem;
}

.period-status[b-ne6xvm73yw],
.archived-type-label[b-ne6xvm73yw] {
    padding: 0.18rem 0.4rem;
    border-radius: 999px;
    font-size: var(--ott-text-label);
    font-weight: 600;
}

.is-current .period-status[b-ne6xvm73yw] {
    background: var(--ott-positive-surface);
    color: var(--ott-positive);
}

.is-planned .period-status[b-ne6xvm73yw] {
    background: var(--ott-background);
    color: var(--ott-accent);
}

.is-ended .period-status[b-ne6xvm73yw],
.archived-type-label[b-ne6xvm73yw] {
    background: var(--ott-background);
    color: var(--ott-muted);
}

.period-actions[b-ne6xvm73yw] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.35rem;
}

.period-actions .btn[b-ne6xvm73yw] {
    border-radius: 0.5rem;
    font-size: 0.7rem;
    font-weight: 600;
}

.close-membership-form[b-ne6xvm73yw],
.correct-membership-form[b-ne6xvm73yw] {
    display: flex;
    align-items: end;
    grid-column: 2 / -1;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.4rem;
    padding-top: 0.75rem;
    border-top: 1px solid var(--ott-line);
}

.correct-membership-form[b-ne6xvm73yw] {
    display: grid;
    grid-template-columns: minmax(14rem, 1.5fr) repeat(2, minmax(10rem, 1fr));
    align-items: start;
}

.close-membership-form > div[b-ne6xvm73yw],
.correct-membership-field[b-ne6xvm73yw] {
    width: min(100%, 18rem);
}

.correct-membership-type-field[b-ne6xvm73yw] {
    width: 100%;
}

.correct-membership-actions[b-ne6xvm73yw] {
    display: flex;
    grid-column: 1 / -1;
    gap: 0.5rem;
}

.close-membership-form .btn[b-ne6xvm73yw],
.correct-membership-form .btn[b-ne6xvm73yw] {
    min-height: 2.7rem;
}

.correct-membership-form label[b-ne6xvm73yw],
.correct-membership-form small[b-ne6xvm73yw] {
    display: block;
}

.correct-membership-form label[b-ne6xvm73yw] {
    margin-bottom: 0.3rem;
    color: var(--ott-muted);
    font-size: var(--ott-text-label);
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.correct-membership-form small[b-ne6xvm73yw] {
    margin-top: 0.3rem;
    color: var(--ott-muted);
    font-size: var(--ott-text-label);
}

.correct-membership-form .form-select[b-ne6xvm73yw] {
    min-height: 2.7rem;
    border-color: var(--ott-line);
    border-radius: 0.65rem;
    font-size: 0.8rem;
}

@media (max-width: 999px) {
    .membership-period-fields[b-ne6xvm73yw] {
        grid-template-columns: 1fr 1fr;
    }

    .membership-type-field[b-ne6xvm73yw] {
        grid-column: 1 / -1;
    }
}

@media (max-width: 700px) {
    .user-membership-editor[b-ne6xvm73yw] {
        margin: 0.8rem;
        padding: 0.9rem;
    }

    .membership-editor-heading[b-ne6xvm73yw] {
        align-items: flex-start;
        flex-direction: column;
    }

    .membership-period-fields[b-ne6xvm73yw],
    .user-membership-period[b-ne6xvm73yw] {
        grid-template-columns: 1fr;
    }

    .membership-type-field[b-ne6xvm73yw],
    .close-membership-form[b-ne6xvm73yw],
    .correct-membership-form[b-ne6xvm73yw] {
        grid-column: auto;
    }

    .correct-membership-form[b-ne6xvm73yw] {
        grid-template-columns: 1fr;
    }

    .correct-membership-field[b-ne6xvm73yw],
    .correct-membership-actions[b-ne6xvm73yw] {
        width: 100%;
        grid-column: auto;
    }

    .period-timeline-dot[b-ne6xvm73yw] {
        display: none;
    }

    .period-actions[b-ne6xvm73yw] {
        justify-content: flex-start;
    }
}

.ott-ui :is(button, .btn, .form-control, .form-select)[b-ne6xvm73yw] { min-height: var(--ott-target); }
.ott-ui :is(.form-control, .form-select)[b-ne6xvm73yw] { border-color: var(--ott-control-border); color: var(--ott-ink); border-radius: var(--ott-radius-control); }
.ott-ui :is(.form-control, .form-select):focus[b-ne6xvm73yw] { outline: 3px solid var(--ott-focus); outline-offset: 3px; border-color: var(--ott-focus); box-shadow: none; }
.ott-ui :is(.form-control, .form-select).invalid[b-ne6xvm73yw] { border-color: var(--ott-negative); }
.ott-ui :is(a, button, input, select, textarea):focus-visible[b-ne6xvm73yw] { outline: 3px solid var(--ott-focus); outline-offset: 3px; box-shadow: none; }
.ott-ui :is(button, input, select):disabled[b-ne6xvm73yw] { opacity: 1; color: var(--ott-muted); background: var(--ott-disabled-surface); }
@media (max-width: 760px) { .ott-ui :is(input, select, textarea, .form-control, .form-select)[b-ne6xvm73yw] { font-size: 1rem; } }
@media (prefers-reduced-motion: reduce) { *[b-ne6xvm73yw] { transition: none; animation: none; } }

.period-title-line > strong[b-ne6xvm73yw], .membership-editor-heading strong[b-ne6xvm73yw] { white-space: normal; overflow-wrap: anywhere; }
.is-planned .period-status[b-ne6xvm73yw] { color: var(--ott-info); background: var(--ott-info-surface); }

.period-main small[b-ne6xvm73yw] { font-variant-numeric: tabular-nums; }

.membership-feedback-error[b-ne6xvm73yw] { color: var(--ott-negative); background: var(--ott-negative-surface); border-color: var(--ott-negative); }
.membership-feedback-success[b-ne6xvm73yw] { color: var(--ott-positive); background: var(--ott-positive-surface); border-color: var(--ott-positive); }
/* /Components/Pages/Users.razor.rz.scp.css */
.users-page[b-61rl2t9k2p] {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

.users-heading[b-61rl2t9k2p] {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.75rem;
}

.users-heading h1[b-61rl2t9k2p] {
    font-size: var(--ott-text-title);
    margin: 0.15rem 0 0.35rem;
    color: var(--ott-ink);
    font-weight: 600;
    letter-spacing: -0.035em;
}

.users-heading p[b-61rl2t9k2p] {
    margin: 0;
    color: var(--ott-muted);
}

.users-heading .users-kicker[b-61rl2t9k2p] {
    color: var(--ott-accent);
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.feedback-panel[b-61rl2t9k2p] {
    display: flex;
    align-items: flex-start;
    gap: 0.8rem;
    margin-bottom: 1.25rem;
    padding: 0.9rem 1rem;
    border: 1px solid;
    border-radius: 0.95rem;
    box-shadow: var(--ott-shadow);
}

.feedback-panel > div[b-61rl2t9k2p] {
    min-width: 0;
}

.feedback-panel strong[b-61rl2t9k2p] {
    display: block;
    margin-bottom: 0.1rem;
    font-size: 0.84rem;
}

.feedback-panel p[b-61rl2t9k2p],
.feedback-panel ul[b-61rl2t9k2p] {
    margin: 0;
    font-size: 0.78rem;
    line-height: 1.45;
}

.feedback-panel ul[b-61rl2t9k2p] {
    padding-left: 1.1rem;
}

.feedback-icon[b-61rl2t9k2p] {
    display: inline-grid;
    width: 1.7rem;
    height: 1.7rem;
    flex: 0 0 1.7rem;
    place-items: center;
    border-radius: 50%;
    color: var(--ott-on-accent);
    font-size: 0.8rem;
    font-weight: 600;
}

.feedback-panel-success[b-61rl2t9k2p] {
    border-color: var(--ott-line);
    background: var(--ott-background);
    color: var(--ott-ink);
}

.feedback-panel-success .feedback-icon[b-61rl2t9k2p] {
    background: var(--ott-positive);
    box-shadow: var(--ott-shadow);
}

.feedback-panel-error[b-61rl2t9k2p] {
    border-color: var(--ott-line);
    background: var(--ott-background);
    color: var(--ott-negative);
}

.feedback-panel-error .feedback-icon[b-61rl2t9k2p] {
    background: var(--ott-negative);
    box-shadow: var(--ott-shadow);
}

.form-control[b-61rl2t9k2p],
.form-select[b-61rl2t9k2p] {
    min-height: 3rem;
    border-color: var(--ott-line);
    border-radius: 0.7rem;
}

.form-control:focus[b-61rl2t9k2p],
.form-select:focus[b-61rl2t9k2p] {
    border-color: var(--ott-line);
    box-shadow: var(--ott-shadow);
}

.form-control.invalid[b-61rl2t9k2p],
.form-select.invalid[b-61rl2t9k2p] {
    border-color: var(--ott-line);
    background-color: var(--ott-background);
    box-shadow: var(--ott-shadow);
}

[b-61rl2t9k2p] .field-validation-message {
    display: flex;
    align-items: flex-start;
    gap: 0.35rem;
    margin-top: 0.4rem;
    padding: 0.42rem 0.55rem;
    border-left: 2px solid var(--ott-line);
    border-radius: 0 0.5rem 0.5rem 0;
    background: var(--ott-background);
    color: var(--ott-negative);
    font-size: 0.72rem;
    font-weight: 600;
    line-height: 1.35;
}

[b-61rl2t9k2p] .field-validation-message::before {
    display: inline-grid;
    width: 1rem;
    height: 1rem;
    flex: 0 0 1rem;
    place-items: center;
    border-radius: 50%;
    background: var(--ott-negative);
    color: var(--ott-on-accent);
    content: "!";
    font-size: var(--ott-text-label);
    font-weight: 600;
}

.btn-primary[b-61rl2t9k2p] {
    min-height: 3rem;
    border: 0;
    border-radius: 0.7rem;
    background: var(--ott-accent);
    font-weight: 600;
}

.create-user-toggle[b-61rl2t9k2p] {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 0.85rem;
    padding: 1rem 1.15rem;
    border: 0;
    background: var(--ott-background);
    color: var(--ott-ink);
    text-align: left;
}

.create-user-toggle:hover[b-61rl2t9k2p] {
    background: var(--ott-background);
}

.create-user-toggle:focus-visible[b-61rl2t9k2p] {
    outline: 3px solid var(--ott-line);
    outline-offset: -3px;
}

.create-user-toggle-icon[b-61rl2t9k2p] {
    display: inline-grid;
    width: 2.25rem;
    height: 2.25rem;
    flex: 0 0 2.25rem;
    place-items: center;
    border-radius: 0.7rem;
    background: var(--ott-accent);
    box-shadow: var(--ott-shadow);
    color: var(--ott-on-accent);
    font-size: 1.35rem;
    font-weight: 500;
    line-height: 1;
}

.create-user-toggle-copy[b-61rl2t9k2p] {
    display: flex;
    min-width: 0;
    flex: 1;
    flex-direction: column;
    gap: 0.1rem;
}

.create-user-toggle-copy strong[b-61rl2t9k2p] {
    font-size: 0.94rem;
}

.create-user-toggle-copy small[b-61rl2t9k2p] {
    overflow: hidden;
    color: var(--ott-muted);
    font-size: 0.74rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.create-user-toggle-action[b-61rl2t9k2p] {
    padding: 0.38rem 0.7rem;
    border: 1px solid var(--ott-line);
    border-radius: 999px;
    background: var(--ott-surface);
    color: var(--ott-accent);
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
}

.create-user-toggle-chevron[b-61rl2t9k2p] {
    display: inline-flex;
    width: 1rem;
    height: 1rem;
    flex: 0 0 1rem;
    align-items: center;
    justify-content: center;
    color: var(--ott-accent);
    transition: transform var(--ott-motion-duration) var(--ott-motion-easing);
}

.create-user-toggle-chevron svg[b-61rl2t9k2p] {
    width: 100%;
    height: 100%;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.75;
}

.create-user-toggle-chevron.is-open[b-61rl2t9k2p] {
    transform: rotate(180deg);
}

.create-user-content[b-61rl2t9k2p] {
    border-top: 1px solid var(--ott-line);
}

.create-user-body[b-61rl2t9k2p] {
    padding: 1.25rem 1.5rem 1.5rem;
}

.credentials-grid[b-61rl2t9k2p] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--ott-line);
}

.create-user-submit[b-61rl2t9k2p] {
    width: min(100%, 18rem);
    margin-top: 1.25rem;
}

.users-list-card[b-61rl2t9k2p] {
    min-height: 100%;
}

.users-list-heading[b-61rl2t9k2p] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.users-filters[b-61rl2t9k2p] {
    display: grid;
    grid-template-columns: minmax(15rem, 2fr) repeat(3, minmax(9rem, 1fr)) minmax(7rem, 0.55fr) auto;
    align-items: end;
    gap: 0.75rem;
    margin-bottom: 1.25rem;
    padding: 1rem;
    border: 1px solid var(--ott-line);
    border-radius: 0.9rem;
    background: var(--ott-background);
}

.users-filters label[b-61rl2t9k2p] {
    display: block;
    margin-bottom: 0.3rem;
    color: var(--ott-muted);
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.045em;
    text-transform: uppercase;
}

.users-filters .form-control[b-61rl2t9k2p],
.users-filters .form-select[b-61rl2t9k2p] {
    min-height: 2.65rem;
    background-color: var(--ott-surface);
    font-size: 0.82rem;
}

.users-sort-filter[b-61rl2t9k2p] {
    display: none;
}

.users-sort-filter > div[b-61rl2t9k2p] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) var(--ott-target);
    gap: 0.4rem;
}

.sort-direction[b-61rl2t9k2p] {
    display: grid;
    min-width: var(--ott-target);
    min-height: var(--ott-target);
    place-items: center;
    border: 1px solid var(--ott-line);
    border-radius: 0.7rem;
    background: var(--ott-surface);
    color: var(--ott-accent);
    font-size: 1rem;
    font-weight: 600;
}

.sort-direction:hover[b-61rl2t9k2p] {
    border-color: var(--ott-line);
    background: var(--ott-background);
}

.sort-direction:focus-visible[b-61rl2t9k2p] {
    outline: 3px solid var(--ott-line);
    outline-offset: 1px;
}

.clear-filters[b-61rl2t9k2p] {
    min-height: 2.65rem;
    border: 1px solid var(--ott-line);
    border-radius: 0.7rem;
    background: var(--ott-surface);
    color: var(--ott-accent);
    font-size: 0.76rem;
    font-weight: 600;
    white-space: nowrap;
}

.clear-filters:hover[b-61rl2t9k2p] {
    border-color: var(--ott-line);
    background: var(--ott-background);
}

.empty-users-state[b-61rl2t9k2p] {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 0.25rem;
    padding: 2.5rem 1rem;
    border: 1px dashed var(--ott-line);
    border-radius: 0.9rem;
    background: var(--ott-background);
    color: var(--ott-muted);
    text-align: center;
}

.empty-users-state span[b-61rl2t9k2p] {
    color: var(--ott-muted);
    font-size: 0.8rem;
}

.deleted-toggle[b-61rl2t9k2p] {
    border: 1px solid var(--ott-line);
    border-radius: 999px;
    background: var(--ott-background);
    color: var(--ott-accent);
    font-weight: 600;
}

.deleted-toggle:hover[b-61rl2t9k2p] {
    border-color: var(--ott-line);
    background: var(--ott-due-surface);
    color: var(--ott-accent);
}

.users-table-wrapper[b-61rl2t9k2p] {
    margin: 0 -0.5rem;
}

.users-table[b-61rl2t9k2p] {
    min-width: 970px;
}

.users-table th[b-61rl2t9k2p] {
    border-bottom-color: var(--ott-line);
    color: var(--ott-muted);
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.055em;
    text-transform: uppercase;
    white-space: nowrap;
}

.table-sort[b-61rl2t9k2p] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.25rem 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    letter-spacing: inherit;
    text-transform: inherit;
}

.table-sort span[b-61rl2t9k2p] {
    display: inline-grid;
    width: 1.1rem;
    height: 1.1rem;
    place-items: center;
    border-radius: 0.35rem;
    color: var(--ott-muted);
    font-size: 0.78rem;
    line-height: 1;
}

.table-sort:hover[b-61rl2t9k2p],
.users-table th[aria-sort="ascending"] .table-sort[b-61rl2t9k2p],
.users-table th[aria-sort="descending"] .table-sort[b-61rl2t9k2p] {
    color: var(--ott-accent);
}

.users-table th[aria-sort="ascending"] .table-sort span[b-61rl2t9k2p],
.users-table th[aria-sort="descending"] .table-sort span[b-61rl2t9k2p] {
    background: var(--ott-due-surface);
    color: var(--ott-accent);
}

.table-sort:focus-visible[b-61rl2t9k2p] {
    border-radius: 0.3rem;
    outline: 3px solid var(--ott-line);
    outline-offset: 2px;
}

.users-table td[b-61rl2t9k2p] {
    border-bottom-color: var(--ott-line);
    padding-top: 1rem;
    padding-bottom: 1rem;
    vertical-align: middle;
}

.user-cell[b-61rl2t9k2p] {
    display: flex;
    min-width: 0;
    overflow-wrap: anywhere;
    align-items: center;
    gap: 0.75rem;
}

.user-identity[b-61rl2t9k2p] {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 0.12rem;
}

.identity-flags[b-61rl2t9k2p] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem;
}

.identity-flags small[b-61rl2t9k2p] {
    display: inline-flex;
    padding: 0.16rem 0.4rem;
    border-radius: 999px;
    font-size: var(--ott-text-label);
    font-weight: 600;
}

.member-label[b-61rl2t9k2p] {
    background: var(--ott-positive-surface);
    color: var(--ott-positive);
}

.password-label[b-61rl2t9k2p] {
    background: var(--ott-warning-surface);
    color: var(--ott-warning);
}

.role-badge[b-61rl2t9k2p] {
    display: inline-flex;
    padding: 0.35rem 0.65rem;
    border-radius: 999px;
    background: var(--ott-due-surface);
    color: var(--ott-accent);
    font-size: 0.78rem;
    font-weight: 600;
}

.never-logged-in[b-61rl2t9k2p] {
    color: var(--ott-muted);
    font-size: 0.82rem;
    font-style: italic;
}

.account-status[b-61rl2t9k2p] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.34rem 0.62rem;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.account-status[b-61rl2t9k2p]::before {
    width: 0.42rem;
    height: 0.42rem;
    border-radius: 50%;
    background: currentColor;
    content: "";
}

.account-status-active[b-61rl2t9k2p] {
    background: var(--ott-positive-surface);
    color: var(--ott-positive);
}

.account-status-suspended[b-61rl2t9k2p] {
    background: var(--ott-warning-surface);
    color: var(--ott-warning);
}

.account-status-deleted[b-61rl2t9k2p] {
    background: var(--ott-background);
    color: var(--ott-muted);
}

.user-actions[b-61rl2t9k2p] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.4rem;
}

.user-actions .btn[b-61rl2t9k2p] {
    border-radius: 0.55rem;
    font-weight: 600;
    white-space: nowrap;
}

.current-account-label[b-61rl2t9k2p] {
    align-self: center;
    color: var(--ott-muted);
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
}

.deleted-user-row > td[b-61rl2t9k2p] {
    background: var(--ott-background);
    color: var(--ott-muted);
}

.expanded-row > td[b-61rl2t9k2p] {
    padding: 0 !important;
    background: var(--ott-background);
}

.expanded-panel[b-61rl2t9k2p] {
    display: grid;
    gap: 1rem;
    padding: 1.25rem;
    border-left: 3px solid var(--ott-line);
}

.expanded-heading[b-61rl2t9k2p] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.expanded-heading > div[b-61rl2t9k2p],
.password-reset-panel > div:first-child[b-61rl2t9k2p] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.expanded-panel span[b-61rl2t9k2p] {
    color: var(--ott-muted);
    font-size: 0.82rem;
}

.avatar-editor[b-61rl2t9k2p] {
    display: flex;
    align-items: center;
    gap: 1.1rem;
    padding: 1rem;
    border: 1px solid var(--ott-line);
    border-radius: 0.9rem;
    background: var(--ott-surface);
}

.avatar-editor > div:last-child[b-61rl2t9k2p] {
    min-width: 0;
    flex: 1;
}

.avatar-editor .form-control[b-61rl2t9k2p] {
    min-height: auto;
}

.field-hint[b-61rl2t9k2p],
.avatar-state[b-61rl2t9k2p] {
    display: block;
    margin-top: 0.3rem;
    color: var(--ott-muted);
    font-size: 0.75rem;
}

.avatar-state[b-61rl2t9k2p] {
    color: var(--ott-accent);
    font-weight: 600;
}

.remove-avatar[b-61rl2t9k2p] {
    margin-top: 0.35rem;
    padding-left: 0;
    color: var(--ott-negative);
    text-decoration: none;
}

.edit-role-field[b-61rl2t9k2p] {
    width: min(100%, 22rem);
}

.account-login-field[b-61rl2t9k2p] {
    width: min(100%, 32rem);
}

.password-reset-fields[b-61rl2t9k2p] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.8rem;
}

.password-reset-fields .form-label[b-61rl2t9k2p] {
    margin-bottom: 0.3rem;
    font-size: 0.8rem;
    font-weight: 600;
}

.expanded-actions[b-61rl2t9k2p] {
    display: flex;
    gap: 0.5rem;
}

.expanded-actions .btn-primary[b-61rl2t9k2p] {
    min-height: auto;
}

.users-pagination[b-61rl2t9k2p] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--ott-line);
    color: var(--ott-muted);
    font-size: 0.78rem;
}

.pagination-controls[b-61rl2t9k2p] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
}

.pagination-controls .btn[b-61rl2t9k2p] {
    display: inline-grid;
    width: 2.25rem;
    height: 2.25rem;
    place-items: center;
    border: 1px solid var(--ott-line);
    border-radius: 0.65rem;
    background: var(--ott-background);
    color: var(--ott-accent);
    font-size: 1.2rem;
    line-height: 1;
}

.pagination-controls .btn:hover:not(:disabled)[b-61rl2t9k2p] {
    border-color: var(--ott-line);
    background: var(--ott-due-surface);
}

.pagination-controls strong[b-61rl2t9k2p] {
    color: var(--ott-muted);
    font-size: 0.76rem;
    white-space: nowrap;
}

@media (max-width: 1399px) {
    .credentials-grid[b-61rl2t9k2p] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .users-filters[b-61rl2t9k2p] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .users-search-filter[b-61rl2t9k2p] {
        grid-column: span 2;
    }

    .users-sort-filter[b-61rl2t9k2p] {
        display: block;
    }

    .users-table-wrapper[b-61rl2t9k2p] {
        overflow: visible;
        margin: 0;
    }

    .users-table[b-61rl2t9k2p] {
        display: block;
        min-width: 0;
    }

    .users-table thead[b-61rl2t9k2p] {
        display: none;
    }

    .users-table tbody[b-61rl2t9k2p],
    .users-table tr[b-61rl2t9k2p],
    .users-table td[b-61rl2t9k2p] {
        display: block;
        width: 100%;
    }

    .users-table tr[b-61rl2t9k2p] {
        margin-bottom: 0.9rem;
        padding: 0.65rem 0.8rem;
        border: 1px solid var(--ott-line);
        border-radius: 0.9rem;
        background: var(--ott-surface);
    }

    .users-table td[b-61rl2t9k2p] {
        display: grid;
        grid-template-columns: 8.5rem minmax(0, 1fr);
        align-items: center;
        gap: 0.75rem;
        padding: 0.55rem 0;
        border: 0;
    }

    .users-table td[b-61rl2t9k2p]::before {
        color: var(--ott-muted);
        content: attr(data-label);
        font-size: 0.69rem;
        font-weight: 600;
        letter-spacing: 0.045em;
        text-transform: uppercase;
    }

    .user-actions[b-61rl2t9k2p] {
        justify-content: flex-start;
    }

    .users-table .expanded-row[b-61rl2t9k2p] {
        margin-top: -0.9rem;
        padding: 0;
        border-top: 0;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
        background: var(--ott-background);
    }

    .users-table .expanded-row td[b-61rl2t9k2p] {
        display: block;
        padding: 0;
    }

    .users-table .expanded-row td[b-61rl2t9k2p]::before {
        content: none;
    }
}

@media (max-width: 799px) {
    .users-list-heading[b-61rl2t9k2p],
    .expanded-heading[b-61rl2t9k2p] {
        align-items: flex-start;
        flex-direction: column;
    }

    .credentials-grid[b-61rl2t9k2p],
    .password-reset-fields[b-61rl2t9k2p] {
        grid-template-columns: 1fr;
    }

    .users-filters[b-61rl2t9k2p] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .users-search-filter[b-61rl2t9k2p] {
        grid-column: 1 / -1;
    }

    .avatar-editor[b-61rl2t9k2p] {
        align-items: flex-start;
        flex-direction: column;
    }

    .users-table td[b-61rl2t9k2p] {
        grid-template-columns: 1fr;
        gap: 0.25rem;
    }
}

@media (max-width: 600px) {
    .create-user-toggle-action[b-61rl2t9k2p] {
        display: none;
    }

    .create-user-toggle-copy small[b-61rl2t9k2p] {
        white-space: normal;
    }

    .create-user-body[b-61rl2t9k2p] {
        padding: 1rem;
    }

    .create-user-submit[b-61rl2t9k2p] {
        width: 100%;
    }

    .users-filters[b-61rl2t9k2p] {
        grid-template-columns: 1fr;
    }

    .users-search-filter[b-61rl2t9k2p] {
        grid-column: auto;
    }

    .users-pagination[b-61rl2t9k2p] {
        align-items: flex-start;
        flex-direction: column;
    }
}

.ott-ui :is(button, .btn, .form-control, .form-select)[b-61rl2t9k2p] { min-height: var(--ott-target); }
.ott-ui :is(.form-control, .form-select)[b-61rl2t9k2p] { border-color: var(--ott-control-border); color: var(--ott-ink); border-radius: var(--ott-radius-control); }
.ott-ui :is(.form-control, .form-select):focus[b-61rl2t9k2p] { outline: 3px solid var(--ott-focus); outline-offset: 3px; border-color: var(--ott-focus); box-shadow: none; }
.ott-ui :is(.form-control, .form-select).invalid[b-61rl2t9k2p] { border-color: var(--ott-negative); }
.ott-ui :is(a, button, input, select, textarea):focus-visible[b-61rl2t9k2p] { outline: 3px solid var(--ott-focus); outline-offset: 3px; box-shadow: none; }
.ott-ui :is(button, input, select):disabled[b-61rl2t9k2p] { opacity: 1; color: var(--ott-muted); background: var(--ott-disabled-surface); }
@media (max-width: 760px) { .ott-ui :is(input, select, textarea, .form-control, .form-select)[b-61rl2t9k2p] { font-size: 1rem; } }
@media (prefers-reduced-motion: reduce) { *[b-61rl2t9k2p] { transition: none; animation: none; } }

.users-table thead th[b-61rl2t9k2p], .table-sort[b-61rl2t9k2p] { color: var(--ott-muted); background: var(--ott-background); }
.user-identity[b-61rl2t9k2p] { overflow-wrap: anywhere; }
.ott-ui :is(.btn-primary):hover[b-61rl2t9k2p] { color: var(--ott-on-accent); background: var(--ott-accent-hover); }

.btn-outline-warning[b-61rl2t9k2p] { --bs-btn-color: var(--ott-warning); --bs-btn-border-color: var(--ott-warning); --bs-btn-hover-bg: var(--ott-warning); --bs-btn-hover-color: var(--ott-on-accent); --bs-btn-hover-border-color: var(--ott-warning); --bs-btn-active-bg: var(--ott-warning); --bs-btn-active-color: var(--ott-on-accent); --bs-btn-active-border-color: var(--ott-warning); }

.feedback-panel-error[b-61rl2t9k2p] { color: var(--ott-negative); background: var(--ott-negative-surface); border-color: var(--ott-negative); }
.feedback-panel-success[b-61rl2t9k2p] { color: var(--ott-positive); background: var(--ott-positive-surface); border-color: var(--ott-positive); }
[b-61rl2t9k2p] .field-validation-message { color: var(--ott-negative); background: var(--ott-negative-surface); border-color: var(--ott-negative); }
@media (max-width: 760px) { .users-heading h1[b-61rl2t9k2p] { font-size: 1.6875rem; } }

.create-user-card[b-61rl2t9k2p] { overflow: hidden; }
/* /Components/Shared/ExpenseDocumentPreviewDialog.razor.rz.scp.css */
.document-preview-dialog[b-tii0niepsv] { display: none; width: min(96vw, 96rem); max-width: calc(100vw - 1rem); height: min(94dvh, 70rem); max-height: calc(100dvh - 1rem); margin: auto; padding: 0; overflow: hidden; border: 1px solid var(--ott-control-border); border-radius: var(--ott-radius-dialog); color: var(--ott-ink); background: var(--ott-background); box-shadow: var(--ott-dialog-shadow); }
.document-preview-dialog[open][b-tii0niepsv] { display: flex; flex-direction: column; }
.document-preview-dialog[b-tii0niepsv]::backdrop { background: var(--ott-backdrop); }
.document-preview-header[b-tii0niepsv] { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .75rem; padding: .75rem 1rem; border-bottom: 1px solid var(--ott-line); color: var(--ott-ink); background: var(--ott-surface); }
.document-preview-heading[b-tii0niepsv] { min-width: 0; flex: 1 1 15rem; }
.document-preview-heading span[b-tii0niepsv] { color: var(--ott-accent); font-size: var(--ott-text-label); font-weight: 500; letter-spacing: .1em; text-transform: uppercase; }
.document-preview-heading h2[b-tii0niepsv] { margin: .125rem 0 0; font-size: var(--ott-text-section); font-weight: 600; overflow-wrap: anywhere; }
.document-preview-toolbar[b-tii0niepsv], .zoom-controls[b-tii0niepsv] { display: flex; flex-wrap: wrap; align-items: center; gap: .375rem; }
.zoom-controls[b-tii0niepsv] { padding: .125rem; border: 1px solid var(--ott-line); border-radius: var(--ott-radius-control); background: var(--ott-background); }
.zoom-controls button[b-tii0niepsv], .close-button[b-tii0niepsv], .download-button[b-tii0niepsv] { display: inline-grid; min-width: var(--ott-target); min-height: var(--ott-target); place-items: center; padding: .375rem; border: 1px solid var(--ott-control-border); border-radius: var(--ott-radius-button); color: var(--ott-ink); background: var(--ott-surface); font-size: var(--ott-text-small); font-weight: 500; text-decoration: none; }
.zoom-controls button:hover[b-tii0niepsv], .close-button:hover[b-tii0niepsv], .download-button:hover[b-tii0niepsv] { color: var(--ott-accent); border-color: var(--ott-accent); }
.zoom-controls button:disabled[b-tii0niepsv] { color: var(--ott-muted); background: var(--ott-disabled-surface); }
.zoom-controls output[b-tii0niepsv] { min-width: 2.75rem; color: var(--ott-muted); font-size: var(--ott-text-small); font-variant-numeric: tabular-nums; text-align: center; }
.zoom-controls .fit-button[b-tii0niepsv], .download-button[b-tii0niepsv] { padding-inline: .625rem; }
.close-button[b-tii0niepsv] { font-size: 1.25rem; }
.document-preview-surface[b-tii0niepsv] { flex: 1; min-height: 0; padding: .5rem; overflow: hidden; background: var(--ott-background); }
.document-preview-surface iframe[b-tii0niepsv] { width: 100%; height: 100%; border: 0; border-radius: var(--ott-radius-control); background: var(--ott-surface); }
.image-preview-scroll[b-tii0niepsv] { width: 100%; height: 100%; overflow: auto; border-radius: var(--ott-radius-control); background: var(--ott-background); }
.image-preview-scroll img[b-tii0niepsv] { display: block; max-width: none; height: auto; margin: 0 auto; transition: width var(--ott-motion-duration); }
:is(button, a):focus-visible[b-tii0niepsv] { outline: 3px solid var(--ott-focus); outline-offset: 2px; }
@media (max-width: 760px) {
    .document-preview-dialog[b-tii0niepsv] { width: 100vw; max-width: 100vw; height: 100dvh; max-height: 100dvh; border: 0; border-radius: 0; }
    .document-preview-toolbar[b-tii0niepsv] { width: 100%; }
    .document-preview-heading h2[b-tii0niepsv] { font-size: 1rem; }
}
/* /Components/Shared/ExpenseDocumentTextDialog.razor.rz.scp.css */
.text-preview-dialog[b-40xhb6hp1m] { display: none; width: min(96vw, 84rem); max-width: calc(100vw - 1rem); height: min(92dvh, 68rem); max-height: calc(100dvh - 1rem); margin: auto; padding: 0; overflow: hidden; border: 1px solid var(--ott-control-border); border-radius: var(--ott-radius-dialog); color: var(--ott-ink); background: var(--ott-background); box-shadow: var(--ott-dialog-shadow); }
.text-preview-dialog[open][b-40xhb6hp1m] { display: flex; flex-direction: column; }
.text-preview-dialog[b-40xhb6hp1m]::backdrop { background: var(--ott-backdrop); }
.text-preview-dialog header[b-40xhb6hp1m] { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding: .75rem 1rem; border-bottom: 1px solid var(--ott-line); background: var(--ott-surface); }
.text-preview-dialog header div[b-40xhb6hp1m] { min-width: 0; }
.text-preview-dialog header span[b-40xhb6hp1m] { color: var(--ott-accent); font-size: var(--ott-text-label); font-weight: 500; letter-spacing: .1em; text-transform: uppercase; }
.text-preview-dialog h2[b-40xhb6hp1m] { margin: .125rem 0 0; font-size: var(--ott-text-section); font-weight: 600; overflow-wrap: anywhere; }
.text-preview-dialog header button[b-40xhb6hp1m] { display: grid; width: var(--ott-target); height: var(--ott-target); flex: 0 0 auto; place-items: center; border: 1px solid var(--ott-control-border); border-radius: var(--ott-radius-button); color: var(--ott-ink); background: var(--ott-surface); font-size: 1.25rem; }
.text-preview-content[b-40xhb6hp1m] { flex: 1; min-height: 0; padding: .75rem; }
.text-preview-content pre[b-40xhb6hp1m] { width: 100%; height: 100%; margin: 0; padding: 1rem; overflow: auto; border: 1px solid var(--ott-line); border-radius: var(--ott-radius-control); color: var(--ott-ink); background: var(--ott-surface); font: .875rem/1.58 ui-monospace, SFMono-Regular, Consolas, monospace; tab-size: 4; white-space: pre-wrap; overflow-wrap: anywhere; }
:is(button, pre):focus-visible[b-40xhb6hp1m] { outline: 3px solid var(--ott-focus); outline-offset: 2px; }
@media (max-width: 760px) { .text-preview-dialog[b-40xhb6hp1m] { width: 100vw; max-width: 100vw; height: 100dvh; max-height: 100dvh; border: 0; border-radius: 0; } .text-preview-dialog h2[b-40xhb6hp1m] { font-size: 1rem; } }
/* /Components/Shared/FinanceDuesAdvanceDialog.razor.rz.scp.css */
.dues-advance-dialog[b-s2ch9ocbkr] { width: 56rem; }
header[b-s2ch9ocbkr], .month-toolbar[b-s2ch9ocbkr], .confirmation-actions[b-s2ch9ocbkr] { display: flex; align-items: center; justify-content: space-between; gap: .75rem; flex-wrap: wrap; }
header[b-s2ch9ocbkr] { flex-wrap: nowrap; align-items: flex-start; margin-bottom: 1rem; }
h2[b-s2ch9ocbkr] { font-size: 1.35rem; } h3[b-s2ch9ocbkr] { font-size: 1rem; margin: 0; }
fieldset[b-s2ch9ocbkr] { min-width: 0; }
.payment-search[b-s2ch9ocbkr] { display: flex; gap: .75rem; align-items: end; margin-bottom: .75rem; }
.payment-search label[b-s2ch9ocbkr] { flex: 1; }
.advance-payments[b-s2ch9ocbkr] { display: grid; gap: .5rem; max-height: 16rem; overflow-y: auto; margin: .75rem 0; }
.payment-option[b-s2ch9ocbkr] { display: grid; gap: .25rem; width: 100%; text-align: left; padding: .75rem; border: 1px solid var(--ott-control-border); border-radius: .6rem; background: var(--ott-background); color: var(--ott-ink); overflow-wrap: anywhere; }
.payment-option.selected[b-s2ch9ocbkr] { background: var(--ott-positive-surface); border: 2px solid var(--ott-accent); }
.payment-option small[b-s2ch9ocbkr], .advance-month small[b-s2ch9ocbkr] { color: var(--ott-muted); }
.month-toolbar[b-s2ch9ocbkr] { margin: 1.5rem 0 .75rem; justify-content: start; }
.month-toolbar h3[b-s2ch9ocbkr] { margin-right: auto; }
.advance-months[b-s2ch9ocbkr] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .6rem; }
.advance-month[b-s2ch9ocbkr] { display: grid; align-content: start; gap: .4rem; border: 1px solid var(--ott-line); border-radius: .65rem; padding: .75rem; font-size: .85rem; min-width: 0; }
.advance-month.chosen[b-s2ch9ocbkr] { background: var(--ott-positive-surface); border-color: var(--ott-positive); }
.advance-month input[type=checkbox][b-s2ch9ocbkr] { accent-color: var(--ott-accent); }
.advance-month label[b-s2ch9ocbkr] { display: block; }
.advance-month .advance-month-choice[b-s2ch9ocbkr] { display: flex; align-items: center; gap: .5rem; min-width: var(--ott-target); min-height: var(--ott-target); cursor: pointer; }
.advance-month-choice input[type=checkbox][b-s2ch9ocbkr] { flex: 0 0 auto; }
.reason[b-s2ch9ocbkr] { display: block; margin-top: 1rem; }
.selection-total[b-s2ch9ocbkr] { font-weight: 700; margin-top: 1rem; }
.advance-confirmation[b-s2ch9ocbkr] { margin-top: 1.25rem; padding: 1rem; background: var(--ott-info-surface); border: 1px solid var(--ott-info); border-radius: .75rem; }
.advance-confirmation ul[b-s2ch9ocbkr] { columns: 2; padding-left: 1.2rem; }
.confirmation-actions[b-s2ch9ocbkr] { margin-top: 1rem; justify-content: start; }
@media (max-width: 600px) {
    .dues-advance-dialog[b-s2ch9ocbkr] { padding: 1rem; width: calc(100vw - 1rem); max-height: calc(100dvh - 1rem); }
    .advance-months[b-s2ch9ocbkr] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .advance-confirmation ul[b-s2ch9ocbkr] { columns: 1; }
    .payment-search[b-s2ch9ocbkr] { flex-wrap: wrap; } .payment-search label[b-s2ch9ocbkr] { flex-basis: 100%; }
}
/* /Components/Shared/FinanceDuesMonthPreviewDialog.razor.rz.scp.css */
.dues-preview-dialog[b-g7svri4g18] { width: 38rem; }
header[b-g7svri4g18] { display: flex; align-items: start; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
.finance-kicker[b-g7svri4g18] { color: var(--ott-accent); }
h2[b-g7svri4g18] { font-size: 1.35rem; margin: 0; } h3[b-g7svri4g18] { font-size: 1.1rem; margin: 1.2rem 0; }
dl[b-g7svri4g18] { display: grid; gap: 1rem; } dt[b-g7svri4g18] { color: var(--ott-muted); font-size: .8rem; } dd[b-g7svri4g18] { margin: .2rem 0 0; }
.preview-amount[b-g7svri4g18] { color: var(--ott-ink); font-size: 1.5rem; font-weight: 750; }
p[b-g7svri4g18] { font-size: .88rem; line-height: 1.55; }
.preview-explanation[b-g7svri4g18] { padding: 1rem; background: var(--ott-background); border-radius: .65rem; }
@media (max-width: 700px) { .dues-preview-dialog[b-g7svri4g18] { width: calc(100% - 1rem); padding: 1rem; } }
/* /Components/Shared/FinanceDuesPersonDialog.razor.rz.scp.css */
.dues-person-dialog[b-dmtquel9rm] { width: 40rem; }
header[b-dmtquel9rm] { display: flex; align-items: start; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }
h2[b-dmtquel9rm] { font-size: 1.4rem; } h3[b-dmtquel9rm] { font-size: 1.1rem; margin: 1.2rem 0; }
.person-details[b-dmtquel9rm] { display: grid; gap: .75rem; } dt[b-dmtquel9rm] { color: var(--ott-muted); font-size: .8rem; } dd[b-dmtquel9rm] { margin: .2rem 0 0; }
@media (max-width: 700px) { .dues-person-dialog[b-dmtquel9rm] { width: calc(100% - 1rem); padding: 1rem; } }
/* /Components/Shared/FinanceDuesSettlementDialog.razor.rz.scp.css */
.dues-settlement-dialog[b-0xinu8ge5o] { width: 58rem; }
.dialog-heading[b-0xinu8ge5o] { position: sticky; top: -1.5rem; z-index: 2; display: flex; align-items: start; justify-content: space-between; gap: 1rem; margin: -1.5rem -1.5rem 1.25rem; padding: 1.25rem 1.5rem; background: var(--ott-surface); border-bottom: 1px solid var(--ott-line); }
.dialog-heading h2[b-0xinu8ge5o] { font-size: 1.45rem; margin: 0; font-weight: 750; }
.dialog-heading .finance-kicker[b-0xinu8ge5o] { color: var(--ott-accent); }
.payment-options[b-0xinu8ge5o] { display: grid; gap: .7rem; max-height: 22rem; overflow-y: auto; margin-top: 1rem; padding: .25rem; }
.payment-option[b-0xinu8ge5o] { display: grid; gap: .35rem; min-width: 0; padding: 1rem; border: 1px solid var(--ott-control-border); border-radius: .85rem; text-align: left; color: var(--ott-ink); background: var(--ott-surface); font: inherit; font-size: .9rem; overflow-wrap: anywhere; }
.payment-option > *[b-0xinu8ge5o] { min-width: 0; }
.payment-option small[b-0xinu8ge5o], .settlement-history small[b-0xinu8ge5o] { color: var(--ott-muted); }
.payment-option:hover[b-0xinu8ge5o] { background: var(--ott-background); border-color: var(--ott-accent); }
.payment-option.selected[b-0xinu8ge5o] { background: var(--ott-positive-surface); border: 2px solid var(--ott-accent); padding: calc(1rem - 1px); }
.settlement-history[b-0xinu8ge5o] { display: grid; gap: .85rem; padding: 0; margin: 0; list-style: none; }
.settlement-history li[b-0xinu8ge5o] { display: grid; grid-template-columns: minmax(0, 1fr); gap: .35rem; padding: 1rem; border: 1px solid var(--ott-line); border-radius: .85rem; font-size: .85rem; }
.settlement-history button[b-0xinu8ge5o] { justify-self: start; margin-top: .35rem; }
@media (max-width: 700px) {
    .dues-settlement-dialog[b-0xinu8ge5o] { width: calc(100% - 1rem); max-height: calc(100dvh - 1rem); padding: 1rem; }
    .dialog-heading h2[b-0xinu8ge5o] { font-size: 1.2rem; }
    .dialog-heading[b-0xinu8ge5o] { top: -1rem; margin: -1rem -1rem 1rem; padding: 1rem; }
}
/* /Components/Shared/FinanceMemberDues.razor.rz.scp.css */
/* Original matrix styling is shared, unchanged, with MembershipDues.razor.css
   through CssScope="b-ott-dues". These rules only support later requested controls
   and ledger states that were not present in the original page. */
.dues-page[b-ott-dues] { min-width: 0; padding: 0; border: 0; }
.year-input[b-ott-dues] { width: 3.4rem; padding: 0; border: 0; outline-offset: .25rem; color: inherit; background: transparent; font: inherit; text-align: center; appearance: textfield; }
.year-input[b-ott-dues]::-webkit-inner-spin-button { appearance: none; }
.dues-sort[b-ott-dues] { width: 100%; padding: 0; border: 0; color: #fff; background: #382540; font: inherit; }
.dues-person-link[b-ott-dues] { min-width: 0; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding: 0; border: 0; color: #2f2335; background: transparent; font: inherit; font-size: .79rem; font-weight: 700; text-align: left; }
.dues-person-link:hover[b-ott-dues] { text-decoration: underline; }
.dues-memberships[b-ott-dues] { display: flex; gap: .2rem; flex-wrap: wrap; padding: 0 .85rem; }
.membership-badge[b-ott-dues] { display: inline-block; max-width: 100%; padding: .15rem .35rem; border-radius: .25rem; font-size: .62rem; font-weight: 600; line-height: 1.3; overflow-wrap: anywhere; }
.membership-0[b-ott-dues] { color: #542074; background: #f0e3f8; }
.membership-1[b-ott-dues] { color: #1d536e; background: #dff1fc; }
.membership-2[b-ott-dues] { color: #763b16; background: #ffebdf; }
.membership-3[b-ott-dues] { color: #34521d; background: #e5f0d8; }
.membership-4[b-ott-dues] { color: #76284e; background: #fbe2ed; }
.membership-5[b-ott-dues] { color: #234c5b; background: #dceced; }
.membership-6[b-ott-dues] { color: #444475; background: #e9e7fa; }
.membership-7[b-ott-dues] { color: #604d17; background: #f5eed6; }
.membership-unknown[b-ott-dues] { color: #63516f; background: #f1edf3; }
.dues-membership-period[b-ott-dues] { display: block; padding: .2rem .85rem; font-size: .62rem; color: #786c7f; font-weight: 400; }
.dues-advance-link[b-ott-dues] { padding: .25rem .85rem .65rem; border: 0; background: transparent; color: #792da4; font-size: .68rem; font-weight: 750; }
.dues-advance-link:hover[b-ott-dues] { text-decoration: underline; }
.status-partial[b-ott-dues] { color: #185b58; background: #def3ef; border-color: #a3cfca; }
.status-credit[b-ott-dues] { color: #205b83; background: #e2f1fc; border-color: #b0ccdf; }
.dues-dot-partial[b-ott-dues] { background: #def3ef; border-color: #a3cfca; }
.dues-dot-credit[b-ott-dues] { background: #e2f1fc; border-color: #b0ccdf; }
.dues-dot-zero[b-ott-dues] { background: #f8f6f9; border-color: #ddd6e1; }
.dues-dot-future[b-ott-dues] { background: #f8f6f9; border-color: #ddd6e1; }
.dues-cell[b-ott-dues] { position: relative; }
.dues-cell + .dues-cell[b-ott-dues] { margin-top: .3rem; }
.dues-progress[b-ott-dues] { position: absolute; left: 12.5%; bottom: .2rem; height: 3px; width: 75%; border-radius: 3px; background: #00000018; overflow: hidden; }
.dues-progress[b-ott-dues]::before { content: ''; display: block; width: var(--paid); height: 100%; background: currentColor; }
.dues-month-total[b-ott-dues] { display: block; margin-top: .35rem; font-size: .65rem; text-align: center; }
.dues-totals[b-ott-dues] { padding: .9rem 1.5rem; border-top: 1px solid #eee8f1; color: #756a7c; background: #fff; font-size: .75rem; }
.dues-totals h3[b-ott-dues] { margin: 0 0 .65rem; font-size: .8rem; font-weight: 750; }
.dues-total-values[b-ott-dues] { display: flex; flex-wrap: wrap; gap: .75rem 1.5rem; margin: 0; }
.dues-total-values dt[b-ott-dues] { font-weight: 500; }
.dues-total-values dd[b-ott-dues] { margin: .2rem 0 0; color: #3b2945; font-weight: 700; }
.dues-totals p[b-ott-dues] { margin: .75rem 0 0; font-size: .68rem; }
.dues-page :is(button,input,select):focus-visible[b-ott-dues] { outline: 3px solid #9450c6; outline-offset: 2px; }
.dues-matrix-scroll:focus-visible[b-ott-dues] { outline: 3px solid #9450c6; outline-offset: 2px; }
@media (max-width: 640px) {
    .dues-totals[b-ott-dues] { padding-left: 1rem; padding-right: 1rem; }
}

/* Live ledger only: legacy MembershipDues keeps the shared b-ott-dues rules. */
.dues-page--warm[b-ott-dues] { width: 100%; margin: 0; transform: none; color: var(--ott-ink); }
.dues-page--warm .dues-heading[b-ott-dues] { align-items: flex-start; flex-wrap: wrap; margin-bottom: 1rem; }
.dues-page--warm .dues-heading h1[b-ott-dues] { color: var(--ott-ink); font-size: var(--ott-text-title); font-weight: 600; }
.dues-page--warm .dues-heading p[b-ott-dues] { color: var(--ott-muted); }
.dues-page--warm .dues-heading .dues-kicker[b-ott-dues] { color: var(--ott-accent); font-size: var(--ott-text-small); font-weight: 600; }
.dues-page--warm .year-switcher[b-ott-dues] { border-color: var(--ott-control-border); border-radius: var(--ott-radius-control); background: var(--ott-surface); color: var(--ott-ink); box-shadow: none; backdrop-filter: none; }
.dues-page--warm .year-switcher button[b-ott-dues] { min-width: var(--ott-target); min-height: var(--ott-target); color: var(--ott-accent); }
.dues-page--warm .year-switcher strong[b-ott-dues] { min-width: 0; padding: 0; }
.dues-page--warm .year-input[b-ott-dues] { width: 4rem; min-height: var(--ott-target); padding: 0; border: 0; color: inherit; background: transparent; font: inherit; text-align: center; appearance: textfield; }
.dues-page--warm .year-input[b-ott-dues]::-webkit-inner-spin-button { appearance: none; }
.dues-page--warm .dues-overview[b-ott-dues] { margin: 0 0 1rem; }
.dues-page--warm .dues-overview h2[b-ott-dues] { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.dues-page--warm .dues-overview-values[b-ott-dues] { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; overflow: hidden; border: 1px solid var(--ott-line); border-radius: var(--ott-radius-summary); background: var(--ott-surface); }
.dues-page--warm .dues-overview-values > div[b-ott-dues] { min-width: 0; padding: .625rem 1rem; border-right: 1px solid var(--ott-line); }
.dues-page--warm .dues-overview-values > div:last-child[b-ott-dues] { border-right: 0; }
.dues-page--warm .dues-overview-values dt[b-ott-dues] { color: var(--ott-muted); font-size: var(--ott-text-label); font-weight: 400; }
.dues-page--warm .dues-overview-values dd[b-ott-dues] { margin: .125rem 0 0; font-size: 1.125rem; font-weight: 600; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.dues-page--warm .dues-overview-balance[b-ott-dues] { background: var(--ott-due-surface); box-shadow: inset 3px 0 var(--ott-accent); color: var(--ott-accent); }
.dues-page--warm .dues-overview-balance[data-state="settled"][b-ott-dues] { color: var(--ott-positive); background: var(--ott-positive-surface); box-shadow: inset 3px 0 var(--ott-positive); }
.dues-page--warm .dues-card[b-ott-dues] { min-height: 0; overflow: hidden; background: var(--ott-surface); color: var(--ott-ink); }
.dues-page--warm .dues-toolbar[b-ott-dues] { align-items: center; flex-direction: row; flex-wrap: wrap; padding: .75rem 1rem; gap: .5rem 1rem; border-color: var(--ott-line); background: var(--ott-surface); }
.dues-page--warm .dues-summary[b-ott-dues] { gap: .125rem; flex: 1 0 10rem; min-width: 0; }
.dues-page--warm .dues-summary strong[b-ott-dues] { font-size: 1rem; font-weight: 600; }
.dues-page--warm .dues-summary span[b-ott-dues] { color: var(--ott-muted); font-size: var(--ott-text-label); }
.dues-page--warm .dues-tools[b-ott-dues] { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: .5rem; flex: 2 1 28rem; min-width: 0; }
.dues-page--warm .filter-search[b-ott-dues] { min-width: 0; }
.dues-page--warm .filter-search > label[b-ott-dues] { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.dues-page--warm .dues-options[open][b-ott-dues] { grid-column: 1 / -1; }
.dues-page--warm summary[b-ott-dues] { min-height: var(--ott-target); align-content: center; cursor: pointer; color: var(--ott-muted); font-size: var(--ott-text-small); font-weight: 500; }
.dues-page--warm .dues-options > summary[b-ott-dues] { padding: .5rem .75rem; border: 1px solid var(--ott-control-border); border-radius: var(--ott-radius-button); color: var(--ott-ink); white-space: nowrap; }
.dues-page--warm .dues-filter-active[b-ott-dues] { color: var(--ott-accent); }
.dues-page--warm .dues-filters[b-ott-dues] { width: 100%; grid-template-columns: repeat(3, minmax(0, 1fr)) 6rem; padding-top: .75rem; }
.dues-page--warm .dues-filters label[b-ott-dues] { color: var(--ott-muted); font-size: var(--ott-text-label); font-weight: 500; }
.dues-page--warm .dues-tools :is(.form-control, .form-select)[b-ott-dues] { min-height: var(--ott-target); border-color: var(--ott-control-border); background-color: var(--ott-surface); color: var(--ott-ink); font-size: var(--ott-text); }
.dues-page--warm .dues-help[b-ott-dues] { padding: 0 1rem; border-bottom: 1px solid var(--ott-line); }
.dues-page--warm .dues-legend[b-ott-dues] { padding: 0 0 .5rem; gap: .375rem 1rem; color: var(--ott-muted); font-size: var(--ott-text-label); border: 0; }
.dues-page--warm .dues-legend i[b-ott-dues] { border: 0; background: var(--ott-muted); }
.dues-page--warm .dues-legend .legend-paid[b-ott-dues] { background: var(--ott-positive); }
.dues-page--warm .dues-legend .legend-late[b-ott-dues] { background: var(--ott-warning); }
.dues-page--warm .dues-legend .legend-overdue[b-ott-dues] { background: var(--ott-negative); }
.dues-page--warm .dues-legend .dues-dot-partial[b-ott-dues], .dues-page--warm .dues-legend .dues-dot-credit[b-ott-dues] { background: var(--ott-info); }
.dues-page--warm .dues-legend .legend-due[b-ott-dues] { background: var(--ott-due); }
.dues-page--warm .dues-legend .dues-dot-future[b-ott-dues] { background: var(--ott-future); }
.dues-page--warm .dues-help-copy[b-ott-dues] { margin: 0 0 .75rem; color: var(--ott-muted); font-size: var(--ott-text-label); }
.dues-page--warm .dues-matrix-scroll[b-ott-dues] { max-height: 70dvh; max-width: 100%; overflow: auto; scrollbar-color: var(--ott-control-border) var(--ott-background); }
.dues-page--warm .dues-matrix[b-ott-dues] { width: 100%; min-width: 1056px; table-layout: fixed; font-size: var(--ott-text-small); }
.dues-page--warm .dues-matrix :is(th, td)[b-ott-dues] { border-color: var(--ott-line); }
.dues-page--warm .dues-matrix thead th[b-ott-dues] { min-width: 0; padding: .5rem .25rem; z-index: var(--ott-layer-name); background: var(--ott-background); color: var(--ott-muted); font-size: var(--ott-text-label); font-weight: 500; }
.dues-page--warm .dues-matrix .member-column[b-ott-dues] { width: 242px; min-width: 242px; max-width: 242px; padding: .25rem .5rem; z-index: var(--ott-layer-name); background: var(--ott-surface); box-shadow: 1px 0 0 var(--ott-line); }
.dues-page--warm .dues-matrix thead .member-column[b-ott-dues] { z-index: var(--ott-layer-header); padding: .5rem .75rem; background: var(--ott-background); }
.dues-page--warm .dues-person-heading[b-ott-dues] { display: flex; gap: .25rem; align-items: center; min-width: 0; }
.dues-page--warm .dues-person-link[b-ott-dues] { display: flex; flex-direction: column; justify-content: center; flex: 1; min-width: 0; max-width: 100%; min-height: var(--ott-target); padding: 0 .25rem; border: 0; color: var(--ott-ink); background: transparent; font: inherit; text-align: left; white-space: normal; }
.dues-page--warm .dues-person-name[b-ott-dues], .dues-page--warm .dues-person-type[b-ott-dues] { display: block; width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dues-page--warm .dues-person-name[b-ott-dues] { font-weight: 600; }
.dues-page--warm .dues-person-type[b-ott-dues] { margin-top: .125rem; color: var(--ott-muted); font-size: var(--ott-text-label); font-weight: 400; }
.dues-page--warm .dues-person-link:hover .dues-person-name[b-ott-dues] { text-decoration: underline; }
.dues-page--warm .dues-advance-link[b-ott-dues] { flex: 0 0 var(--ott-target); width: var(--ott-target); min-height: var(--ott-target); padding: 0; border: 1px solid var(--ott-line); border-radius: var(--ott-radius-button); background: transparent; color: var(--ott-accent); font-size: 1.25rem; text-align: center; }
.dues-page--warm .dues-matrix tbody td[b-ott-dues] { padding: .25rem; border-right: 0; background: var(--ott-surface); }
.dues-page--warm .due-table-cell[b-ott-dues] { min-height: 3.25rem; height: 3.25rem; }
.dues-page--warm .due-cell-button[b-ott-dues] { position: relative; display: flex; flex-direction: row; align-items: center; justify-content: center; min-height: var(--ott-target); padding: .25rem .125rem; gap: .25rem; border: 1px solid transparent; border-radius: .375rem; transition: border-color var(--ott-motion-duration); }
.dues-page--warm .due-cell-button:not(:disabled):hover[b-ott-dues] { transform: none; filter: none; box-shadow: none; border-color: currentColor; }
.dues-page--warm .cell-status-mark[b-ott-dues] { width: auto; height: auto; flex: 0 0 auto; border: 0; border-radius: 0; color: inherit; background: transparent; font-size: var(--ott-text-small); font-weight: 600; }
.dues-page--warm .cell-copy[b-ott-dues] { align-items: center; text-align: center; }
.dues-page--warm .cell-copy strong[b-ott-dues] { font-size: var(--ott-text-label); font-weight: 500; font-variant-numeric: tabular-nums; }
.dues-page--warm .status-paid[b-ott-dues] { color: var(--ott-positive); background: var(--ott-positive-surface); }
.dues-page--warm .status-paid-late[b-ott-dues] { color: var(--ott-warning); background: var(--ott-warning-surface); }
.dues-page--warm .status-overdue[b-ott-dues] { color: var(--ott-negative); background: var(--ott-negative-surface); }
.dues-page--warm .status-partial[b-ott-dues], .dues-page--warm .status-credit[b-ott-dues] { color: var(--ott-info); background: var(--ott-info-surface); }
.dues-page--warm .status-due[b-ott-dues] { color: var(--ott-due); background: var(--ott-due-surface); }
.dues-page--warm .dues-future[b-ott-dues] { color: var(--ott-future); background: var(--ott-future-surface); }
.dues-page--warm .not-applicable[b-ott-dues] { display: inline-flex; align-items: center; justify-content: center; min-height: var(--ott-target); min-width: var(--ott-target); color: var(--ott-muted); font-size: var(--ott-text-label); font-weight: 400; }
.dues-page--warm .dues-mobile-month[b-ott-dues] { display: none; }
.dues-page--warm .dues-progress[b-ott-dues] { position: absolute; left: 12.5%; bottom: .125rem; height: 2px; width: 75%; background: var(--ott-line); overflow: hidden; }
.dues-page--warm .dues-progress[b-ott-dues]::before { content: ''; display: block; width: var(--paid); height: 100%; background: currentColor; }
.dues-page--warm .dues-month-total[b-ott-dues] { display: block; font-size: var(--ott-text-label); text-align: center; }
.dues-page--warm :is(.dues-empty-state, .dues-loading)[b-ott-dues] { color: var(--ott-muted); }
.dues-page--warm .dues-empty-state > span[b-ott-dues] { color: var(--ott-accent); }
.dues-page--warm .loading-mark[b-ott-dues] { border-color: var(--ott-line); border-top-color: var(--ott-accent); }
.dues-page--warm .dues-pagination[b-ott-dues] { flex-wrap: wrap; color: var(--ott-muted); border-color: var(--ott-line); padding: .5rem 1rem; }
.dues-page--warm .dues-pagination .btn[b-ott-dues] { min-height: var(--ott-target); background: var(--ott-surface); color: var(--ott-ink); border-color: var(--ott-control-border); font-weight: 500; }
.dues-page--warm .dues-totals[b-ott-dues] { padding: .75rem 1rem; color: var(--ott-muted); border-color: var(--ott-line); background: var(--ott-surface); }
.dues-page--warm .dues-totals h3[b-ott-dues] { margin: 0 0 .375rem; font-size: var(--ott-text-label); font-weight: 500; }
.dues-page--warm .dues-total-values[b-ott-dues] { display: flex; flex-wrap: wrap; gap: .375rem 1.5rem; margin: 0; }
.dues-page--warm .dues-total-values > div[b-ott-dues] { display: flex; align-items: baseline; flex-wrap: wrap; gap: .25rem .5rem; }
.dues-page--warm .dues-total-values dd[b-ott-dues] { margin: 0; color: var(--ott-ink); font-weight: 600; font-variant-numeric: tabular-nums; }
.dues-page--warm .dues-totals p[b-ott-dues] { color: var(--ott-muted); font-size: var(--ott-text-label); }
.dues-page--warm .dues-calculation-help > summary[b-ott-dues] { font-size: var(--ott-text-label); }
.dues-page--warm :is(button, input, select, summary, [tabindex]):focus-visible[b-ott-dues] { outline: 3px solid var(--ott-focus); outline-offset: -3px; box-shadow: none; }
.dues-page--warm :is(button, input, select):disabled[b-ott-dues] { opacity: 1; color: var(--ott-muted); cursor: default; }
.dues-page--warm .dues-claim-note[b-ott-dues] { width: min(24rem, calc(100vw - 2rem)); max-height: calc(100dvh - 2rem); padding: 1rem; border: 1px solid var(--ott-control-border); border-radius: var(--ott-radius-control); color: var(--ott-ink); background: var(--ott-surface); font-size: var(--ott-text-small); overflow: auto; }
.dues-page--warm .dues-claim-note header[b-ott-dues] { display: flex; align-items: center; justify-content: space-between; gap: .5rem; }
.dues-page--warm .dues-claim-note h2[b-ott-dues] { margin: 0; font-size: var(--ott-text-section); }
.dues-page--warm .dues-claim-note header button[b-ott-dues] { flex: 0 0 var(--ott-target); min-height: var(--ott-target); border: 1px solid var(--ott-control-border); border-radius: var(--ott-radius-button); color: var(--ott-ink); background: var(--ott-surface); font-size: 1.25rem; }
.dues-page--warm .dues-claim-note p[b-ott-dues] { margin: .75rem 0 0; line-height: 1.6; }
@media (max-width: 760px) {
    .dues-page--warm .dues-sort-label[b-ott-dues] { display: none; }
    .dues-page--warm .dues-heading[b-ott-dues] { gap: .5rem; }
    .dues-page--warm .dues-heading h1[b-ott-dues] { font-size: 1.6875rem; }
    .dues-page--warm .dues-heading > div:first-child > p:last-child[b-ott-dues] { display: none; }
    .dues-page--warm .dues-toolbar[b-ott-dues] { padding: .5rem .75rem; }
    .dues-page--warm .dues-tools[b-ott-dues] { flex-basis: 100%; }
    .dues-page--warm .dues-summary strong[b-ott-dues] { display: none; }
    .dues-page--warm .dues-filters[b-ott-dues] { grid-template-columns: minmax(0, 1fr); }
    .dues-page--warm .dues-tools :is(.form-control, .form-select)[b-ott-dues] { font-size: 1rem; }
    .dues-page--warm .dues-overview-values > div[b-ott-dues] { padding: .5rem; }
    .dues-page--warm .dues-overview-values dt[b-ott-dues] { min-height: 2.5em; line-height: 1.25; }
    .dues-page--warm .dues-overview-values dd[b-ott-dues] { margin: .25rem 0 0; font-size: 1rem; }
    .dues-page--warm .dues-help[b-ott-dues] { padding: 0 .75rem; }
    .dues-page--warm .dues-matrix-scroll[b-ott-dues] { max-height: none; overflow: visible; }
    .dues-page--warm .dues-matrix[b-ott-dues] { display: block; min-width: 0; width: 100%; }
    /* Explicit table roles retain row/cell semantics when the visual layout becomes cards. */
    .dues-page--warm .dues-matrix thead[b-ott-dues] { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
    .dues-page--warm .dues-matrix tbody[b-ott-dues] { display: grid; gap: .75rem; padding: .5rem .75rem; }
    .dues-page--warm .dues-matrix tbody tr[b-ott-dues] { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .375rem; padding: .5rem; border: 1px solid var(--ott-line); border-radius: var(--ott-radius-control); }
    .dues-page--warm .dues-matrix tbody .member-column[b-ott-dues] { position: static; grid-column: 1 / -1; width: auto; min-width: 0; max-width: none; padding: 0 0 .375rem; border: 0; box-shadow: none; }
    .dues-page--warm .dues-matrix tbody td[b-ott-dues] { display: flex; flex-direction: column; align-items: stretch; min-width: 0; padding: 0; border: 0; height: auto; }
    .dues-page--warm .dues-mobile-month[b-ott-dues] { display: block; margin: 0 0 .125rem; color: var(--ott-muted); font-size: var(--ott-text-label); font-weight: 400; text-align: center; }
    .dues-page--warm .due-cell-button[b-ott-dues] { width: 100%; min-width: 0; gap: .125rem; }
    .dues-page--warm .dues-totals[b-ott-dues] { padding: .5rem .75rem; }
}
@media (prefers-reduced-motion: reduce) { .dues-page--warm .loading-mark[b-ott-dues] { animation: none; } }
/* /Components/Shared/OttDatePicker.razor.rz.scp.css */
.ott-date-picker[b-j3dqxln9c0] {
    position: relative;
    width: 100%;
    font-family: var(--ott-font);
}

.date-trigger.form-control[b-j3dqxln9c0] {
    display: flex;
    width: 100%;
    min-height: var(--ott-target);
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.55rem 0.8rem;
    border: 1px solid var(--ott-control-border);
    border-radius: var(--ott-radius-control);
    background: var(--ott-surface);
    color: var(--ott-ink);
    text-align: left;
    transition: border-color var(--ott-motion-duration) var(--ott-motion-easing);
}

.date-trigger.form-control:hover:not(:disabled)[b-j3dqxln9c0] {
    border-color: var(--ott-control-border);
    background: var(--ott-background);
}

.date-trigger.form-control:focus[b-j3dqxln9c0],
.date-trigger.form-control:focus-visible[b-j3dqxln9c0] {
    border-color: var(--ott-focus);
    box-shadow: none;
    outline: 3px solid var(--ott-focus);
    outline-offset: 3px;
}

.date-trigger.form-control.invalid[b-j3dqxln9c0] {
    border-color: var(--ott-negative);
    background: var(--ott-negative-surface);
    box-shadow: none;
}

.date-trigger:disabled[b-j3dqxln9c0] {
    cursor: not-allowed;
    opacity: 1;
    color: var(--ott-muted);
    background-color: var(--ott-disabled-surface);
}

.date-value[b-j3dqxln9c0] {
    overflow: hidden;
    font-size: 0.86rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.date-value.is-placeholder[b-j3dqxln9c0] {
    color: var(--ott-muted);
}

.date-icon[b-j3dqxln9c0] {
    width: 1.05rem;
    height: 1.05rem;
    flex: 0 0 1.05rem;
    fill: none;
    stroke: var(--ott-muted);
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.75;
}

.date-popover[b-j3dqxln9c0] {
    position: fixed;
    z-index: 1400;
    top: 0.5rem;
    left: 0.5rem;
    width: min(20rem, calc(100vw - 1.5rem));
    max-height: calc(100dvh - 1rem);
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    border: 1px solid var(--ott-line);
    border-radius: 1rem;
    background: var(--ott-surface);
    box-shadow: var(--ott-dialog-shadow);
    color: var(--ott-ink);
}

.date-popover[b-j3dqxln9c0]::backdrop {
    background: transparent;
}

.calendar-header[b-j3dqxln9c0] {
    display: grid;
    grid-template-columns: 2.2rem minmax(0, 1fr) 2.2rem;
    align-items: center;
    gap: 0.35rem;
    padding: 0.8rem;
    background: var(--ott-sidebar);
    color: var(--ott-surface);
}

.calendar-period-selectors[b-j3dqxln9c0] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.3rem;
}

.calendar-period-selectors select[b-j3dqxln9c0] {
    min-width: 0;
    height: 2.2rem;
    padding: 0.25rem 1.55rem 0.25rem 0.55rem;
    border: 1px solid var(--ott-sidebar-muted);
    border-radius: 0.6rem;
    background-color: rgba(255, 255, 255, 0.08);
    color: var(--ott-surface);
    font-size: 0.76rem;
    font-weight: 500;
}

.calendar-period-selectors select:focus[b-j3dqxln9c0] {
    border-color: rgba(255, 255, 255, 0.5);
    outline: 3px solid var(--ott-focus-on-dark);
}

.calendar-period-selectors option[b-j3dqxln9c0] {
    background: var(--ott-surface);
    color: var(--ott-ink);
}

.calendar-navigation[b-j3dqxln9c0] {
    display: grid;
    width: 2.2rem;
    height: 2.2rem;
    padding: 0;
    place-items: center;
    border: 1px solid var(--ott-sidebar-muted);
    border-radius: 0.65rem;
    background: rgba(255, 255, 255, 0.08);
    color: var(--ott-surface);
}

.calendar-navigation:hover:not(:disabled)[b-j3dqxln9c0] {
    background: rgba(255, 255, 255, 0.18);
}

.calendar-navigation:focus-visible[b-j3dqxln9c0],
.calendar-day:focus-visible[b-j3dqxln9c0],
.calendar-footer button:focus-visible[b-j3dqxln9c0] {
    outline: 3px solid var(--ott-focus);
    outline-offset: 1px;
}

.calendar-navigation:focus-visible[b-j3dqxln9c0] { outline-color: var(--ott-focus-on-dark); }

.calendar-navigation:disabled[b-j3dqxln9c0] {
    opacity: 0.35;
}

.calendar-navigation svg[b-j3dqxln9c0] {
    width: 1rem;
    height: 1rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 2;
}

.weekday-row[b-j3dqxln9c0],
.calendar-grid[b-j3dqxln9c0] {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
}

.weekday-row[b-j3dqxln9c0] {
    padding: 0.75rem 0.75rem 0.35rem;
    color: var(--ott-muted);
    font-size: var(--ott-text-label);
    font-weight: 500;
    letter-spacing: 0.025em;
    text-align: center;
    text-transform: uppercase;
}

.calendar-grid[b-j3dqxln9c0] {
    gap: 0.16rem;
    padding: 0 0.75rem 0.75rem;
}

.calendar-day[b-j3dqxln9c0] {
    position: relative;
    display: grid;
    aspect-ratio: 1;
    min-width: 0;
    padding: 0;
    place-items: center;
    border: 0;
    border-radius: 0.62rem;
    background: transparent;
    color: var(--ott-ink);
    font-size: 0.76rem;
    font-weight: 500;
}

.calendar-day:hover:not(:disabled)[b-j3dqxln9c0] {
    background: var(--ott-background);
    color: var(--ott-ink);
}

.calendar-day.is-adjacent[b-j3dqxln9c0] {
    color: var(--ott-muted);
}

.calendar-day.is-today[b-j3dqxln9c0]::after {
    position: absolute;
    right: 38%;
    bottom: 0.28rem;
    left: 38%;
    height: 0.15rem;
    border-radius: 999px;
    background: var(--ott-accent);
    content: "";
}

.calendar-day.is-selected[b-j3dqxln9c0] {
    background: var(--ott-accent);
    box-shadow: none;
    color: var(--ott-surface);
}

.calendar-day.is-selected[b-j3dqxln9c0]::after {
    background: var(--ott-surface);
}

.calendar-day:disabled[b-j3dqxln9c0] {
    color: var(--ott-muted);
    cursor: not-allowed;
}

.calendar-footer[b-j3dqxln9c0] {
    display: flex;
    min-height: 3.15rem;
    align-items: center;
    justify-content: flex-end;
    gap: 0.4rem;
    padding: 0.55rem 0.75rem;
    border-top: 1px solid var(--ott-line);
    background: var(--ott-background);
}

.calendar-footer button[b-j3dqxln9c0] {
    min-height: 2rem;
    padding: 0.35rem 0.65rem;
    border-radius: 0.55rem;
    font-size: 0.7rem;
    font-weight: 500;
}

.calendar-text-action[b-j3dqxln9c0] {
    margin-right: auto;
    border: 0;
    background: transparent;
    color: var(--ott-muted);
}

.calendar-today-action[b-j3dqxln9c0] {
    border: 1px solid var(--ott-control-border);
    background: var(--ott-background);
    color: var(--ott-ink);
}

.calendar-footer button:hover:not(:disabled)[b-j3dqxln9c0] {
    border-color: var(--ott-control-border);
    background: var(--ott-line);
    color: var(--ott-ink);
}

.calendar-footer button:disabled[b-j3dqxln9c0] {
    cursor: not-allowed;
    opacity: 0.42;
}

@media (max-width: 760px) {
    .date-value[b-j3dqxln9c0] { font-size: 1rem; }
}

@media (pointer: coarse) {
    .date-popover[b-j3dqxln9c0] { width: min(24rem, calc(100vw - 1rem)); }
    .calendar-header[b-j3dqxln9c0] { grid-template-columns: 2.75rem minmax(0, 1fr) 2.75rem; padding: .5rem; gap: .25rem; }
    .calendar-navigation[b-j3dqxln9c0] { width: var(--ott-target); height: var(--ott-target); }
    .calendar-period-selectors select[b-j3dqxln9c0] { height: var(--ott-target); font-size: 1rem; }
    .calendar-grid[b-j3dqxln9c0] { gap: .125rem; padding: 0 .5rem .5rem; }
    .calendar-day[b-j3dqxln9c0], .calendar-footer button[b-j3dqxln9c0] { min-height: var(--ott-target); }
}
/* /Components/Shared/UserAvatar.razor.rz.scp.css */
.user-avatar[b-ytgnse5ut4] {
    display: inline-grid;
    flex: 0 0 auto;
    place-items: center;
    overflow: hidden;
    border: 1px solid var(--ott-control-border);
    border-radius: 50%;
    background: var(--ott-sidebar-selected);
    color: var(--ott-sidebar-text);
    font-weight: 600;
    letter-spacing: 0.035em;
}

.user-avatar img[b-ytgnse5ut4] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.user-avatar-small[b-ytgnse5ut4] {
    width: 2.35rem;
    height: 2.35rem;
    font-size: 0.74rem;
}

.user-avatar-medium[b-ytgnse5ut4] {
    width: 3.25rem;
    height: 3.25rem;
    font-size: 0.95rem;
}

.user-avatar-large[b-ytgnse5ut4] {
    width: 7rem;
    height: 7rem;
    font-size: 1.8rem;
}
