/* /Components/Account/Pages/ForgotPassword.razor.rz.scp.css */
.account-help-page[b-qp6508rcdf] {
    min-height: calc(100vh - 64px);
    display: grid;
    align-items: center;
    padding: clamp(24px, 5vw, 56px);
    color: var(--mud-palette-text-primary);
    background:
        var(--sk-login-page-radial-bg),
        var(--sk-login-page-gradient-bg);
}

.account-help-shell[b-qp6508rcdf] {
    width: min(1040px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .85fr);
    overflow: hidden;
    border-radius: 8px;
    background: var(--sk-login-surface);
    box-shadow: var(--sk-login-shell-shadow);
}

.account-help-panel[b-qp6508rcdf] {
    position: relative;
    min-height: 560px;
    display: flex;
    align-items: flex-end;
    padding: clamp(32px, 5vw, 56px);
    background:
        var(--sk-login-panel-bg),
        var(--sk-login-panel-accent-bg);
    color: var(--sk-login-text-inverse);
}

.account-help-panel[b-qp6508rcdf]::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, var(--sk-login-panel-grid-line) 1px, transparent 1px),
        linear-gradient(180deg, var(--sk-login-panel-grid-line) 1px, transparent 1px);
    background-size: 48px 48px;
    mask-image: var(--sk-login-panel-grid-mask);
    opacity: .42;
}

.account-help-panel__content[b-qp6508rcdf] {
    position: relative;
    z-index: 1;
    max-width: 540px;
}

.account-help-mark[b-qp6508rcdf] {
    width: 56px;
    height: 56px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    color: var(--sk-login-text-inverse);
    background: var(--sk-login-brand-mark-bg);
    box-shadow: var(--sk-login-brand-mark-shadow);
    margin-bottom: 26px;
}

.account-help-eyebrow[b-qp6508rcdf],
.account-help-card__eyebrow[b-qp6508rcdf] {
    color: var(--sk-login-accent);
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.account-help-title[b-qp6508rcdf] {
    color: var(--sk-login-text-inverse);
    max-width: 560px;
    line-height: 1.04;
    letter-spacing: 0;
    margin: 10px 0 18px;
}

.account-help-copy[b-qp6508rcdf] {
    color: var(--sk-login-text-inverse-soft);
    max-width: 520px;
    line-height: 1.65;
}

.account-help-highlights[b-qp6508rcdf] {
    display: grid;
    gap: 14px;
    margin-top: 34px;
}

.account-help-highlights > div[b-qp6508rcdf] {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--sk-shell-text-soft);
}

.account-help-highlights[b-qp6508rcdf]  .mud-icon-root {
    color: var(--sk-login-accent);
}

.account-help-form-panel[b-qp6508rcdf] {
    display: grid;
    align-items: center;
    padding: clamp(28px, 5vw, 56px);
    background: var(--sk-login-surface);
}

.account-help-card[b-qp6508rcdf] {
    width: 100%;
    max-width: 440px;
    margin: 0 auto;
}

.account-help-card__header[b-qp6508rcdf] {
    margin-bottom: 26px;
}

.account-help-card__title[b-qp6508rcdf] {
    color: var(--sk-login-text-strong);
    font-weight: 800;
    margin: 8px 0 8px;
}

.account-help-card__subtitle[b-qp6508rcdf] {
    color: var(--sk-login-text-muted);
    line-height: 1.55;
}

.account-help-field-group[b-qp6508rcdf] {
    margin-top: 16px;
    margin-bottom: 22px;
}

.account-help-validation[b-qp6508rcdf] {
    margin: 0 0 12px;
    padding-left: 18px;
}

.account-help-validation-message[b-qp6508rcdf] {
    display: block;
    margin-top: 6px;
    font-size: .88rem;
}

.account-help-card[b-qp6508rcdf]  .account-help-submit {
    min-height: 48px;
    margin-top: 0;
    border-radius: 8px;
    text-transform: none;
    font-weight: 800;
    background: var(--sk-login-submit-bg) !important;
    color: var(--sk-login-submit-text) !important;
    box-shadow: var(--sk-login-submit-shadow);
}

.account-help-secondary-links[b-qp6508rcdf] {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px 18px;
    margin-top: 18px;
    text-align: center;
}

.account-help-secondary-links a[b-qp6508rcdf] {
    color: var(--sk-login-link);
    font-weight: 700;
    text-decoration: none;
}

.account-help-secondary-links a:hover[b-qp6508rcdf] {
    color: var(--sk-login-accent);
    text-decoration: none;
}

@media (max-width: 960px) {
    .account-help-page[b-qp6508rcdf] {
        min-height: auto;
        padding: 20px;
    }

    .account-help-shell[b-qp6508rcdf] {
        grid-template-columns: 1fr;
    }

    .account-help-panel[b-qp6508rcdf] {
        min-height: auto;
        padding: 32px;
    }
}

@media (max-width: 600px) {
    .account-help-page[b-qp6508rcdf] {
        padding: 12px;
    }

    .account-help-panel[b-qp6508rcdf],
    .account-help-form-panel[b-qp6508rcdf] {
        padding: 24px;
    }

    .account-help-title[b-qp6508rcdf] {
        font-size: 2.1rem;
    }
}
/* /Components/Account/Pages/Login.razor.rz.scp.css */
.login-page[b-cw697o7iv0] {
    min-height: calc(100vh - 64px);
    display: grid;
    align-items: center;
    padding: clamp(24px, 5vw, 56px);
    color: var(--mud-palette-text-primary);
    background:
        var(--sk-login-page-radial-bg),
        var(--sk-login-page-gradient-bg);
}

.login-shell[b-cw697o7iv0] {
    width: min(1120px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(380px, .95fr);
    overflow: hidden;
    border-radius: 8px;
    background: var(--sk-login-surface);
    box-shadow: var(--sk-login-shell-shadow);
}

.login-brand-panel[b-cw697o7iv0] {
    position: relative;
    min-height: 620px;
    display: flex;
    align-items: flex-end;
    padding: clamp(32px, 5vw, 56px);
    background:
        var(--sk-login-panel-bg),
        var(--sk-login-panel-accent-bg);
    color: var(--sk-login-text-inverse);
}

.login-brand-panel[b-cw697o7iv0]::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, var(--sk-login-panel-grid-line) 1px, transparent 1px),
        linear-gradient(180deg, var(--sk-login-panel-grid-line) 1px, transparent 1px);
    background-size: 48px 48px;
    mask-image: var(--sk-login-panel-grid-mask);
    opacity: .42;
}

.login-brand-panel__content[b-cw697o7iv0] {
    position: relative;
    z-index: 1;
    max-width: 560px;
}

.login-brand-mark[b-cw697o7iv0] {
    width: 56px;
    height: 56px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    color: var(--sk-login-text-inverse);
    background: var(--sk-login-brand-mark-bg);
    box-shadow: var(--sk-login-brand-mark-shadow);
    margin-bottom: 26px;
}

.login-eyebrow[b-cw697o7iv0],
.login-card__eyebrow[b-cw697o7iv0] {
    color: var(--sk-login-accent);
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.login-title[b-cw697o7iv0] {
    color: var(--sk-login-text-inverse);
    max-width: 560px;
    line-height: 1.04;
    letter-spacing: 0;
    margin: 10px 0 18px;
}

.login-copy[b-cw697o7iv0] {
    color: var(--sk-login-text-inverse-soft);
    max-width: 520px;
    line-height: 1.65;
}

.login-highlights[b-cw697o7iv0] {
    display: grid;
    gap: 14px;
    margin-top: 34px;
}

.login-highlights > div[b-cw697o7iv0] {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--sk-shell-text-soft);
}

.login-highlights[b-cw697o7iv0]  .mud-icon-root {
    color: var(--sk-login-accent);
}

.login-form-panel[b-cw697o7iv0] {
    display: grid;
    align-items: center;
    padding: clamp(28px, 5vw, 56px);
    background: var(--sk-login-surface);
}

.login-card[b-cw697o7iv0] {
    width: 100%;
    max-width: 440px;
    margin: 0 auto;
}

.login-card__header[b-cw697o7iv0] {
    margin-bottom: 26px;
}

.login-card__title[b-cw697o7iv0] {
    color: var(--sk-login-text-strong);
    font-weight: 800;
    margin: 8px 0 8px;
}

.login-card__subtitle[b-cw697o7iv0] {
    color: var(--sk-login-text-muted);
    line-height: 1.55;
}

.login-field[b-cw697o7iv0] {
    margin-top: 16px;
}

.login-validation[b-cw697o7iv0] {
    margin: 0 0 12px;
    padding-left: 18px;
}

.login-validation-message[b-cw697o7iv0] {
    display: block;
    margin-top: 6px;
    font-size: .88rem;
}

.login-options[b-cw697o7iv0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 18px 0 22px;
}

.login-remember[b-cw697o7iv0] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--sk-login-option-text);
    cursor: pointer;
    margin: 0;
}

.login-checkbox[b-cw697o7iv0] {
    width: 18px;
    height: 18px;
    accent-color: var(--sk-login-accent-muted);
}

.login-link[b-cw697o7iv0],
.login-secondary-links a[b-cw697o7iv0] {
    color: var(--sk-login-link);
    font-weight: 700;
    text-decoration: none;
}

.login-link:hover[b-cw697o7iv0],
.login-secondary-links a:hover[b-cw697o7iv0] {
    color: var(--sk-login-accent);
    text-decoration: none;
}

.login-submit[b-cw697o7iv0] {
    min-height: 48px;
    border-radius: 8px;
    text-transform: none;
    font-weight: 800;
    background: var(--sk-login-submit-bg) !important;
    color: var(--sk-login-submit-text) !important;
    box-shadow: var(--sk-login-submit-shadow);
}

.login-secondary-links[b-cw697o7iv0] {
    margin-top: 18px;
    text-align: center;
}

.login-divider[b-cw697o7iv0] {
    display: flex;
    align-items: center;
    gap: 14px;
    color: var(--sk-login-divider-text);
    margin: 28px 0 20px;
    font-size: .9rem;
}

.login-divider[b-cw697o7iv0]::before,
.login-divider[b-cw697o7iv0]::after {
    content: "";
    height: 1px;
    flex: 1;
    background: var(--sk-login-divider-line);
}

.login-external[b-cw697o7iv0]  .mud-button-root {
    border-radius: 8px;
    text-transform: none;
    min-height: 42px;
    margin: 0 8px 8px 0;
}

.login-external p[b-cw697o7iv0] {
    margin-bottom: 0;
}

@media (max-width: 960px) {
    .login-page[b-cw697o7iv0] {
        min-height: auto;
        padding: 20px;
    }

    .login-shell[b-cw697o7iv0] {
        grid-template-columns: 1fr;
    }

    .login-brand-panel[b-cw697o7iv0] {
        min-height: auto;
        padding: 32px;
    }

    .login-highlights[b-cw697o7iv0] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .login-page[b-cw697o7iv0] {
        padding: 12px;
    }

    .login-brand-panel[b-cw697o7iv0],
    .login-form-panel[b-cw697o7iv0] {
        padding: 24px;
    }

    .login-options[b-cw697o7iv0] {
        align-items: flex-start;
        flex-direction: column;
    }

    .login-title[b-cw697o7iv0] {
        font-size: 2.1rem;
    }
}
/* /Components/Account/Pages/ResendEmailConfirmation.razor.rz.scp.css */
.account-confirm-page[b-fept2tlp91] {
    min-height: calc(100vh - 64px);
    display: grid;
    align-items: center;
    padding: clamp(24px, 5vw, 56px);
    color: var(--mud-palette-text-primary);
    background:
        var(--sk-login-page-radial-bg),
        var(--sk-login-page-gradient-bg);
}

.account-confirm-shell[b-fept2tlp91] {
    width: min(1040px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .85fr);
    overflow: hidden;
    border-radius: 8px;
    background: var(--sk-login-surface);
    box-shadow: var(--sk-login-shell-shadow);
}

.account-confirm-panel[b-fept2tlp91] {
    position: relative;
    min-height: 560px;
    display: flex;
    align-items: flex-end;
    padding: clamp(32px, 5vw, 56px);
    background:
        var(--sk-login-panel-bg),
        var(--sk-login-panel-accent-bg);
    color: var(--sk-login-text-inverse);
}

.account-confirm-panel[b-fept2tlp91]::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, var(--sk-login-panel-grid-line) 1px, transparent 1px),
        linear-gradient(180deg, var(--sk-login-panel-grid-line) 1px, transparent 1px);
    background-size: 48px 48px;
    mask-image: var(--sk-login-panel-grid-mask);
    opacity: .42;
}

.account-confirm-panel__content[b-fept2tlp91] {
    position: relative;
    z-index: 1;
    max-width: 540px;
}

.account-confirm-mark[b-fept2tlp91] {
    width: 56px;
    height: 56px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    color: var(--sk-login-text-inverse);
    background: var(--sk-login-brand-mark-bg);
    box-shadow: var(--sk-login-brand-mark-shadow);
    margin-bottom: 26px;
}

.account-confirm-eyebrow[b-fept2tlp91],
.account-confirm-card__eyebrow[b-fept2tlp91] {
    color: var(--sk-login-accent);
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.account-confirm-title[b-fept2tlp91] {
    color: var(--sk-login-text-inverse);
    max-width: 560px;
    line-height: 1.04;
    letter-spacing: 0;
    margin: 10px 0 18px;
}

.account-confirm-copy[b-fept2tlp91] {
    color: var(--sk-login-text-inverse-soft);
    max-width: 520px;
    line-height: 1.65;
}

.account-confirm-highlights[b-fept2tlp91] {
    display: grid;
    gap: 14px;
    margin-top: 34px;
}

.account-confirm-highlights > div[b-fept2tlp91] {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--sk-shell-text-soft);
}

.account-confirm-highlights[b-fept2tlp91]  .mud-icon-root {
    color: var(--sk-login-accent);
}

.account-confirm-form-panel[b-fept2tlp91] {
    display: grid;
    align-items: center;
    padding: clamp(28px, 5vw, 56px);
    background: var(--sk-login-surface);
}

.account-confirm-card[b-fept2tlp91] {
    width: 100%;
    max-width: 440px;
    margin: 0 auto;
}

.account-confirm-card__header[b-fept2tlp91] {
    margin-bottom: 26px;
}

.account-confirm-card__title[b-fept2tlp91] {
    color: var(--sk-login-text-strong);
    font-weight: 800;
    margin: 8px 0 8px;
}

.account-confirm-card__subtitle[b-fept2tlp91] {
    color: var(--sk-login-text-muted);
    line-height: 1.55;
}

.account-confirm-field-group[b-fept2tlp91] {
    margin-top: 16px;
    margin-bottom: 22px;
}

.account-confirm-validation[b-fept2tlp91] {
    margin: 0 0 12px;
    padding-left: 18px;
}

.account-confirm-validation-message[b-fept2tlp91] {
    display: block;
    margin-top: 6px;
    font-size: .88rem;
}

.account-confirm-card[b-fept2tlp91]  .account-confirm-submit {
    min-height: 48px;
    margin-top: 0;
    border-radius: 8px;
    text-transform: none;
    font-weight: 800;
    background: var(--sk-login-submit-bg) !important;
    color: var(--sk-login-submit-text) !important;
    box-shadow: var(--sk-login-submit-shadow);
}

.account-confirm-secondary-links[b-fept2tlp91] {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px 18px;
    margin-top: 18px;
    text-align: center;
}

.account-confirm-secondary-links a[b-fept2tlp91] {
    color: var(--sk-login-link);
    font-weight: 700;
    text-decoration: none;
}

.account-confirm-secondary-links a:hover[b-fept2tlp91] {
    color: var(--sk-login-accent);
    text-decoration: none;
}

@media (max-width: 960px) {
    .account-confirm-page[b-fept2tlp91] {
        min-height: auto;
        padding: 20px;
    }

    .account-confirm-shell[b-fept2tlp91] {
        grid-template-columns: 1fr;
    }

    .account-confirm-panel[b-fept2tlp91] {
        min-height: auto;
        padding: 32px;
    }
}

@media (max-width: 600px) {
    .account-confirm-page[b-fept2tlp91] {
        padding: 12px;
    }

    .account-confirm-panel[b-fept2tlp91],
    .account-confirm-form-panel[b-fept2tlp91] {
        padding: 24px;
    }

    .account-confirm-title[b-fept2tlp91] {
        font-size: 2.1rem;
    }
}
/* /Components/Account/Pages/ResetPassword.razor.rz.scp.css */
.account-reset-page[b-rqf1n3lki6] {
    min-height: calc(100vh - 64px);
    display: grid;
    align-items: center;
    padding: clamp(24px, 5vw, 56px);
    color: var(--mud-palette-text-primary);
    background:
        var(--sk-login-page-radial-bg),
        var(--sk-login-page-gradient-bg);
}

.account-reset-shell[b-rqf1n3lki6] {
    width: min(1040px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .85fr);
    overflow: hidden;
    border-radius: 8px;
    background: var(--sk-login-surface);
    box-shadow: var(--sk-login-shell-shadow);
}

.account-reset-panel[b-rqf1n3lki6] {
    position: relative;
    min-height: 560px;
    display: flex;
    align-items: flex-end;
    padding: clamp(32px, 5vw, 56px);
    background:
        var(--sk-login-panel-bg),
        var(--sk-login-panel-accent-bg);
    color: var(--sk-login-text-inverse);
}

.account-reset-panel[b-rqf1n3lki6]::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, var(--sk-login-panel-grid-line) 1px, transparent 1px),
        linear-gradient(180deg, var(--sk-login-panel-grid-line) 1px, transparent 1px);
    background-size: 48px 48px;
    mask-image: var(--sk-login-panel-grid-mask);
    opacity: .42;
}

.account-reset-panel__content[b-rqf1n3lki6] {
    position: relative;
    z-index: 1;
    max-width: 540px;
}

.account-reset-mark[b-rqf1n3lki6] {
    width: 56px;
    height: 56px;
    display: grid;
    place-items: center;
    border-radius: 8px;
    color: var(--sk-login-text-inverse);
    background: var(--sk-login-brand-mark-bg);
    box-shadow: var(--sk-login-brand-mark-shadow);
    margin-bottom: 26px;
}

.account-reset-eyebrow[b-rqf1n3lki6],
.account-reset-card__eyebrow[b-rqf1n3lki6] {
    color: var(--sk-login-accent);
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.account-reset-title[b-rqf1n3lki6] {
    color: var(--sk-login-text-inverse);
    max-width: 560px;
    line-height: 1.04;
    letter-spacing: 0;
    margin: 10px 0 18px;
}

.account-reset-copy[b-rqf1n3lki6] {
    color: var(--sk-login-text-inverse-soft);
    max-width: 520px;
    line-height: 1.65;
}

.account-reset-highlights[b-rqf1n3lki6] {
    display: grid;
    gap: 14px;
    margin-top: 34px;
}

.account-reset-highlights > div[b-rqf1n3lki6] {
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--sk-shell-text-soft);
}

.account-reset-highlights[b-rqf1n3lki6]  .mud-icon-root {
    color: var(--sk-login-accent);
}

.account-reset-form-panel[b-rqf1n3lki6] {
    display: grid;
    align-items: center;
    padding: clamp(28px, 5vw, 56px);
    background: var(--sk-login-surface);
}

.account-reset-card[b-rqf1n3lki6] {
    width: 100%;
    max-width: 440px;
    margin: 0 auto;
}

.account-reset-card__header[b-rqf1n3lki6] {
    margin-bottom: 26px;
}

.account-reset-card__title[b-rqf1n3lki6] {
    color: var(--sk-login-text-strong);
    font-weight: 800;
    margin: 8px 0 8px;
}

.account-reset-card__subtitle[b-rqf1n3lki6] {
    color: var(--sk-login-text-muted);
    line-height: 1.55;
}

.account-reset-field-group[b-rqf1n3lki6] {
    margin-top: 16px;
    margin-bottom: 22px;
}

.account-reset-validation[b-rqf1n3lki6] {
    margin: 0 0 12px;
    padding-left: 18px;
}

.account-reset-validation-message[b-rqf1n3lki6] {
    display: block;
    margin-top: 6px;
    font-size: .88rem;
}

.account-reset-card[b-rqf1n3lki6]  .account-reset-submit {
    min-height: 48px;
    margin-top: 0;
    border-radius: 8px;
    text-transform: none;
    font-weight: 800;
    background: var(--sk-login-submit-bg) !important;
    color: var(--sk-login-submit-text) !important;
    box-shadow: var(--sk-login-submit-shadow);
}

@media (max-width: 960px) {
    .account-reset-page[b-rqf1n3lki6] {
        min-height: auto;
        padding: 20px;
    }

    .account-reset-shell[b-rqf1n3lki6] {
        grid-template-columns: 1fr;
    }

    .account-reset-panel[b-rqf1n3lki6] {
        min-height: auto;
        padding: 32px;
    }
}

@media (max-width: 600px) {
    .account-reset-page[b-rqf1n3lki6] {
        padding: 12px;
    }

    .account-reset-panel[b-rqf1n3lki6],
    .account-reset-form-panel[b-rqf1n3lki6] {
        padding: 24px;
    }

    .account-reset-title[b-rqf1n3lki6] {
        font-size: 2.1rem;
    }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* Shell layout, top bar, navigation drawer and collapse/expand behavior live in
   wwwroot/app.css because they rely on state classes applied to the <html> element
   (sk-nav-collapsed / sk-nav-open), which Blazor CSS isolation cannot scope.
   Only the in-layout error UI is styled here. */

#blazor-error-ui[b-9qx9nddc6i] {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

#blazor-error-ui .dismiss[b-9qx9nddc6i] {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.nav-shell[b-j9gvbqhlgi] {
    display: flex;
    flex-direction: column;
    min-height: 100%;
    height: 100%;
    padding: 18px 14px;
    box-sizing: border-box;
    color: var(--sk-shell-text);
    /* Match the previous MudBlazor-rendered menu, which inherited the MudBlazor
       typography family. Without this the SSR shell falls back to the body font. */
    font-family: var(--mud-typography-default-family), Roboto, Helvetica, Arial, sans-serif;
    /* Flat color: the top bar is a separate white surface now, so there is no
       longer a shared top-of-drawer color for a gradient to blend into. */
    background: var(--sk-shell-bg);
}

.nav-icon[b-j9gvbqhlgi] {
    display: block;
    width: 22px;
    height: 22px;
    fill: currentColor;
}

.nav-brand[b-j9gvbqhlgi] {
    display: flex;
    flex-direction: row;
    align-items: center;
    flex: 0 0 auto;
    gap: 10px;
    height: var(--sk-topbar-height, 56px);
    padding: 0 16px;
    /* Bleed out of .nav-shell's own padding so this is a full-bleed rectangle
       flush with the drawer's top/left/right edges - matching .app-topbar's
       height and edges exactly, so nothing shifts when the drawer collapses. */
    margin: -18px -14px 10px;
    box-sizing: border-box;
    background: #ffffff;
}

.nav-brand__logo[b-j9gvbqhlgi] {
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;
}

.nav-brand__logo[b-j9gvbqhlgi]  .navbar-brand,
.nav-brand__logo[b-j9gvbqhlgi]  a {
    margin: 0;
    padding: 0;
}

.nav-brand__logo[b-j9gvbqhlgi]  svg,
.nav-brand__logo[b-j9gvbqhlgi]  img {
    height: 34px;
    width: 100%;
    max-width: 280px;
    object-fit: contain;
}

.nav-brand__mark[b-j9gvbqhlgi] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border-radius: 8px;
    color: var(--sk-shell-bg-strong);
    background: var(--sk-shell-accent);
    box-shadow: var(--sk-shell-brand-shadow);
}

.nav-brand__mark .nav-icon[b-j9gvbqhlgi] {
    width: 26px;
    height: 26px;
}

.nav-menu[b-j9gvbqhlgi] {
    flex: 1;
    overflow-y: auto;
    padding: 2px 2px 12px;
}

.nav-section[b-j9gvbqhlgi] {
    margin-top: 18px;
}

.nav-section:first-child[b-j9gvbqhlgi] {
    margin-top: 8px;
}

.nav-section__label[b-j9gvbqhlgi] {
    display: block;
    color: var(--sk-shell-text-muted);
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
    padding: 0 12px 8px;
}

/* `NavLink` (Microsoft.AspNetCore.Components.Routing) renders its own root <a>,
   which does not carry this file's Blazor CSS-isolation scope attribute (only
   literal child markup passed as its ChildContent, e.g. .nav-link__icon/__text,
   does). Without ::deep these selectors never match the real element, and the
   unscoped .nav-link class from bootstrap.min.css (blue, 400-weight) wins instead. */
[b-j9gvbqhlgi] .nav-link {
    display: flex;
    align-items: center;
    min-height: 44px;
    margin: 3px 0;
    padding: 0 12px;
    border-radius: 8px;
    color: var(--sk-shell-text-soft);
    text-decoration: none;
    transition: background-color .16s ease, color .16s ease;
}

[b-j9gvbqhlgi] .nav-link:hover {
    color: var(--sk-shell-text);
    background: var(--sk-shell-hover-bg);
}

[b-j9gvbqhlgi] .nav-link.active {
    color: var(--sk-shell-text);
    background: var(--sk-shell-active-bg);
    box-shadow: inset 3px 0 0 var(--sk-shell-accent);
}

[b-j9gvbqhlgi] .nav-link.active .nav-link__text {
    font-weight: 500;
}

.nav-link__icon[b-j9gvbqhlgi] {
    display: inline-flex;
    align-items: center;
    min-width: 36px;
    color: var(--sk-shell-icon-muted);
}

[b-j9gvbqhlgi] .nav-link:hover .nav-link__icon,
[b-j9gvbqhlgi] .nav-link.active .nav-link__icon {
    color: var(--sk-shell-accent);
}

.nav-link__text[b-j9gvbqhlgi] {
    color: inherit;
    /* Match the old MudBlazor nav link: default weight for inactive links,
       bumped to 500 when active (see .nav-link.active .nav-link__text). */
    font-weight: var(--mud-typography-default-weight, 400);
    letter-spacing: 0;
}

.nav-footer[b-j9gvbqhlgi] {
    padding: 14px 4px 0;
    border-top: 1px solid var(--sk-shell-border);
}

.nav-footer form[b-j9gvbqhlgi] {
    margin: 0;
}

.nav-logout[b-j9gvbqhlgi] {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    min-height: 44px;
    padding: 0 12px;
    border: 1px solid var(--sk-shell-action-border);
    border-radius: 8px;
    color: var(--sk-shell-text-soft);
    background: var(--sk-shell-action-bg);
    font: inherit;
    font-weight: 800;
    cursor: pointer;
    transition: background-color .16s ease, border-color .16s ease, color .16s ease;
}

.nav-logout:hover[b-j9gvbqhlgi] {
    color: var(--sk-shell-text);
    border-color: var(--sk-shell-action-hover-border);
    background: var(--sk-shell-action-hover-bg);
}

.nav-logout__icon[b-j9gvbqhlgi] {
    display: inline-flex;
    align-items: center;
    color: var(--sk-shell-accent);
}

@media (max-width: 640.98px) {
    .nav-shell[b-j9gvbqhlgi] {
        min-height: 100dvh;
        height: 100dvh;
    }
}
