/* /Components/Account/Pages/AccessDenied.razor.rz.scp.css */
:root[b-wx2z8nupmh] {
    --ad-max-w: 720px;
}

.access-denied.container[b-wx2z8nupmh] {
    display: grid;
    place-items: center;
    min-height: min(72vh, 780px);
    padding: 2rem 1rem;
    text-align: center;
}

.access-denied__card[b-wx2z8nupmh] {
    width: min(100%, var(--ad-max-w));
    background: var(--surface-primary, #fff);
    border: 1px solid var(--border-primary, rgba(0, 0, 0, .08));
    border-radius: var(--radius-xl, 16px);
    box-shadow: var(--shadow-md, 0 10px 30px rgba(0, 0, 0, .06));
    padding: clamp(1.25rem, 2.5vw + 0.5rem, 2.25rem);
}

.access-denied__icon[b-wx2z8nupmh] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 88px;
    height: 88px;
    margin: 0 auto 1rem;
    border-radius: 50%;
    color: var(--error-color, #c62828);
    background: color-mix(in srgb, var(--error-color, #c62828) 10%, transparent);
}

@supports not (color: color-mix(in srgb, white 10%, black)) {
    .access-denied__icon[b-wx2z8nupmh] {
        background: rgba(198, 40, 40, 0.08);
    }
}

.access-denied__title[b-wx2z8nupmh] {
    font-size: clamp(1.5rem, 1.2rem + 1.5vw, 2rem);
    line-height: 1.2;
    margin: 0.25rem 0 0.25rem;
    color: var(--text-primary, #111827);
}

.access-denied__message[b-wx2z8nupmh] {
    margin: 0 0 1rem;
    color: var(--text-secondary, #374151);
}

.access-denied__actions[b-wx2z8nupmh] {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 0.25rem;
}

/* Buttons leverage project styles when present */
.btn[b-wx2z8nupmh] {
    border-radius: 10px;
}

.btn-primary[b-wx2z8nupmh] {
    background: var(--primary-color, #2563eb);
    border-color: var(--primary-color, #2563eb);
}

.btn-outline-secondary[b-wx2z8nupmh] {
    color: var(--text-secondary, #374151);
    border-color: var(--border-primary, rgba(0, 0, 0, .12));
}

.access-denied__subtle[b-wx2z8nupmh] {
    margin-top: 1rem;
    color: var(--text-muted, #6b7280);
}

@media (prefers-color-scheme: dark) {
    .access-denied__card[b-wx2z8nupmh] {
        background: var(--surface-primary, #111);
        border-color: var(--border-primary, rgba(255, 255, 255, .12));
    }
}
/* /Components/Account/Pages/Manage/EnableAuthenticator.razor.rz.scp.css */
.setup-intro[b-banfhlbixq] {
    display: grid;
    grid-template-columns: 20px 1fr;
    gap: 0.6rem;
    margin-bottom: 1.1rem;
    padding: 0.75rem 0.9rem;
    color: #285f95;
    background: #eef7ff;
    border: 1px solid #d6e8f8;
    border-radius: 9px;
}

.setup-intro p[b-banfhlbixq] {
    margin: 0;
    font-size: 0.76rem;
    line-height: 1.45;
}

.setup-steps[b-banfhlbixq] {
    margin: 0;
    padding: 0;
    list-style: none;
}

.setup-step[b-banfhlbixq] {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 0.9rem;
    position: relative;
    padding: 0 0 1.45rem;
}

.setup-step:not(:last-child)[b-banfhlbixq]::before {
    content: "";
    position: absolute;
    top: 36px;
    bottom: 0;
    left: 16px;
    width: 2px;
    background: #dce7f1;
}

.step-number[b-banfhlbixq] {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    position: relative;
    z-index: 1;
    color: #fff;
    background: #245f9a;
    border: 4px solid #eaf3fc;
    border-radius: 50%;
    font-size: 0.72rem;
    font-weight: 800;
}

.step-content h3[b-banfhlbixq] {
    margin: 0.2rem 0 0;
    color: #253b58;
    font-size: 1rem;
    font-weight: 750;
}

.step-content > p[b-banfhlbixq] {
    margin: 0.3rem 0 0.8rem;
    color: #697b91;
    font-size: 0.8rem;
    line-height: 1.5;
}

.app-links[b-banfhlbixq] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.app-links a[b-banfhlbixq] {
    display: inline-flex;
    align-items: center;
    gap: 0.42rem;
    padding: 0.48rem 0.65rem;
    color: #275f97;
    background: #f4f8fc;
    border: 1px solid #dce7f1;
    border-radius: 8px;
    font-size: 0.74rem;
    font-weight: 700;
    text-decoration: none;
}

.app-links a:hover[b-banfhlbixq] {
    background: #eaf3fc;
    text-decoration: none;
}

.qr-setup[b-banfhlbixq] {
    display: grid;
    grid-template-columns: 238px minmax(0, 1fr);
    align-items: center;
    gap: 1.15rem;
    padding: 1rem;
    background: #f8fafc;
    border: 1px solid #e2e9f1;
    border-radius: 12px;
}

.qr-frame[b-banfhlbixq] {
    min-height: 238px;
    display: grid;
    place-items: center;
    padding: 8px;
    background: #fff;
    border: 1px solid #d7e1ec;
    border-radius: 10px;
    box-shadow: 0 4px 14px rgba(24, 51, 85, 0.08);
}

.qr-frame img[b-banfhlbixq] {
    display: block;
    width: 220px;
    height: 220px;
}

.manual-key-label[b-banfhlbixq] {
    color: #6f8095;
    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.manual-key h4[b-banfhlbixq] {
    margin: 0.25rem 0 0.6rem;
    color: #2b405c;
    font-size: 0.88rem;
    font-weight: 750;
}

.manual-key code[b-banfhlbixq] {
    display: block;
    overflow-wrap: anywhere;
    padding: 0.7rem;
    color: #173f76;
    background: #fff;
    border: 1px dashed #9fb6ce;
    border-radius: 8px;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.055em;
    line-height: 1.5;
    user-select: all;
}

.manual-key p[b-banfhlbixq] {
    margin: 0.6rem 0 0;
    color: #748399;
    font-size: 0.7rem;
    line-height: 1.45;
}

.verification-form[b-banfhlbixq] {
    display: grid;
    grid-template-columns: minmax(180px, 260px) auto;
    align-items: end;
    gap: 0.75rem;
    max-width: 600px;
    margin-top: 0.75rem;
    padding: 1rem;
    background: #f8fafc;
    border: 1px solid #e2e9f1;
    border-radius: 11px;
}

.verification-field[b-banfhlbixq] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

.verification-field label[b-banfhlbixq] {
    color: #334a68;
    font-size: 0.75rem;
    font-weight: 750;
}

.verification-field .form-control[b-banfhlbixq] {
    min-height: 44px;
    font-size: 1.05rem;
    font-weight: 700;
    letter-spacing: 0.16em;
}

.verification-field > span:not(.text-danger)[b-banfhlbixq] {
    color: #7b899a;
    font-size: 0.66rem;
}

.verify-button[b-banfhlbixq] {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    border-radius: 8px;
    font-size: 0.76rem;
    font-weight: 750;
}

.validation-summary[b-banfhlbixq] {
    grid-column: 1 / -1;
    font-size: 0.75rem;
}

.validation-summary ul[b-banfhlbixq] {
    margin-bottom: 0;
}

@media (max-width: 700px) {
    .qr-setup[b-banfhlbixq] {
        grid-template-columns: 1fr;
    }

    .qr-frame[b-banfhlbixq] {
        width: min(100%, 238px);
    }

    .verification-form[b-banfhlbixq] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 420px) {
    .setup-step[b-banfhlbixq] {
        grid-template-columns: 28px minmax(0, 1fr);
        gap: 0.65rem;
    }

    .step-number[b-banfhlbixq] {
        width: 28px;
        height: 28px;
        border-width: 3px;
    }

    .setup-step:not(:last-child)[b-banfhlbixq]::before {
        top: 30px;
        left: 13px;
    }

    .qr-setup[b-banfhlbixq] {
        padding: 0.7rem;
    }

    .qr-frame[b-banfhlbixq],
    .qr-frame img[b-banfhlbixq] {
        width: 100%;
        height: auto;
        min-height: 0;
    }
}
/* /Components/Account/Pages/Manage/TwoFactorAuthentication.razor.rz.scp.css */
.security-status[b-tsjtno63f1] {
    display: grid;
    grid-template-columns: 50px minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1rem;
    padding: 1.15rem;
    border: 1px solid;
    border-radius: 13px;
}

.security-status-enabled[b-tsjtno63f1] {
    background: linear-gradient(110deg, #eefaf5, #f8fdfb);
    border-color: #c9eadc;
}

.security-status-attention[b-tsjtno63f1] {
    background: linear-gradient(110deg, #fff9eb, #fffdf8);
    border-color: #f1dfb4;
}

.status-icon[b-tsjtno63f1] {
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    color: #a86805;
    background: #ffedbd;
    border-radius: 12px;
    font-size: 1.1rem;
}

.security-status-enabled .status-icon[b-tsjtno63f1] {
    color: #087a56;
    background: #d4f1e5;
}

.status-label[b-tsjtno63f1] {
    display: block;
    margin-bottom: 0.2rem;
    color: #738397;
    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.status-copy h3[b-tsjtno63f1],
.security-card h3[b-tsjtno63f1],
.session-card h3[b-tsjtno63f1],
.danger-zone h3[b-tsjtno63f1] {
    margin: 0;
    color: #263c59;
    font-size: 0.98rem;
    font-weight: 750;
}

.status-copy p[b-tsjtno63f1],
.security-card p[b-tsjtno63f1],
.session-card p[b-tsjtno63f1],
.danger-zone p[b-tsjtno63f1],
.security-alert p[b-tsjtno63f1],
.admin-access-note p[b-tsjtno63f1] {
    margin: 0.28rem 0 0;
    color: #687b93;
    font-size: 0.78rem;
    line-height: 1.48;
}

.status-pill[b-tsjtno63f1],
.mini-status[b-tsjtno63f1] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    color: #8b5b08;
    background: #fff0c9;
    border: 1px solid #eedda9;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 750;
    white-space: nowrap;
}

.status-pill[b-tsjtno63f1] {
    padding: 0.38rem 0.62rem;
}

.security-status-enabled .status-pill[b-tsjtno63f1],
.mini-status-on[b-tsjtno63f1] {
    color: #087451;
    background: #e0f5ec;
    border-color: #c6eadc;
}

.security-grid[b-tsjtno63f1] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin: 1rem 0;
}

.security-card[b-tsjtno63f1] {
    display: flex;
    flex-direction: column;
    min-width: 0;
    min-height: 218px;
    padding: 1.15rem;
    background: #fff;
    border: 1px solid #e1e8f0;
    border-radius: 12px;
}

.security-card-primary[b-tsjtno63f1] {
    border-color: #d5e5f5;
    box-shadow: inset 0 3px 0 #3f82bc;
}

.card-icon[b-tsjtno63f1] {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    margin-bottom: 0.8rem;
    color: #1e6099;
    background: #eaf3fc;
    border-radius: 10px;
    font-size: 0.9rem;
}

.card-icon-recovery[b-tsjtno63f1] {
    color: #6852a1;
    background: #f0edfa;
}

.card-copy[b-tsjtno63f1] {
    flex: 1;
}

.card-title-row[b-tsjtno63f1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
}

.mini-status[b-tsjtno63f1] {
    padding: 0.25rem 0.48rem;
}

.mini-status-low[b-tsjtno63f1] {
    color: #aa3d32;
    background: #fff0ee;
    border-color: #f3d0cb;
}

.card-actions[b-tsjtno63f1] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin-top: 1rem;
}

.card-actions .btn[b-tsjtno63f1],
.session-card .btn[b-tsjtno63f1],
.danger-zone .btn[b-tsjtno63f1] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    border-radius: 8px;
    font-size: 0.76rem;
    font-weight: 700;
}

.card-footnote[b-tsjtno63f1] {
    display: flex;
    align-items: flex-start;
    gap: 0.4rem;
    margin-top: 1rem !important;
    padding-top: 0.8rem;
    border-top: 1px solid #edf0f4;
}

.security-alert[b-tsjtno63f1],
.admin-access-note[b-tsjtno63f1] {
    display: grid;
    grid-template-columns: 22px 1fr;
    gap: 0.65rem;
    margin-bottom: 1rem;
    padding: 0.85rem 0.95rem;
    border: 1px solid;
    border-radius: 10px;
}

.security-alert-warning[b-tsjtno63f1] {
    color: #8a5906;
    background: #fff9e9;
    border-color: #eedcae;
}

.security-alert-danger[b-tsjtno63f1] {
    color: #a13a32;
    background: #fff2f0;
    border-color: #efd0cc;
}

.security-alert strong[b-tsjtno63f1],
.admin-access-note strong[b-tsjtno63f1] {
    color: inherit;
    font-size: 0.8rem;
}

.security-alert a[b-tsjtno63f1] {
    color: inherit;
    font-weight: 700;
}

.session-card[b-tsjtno63f1],
.danger-zone[b-tsjtno63f1] {
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.85rem;
    margin-top: 1rem;
    padding: 1rem;
    border: 1px solid #e1e8f0;
    border-radius: 11px;
}

.session-icon[b-tsjtno63f1] {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    color: #4a6687;
    background: #eef3f8;
    border-radius: 9px;
}

.admin-access-note[b-tsjtno63f1] {
    margin-top: 1rem;
    margin-bottom: 0;
    color: #285f95;
    background: #eef7ff;
    border-color: #d6e8f8;
}

.danger-zone[b-tsjtno63f1] {
    grid-template-columns: minmax(0, 1fr) auto;
    background: #fffafa;
    border-color: #efd8d5;
}

@media (max-width: 720px) {
    .security-status[b-tsjtno63f1] {
        grid-template-columns: 44px minmax(0, 1fr);
        align-items: start;
    }

    .status-pill[b-tsjtno63f1] {
        grid-column: 2;
        justify-self: start;
    }

    .security-grid[b-tsjtno63f1] {
        grid-template-columns: 1fr;
    }

    .session-card[b-tsjtno63f1],
    .danger-zone[b-tsjtno63f1] {
        grid-template-columns: 38px minmax(0, 1fr);
    }

    .session-card form[b-tsjtno63f1],
    .danger-zone .btn[b-tsjtno63f1] {
        grid-column: 2;
        justify-self: start;
    }
}

@media (max-width: 480px) {
    .security-status[b-tsjtno63f1],
    .security-card[b-tsjtno63f1] {
        padding: 0.95rem;
    }

    .card-actions .btn[b-tsjtno63f1] {
        width: 100%;
    }
}
/* /Components/Account/Shared/ManageLayout.razor.rz.scp.css */
.account-settings-page[b-9ywr5ejkb1] {
    width: min(100% - 2rem, 1180px);
    margin: 0 auto;
    padding: 0.25rem 0 2.5rem;
}

.account-settings-hero[b-9ywr5ejkb1] {
    display: flex;
    align-items: center;
    gap: 1.15rem;
    margin-bottom: 1.25rem;
    padding: 1.45rem 1.6rem;
    overflow: hidden;
    position: relative;
    color: #16376e;
    background:
        radial-gradient(circle at 92% 18%, rgba(70, 190, 221, 0.22), transparent 28%),
        linear-gradient(115deg, #eef6ff 0%, #f8fbff 65%, #eefbfc 100%);
    border: 1px solid #d9e8f7;
    border-radius: 16px;
}

.hero-icon[b-9ywr5ejkb1] {
    width: 56px;
    height: 56px;
    flex: 0 0 56px;
    display: grid;
    place-items: center;
    color: #fff;
    background: linear-gradient(145deg, #17468f, #2478bb);
    border-radius: 15px;
    box-shadow: 0 8px 20px rgba(23, 70, 143, 0.2);
    font-size: 1.35rem;
}

.hero-eyebrow[b-9ywr5ejkb1] {
    display: block;
    margin-bottom: 0.25rem;
    color: #2b6da1;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.account-settings-hero h1[b-9ywr5ejkb1] {
    margin: 0;
    color: #183355;
    font-size: clamp(1.6rem, 3vw, 2rem);
    font-weight: 750;
    letter-spacing: -0.025em;
}

.account-settings-hero p[b-9ywr5ejkb1] {
    margin: 0.35rem 0 0;
    color: #5d718c;
    font-size: 0.94rem;
}

.account-settings-grid[b-9ywr5ejkb1] {
    display: grid;
    grid-template-columns: 285px minmax(0, 1fr);
    align-items: start;
    gap: 1.25rem;
}

.account-settings-sidebar[b-9ywr5ejkb1],
.account-settings-content[b-9ywr5ejkb1] {
    background: #fff;
    border: 1px solid #e1e8f1;
    border-radius: 14px;
    box-shadow: 0 5px 18px rgba(24, 51, 85, 0.055);
}

.account-settings-sidebar[b-9ywr5ejkb1] {
    min-width: 0;
    padding: 1rem;
}

.sidebar-heading[b-9ywr5ejkb1] {
    padding: 0.15rem 0.35rem 0.8rem;
}

.sidebar-heading span[b-9ywr5ejkb1] {
    color: #263d5b;
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.sidebar-heading p[b-9ywr5ejkb1] {
    margin: 0.25rem 0 0;
    color: #7a899d;
    font-size: 0.76rem;
    line-height: 1.4;
}

.security-note[b-9ywr5ejkb1] {
    display: grid;
    grid-template-columns: 32px 1fr;
    gap: 0.65rem;
    margin-top: 1rem;
    padding: 0.85rem;
    background: #f2f8ff;
    border: 1px solid #dceafa;
    border-radius: 10px;
}

.security-note-icon[b-9ywr5ejkb1] {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    color: #21649a;
    background: #ddecfb;
    border-radius: 8px;
    font-size: 0.78rem;
}

.security-note strong[b-9ywr5ejkb1] {
    display: block;
    margin-bottom: 0.18rem;
    color: #254364;
    font-size: 0.78rem;
}

.security-note p[b-9ywr5ejkb1] {
    margin: 0;
    color: #677b94;
    font-size: 0.7rem;
    line-height: 1.45;
}

.account-settings-content[b-9ywr5ejkb1] {
    min-width: 0;
    min-height: 440px;
    padding: clamp(1.25rem, 3vw, 2rem);
}

[b-9ywr5ejkb1] .account-page-heading {
    display: flex;
    align-items: flex-start;
    gap: 0.85rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid #e7edf4;
}

[b-9ywr5ejkb1] .account-page-heading .heading-icon {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: grid;
    place-items: center;
    color: #1d5e98;
    background: #eaf3fc;
    border-radius: 11px;
    font-size: 1rem;
}

[b-9ywr5ejkb1] .account-page-heading h2 {
    margin: 0;
    color: #1f334f;
    font-size: 1.42rem;
    font-weight: 750;
    letter-spacing: -0.015em;
}

[b-9ywr5ejkb1] .account-page-heading p {
    max-width: 680px;
    margin: 0.28rem 0 0;
    color: #6c7d93;
    font-size: 0.88rem;
    line-height: 1.5;
}

[b-9ywr5ejkb1] .account-settings-content > h3 {
    margin: 0 0 1.25rem;
    color: #1f334f;
    font-size: 1.4rem;
    font-weight: 750;
}

[b-9ywr5ejkb1] .account-settings-content .form-control {
    border-color: #cad6e4;
    border-radius: 9px;
}

[b-9ywr5ejkb1] .account-settings-content .form-control:focus {
    border-color: #3c77b5;
    box-shadow: 0 0 0 0.2rem rgba(42, 105, 165, 0.13);
}

@media (max-width: 900px) {
    .account-settings-grid[b-9ywr5ejkb1] {
        grid-template-columns: 1fr;
    }

    .security-note[b-9ywr5ejkb1] {
        display: none;
    }
}

@media (max-width: 575.98px) {
    .account-settings-page[b-9ywr5ejkb1] {
        width: min(100% - 1rem, 1180px);
        padding-bottom: 1.25rem;
    }

    .account-settings-hero[b-9ywr5ejkb1] {
        align-items: flex-start;
        padding: 1.15rem;
        border-radius: 12px;
    }

    .hero-icon[b-9ywr5ejkb1] {
        width: 44px;
        height: 44px;
        flex-basis: 44px;
        border-radius: 11px;
        font-size: 1rem;
    }

    .account-settings-hero p[b-9ywr5ejkb1] {
        font-size: 0.82rem;
    }

    .account-settings-sidebar[b-9ywr5ejkb1],
    .account-settings-content[b-9ywr5ejkb1] {
        border-radius: 12px;
    }

    .account-settings-content[b-9ywr5ejkb1] {
        min-height: 0;
        padding: 1.1rem;
    }
}
/* /Components/Account/Shared/ManageNavMenu.razor.rz.scp.css */
.settings-nav[b-2cnasxtkra] {
    display: flex;
    flex-direction: column;
    gap: 0.28rem;
}

.settings-nav-link[b-2cnasxtkra] {
    display: grid;
    grid-template-columns: 36px minmax(0, 1fr) 12px;
    align-items: center;
    gap: 0.65rem;
    min-height: 54px;
    padding: 0.55rem 0.65rem;
    color: #42556f;
    border: 1px solid transparent;
    border-radius: 9px;
    text-decoration: none;
    transition: color 130ms ease, background-color 130ms ease, border-color 130ms ease;
}

.settings-nav-link:hover[b-2cnasxtkra] {
    color: #174b84;
    background: #f5f9fd;
    text-decoration: none;
}

.settings-nav-link.active[b-2cnasxtkra] {
    color: #174b84;
    background: #eaf3fd;
    border-color: #d7e7f8;
}

.nav-icon[b-2cnasxtkra] {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    color: #60758f;
    background: #f0f4f8;
    border-radius: 8px;
    font-size: 0.78rem;
}

.settings-nav-link.active .nav-icon[b-2cnasxtkra] {
    color: #fff;
    background: #2566a4;
}

.settings-nav-link > span:nth-child(2)[b-2cnasxtkra] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.08rem;
}

.settings-nav-link strong[b-2cnasxtkra] {
    font-size: 0.8rem;
    font-weight: 700;
    line-height: 1.25;
}

.settings-nav-link small[b-2cnasxtkra] {
    color: #8492a4;
    font-size: 0.66rem;
    line-height: 1.25;
}

.nav-chevron[b-2cnasxtkra] {
    color: #a2adba;
    font-size: 0.56rem;
}

.settings-nav-link.active .nav-chevron[b-2cnasxtkra] {
    color: #3173b0;
}

.settings-nav-link:focus-visible[b-2cnasxtkra] {
    outline: 2px solid #3d82bd;
    outline-offset: 2px;
}

@media (max-width: 900px) {
    .settings-nav[b-2cnasxtkra] {
        width: 100%;
        max-width: 100%;
        display: flex;
        flex-flow: row nowrap;
        overflow-x: auto;
        padding-bottom: 0.15rem;
        scrollbar-width: thin;
    }

    .settings-nav-link[b-2cnasxtkra] {
        flex: 0 0 142px;
        grid-template-columns: 30px minmax(0, 1fr);
        min-height: 48px;
    }

    .nav-icon[b-2cnasxtkra] {
        width: 29px;
        height: 29px;
    }

    .settings-nav-link small[b-2cnasxtkra],
    .nav-chevron[b-2cnasxtkra] {
        display: none;
    }
}

@media (max-width: 575.98px) {
    .settings-nav[b-2cnasxtkra] {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        overflow: visible;
        gap: 0.35rem;
    }

    .settings-nav-link[b-2cnasxtkra] {
        min-width: 0;
        min-height: 44px;
        flex: none;
    }

    .settings-nav-link:last-child[b-2cnasxtkra] {
        grid-column: 1 / -1;
    }
}
/* /Components/Account/Shared/ShowRecoveryCodes.razor.rz.scp.css */
.recovery-warning[b-4p8j9pam4p] {
    display: grid;
    grid-template-columns: 22px 1fr;
    gap: 0.65rem;
    margin-bottom: 1rem;
    padding: 0.9rem;
    color: #8b5906;
    background: #fff9e9;
    border: 1px solid #eedcae;
    border-radius: 10px;
}

.recovery-warning strong[b-4p8j9pam4p] {
    font-size: 0.8rem;
}

.recovery-warning p[b-4p8j9pam4p] {
    margin: 0.2rem 0 0;
    color: #806d48;
    font-size: 0.75rem;
    line-height: 1.45;
}

.recovery-code-panel[b-4p8j9pam4p] {
    overflow: hidden;
    border: 1px solid #dfe7f0;
    border-radius: 12px;
}

.recovery-code-heading[b-4p8j9pam4p] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.95rem 1rem;
    background: #f5f8fb;
    border-bottom: 1px solid #dfe7f0;
}

.recovery-code-heading span:first-child[b-4p8j9pam4p] {
    display: block;
    color: #76869a;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.recovery-code-heading h3[b-4p8j9pam4p] {
    margin: 0.12rem 0 0;
    color: #293f5b;
    font-size: 0.95rem;
    font-weight: 750;
}

.code-count[b-4p8j9pam4p] {
    padding: 0.27rem 0.52rem;
    color: #35668f;
    background: #e5f0f9;
    border-radius: 999px;
    font-size: 0.67rem;
    font-weight: 750;
}

.recovery-code-grid[b-4p8j9pam4p] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.6rem;
    padding: 1rem;
}

.recovery-code[b-4p8j9pam4p] {
    display: block;
    padding: 0.65rem;
    color: #183e70;
    background: #f8fbfe;
    border: 1px dashed #aec3d8;
    border-radius: 7px;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 0.86rem;
    font-weight: 750;
    letter-spacing: 0.05em;
    text-align: center;
    user-select: all;
}

.recovery-actions[b-4p8j9pam4p] {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    margin-top: 1rem;
}

.recovery-actions .btn[b-4p8j9pam4p] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    border-radius: 8px;
    font-size: 0.76rem;
    font-weight: 700;
}

@media (max-width: 520px) {
    .recovery-code-grid[b-4p8j9pam4p] {
        grid-template-columns: 1fr;
    }

    .recovery-actions[b-4p8j9pam4p] {
        flex-direction: column-reverse;
    }

    .recovery-actions .btn[b-4p8j9pam4p] {
        justify-content: center;
    }
}

@media print {
    .recovery-actions[b-4p8j9pam4p] {
        display: none;
    }
}
/* /Components/Account/Shared/SignInChallengeShell.razor.rz.scp.css */
.signin-challenge-page[b-0r997qk05n] {
    width: min(100% - 2rem, 560px);
    margin: 0 auto;
    padding: clamp(0.75rem, 3vw, 2rem) 0 2.5rem;
}

.signin-challenge-card[b-0r997qk05n] {
    overflow: hidden;
    padding: clamp(1.35rem, 4vw, 2.25rem);
    background: #fff;
    border: 1px solid #dfe7f0;
    border-radius: 17px;
    box-shadow: 0 15px 40px rgba(24, 51, 85, 0.1);
}

.challenge-header[b-0r997qk05n] {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 1.45rem;
    padding-bottom: 1.35rem;
    text-align: center;
    border-bottom: 1px solid #e7edf4;
}

.challenge-icon[b-0r997qk05n] {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    margin-bottom: 0.8rem;
    color: #fff;
    background: linear-gradient(145deg, #17468f, #2878b7);
    border: 6px solid #eaf4fc;
    border-radius: 17px;
    box-shadow: 0 8px 20px rgba(23, 70, 143, 0.18);
    font-size: 1.15rem;
}

.challenge-eyebrow[b-0r997qk05n] {
    margin-bottom: 0.3rem;
    color: #2e6b9d;
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

.challenge-header h1[b-0r997qk05n] {
    margin: 0;
    color: #203752;
    font-size: clamp(1.45rem, 5vw, 1.8rem);
    font-weight: 760;
    letter-spacing: -0.025em;
}

.challenge-header p[b-0r997qk05n] {
    max-width: 410px;
    margin: 0.45rem 0 0;
    color: #6b7e95;
    font-size: 0.86rem;
    line-height: 1.55;
}

[b-0r997qk05n] .challenge-form {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

[b-0r997qk05n] .challenge-field {
    display: flex;
    flex-direction: column;
    gap: 0.38rem;
}

[b-0r997qk05n] .challenge-field > label {
    color: #334b68;
    font-size: 0.78rem;
    font-weight: 750;
}

[b-0r997qk05n] .challenge-code-input {
    min-height: 54px;
    padding: 0.75rem 0.9rem;
    color: #203b5c;
    background: #fbfdff;
    border: 1px solid #c8d6e5;
    border-radius: 10px;
    font-size: 1.18rem;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-align: center;
}

[b-0r997qk05n] .challenge-code-input:focus {
    background: #fff;
    border-color: #3478b5;
    box-shadow: 0 0 0 0.22rem rgba(52, 120, 181, 0.13);
}

[b-0r997qk05n] .field-hint {
    color: #7c8b9e;
    font-size: 0.68rem;
    line-height: 1.4;
}

[b-0r997qk05n] .remember-device {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    gap: 0.7rem;
    align-items: start;
    padding: 0.8rem 0.9rem;
    background: #f5f9fd;
    border: 1px solid #e0e9f2;
    border-radius: 10px;
}

[b-0r997qk05n] .remember-device .form-check-input {
    width: 17px;
    height: 17px;
    margin: 0.15rem 0 0;
}

[b-0r997qk05n] .remember-device label {
    cursor: pointer;
}

[b-0r997qk05n] .remember-device strong {
    display: block;
    color: #304a68;
    font-size: 0.78rem;
}

[b-0r997qk05n] .remember-device span {
    display: block;
    margin-top: 0.15rem;
    color: #718299;
    font-size: 0.68rem;
    line-height: 1.4;
}

[b-0r997qk05n] .fresh-verification-note {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 0.7rem;
    align-items: center;
    padding: 0.8rem 0.9rem;
    background: #eef6ff;
    border: 1px solid #cfe1f4;
    border-radius: 10px;
    color: #304a68;
}

[b-0r997qk05n] .fresh-verification-note > i {
    color: #2857a4;
    font-size: 1rem;
    text-align: center;
}

[b-0r997qk05n] .fresh-verification-note strong,
[b-0r997qk05n] .fresh-verification-note span {
    display: block;
}

[b-0r997qk05n] .fresh-verification-note strong {
    font-size: 0.78rem;
}

[b-0r997qk05n] .fresh-verification-note span {
    margin-top: 0.15rem;
    color: #667b94;
    font-size: 0.68rem;
    line-height: 1.4;
}

[b-0r997qk05n] .challenge-submit {
    min-height: 49px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    border-radius: 9px;
    font-size: 0.84rem;
    font-weight: 750;
}

[b-0r997qk05n] .challenge-alternative {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 0.7rem;
    align-items: center;
    margin-top: 1.15rem;
    padding: 0.85rem;
    color: #576c86;
    background: #f8fafc;
    border: 1px solid #e3e9f1;
    border-radius: 10px;
}

[b-0r997qk05n] .alternative-icon {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    color: #596f91;
    background: #eaf0f6;
    border-radius: 8px;
    font-size: 0.75rem;
}

[b-0r997qk05n] .challenge-alternative span {
    display: block;
    font-size: 0.72rem;
    line-height: 1.45;
}

[b-0r997qk05n] .challenge-alternative a {
    color: #215f9b;
    font-weight: 750;
}

[b-0r997qk05n] .recovery-notice {
    margin-top: 0;
    margin-bottom: 1rem;
    color: #715a2f;
    background: #fff9ec;
    border-color: #eeddb6;
}

[b-0r997qk05n] .recovery-form {
    padding-top: 0.1rem;
}

[b-0r997qk05n] .recovery-code-input {
    letter-spacing: 0.09em;
}

[b-0r997qk05n] .challenge-validation {
    margin: 0;
    padding: 0.7rem 0.85rem;
    color: #a43731;
    background: #fff2f0;
    border: 1px solid #efd1cd;
    border-radius: 8px;
    font-size: 0.73rem;
}

[b-0r997qk05n] .challenge-validation:empty {
    display: none;
}

[b-0r997qk05n] .challenge-validation ul {
    margin: 0;
    padding-left: 1rem;
}

[b-0r997qk05n] .validation-message {
    color: #b13a33;
    font-size: 0.7rem;
}

.challenge-security-note[b-0r997qk05n] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    margin-top: 1.1rem;
    padding-top: 1rem;
    color: #8190a2;
    border-top: 1px solid #edf1f5;
    font-size: 0.66rem;
    text-align: center;
}

@media (max-width: 575.98px) {
    .signin-challenge-page[b-0r997qk05n] {
        width: min(100% - 1rem, 560px);
        padding-top: 0.25rem;
        padding-bottom: 1.25rem;
    }

    .signin-challenge-card[b-0r997qk05n] {
        padding: 1.2rem;
        border-radius: 13px;
    }

    .challenge-header[b-0r997qk05n] {
        margin-bottom: 1.15rem;
        padding-bottom: 1rem;
    }

    .challenge-icon[b-0r997qk05n] {
        width: 50px;
        height: 50px;
        border-radius: 14px;
        font-size: 1rem;
    }
}
/* /Components/Layout/Footer.razor.rz.scp.css */
/* Professional Footer Styles */
.footer[b-eb8mjix4ut] {
    background: var(--surface-secondary);
    border-top: 1px solid var(--border-primary);
    margin-top: auto;
    padding: var(--spacing-2xl) 0 var(--spacing-lg);
    /* Gentle inner and outer shadow for depth */
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.05) inset, 0 -1px 6px rgba(0, 0, 0, 0.03);
}

.footer-container[b-eb8mjix4ut] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 var(--spacing-lg);
}

.footer-content[b-eb8mjix4ut] {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: var(--spacing-2xl);
    margin-bottom: var(--spacing-2xl);
}

.footer-section[b-eb8mjix4ut] {
    display: flex;
    flex-direction: column;
}

/* Footer Brand */
.footer-brand[b-eb8mjix4ut] {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    text-decoration: none;
    margin-bottom: var(--spacing-md);
}

.footer-brand-icon[b-eb8mjix4ut] {
    font-size: 1.5rem;
    color: var(--primary-color);
    margin-right: var(--spacing-sm);
}

.footer-brand-text[b-eb8mjix4ut] {
    font-size: var(--font-size-xl);
    font-weight: 700;
    color: var(--text-primary);
    letter-spacing: -0.025em;
}

/* Logo sizing scoped to footer */
.footer-logo[b-eb8mjix4ut] {
    height: 28px;
    width: auto;
    display: block;
}

.footer-description[b-eb8mjix4ut] {
    color: var(--text-secondary);
    font-size: var(--font-size-sm);
    line-height: 1.6;
    margin: 0;
    max-width: 280px;
}

/* Footer Sections */
.footer-title[b-eb8mjix4ut] {
    font-size: var(--font-size-base);
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 var(--spacing-md) 0;
}

.footer-links[b-eb8mjix4ut] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-links li[b-eb8mjix4ut] {
    margin-bottom: var(--spacing-sm);
}

.footer-link[b-eb8mjix4ut] {
    color: var(--text-secondary);
    text-decoration: none;
    font-size: var(--font-size-sm);
    transition: color 0.2s ease;
}

.footer-link:hover[b-eb8mjix4ut] {
    color: var(--primary-color);
    text-decoration: none;
}

/* Social Links */
.footer-social[b-eb8mjix4ut] {
    display: flex;
    gap: var(--spacing-md);
}

.footer-social-link[b-eb8mjix4ut] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: var(--surface-primary);
    border: 1px solid var(--border-primary);
    border-radius: var(--radius-lg);
    color: var(--text-secondary);
    text-decoration: none;
    transition: all 0.2s ease;
}

.footer-social-link:hover[b-eb8mjix4ut] {
    color: var(--primary-color);
    background: var(--primary-subtle);
    border-color: var(--primary-color);
    transform: translateY(-2px);
}

/* Footer Bottom */
.footer-bottom[b-eb8mjix4ut] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: var(--spacing-lg);
    border-top: 1px solid var(--border-primary);
}

.footer-copyright p[b-eb8mjix4ut] {
    margin: 0;
    color: var(--text-muted);
    font-size: var(--font-size-sm);
}

.footer-legal[b-eb8mjix4ut] {
    display: flex;
    gap: var(--spacing-lg);
}

.footer-legal-link[b-eb8mjix4ut] {
    color: var(--text-muted);
    text-decoration: none;
    font-size: var(--font-size-sm);
    transition: color 0.2s ease;
}

.footer-legal-link:hover[b-eb8mjix4ut] {
    color: var(--primary-color);
    text-decoration: none;
}

/* Subtle highlight for active legal links */
.footer-legal .active[b-eb8mjix4ut] {
    color: var(--primary-color);
    text-decoration: underline;
    text-underline-offset: 2px;
    text-decoration-thickness: 1.5px;
}

/* Responsive Design */
@media (max-width: 992px) {
    .footer-content[b-eb8mjix4ut] {
        grid-template-columns: 1fr 1fr;
        gap: var(--spacing-xl);
    }
}

@media (max-width: 768px) {
    .footer[b-eb8mjix4ut] {
        padding: var(--spacing-xl) 0 var(--spacing-md);
    }

    .footer-container[b-eb8mjix4ut] {
        padding: 0 var(--spacing-md);
    }

    .footer-content[b-eb8mjix4ut] {
        grid-template-columns: 1fr;
        gap: var(--spacing-lg);
        margin-bottom: var(--spacing-xl);
    }

    .footer-bottom[b-eb8mjix4ut] {
        flex-direction: column;
        gap: var(--spacing-md);
        text-align: center;
    }

    .footer-legal[b-eb8mjix4ut] {
        gap: var(--spacing-md);
    }
}

@media (max-width: 480px) {
    .footer-social[b-eb8mjix4ut] {
        justify-content: center;
    }

    .footer-legal[b-eb8mjix4ut] {
        flex-direction: column;
        gap: var(--spacing-sm);
    }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* Page Layout Styles */
.page-layout[b-pdkgof1vfx] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    background: var(--background-secondary);
}

.main-content[b-pdkgof1vfx] {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: var(--spacing-lg) 0;
}

/* Error UI Styles */
#blazor-error-ui[b-pdkgof1vfx] {
    color-scheme: light only;
    background: var(--error-color);
    bottom: 0;
    box-shadow: var(--shadow-lg);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
    color: var(--text-inverse);
    border-top: 3px solid var(--error-color);
}

    #blazor-error-ui .dismiss[b-pdkgof1vfx] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
        color: var(--text-inverse);
        font-weight: bold;
        font-size: 1.1rem;
    }
    
    #blazor-error-ui .dismiss:hover[b-pdkgof1vfx] {
        opacity: 0.7;
    }
    
    #blazor-error-ui .reload[b-pdkgof1vfx] {
        color: var(--text-inverse);
        text-decoration: underline;
        font-weight: 500;
    }
    
    #blazor-error-ui .reload:hover[b-pdkgof1vfx] {
        opacity: 0.8;
        text-decoration: none;
    }
/* /Components/Layout/NavMenu.razor.rz.scp.css */
.top-navbar[b-znsdppf188] {
    --nav-bg: #173f8f;
    --nav-bg-deep: #123573;
    --nav-text: rgba(255, 255, 255, 0.82);
    --nav-text-strong: #fff;
    --nav-accent: #73d9ef;
    position: sticky;
    top: 0;
    z-index: 1000;
    background: linear-gradient(100deg, var(--nav-bg-deep), var(--nav-bg) 72%, #2356a4);
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
    box-shadow: 0 3px 14px rgba(15, 37, 77, 0.14);
}

.navbar-shell[b-znsdppf188] {
    width: min(100% - 2rem, 1440px);
    min-height: 62px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 158px minmax(0, 1fr) auto;
    align-items: center;
    gap: 1.25rem;
}

.brand-link[b-znsdppf188] {
    display: inline-flex;
    align-items: center;
    justify-self: start;
    padding: 0.25rem;
    border-radius: 7px;
    text-decoration: none;
}

.brand-logo[b-znsdppf188] {
    display: block;
    width: auto;
    height: 42px;
}

.desktop-navigation[b-znsdppf188] {
    min-width: 0;
    height: 62px;
    align-items: stretch;
    justify-content: center;
    gap: 0.125rem;
}

.primary-nav-link[b-znsdppf188],
.nav-dropdown > summary[b-znsdppf188],
.login-link[b-znsdppf188],
.account-dropdown > summary[b-znsdppf188] {
    color: var(--nav-text);
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}

.primary-nav-link[b-znsdppf188],
.nav-dropdown > summary[b-znsdppf188] {
    min-height: 62px;
    padding: 0 0.75rem;
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    position: relative;
    border-radius: 6px;
    transition: color 140ms ease, background-color 140ms ease;
}

.primary-nav-link:hover[b-znsdppf188],
.nav-dropdown > summary:hover[b-znsdppf188],
.login-link:hover[b-znsdppf188],
.account-dropdown > summary:hover[b-znsdppf188] {
    color: var(--nav-text-strong);
    background: rgba(255, 255, 255, 0.08);
    text-decoration: none;
}

.primary-nav-link.active[b-znsdppf188],
.nav-dropdown.active > summary[b-znsdppf188] {
    color: var(--nav-text-strong);
}

.primary-nav-link.active[b-znsdppf188]::after,
.nav-dropdown.active > summary[b-znsdppf188]::after {
    content: "";
    position: absolute;
    left: 0.75rem;
    right: 0.75rem;
    bottom: 0;
    height: 3px;
    border-radius: 3px 3px 0 0;
    background: var(--nav-accent);
}

.primary-nav-link i[b-znsdppf188],
.nav-dropdown > summary > i:first-child[b-znsdppf188] {
    width: 16px;
    text-align: center;
    font-size: 0.84rem;
}

.nav-dropdown[b-znsdppf188],
.account-dropdown[b-znsdppf188] {
    position: relative;
}

.nav-dropdown > summary[b-znsdppf188],
.account-dropdown > summary[b-znsdppf188] {
    list-style: none;
    cursor: pointer;
    user-select: none;
}

.nav-dropdown > summary[b-znsdppf188]::-webkit-details-marker,
.account-dropdown > summary[b-znsdppf188]::-webkit-details-marker {
    display: none;
}

.dropdown-chevron[b-znsdppf188] {
    width: auto !important;
    font-size: 0.6rem !important;
    opacity: 0.7;
    transition: transform 140ms ease;
}

.nav-dropdown[open] > summary .dropdown-chevron[b-znsdppf188],
.account-dropdown[open] > summary .dropdown-chevron[b-znsdppf188] {
    transform: rotate(180deg);
}

.nav-dropdown[open] > summary[b-znsdppf188],
.account-dropdown[open] > summary[b-znsdppf188] {
    color: var(--nav-text-strong);
    background: rgba(255, 255, 255, 0.1);
}

.dropdown-panel[b-znsdppf188],
.account-panel[b-znsdppf188] {
    position: absolute;
    top: calc(100% + 0.5rem);
    left: 0;
    z-index: 1010;
    padding: 0.5rem;
    background: #fff;
    border: 1px solid #dfe6f0;
    border-radius: 10px;
    box-shadow: 0 14px 35px rgba(15, 35, 70, 0.18);
}

.dropdown-panel[b-znsdppf188] {
    width: 286px;
}

.dropdown-panel-end[b-znsdppf188] {
    right: 0;
    left: auto;
}

.dropdown-heading[b-znsdppf188] {
    padding: 0.45rem 0.65rem 0.5rem;
    color: #718096;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.dropdown-link[b-znsdppf188] {
    display: grid;
    grid-template-columns: 30px 1fr;
    align-items: center;
    gap: 0.55rem;
    padding: 0.6rem 0.65rem;
    color: #22324a;
    border-radius: 7px;
    text-decoration: none;
    transition: background-color 120ms ease, color 120ms ease;
}

.dropdown-link:hover[b-znsdppf188],
.dropdown-link.active[b-znsdppf188] {
    color: #173f8f;
    background: #edf4ff;
    text-decoration: none;
}

.dropdown-link > i[b-znsdppf188] {
    color: #567099;
    font-size: 0.9rem;
    text-align: center;
}

.dropdown-link.active > i[b-znsdppf188] {
    color: #173f8f;
}

.dropdown-link span[b-znsdppf188] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.16rem;
}

.dropdown-link strong[b-znsdppf188] {
    font-size: 0.85rem;
    font-weight: 700;
}

.dropdown-link small[b-znsdppf188] {
    color: #718096;
    font-size: 0.71rem;
    line-height: 1.25;
}

.desktop-account[b-znsdppf188] {
    align-items: center;
    justify-self: end;
}

.account-dropdown > summary[b-znsdppf188],
.login-link[b-znsdppf188] {
    min-height: 38px;
    padding: 0.25rem 0.65rem 0.25rem 0.35rem;
    display: inline-flex;
    align-items: center;
    gap: 0.48rem;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 8px;
}

.account-avatar[b-znsdppf188] {
    width: 28px;
    height: 28px;
    display: inline-grid;
    place-items: center;
    color: #173f8f;
    background: #dff7fc;
    border-radius: 7px;
    font-size: 0.75rem;
}

.account-panel[b-znsdppf188] {
    right: 0;
    left: auto;
    width: 248px;
    padding: 0.75rem;
}

.account-identity[b-znsdppf188] {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    padding: 0.25rem;
}

.account-identity span[b-znsdppf188] {
    color: #718096;
    font-size: 0.72rem;
}

.account-identity strong[b-znsdppf188] {
    overflow: hidden;
    color: #22324a;
    font-size: 0.82rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.account-divider[b-znsdppf188] {
    height: 1px;
    margin: 0.65rem 0;
    background: #e8edf4;
}

.account-action[b-znsdppf188] {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.6rem 0.65rem;
    color: #34445c;
    background: transparent;
    border: 0;
    border-radius: 7px;
    font-size: 0.84rem;
    font-weight: 600;
    text-align: left;
    text-decoration: none;
}

.account-action:hover[b-znsdppf188] {
    color: #a32424;
    background: #fff0f0;
    text-decoration: none;
}

.account-manage-link:hover[b-znsdppf188] {
    color: #173f8f;
    background: #edf4ff;
}

.mobile-menu-toggle[b-znsdppf188] {
    width: 38px;
    height: 38px;
    justify-self: end;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 0;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 8px;
}

.hamburger-line[b-znsdppf188] {
    width: 18px;
    height: 2px;
    background: #fff;
    border-radius: 2px;
    transition: transform 150ms ease, opacity 150ms ease;
}

.hamburger-line.active:nth-child(1)[b-znsdppf188] { transform: translateY(6px) rotate(45deg); }
.hamburger-line.active:nth-child(2)[b-znsdppf188] { opacity: 0; }
.hamburger-line.active:nth-child(3)[b-znsdppf188] { transform: translateY(-6px) rotate(-45deg); }

.mobile-menu[b-znsdppf188] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    max-height: calc(100vh - 62px);
    overflow: auto;
    background: #fff;
    border-bottom: 1px solid #dfe6f0;
    box-shadow: 0 15px 30px rgba(15, 35, 70, 0.18);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: opacity 150ms ease, transform 150ms ease, visibility 150ms ease;
}

.mobile-menu.show[b-znsdppf188] {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.mobile-menu-content[b-znsdppf188] {
    width: min(100% - 1.5rem, 720px);
    margin: 0 auto;
    padding: 0.65rem 0 1rem;
}

.mobile-section-label[b-znsdppf188] {
    padding: 0.8rem 0.65rem 0.35rem;
    color: #718096;
    font-size: 0.67rem;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.mobile-nav-item[b-znsdppf188] {
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 0.8rem;
    margin: 0.12rem 0;
    padding: 0.55rem 0.7rem;
    color: #2f4058;
    background: transparent;
    border: 0;
    border-radius: 7px;
    font-size: 0.88rem;
    font-weight: 600;
    text-decoration: none;
}

.mobile-nav-item:hover[b-znsdppf188],
.mobile-nav-item.active[b-znsdppf188] {
    color: #173f8f;
    background: #edf4ff;
    text-decoration: none;
}

.mobile-nav-item i[b-znsdppf188] {
    width: 18px;
    color: #60789d;
    text-align: center;
}

.mobile-nav-item.active i[b-znsdppf188] { color: #173f8f; }

.mobile-account-section[b-znsdppf188] {
    margin-top: 0.8rem;
    padding-top: 0.8rem;
    border-top: 1px solid #e3e9f1;
}

.mobile-account-identity[b-znsdppf188] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.4rem 0.7rem 0.65rem;
    color: #65758b;
    font-size: 0.78rem;
}

.mobile-account-identity span[b-znsdppf188] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mobile-account-action[b-znsdppf188] { width: 100%; text-align: left; }

.brand-link:focus-visible[b-znsdppf188],
.primary-nav-link:focus-visible[b-znsdppf188],
.nav-dropdown > summary:focus-visible[b-znsdppf188],
.account-dropdown > summary:focus-visible[b-znsdppf188],
.login-link:focus-visible[b-znsdppf188],
.mobile-menu-toggle:focus-visible[b-znsdppf188],
.mobile-nav-item:focus-visible[b-znsdppf188],
.dropdown-link:focus-visible[b-znsdppf188],
.account-action:focus-visible[b-znsdppf188] {
    outline: 2px solid var(--nav-accent);
    outline-offset: 2px;
}

@media (max-width: 1199.98px) {
    .navbar-shell[b-znsdppf188] { grid-template-columns: 1fr auto; min-height: 58px; }
    .brand-logo[b-znsdppf188] { height: 38px; }
    .mobile-menu[b-znsdppf188] { max-height: calc(100vh - 102px); }
}

@media (max-width: 575.98px) {
    .navbar-shell[b-znsdppf188] { width: min(100% - 1rem, 1440px); }
    .brand-logo[b-znsdppf188] { height: 36px; }
}

@media (prefers-reduced-motion: reduce) {
    .top-navbar *[b-znsdppf188], .top-navbar *[b-znsdppf188]::before, .top-navbar *[b-znsdppf188]::after { transition-duration: 0.01ms !important; }
}
/* /Components/Pages/CookiePolicy.razor.rz.scp.css */
/* Scoped styles for policy pages */

.policy-container[b-bfp8p4moqo] {
    padding-top: 2rem;
    padding-bottom: 3rem;
}

.policy-header .lead[b-bfp8p4moqo] {
    color: var(--bs-secondary-color, #6c757d);
}

.policy-card[b-bfp8p4moqo] {
    border: 1px solid var(--border-color, rgba(0, 0, 0, 0.08));
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    transition: box-shadow 150ms ease;
}

.policy-card:hover[b-bfp8p4moqo] {
    /* Keep subtle elevation without movement */
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
}

.section-title[b-bfp8p4moqo] {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-weight: 600;
    font-size: 1.125rem;
    margin-bottom: .75rem;
    color: var(--bs-emphasis-color, #212529);
    border-bottom: 1px solid var(--border-color, rgba(0, 0, 0, 0.08));
    padding-bottom: .25rem;
}

.section-title i[b-bfp8p4moqo] {
    color: var(--bs-primary, #0d6efd);
}

.policy-card .card-body>section+section[b-bfp8p4moqo] {
    margin-top: 1.25rem;
}
/* /Components/Pages/Dashboard.razor.rz.scp.css */
.dashboard-shell[b-q79w28nvbw] {
    max-width: 1180px;
    margin: 0 auto;
    padding: 2rem 1rem 3rem;
    color: var(--text-primary);
}

.dashboard-header[b-q79w28nvbw] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
    margin-bottom: 1.25rem;
}

.dashboard-kicker[b-q79w28nvbw],
.section-kicker[b-q79w28nvbw] {
    margin: 0 0 .35rem;
    color: var(--text-secondary);
    font-size: .78rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.dashboard-header h1[b-q79w28nvbw],
.attention-heading h2[b-q79w28nvbw],
.section-header h2[b-q79w28nvbw],
.dashboard-empty h2[b-q79w28nvbw] {
    margin: 0;
    letter-spacing: 0;
}

.dashboard-header h1[b-q79w28nvbw] {
    font-size: 2rem;
    font-weight: 800;
}

.dashboard-scope[b-q79w28nvbw] {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-top: .75rem;
    color: var(--text-secondary);
    font-size: .92rem;
}

.dashboard-scope span[b-q79w28nvbw] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .35rem .55rem;
    border: 1px solid var(--border-primary);
    border-radius: 999px;
    background: var(--surface-primary);
}

.dashboard-actions[b-q79w28nvbw] {
    display: flex;
    gap: .75rem;
    flex-wrap: wrap;
}

.dashboard-actions .btn[b-q79w28nvbw] {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
}

.status-summary[b-q79w28nvbw] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .85rem;
    margin-bottom: 1rem;
}

.summary-tile[b-q79w28nvbw] {
    min-height: 120px;
    padding: 1rem;
    border: 1px solid var(--border-primary);
    border-radius: 8px;
    background: var(--surface-primary);
    box-shadow: var(--shadow-sm);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border-top: 4px solid var(--primary-color);
}

.summary-tile strong[b-q79w28nvbw] {
    font-size: 2.05rem;
    line-height: 1;
}

.summary-label[b-q79w28nvbw],
.summary-note[b-q79w28nvbw] {
    color: var(--text-secondary);
    font-size: .9rem;
}

.summary-expired[b-q79w28nvbw] {
    border-top-color: var(--error-color);
}

.summary-soon[b-q79w28nvbw] {
    border-top-color: var(--warning-color);
}

.summary-current[b-q79w28nvbw] {
    border-top-color: #14834b;
}

.attention-panel[b-q79w28nvbw],
.dashboard-empty[b-q79w28nvbw],
.dashboard-loading[b-q79w28nvbw] {
    border: 1px solid var(--border-primary);
    border-radius: 8px;
    background: var(--surface-primary);
    box-shadow: var(--shadow-sm);
    padding: 1rem;
    margin-bottom: 1rem;
}

.attention-panel[b-q79w28nvbw] {
    border-left: 5px solid #14834b;
}

.attention-panel.status-soon[b-q79w28nvbw] {
    border-left-color: var(--warning-color);
}

.attention-panel.status-expired[b-q79w28nvbw] {
    border-left-color: var(--error-color);
}

.attention-panel.status-missing[b-q79w28nvbw] {
    border-left-color: var(--text-muted);
}

.attention-heading[b-q79w28nvbw],
.section-header[b-q79w28nvbw] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .85rem;
}

.attention-heading h2[b-q79w28nvbw],
.section-header h2[b-q79w28nvbw],
.dashboard-empty h2[b-q79w28nvbw] {
    font-size: 1.25rem;
    font-weight: 800;
}

.status-pill[b-q79w28nvbw] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .35rem .55rem;
    border-radius: 999px;
    font-size: .78rem;
    font-weight: 800;
    border: 1px solid transparent;
    white-space: nowrap;
}

.status-pill.status-current[b-q79w28nvbw],
.doc-status-dot.status-current[b-q79w28nvbw] {
    color: #0f6b3d;
    background: #e8f7ef;
    border-color: #b9e6ca;
}

.status-pill.status-soon[b-q79w28nvbw],
.doc-status-dot.status-soon[b-q79w28nvbw] {
    color: #92400e;
    background: var(--warning-subtle);
    border-color: #f5c56d;
}

.status-pill.status-expired[b-q79w28nvbw],
.doc-status-dot.status-expired[b-q79w28nvbw] {
    color: #991b1b;
    background: var(--error-subtle);
    border-color: #f2aaaa;
}

.status-pill.status-missing[b-q79w28nvbw],
.doc-status-dot.status-missing[b-q79w28nvbw] {
    color: #475569;
    background: #eef2f7;
    border-color: #cbd5e1;
}

.attention-list[b-q79w28nvbw] {
    display: grid;
    gap: .5rem;
}

.attention-row[b-q79w28nvbw],
.section-document-row[b-q79w28nvbw] {
    display: grid;
    align-items: center;
    gap: .75rem;
    text-decoration: none;
    color: inherit;
    border: 1px solid var(--border-primary);
    border-radius: 8px;
    background: var(--surface-secondary);
    transition: background-color .15s ease, border-color .15s ease, transform .15s ease;
}

.attention-row[b-q79w28nvbw] {
    grid-template-columns: auto 1fr auto;
    padding: .75rem;
}

.attention-row:hover[b-q79w28nvbw],
.section-document-row:hover[b-q79w28nvbw] {
    background: var(--surface-hover);
    border-color: var(--border-secondary);
    transform: translateY(-1px);
}

.attention-icon[b-q79w28nvbw] {
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
}

.attention-row.status-expired .attention-icon[b-q79w28nvbw] {
    color: var(--error-color);
    background: var(--error-subtle);
}

.attention-row.status-soon .attention-icon[b-q79w28nvbw] {
    color: var(--warning-color);
    background: var(--warning-subtle);
}

.attention-main[b-q79w28nvbw],
.attention-date[b-q79w28nvbw] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.attention-main strong[b-q79w28nvbw],
.doc-name[b-q79w28nvbw] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.attention-main span[b-q79w28nvbw],
.attention-date span[b-q79w28nvbw],
.doc-date[b-q79w28nvbw],
.next-expiration span[b-q79w28nvbw] {
    color: var(--text-secondary);
    font-size: .85rem;
}

.attention-date[b-q79w28nvbw] {
    text-align: right;
}

.all-clear[b-q79w28nvbw] {
    display: flex;
    align-items: center;
    gap: .65rem;
    padding: .9rem;
    border-radius: 8px;
    background: #e8f7ef;
    color: #0f6b3d;
    font-weight: 700;
}

.document-sections[b-q79w28nvbw] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .85rem;
}

.document-section[b-q79w28nvbw] {
    border: 1px solid var(--border-primary);
    border-top: 4px solid #14834b;
    border-radius: 8px;
    background: var(--surface-primary);
    box-shadow: var(--shadow-sm);
    padding: 1rem;
}

.document-section.status-soon[b-q79w28nvbw] {
    border-top-color: var(--warning-color);
}

.document-section.status-expired[b-q79w28nvbw] {
    border-top-color: var(--error-color);
}

.document-section.status-missing[b-q79w28nvbw] {
    border-top-color: var(--text-muted);
}

.section-metrics[b-q79w28nvbw] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .5rem;
    margin: .75rem 0;
}

.section-metrics span[b-q79w28nvbw],
.next-expiration[b-q79w28nvbw] {
    padding: .6rem;
    border-radius: 8px;
    background: var(--surface-secondary);
    color: var(--text-secondary);
    font-size: .85rem;
}

.section-metrics strong[b-q79w28nvbw] {
    display: block;
    color: var(--text-primary);
    font-size: 1.1rem;
}

.next-expiration[b-q79w28nvbw] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: .75rem;
}

.next-expiration strong[b-q79w28nvbw] {
    color: var(--text-primary);
}

.section-documents[b-q79w28nvbw] {
    display: grid;
    gap: .4rem;
}

.section-document-row[b-q79w28nvbw] {
    grid-template-columns: auto 1fr auto;
    padding: .55rem .65rem;
}

.doc-status-dot[b-q79w28nvbw] {
    width: .65rem;
    height: .65rem;
    border-radius: 999px;
    border: 1px solid transparent;
}

.dashboard-empty[b-q79w28nvbw],
.dashboard-loading[b-q79w28nvbw] {
    display: flex;
    align-items: center;
    gap: 1rem;
    min-height: 140px;
}

.dashboard-empty > i[b-q79w28nvbw] {
    font-size: 2rem;
    color: var(--primary-color);
}

.dashboard-empty p[b-q79w28nvbw] {
    margin: .25rem 0 0;
    color: var(--text-secondary);
}

.dashboard-empty-danger > i[b-q79w28nvbw] {
    color: var(--error-color);
}

.dashboard-loading[b-q79w28nvbw] {
    justify-content: center;
    color: var(--text-secondary);
    font-weight: 700;
}

@media (max-width: 992px) {
    .status-summary[b-q79w28nvbw],
    .document-sections[b-q79w28nvbw] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-header[b-q79w28nvbw] {
        flex-direction: column;
    }
}

@media (max-width: 640px) {
    .dashboard-shell[b-q79w28nvbw] {
        padding: 1.25rem .75rem 2rem;
    }

    .status-summary[b-q79w28nvbw],
    .document-sections[b-q79w28nvbw],
    .section-metrics[b-q79w28nvbw] {
        grid-template-columns: 1fr;
    }

    .attention-row[b-q79w28nvbw] {
        grid-template-columns: auto 1fr;
    }

    .attention-date[b-q79w28nvbw] {
        grid-column: 2;
        text-align: left;
    }
}
/* /Components/Pages/MigrationReadiness.razor.rz.scp.css */
.migration-readiness[b-5uanazqnub] { max-width: 1320px; }
.assessment-actions[b-5uanazqnub] { min-width: 260px; padding: .8rem 1rem; background: #f7f9fc; border: 1px solid #e1e7ef; border-radius: .65rem; }
.empty-state[b-5uanazqnub] { padding: 4rem 1rem; text-align: center; color: #66758a; background: #f8fafc; border: 1px dashed #cfd8e5; border-radius: .75rem; }
.empty-state > i[b-5uanazqnub] { color: #7391bd; font-size: 2rem; margin-bottom: 1rem; }
.metric-card[b-5uanazqnub] { min-height: 92px; display: flex; align-items: center; gap: .8rem; padding: 1rem; background: #fff; border: 1px solid #e1e7ef; border-radius: .65rem; box-shadow: 0 3px 12px rgba(22, 48, 88, .05); }
.metric-card > i[b-5uanazqnub] { width: 34px; height: 34px; display: grid; place-items: center; color: #2453a2; background: #eaf1ff; border-radius: .55rem; }
.metric-card > div[b-5uanazqnub] { display: flex; flex-direction: column; }
.metric-card strong[b-5uanazqnub] { color: #20334e; font-size: 1.4rem; line-height: 1.1; }
.metric-card span[b-5uanazqnub] { color: #708096; font-size: .75rem; }
.metric-good > i[b-5uanazqnub] { color: #16754a; background: #e5f7ef; }
.metric-warning > i[b-5uanazqnub] { color: #9a5c00; background: #fff3d9; }
.review-filter[b-5uanazqnub] { width: 160px; }
code[b-5uanazqnub] { color: #415775; font-size: .75rem; }
@media (max-width: 767.98px) { .assessment-actions[b-5uanazqnub] { width: 100%; } .review-filter[b-5uanazqnub] { width: 100%; } }
/* /Components/Pages/OperationalReadiness.razor.rz.scp.css */
.operations-page[b-jbt4u1hgas] { max-width: 1320px; }
.objective-grid[b-jbt4u1hgas] { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .8rem; margin: 0; }
.objective-grid > div[b-jbt4u1hgas] { padding: .85rem; background: #f7f9fc; border: 1px solid #e1e7ef; border-radius: .55rem; }
.objective-grid dt[b-jbt4u1hgas] { color: #2b4366; font-size: .8rem; }
.objective-grid dd[b-jbt4u1hgas] { margin: .2rem 0 0; color: #718096; font-size: .75rem; }
code[b-jbt4u1hgas] { color: #415775; font-size: .75rem; }
@media (max-width: 575.98px) { .objective-grid[b-jbt4u1hgas] { grid-template-columns: 1fr; } }
/* /Components/Pages/Portfolio.razor.rz.scp.css */
.portfolio-header[b-e02vvid9vt]{display:flex;justify-content:space-between;align-items:end;gap:1rem}.portfolio-header h1[b-e02vvid9vt]{font-size:2rem;margin:.1rem 0}.portfolio-header p[b-e02vvid9vt]{color:#64748b;margin:0}.eyebrow[b-e02vvid9vt]{text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:700;color:#3159a7!important}.metric-grid[b-e02vvid9vt]{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-top:1rem;color:#64748b}.metric-grid strong[b-e02vvid9vt]{display:block;color:#172033;font-size:1.35rem}.assignment-controls[b-e02vvid9vt]{min-width:min(100%,28rem)}@media(max-width:767px){.portfolio-header[b-e02vvid9vt]{align-items:start;flex-direction:column}.assignment-controls[b-e02vvid9vt]{width:100%}}
/* /Components/Pages/PrivacyPolicy.razor.rz.scp.css */
/* Scoped styles for policy pages */

.policy-container[b-1o00d6dqu0] {
    padding-top: 2rem;
    padding-bottom: 3rem;
}

.policy-header .lead[b-1o00d6dqu0] {
    color: var(--bs-secondary-color, #6c757d);
}

.policy-card[b-1o00d6dqu0] {
    border: 1px solid var(--border-color, rgba(0, 0, 0, 0.08));
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    transition: box-shadow 150ms ease;
}

.policy-card:hover[b-1o00d6dqu0] {
    /* Keep subtle elevation without movement */
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
}

.section-title[b-1o00d6dqu0] {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-weight: 600;
    font-size: 1.125rem;
    margin-bottom: .75rem;
    color: var(--bs-emphasis-color, #212529);
    border-bottom: 1px solid var(--border-color, rgba(0, 0, 0, 0.08));
    padding-bottom: .25rem;
}

.section-title i[b-1o00d6dqu0] {
    color: var(--bs-primary, #0d6efd);
}

.policy-card .card-body>section+section[b-1o00d6dqu0] {
    margin-top: 1.25rem;
}
/* /Components/Pages/Reports.razor.rz.scp.css */
.reports-page[b-80pd277vqj] { max-width: 1320px; }
.metric-card[b-80pd277vqj] { padding: 1.1rem; background: #fff; border: 1px solid #e1e7ef; border-radius: .7rem; box-shadow: 0 3px 12px rgba(22,48,88,.05); }
.metric-value[b-80pd277vqj] { color: #1c4c99; font-size: 1.55rem; font-weight: 750; margin-bottom: .4rem; }
.metric-denominator[b-80pd277vqj] { display: inline-block; margin-bottom: .55rem; padding: .12rem .4rem; color: #52657e; background: #edf2f8; border-radius: .3rem; font-size: .7rem; font-weight: 700; }
.metric-note[b-80pd277vqj] { color: #8a5a10; }
/* /Components/Pages/Search.razor.rz.scp.css */
/* Search Page Specific Styles */
.search-container[b-5ip9uzktn9] {
    /* Local design tokens with safe fallbacks - use global brand variables */
    --surface-primary: #ffffff;
    --surface-secondary: #f8fafc;
    --text-primary: #0f172a;
    --text-secondary: #475569;
    --border-primary: #e2e8f0;
    --radius-md: 10px;
    --radius-lg: 12px;
    --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.06);
    --shadow-md: 0 10px 24px rgba(0, 0, 0, 0.12);
    --shadow-soft: 0 6px 18px rgba(0, 0, 0, 0.10);
    --secondary: var(--color-secondary, var(--color-accent-2, #6610f2));

    padding: 2rem 1rem;
    max-width: 100%;
}

/* Searching state: subtle progress cursor without blocking interactions */
.search-container.searching[b-5ip9uzktn9] {
    cursor: progress;
}

/* Search alerts: add breathing room and center the close button */
.search-container .card-body .alert[b-5ip9uzktn9] {
    margin-top: 0.75rem;
    /* space away from the buttons */
    margin-bottom: 0.25rem;
    padding-right: 2.75rem;
    /* room for the close button */
    border-radius: 0.5rem;
}

.search-container .card-body .alert .btn-close[b-5ip9uzktn9] {
    position: absolute;
    /* keep Bootstrap’s positioning, but center it */
    right: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
}

/* Mobile screens (768px and below) */
@media (max-width: 768px) {
    .search-container[b-5ip9uzktn9] {
        padding: 1rem 0.75rem;
    }

    /* Hide table header fully */
    .modern-table thead[b-5ip9uzktn9],
    .modern-table thead tr[b-5ip9uzktn9],
    .modern-table thead th[b-5ip9uzktn9] {
        display: none !important;
        height: 0;
        padding: 0;
        border: 0;
    }

    .modern-table[b-5ip9uzktn9] {
        width: 100%;
        border: 0;
        box-shadow: none;
        background: transparent;
    }

    /* Professional card design for mobile */
    .modern-table tbody tr[b-5ip9uzktn9] {
        display: block;
        background: #ffffff;
        border: 1px solid #e5e7eb;
        border-radius: 16px;
        padding: 1.25rem;
        margin-bottom: 1rem;
        box-shadow: 0 8px 25px rgba(0, 0, 0, 0.12);
        position: relative;
        overflow: hidden;
        transition: all 0.3s ease;
        transform: translateY(0);
    }

    .modern-table tbody tr:hover[b-5ip9uzktn9] {
        /* Removed translate transform to avoid stacking issues with dropdowns */
        box-shadow: 0 12px 35px rgba(0, 0, 0, 0.18);
        border-color: #d1d5db;
    }

    .modern-table tbody tr[b-5ip9uzktn9]::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 4px;
        background: linear-gradient(90deg, #0d6efd 0%, #6366f1 50%, #8b5cf6 100%);
    }

    .modern-table tbody td[b-5ip9uzktn9] {
        border: 0 !important;
        padding: 0 !important;
        background: transparent;
        display: block;
        margin-bottom: 0.75rem;
    }

    .modern-table tbody td:last-child[b-5ip9uzktn9] {
        margin-bottom: 0;
    }

    /* File info section */
    .file-info-cell[b-5ip9uzktn9] {
        margin-bottom: 1rem;
    }

    .file-info-cell .d-flex[b-5ip9uzktn9] {
        align-items: flex-start;
        gap: 0.75rem;
    }

    .file-type-chip[b-5ip9uzktn9] {
        height: 32px;
        padding: 0 0.75rem;
        font-size: 0.75rem;
        font-weight: 600;
        flex-shrink: 0;
        border-radius: 8px;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
    }

    .filename-text[b-5ip9uzktn9] {
        font-size: 1.1rem;
        font-weight: 600;
        color: #1f2937;
        line-height: 1.4;
        margin-bottom: 0.25rem;
        word-break: break-word;
    }

    .filename-container[b-5ip9uzktn9] {
        flex-direction: row;
        align-items: center;
        gap: 0.25rem;
        display: flex;
    }

    /* In mobile, make edit button closer to the filename */
    .filename-container .icon-btn[b-5ip9uzktn9] {
        margin-left: 0.25rem !important;
    }

    /* Phone and date section - side by side layout */
    .phone-cell[b-5ip9uzktn9],
    .date-cell[b-5ip9uzktn9] {
        margin-bottom: 0.75rem;
        position: relative;
    }

    /* Create a flex container for phone and date */
    .phone-cell[b-5ip9uzktn9] {
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin-bottom: 1rem;
    }

    .phone-cell[b-5ip9uzktn9]::before {
        content: "📞 Customer Phone";
        font-size: 0.75rem;
        font-weight: 600;
        color: #6b7280;
        text-transform: uppercase;
        letter-spacing: 0.5px;
        flex-shrink: 0;
        margin-right: 1rem;
        align-self: center;
    }

    .date-cell[b-5ip9uzktn9]::before {
        content: "📅 Upload Date";
        display: block;
        font-size: 0.75rem;
        font-weight: 600;
        color: #6b7280;
        margin-bottom: 0.25rem;
        text-transform: uppercase;
        letter-spacing: 0.5px;
    }

    .phone-container[b-5ip9uzktn9] {
        flex-direction: row;
        align-items: center;
        gap: 0.5rem;
        margin-left: auto;
    }
}

.phone-number[b-5ip9uzktn9] {
    font-size: 0.9rem;
    padding: 0.5rem 0.75rem;
    background: #f9fafb;
    color: #374151;
    border: 1px solid #d1d5db;
    border-radius: 8px;
    font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
    font-weight: 500;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.upload-info[b-5ip9uzktn9] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.upload-date[b-5ip9uzktn9] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #1f2937;
}

.upload-time[b-5ip9uzktn9] {
    font-size: 0.8rem;
    color: #6b7280;
    font-weight: 400;
}

/* Actions section */
/* On mobile cards we add spacing and separator */
@media (max-width: 768px) {
    .actions-cell[b-5ip9uzktn9] {
        margin-top: 1rem;
        padding-top: 1rem;
        border-top: 1px solid #f3f4f6;
    }
}

/* Keep Actions column aligned and compact on desktop */
@media (min-width: 769px) {

    th.actions-col[b-5ip9uzktn9],
    td.actions-cell[b-5ip9uzktn9] {
        width: auto;
        /* allow percentage-based .actions-col width to apply */
        /* fixed width so buttons line up */
        text-align: right;
        white-space: nowrap;
    }

    /* Compact icon-only toggle button */
    .actions-cell .actions-toggle[b-5ip9uzktn9] {
        padding: 0.375rem 0.5rem;
        min-width: 44px;
        height: 36px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 8px;
    }
}

.actions-cell .btn-group[b-5ip9uzktn9] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.actions-cell .btn[b-5ip9uzktn9] {
    border-radius: 10px !important;
    font-size: 0.9rem;
    font-weight: 500;
    padding: 0.625rem 1rem;
    min-width: auto;
    flex: 1;
    min-width: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    border: 1px solid #e5e7eb;
    transition: all 0.2s ease;
}

.actions-cell .btn i[b-5ip9uzktn9] {
    font-size: 1rem;
}

.actions-cell .btn .d-none[b-5ip9uzktn9] {
    display: inline !important;
}

/* Edit buttons */
.filename-container .btn[b-5ip9uzktn9],
.phone-container .btn[b-5ip9uzktn9] {
    min-width: 36px;
    height: 36px;
    padding: 0.5rem;
    border-radius: 8px;
    border: 1px solid #e5e7eb;
    background: #f9fafb;
    color: #6b7280;
    transition: all 0.2s ease;
}

.filename-container .btn:hover[b-5ip9uzktn9],
.phone-container .btn:hover[b-5ip9uzktn9] {
    background: #f3f4f6;
    color: #374151;
    border-color: #d1d5db;
}

/* Edit forms */
.edit-filename-container[b-5ip9uzktn9],
.edit-phone-container[b-5ip9uzktn9] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    width: 100%;
}

.edit-filename-container input[b-5ip9uzktn9],
.edit-phone-container input[b-5ip9uzktn9] {
    font-size: 0.95rem;
    padding: 0.75rem;
    border-radius: 8px;
    border: 1px solid #d1d5db;
}

.edit-actions[b-5ip9uzktn9] {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-start;
}

.edit-actions .btn[b-5ip9uzktn9] {
    padding: 0.5rem 1rem;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 500;
}

/* Results header adjustments */
.search-results-header[b-5ip9uzktn9] {
    padding: 1rem 0;
}

.search-results-header .d-flex[b-5ip9uzktn9] {
    flex-direction: column;
    gap: 0.75rem;
    align-items: flex-start;
}

.results-title[b-5ip9uzktn9] {
    font-size: 1.25rem;
    font-weight: 700;
}

.results-criteria[b-5ip9uzktn9] {
    font-size: 0.8rem;
    padding: 0.5rem 0.75rem;
    border-radius: 8px;
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    width: auto;
    align-self: flex-start;
}

/* Group header adjustments */
.group-header-card[b-5ip9uzktn9] {
    padding: 1rem;
    border-radius: 12px;
    margin-bottom: 1rem;
}

.group-title[b-5ip9uzktn9] {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
}

/* Better mobile layout for group controls */
.group-controls[b-5ip9uzktn9] {
    display: flex;
    flex-direction: row;
    gap: 0.5rem;
    align-items: center;
    width: 100%;
    flex-wrap: wrap;
}

.group-controls .d-flex[b-5ip9uzktn9] {
    flex-direction: row;
    gap: 0.75rem;
    align-items: center;
    flex-wrap: wrap;
}

.group-controls .form-select[b-5ip9uzktn9] {
    width: auto !important;
    max-width: 80px !important;
    font-size: 0.8rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
}

.group-controls .form-label[b-5ip9uzktn9] {
    font-size: 0.75rem;
    margin: 0;
    white-space: nowrap;
}

.group-controls .text-muted[b-5ip9uzktn9] {
    font-size: 0.7rem;
    margin: 0;
    white-space: nowrap;
    color: #6c757d;
    background: none;
    border: none;
    padding: 0;
}

.pagination-controls[b-5ip9uzktn9] {
    display: inline-flex;
    gap: 0.25rem;
    margin-left: auto;
}

.pagination-controls .btn[b-5ip9uzktn9] {
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-weight: 400;
    font-size: 0.75rem;
    min-width: 32px;
    height: 32px;
    border: 1px solid #dee2e6;
    background: #fff;
    color: #6c757d;
    flex: none;
    max-width: none;
}

.pagination-controls .btn:hover:not(:disabled)[b-5ip9uzktn9] {
    background: #f8f9fa;
    border-color: #adb5bd;
    color: #495057;
}

.pagination-controls .btn:disabled[b-5ip9uzktn9] {
    opacity: 0.4;
    cursor: not-allowed;
}

/* Keep hover effects for desktop feel on mobile */
.modern-table tbody tr:hover[b-5ip9uzktn9] {
    /* Removed translate transform to avoid stacking context issues with dropdowns */
    box-shadow: 0 12px 35px rgba(0, 0, 0, 0.18) !important;
    border-color: #d1d5db !important;
}

.actions-cell .btn[b-5ip9uzktn9]::before {
    display: none;
}

.actions-cell .btn:not(:disabled):hover[b-5ip9uzktn9] {
    transform: none !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
}


.table td[b-5ip9uzktn9] {
    vertical-align: middle;
    font-size: 0.9rem;
    padding: 0.75rem 0.5rem;
}

.table-hover tbody tr:hover[b-5ip9uzktn9] {
    background-color: rgba(13, 110, 253, .02);
    /* Removed translate transform to avoid stacking context issues with dropdowns */
    box-shadow: var(--shadow-sm);
    transition: box-shadow .2s ease;
}

.table-secondary[b-5ip9uzktn9] {
    background-color: rgba(108, 117, 125, 0.1) !important;
    opacity: 0.7;
}

/* Document Groups */
.document-group-section[b-5ip9uzktn9] {
    margin-bottom: 2.5rem;
}

.group-header-card[b-5ip9uzktn9] {
    background: var(--surface-primary);
    padding: 1rem 1.25rem;
    border-radius: var(--radius-lg);
    border: 1px solid var(--border-primary);
    box-shadow: var(--shadow-sm);
    position: relative;
    overflow: hidden;
}

/* Ensure dropdown menus are not clipped and appear above other content */
.search-container :where(.dropdown-menu)[b-5ip9uzktn9] {
    z-index: 2000;
    /* above cards/tables, below modals */
}

/* Avoid creating stacking/overflow traps in tables and containers */
.search-container .table-responsive[b-5ip9uzktn9],
.search-container .document-group-section[b-5ip9uzktn9],
.search-container .modern-table[b-5ip9uzktn9],
.search-container .modern-table tbody tr[b-5ip9uzktn9],
.search-container .actions-cell[b-5ip9uzktn9],
.search-container .file-info-cell[b-5ip9uzktn9] {
    overflow: visible !important;
}

.group-header-card[b-5ip9uzktn9]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #0d6efd, #6366f1, #8b5cf6);
}

.group-title[b-5ip9uzktn9] {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 700;
    color: #1e293b;
    display: flex;
    align-items: center;
    letter-spacing: -0.01em;
}

.group-title i[b-5ip9uzktn9] {
    font-size: 1.4rem;
    margin-right: 0.75rem;
    color: #0d6efd;
    filter: drop-shadow(0 2px 4px rgba(13, 110, 253, 0.2));
}

/* Pagination controls */
.group-controls .form-select[b-5ip9uzktn9] {
    min-width: 84px;
}

.pagination-controls .btn[b-5ip9uzktn9] {
    padding: 0.15rem 0.45rem;
}

.pagination-controls .btn:disabled[b-5ip9uzktn9] {
    opacity: .5;
}

/* Search Results Header */
.search-results-header[b-5ip9uzktn9] {
    padding: 1.5rem 0;
    margin-bottom: 0.5rem;
}

.search-results-header .d-flex[b-5ip9uzktn9] {
    flex-direction: column;
    gap: 1rem;
    align-items: flex-start;
}

.results-title[b-5ip9uzktn9] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
    letter-spacing: -0.01em;
    margin: 0;
}

.results-criteria[b-5ip9uzktn9] {
    background: linear-gradient(135deg, #f1f5f9 0%, #e2e8f0 100%);
    padding: 0.75rem 1.25rem;
    border-radius: 0.5rem;
    border: 1px solid #d1d9e0;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
    font-weight: 500;
    color: #64748b;
    align-self: flex-start;
}

/* Document Tables */
.documents-tables[b-5ip9uzktn9] {
    margin-top: 1rem;
}

/* Modern Table Styles */
.modern-table[b-5ip9uzktn9] {
    border-radius: var(--radius-lg);
    /* Allow dropdown menus to overflow the table bounds */
    overflow: visible;
    margin-bottom: 0;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-primary);
}

.modern-table thead th[b-5ip9uzktn9] {
    background: var(--surface-secondary);
    border-bottom: 1px solid var(--border-primary);
    font-weight: 600;
    font-size: .8rem;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: var(--text-secondary);
    padding: .75rem 1rem;
    white-space: nowrap;
    position: relative;
}

.modern-table thead th[b-5ip9uzktn9]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 1rem;
    right: 1rem;
    height: 1px;
    background: linear-gradient(90deg, transparent, #e0e6ed, transparent);
}

.modern-table tbody td[b-5ip9uzktn9] {
    padding: .5rem .75rem;
    vertical-align: middle;
    border-bottom: 1px solid var(--border-primary);
    transition: background-color .2s ease;
}

.modern-table tbody tr:hover[b-5ip9uzktn9] {
    background-color: rgba(13, 110, 253, 0.02);
    /* Removed transform to avoid creating a stacking context that can place sibling rows above dropdowns */
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.modern-table tbody tr:last-child td[b-5ip9uzktn9] {
    border-bottom: none;
}

.modern-table tbody tr.table-warning[b-5ip9uzktn9] {
    background-color: rgba(255, 193, 7, 0.1);
    opacity: 0.8;
}

/* Table Column Widths */
.file-col[b-5ip9uzktn9] {
    width: 50%;
    min-width: 250px;
}

.phone-col[b-5ip9uzktn9] {
    width: 20%;
    min-width: 150px;
}

.date-col[b-5ip9uzktn9] {
    width: 18%;
    min-width: 140px;
}

/* New: customer column width */
.customer-col[b-5ip9uzktn9] {
    width: 18%;
    min-width: 140px;
}

/* size column removed */

.actions-col[b-5ip9uzktn9] {
    width: 14%;
    min-width: 140px;
}

/* Pull file-info content tight */
.file-info-cell .d-flex[b-5ip9uzktn9] {
    gap: 0.4rem;
}

/* File Info Cell */
.file-info-cell[b-5ip9uzktn9] {
    min-width: 0;
}

/* First column (file) slight left trim to pull closer to edge/checkbox */
.modern-table tbody td.file-info-cell[b-5ip9uzktn9] {
    padding-left: .5rem !important;
}

.file-info-cell .form-check-input[b-5ip9uzktn9] {
    margin-right: .4rem;
}

/* Unified file type chip */
.file-type-chip[b-5ip9uzktn9] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 28px;
    padding: 0 0.5rem;
    border-radius: 999px;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: .03em;
    border: 1px solid var(--border-primary);
    background: #f8fafc;
    color: #334155;
    white-space: nowrap;
}

.file-details[b-5ip9uzktn9] {
    flex: 1;
    min-width: 0;
}

.filename-text[b-5ip9uzktn9] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #1e293b;
    margin: 0;
    line-height: 1.4;
    word-break: break-word;
}

.filename-container[b-5ip9uzktn9] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* File Type Badge */
/* Backwards-compatible badge colors for chip */
.file-type-chip.bg-danger[b-5ip9uzktn9] {
    background-color: #fee2e2 !important;
    color: #b91c1c !important;
    border-color: #fecaca !important;
}

.file-type-chip.bg-warning[b-5ip9uzktn9] {
    background-color: #fef9c3 !important;
    color: #854d0e !important;
    border-color: #fde68a !important;
}

.file-type-chip.bg-info[b-5ip9uzktn9] {
    background-color: #cffafe !important;
    color: #155e75 !important;
    border-color: #a5f3fc !important;
}

.file-type-chip.bg-secondary[b-5ip9uzktn9] {
    background-color: #e2e8f0 !important;
    color: #334155 !important;
    border-color: #cbd5e1 !important;
}

.file-type-badge.bg-danger[b-5ip9uzktn9] {
    background-color: #dc3545 !important;
    color: white !important;
}

.file-type-badge.bg-warning[b-5ip9uzktn9] {
    background-color: #ffc107 !important;
    color: #212529 !important;
}

.file-type-badge.bg-info[b-5ip9uzktn9] {
    background-color: #0dcaf0 !important;
    color: #212529 !important;
}

.file-type-badge.bg-secondary[b-5ip9uzktn9] {
    background-color: #6c757d !important;
    color: white !important;
}

/* Phone Cell */
.phone-cell[b-5ip9uzktn9] {
    white-space: nowrap;
}

.phone-container[b-5ip9uzktn9] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.phone-number[b-5ip9uzktn9] {
    background: linear-gradient(135deg, #f8fafb 0%, #ecf0f3 100%);
    color: #e11d48;
    padding: 0.375rem 0.75rem;
    border-radius: 0.375rem;
    font-size: 0.85rem;
    font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
    font-weight: 600;
    border: 1px solid #e0e6ed;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

/* Date Cell - Simplified */
.date-cell[b-5ip9uzktn9] {
    white-space: nowrap;
}

.upload-info[b-5ip9uzktn9] {
    text-align: left;
}

.upload-date[b-5ip9uzktn9] {
    font-weight: 600;
    color: #1e293b;
    font-size: 0.9rem;
    margin-bottom: 0;
    line-height: 1.3;
}

.upload-time[b-5ip9uzktn9] {
    font-size: 0.75rem;
    color: #64748b;
    font-weight: 400;
    margin-top: 0.125rem;
}

/* size cell removed */

/* Actions Cell */
.actions-cell[b-5ip9uzktn9] {
    min-width: 140px;
}

/* Ensure actions column/header align right even if other rules conflict */
th.actions-col[b-5ip9uzktn9],
td.actions-cell[b-5ip9uzktn9] {
    text-align: right;
}

/* Ensure the dropdown menu stacks above adjacent rows */
.actions-cell .dropdown-menu[b-5ip9uzktn9] {
    z-index: 3050;
    background-color: #ffffff;
    border: 1px solid #e5e7eb;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.12);
}

.actions-cell .btn-group[b-5ip9uzktn9] {
    display: flex;
    gap: 0.25rem;
    justify-content: flex-end;
    flex-wrap: wrap;
}

.actions-cell .btn[b-5ip9uzktn9] {
    border-radius: var(--radius-md) !important;
    transition: transform .12s ease, box-shadow .2s ease;
    font-weight: 500;
    padding: 0.375rem 0.5rem;
    border: 1px solid var(--border-primary);
    position: relative;
    overflow: hidden;
    min-width: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    white-space: nowrap;
}

/* Align dropdown toggle to the right edge of the cell */
.actions-cell .dropdown[b-5ip9uzktn9],
.actions-cell .actions-toggle[b-5ip9uzktn9] {
    display: inline-flex;
}

.actions-cell .dropdown[b-5ip9uzktn9] {
    width: auto;
    position: relative;
    /* anchor for dropdown-menu positioning */
}

.actions-cell .dropdown.show[b-5ip9uzktn9] {
    z-index: 3000;
}

.actions-cell .btn[b-5ip9uzktn9]::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.6s;
}

.actions-cell .btn:hover[b-5ip9uzktn9]::before {
    left: 100%;
}

.actions-cell .btn i[b-5ip9uzktn9] {
    font-size: 0.875rem;
    transition: transform 0.2s ease;
}

.actions-cell .btn:not(:disabled):hover[b-5ip9uzktn9] {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.15);
}

.actions-cell .btn:not(:disabled):hover i[b-5ip9uzktn9] {
    transform: scale(1.1);
}

.actions-cell .btn:disabled[b-5ip9uzktn9] {
    opacity: 0.5;
    cursor: not-allowed;
    transform: none !important;
    box-shadow: none !important;
}

/* View Button */
.actions-cell .btn-outline-primary[b-5ip9uzktn9] {
    background: var(--surface-primary);
    border-color: var(--border-primary);
    color: var(--primary-color);
}

.actions-cell .btn-outline-primary:not(:disabled):hover[b-5ip9uzktn9] {
    background: var(--primary-subtle);
    border-color: var(--primary-color);
    color: var(--primary-hover);
    box-shadow: var(--shadow-md);
}

/* Download Button */
.actions-cell .btn-outline-success[b-5ip9uzktn9] {
    background: var(--surface-primary);
    border-color: var(--border-primary);
    color: #198754;
}

.actions-cell .btn-outline-success:not(:disabled):hover[b-5ip9uzktn9] {
    background: #ecfdf5;
    border-color: #198754;
    color: #157347;
    box-shadow: var(--shadow-md);
}

/* Delete Button */
.actions-cell .btn-outline-danger[b-5ip9uzktn9] {
    background: var(--surface-primary);
    border-color: var(--border-primary);
    color: #dc3545;
}

.actions-cell .btn-outline-danger:not(:disabled):hover[b-5ip9uzktn9] {
    background: #fee2e2;
    border-color: #dc3545;
    color: #bb2d3b;
    box-shadow: var(--shadow-md);
}

/* Edit Controls */
.edit-filename-container[b-5ip9uzktn9],
.edit-phone-container[b-5ip9uzktn9] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
}

.edit-filename-container input[b-5ip9uzktn9],
.edit-phone-container input[b-5ip9uzktn9] {
    flex: 1;
    min-width: 0;
}

.edit-actions[b-5ip9uzktn9] {
    display: flex;
    gap: 0.25rem;
    flex-shrink: 0;
}

.edit-actions .btn[b-5ip9uzktn9] {
    border-radius: 0.375rem;
    padding: 0.375rem 0.5rem;
    border: 1.5px solid;
    font-weight: 500;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    min-width: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.edit-actions .btn:hover[b-5ip9uzktn9] {
    transform: scale(1.05);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

/* Subtle Edit Buttons */
.filename-container .btn[b-5ip9uzktn9],
.phone-container .btn[b-5ip9uzktn9] {
    background: transparent;
    border: none;
    border-radius: 0.375rem;
    color: #94a3b8;
    padding: 0.25rem;
    font-size: 0.75rem;
    cursor: pointer;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 28px;
    opacity: 0.7;
}

.filename-container .btn:not(:disabled):hover[b-5ip9uzktn9],
.phone-container .btn:not(:disabled):hover[b-5ip9uzktn9] {
    background: rgba(100, 116, 139, 0.1);
    color: #475569;
    opacity: 1;
    transform: scale(1.1);
}

.filename-container .btn:disabled[b-5ip9uzktn9],
.phone-container .btn:disabled[b-5ip9uzktn9] {
    opacity: 0.3;
    cursor: not-allowed;
    transform: none !important;
}

.filename-container .btn i[b-5ip9uzktn9],
.phone-container .btn i[b-5ip9uzktn9] {
    font-size: 0.75rem;
    transition: transform 0.2s ease;
}

/* Professional Document Cards */
.document-card[b-5ip9uzktn9] {
    background: white;
    border: 1px solid #e0e6ed;
    border-radius: 1rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    height: 100%;
    display: flex;
    flex-direction: column;
    position: relative;
}

.document-card:hover[b-5ip9uzktn9] {
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12);
    border-color: #0d6efd;
}

.document-card.processing[b-5ip9uzktn9] {
    opacity: 0.75;
    background-color: #fafbfc;
    transform: none;
}

.document-card.processing[b-5ip9uzktn9]::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(45deg, transparent 30%, rgba(255, 255, 255, 0.3) 50%, transparent 70%);
    animation: shimmer-b-5ip9uzktn9 1.5s infinite;
    pointer-events: none;
}

@keyframes shimmer-b-5ip9uzktn9 {
    0% {
        transform: translateX(-100%);
    }

    100% {
        transform: translateX(100%);
    }
}

/* Card Header with File Info */
.doc-card-header[b-5ip9uzktn9] {
    padding: 1.5rem;
    background: linear-gradient(135deg, #ffffff 0%, #f8fafb 100%);
    border-bottom: 1px solid #eef2f6;
    display: flex;
    align-items: flex-start;
    gap: 1.25rem;
    position: relative;
}

.doc-card-header[b-5ip9uzktn9]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 1.5rem;
    right: 1.5rem;
    height: 1px;
    background: linear-gradient(90deg, transparent, #e0e6ed, transparent);
}

.file-icon-wrapper[b-5ip9uzktn9] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    background: linear-gradient(135deg, #ffffff 0%, #f8fafb 100%);
    border-radius: 0.875rem;
    border: 2px solid #e0e6ed;
    flex-shrink: 0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    transition: all 0.2s ease;
    position: relative;
    overflow: hidden;
}

.document-card:hover .file-icon-wrapper[b-5ip9uzktn9] {
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.icon-content[b-5ip9uzktn9] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
    position: relative;
    z-index: 2;
}

.file-type-badge[b-5ip9uzktn9] {
    font-size: 0.6rem;
    font-weight: 700;
    padding: 0.125rem 0.375rem;
    border-radius: 0.25rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    line-height: 1;
    min-width: 28px;
    text-align: center;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
    border: 1px solid rgba(255, 255, 255, 0.3);
}

/* Badge specific colors that work well in the icon wrapper */
.file-type-badge.bg-danger[b-5ip9uzktn9] {
    background-color: #dc3545 !important;
    color: white !important;
}

.file-type-badge.bg-warning[b-5ip9uzktn9] {
    background-color: #ffc107 !important;
    color: #212529 !important;
}

.file-type-badge.bg-info[b-5ip9uzktn9] {
    background-color: #0dcaf0 !important;
    color: #212529 !important;
}

.file-type-badge.bg-secondary[b-5ip9uzktn9] {
    background-color: #6c757d !important;
    color: white !important;
}

.file-type-badge.bg-light[b-5ip9uzktn9] {
    background-color: #f8f9fa !important;
    color: #212529 !important;
    border: 1px solid #dee2e6 !important;
}

.file-icon[b-5ip9uzktn9] {
    font-size: 1.5rem;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.1));
}

/* File Icon Colors */
.file-icon.text-danger[b-5ip9uzktn9] {
    color: #dc3545 !important;
}

.file-icon.text-warning[b-5ip9uzktn9] {
    color: #ffc107 !important;
}

.file-icon.text-info[b-5ip9uzktn9] {
    color: #0dcaf0 !important;
}

.file-icon.text-primary[b-5ip9uzktn9] {
    color: #0d6efd !important;
}

.file-icon.text-success[b-5ip9uzktn9] {
    color: #198754 !important;
}

.file-icon.text-secondary[b-5ip9uzktn9] {
    color: #6c757d !important;
}

.file-icon.text-purple[b-5ip9uzktn9] {
    color: #8b5cf6 !important;
}

.file-icon.text-dark[b-5ip9uzktn9] {
    color: #212529 !important;
}

.file-info[b-5ip9uzktn9] {
    flex: 1;
    min-width: 0;
}

.filename-container[b-5ip9uzktn9] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.filename[b-5ip9uzktn9] {
    font-size: 1.1rem;
    font-weight: 700;
    color: #1e293b;
    margin: 0;
    word-break: break-word;
    line-height: 1.4;
    flex: 1;
    letter-spacing: -0.01em;
}

.edit-btn[b-5ip9uzktn9] {
    background: transparent;
    border: none;
    border-radius: 0.375rem;
    padding: 0.25rem;
    color: #94a3b8;
    font-size: 0.75rem;
    cursor: pointer;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 24px;
    opacity: 0.7;
}

.edit-btn:hover:not(:disabled)[b-5ip9uzktn9] {
    background: rgba(100, 116, 139, 0.1);
    color: #475569;
    opacity: 1;
    transform: scale(1.1);
}

.edit-btn:disabled[b-5ip9uzktn9] {
    opacity: 0.3;
    cursor: not-allowed;
}

.file-metadata[b-5ip9uzktn9] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

/* file-size removed */

/* Edit Containers */
.edit-filename-container[b-5ip9uzktn9],
.edit-phone-container[b-5ip9uzktn9] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
}

.edit-filename-container input[b-5ip9uzktn9],
.edit-phone-container input[b-5ip9uzktn9] {
    flex: 1;
    min-width: 0;
}

.edit-actions[b-5ip9uzktn9] {
    display: flex;
    gap: 0.25rem;
    flex-shrink: 0;
}

/* Card Body with Details */
.doc-card-body[b-5ip9uzktn9] {
    padding: 1.5rem;
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    background: #ffffff;
}

.detail-row[b-5ip9uzktn9] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 0;
    border-bottom: 1px solid #f1f5f9;
    position: relative;
}

.detail-row:last-child[b-5ip9uzktn9] {
    border-bottom: none;
    padding-bottom: 0;
}

.detail-row[b-5ip9uzktn9]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, #f1f5f9, transparent);
}

.detail-row:last-child[b-5ip9uzktn9]::after {
    display: none;
}

.detail-label[b-5ip9uzktn9] {
    font-size: 0.8rem;
    font-weight: 700;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    display: flex;
    align-items: center;
    flex-shrink: 0;
    line-height: 1.2;
}

.detail-label i[b-5ip9uzktn9] {
    font-size: 1rem;
    color: #0d6efd;
    margin-right: 0.5rem;
    filter: drop-shadow(0 1px 2px rgba(13, 110, 253, 0.2));
}

.detail-value[b-5ip9uzktn9] {
    font-size: 0.95rem;
    color: #1e293b;
    font-weight: 600;
    text-align: right;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex: 1;
    justify-content: flex-end;
    min-width: 0;
}

.filename-container .btn[b-5ip9uzktn9],
.phone-container .btn[b-5ip9uzktn9] {
    border: none;
    padding: 0;
}

.doc-card-footer[b-5ip9uzktn9] {
    background: var(--surface-secondary);
    border-top: 1px solid var(--border-primary);
    margin-top: auto;
    position: relative;
}

.doc-card-footer[b-5ip9uzktn9]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 1.5rem;
    right: 1.5rem;
    height: 1px;
    background: linear-gradient(90deg, transparent, #e0e6ed, transparent);
}

.card-actions[b-5ip9uzktn9] {
    display: flex;
    gap: 0.75rem;
    justify-content: center;
}

.action-btn[b-5ip9uzktn9] {
    flex: 1;
    padding: 0.875rem 1.25rem;
    border: 1.5px solid #d1d9e0;
    border-radius: 0.75rem;
    background: linear-gradient(135deg, #ffffff 0%, #f8fafb 100%);
    color: #4b5563;
    font-size: 0.9rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    text-decoration: none;
    min-height: 48px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04);
    position: relative;
    overflow: hidden;
}

.action-btn[b-5ip9uzktn9]::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
    transition: left 0.5s;
}

.action-btn:hover[b-5ip9uzktn9]::before {
    left: 100%;
}

.action-btn:disabled[b-5ip9uzktn9] {
    opacity: 0.5;
    cursor: not-allowed;
    transform: none !important;
    background: #f1f5f9;
    border-color: #e2e8f0;
    color: #9ca3af;
}

.action-btn:not(:disabled):hover[b-5ip9uzktn9] {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

.view-btn:not(:disabled):hover[b-5ip9uzktn9] {
    background: linear-gradient(135deg, #0d6efd 0%, #0b5ed7 100%);
    border-color: #0d6efd;
    color: white;
    box-shadow: 0 8px 20px rgba(13, 110, 253, 0.3);
}

.download-btn:not(:disabled):hover[b-5ip9uzktn9] {
    background: linear-gradient(135deg, #198754 0%, #157347 100%);
    border-color: #198754;
    color: white;
    box-shadow: 0 8px 20px rgba(25, 135, 84, 0.3);
}

.delete-btn:not(:disabled):hover[b-5ip9uzktn9] {
    background: linear-gradient(135deg, #dc3545 0%, #bb2d3b 100%);
    border-color: #dc3545;
    color: white;
    box-shadow: 0 8px 20px rgba(220, 53, 69, 0.3);
}

.action-btn i[b-5ip9uzktn9] {
    font-size: 1.1rem;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.1));
}

.action-btn .spinner-border-sm[b-5ip9uzktn9] {
    width: 1.1rem;
    height: 1.1rem;
}

/* File Type Badges */
.badge[b-5ip9uzktn9] {
    font-size: 0.75rem;
    font-weight: 500;
    border-radius: 0.25rem;
    padding: 0.25rem 0.5rem;
}

.bg-danger[b-5ip9uzktn9] {
    background-color: #dc3545 !important;
}

.bg-warning[b-5ip9uzktn9] {
    background-color: #ffc107 !important;
}

.bg-info[b-5ip9uzktn9] {
    background-color: #0dcaf0 !important;
}

.bg-secondary[b-5ip9uzktn9] {
    background-color: #6c757d !important;
}

.bg-light[b-5ip9uzktn9] {
    background-color: #f8f9fa !important;
    border: 1px solid #dee2e6;
}

/* Modal Enhancements */
.modal-content[b-5ip9uzktn9] {
    border: none;
    border-radius: 0.5rem;
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175);
}

.modal-header[b-5ip9uzktn9] {
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
    padding: 1.5rem;
}

.modal-body[b-5ip9uzktn9] {
    padding: 1.5rem;
}

.modal-footer[b-5ip9uzktn9] {
    border-top: 1px solid rgba(0, 0, 0, 0.125);
    padding: 1rem 1.5rem;
}

/* Document Details Cards */
.card.border-0.bg-light[b-5ip9uzktn9] {
    background-color: #f8f9fa !important;
    border-radius: 0.375rem;
}

.card.border-0.bg-light .card-body[b-5ip9uzktn9] {
    padding: 1.25rem;
}

.card.border-warning[b-5ip9uzktn9] {
    border-color: #ffc107 !important;
    border-width: 2px !important;
}

/* Definition Lists */
dl.row dt[b-5ip9uzktn9] {
    font-weight: 600;
    color: #495057;
    font-size: 0.875rem;
}

dl.row dd[b-5ip9uzktn9] {
    font-size: 0.875rem;
    color: #212529;
    margin-bottom: 0.5rem;
}

/* Icons */
.fs-4[b-5ip9uzktn9] {
    font-size: 1.5rem !important;
}

/* Loading States */
.spinner-border-sm[b-5ip9uzktn9] {
    width: 1rem;
    height: 1rem;
}

/* File size formatting */
code[b-5ip9uzktn9] {
    background-color: #f8f9fa;
    color: #e83e8c;
    padding: 0.125rem 0.25rem;
    border-radius: 0.25rem;
    font-size: 0.875em;
}

/* Filename truncation with ellipses and tooltips */
.filename-truncate[b-5ip9uzktn9] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    display: block;
    cursor: default;
}

.min-width-0[b-5ip9uzktn9] {
    min-width: 0;
}

/* Enhanced tooltip styling */
[title][b-5ip9uzktn9] {
    position: relative;
}

.filename-truncate:hover[b-5ip9uzktn9]::after {
    content: attr(title);
    position: absolute;
    bottom: 100%;
    left: 0;
    background-color: rgba(0, 0, 0, 0.9);
    color: white;
    padding: 0.5rem 0.75rem;
    border-radius: 0.375rem;
    font-size: 0.875rem;
    font-weight: normal;
    white-space: nowrap;
    z-index: 1000;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    margin-bottom: 0.5rem;
    animation: tooltipFadeIn-b-5ip9uzktn9 0.2s ease-in-out;
    max-width: 300px;
    word-break: break-all;
    white-space: normal;
}

.filename-truncate:hover[b-5ip9uzktn9]::before {
    content: '';
    position: absolute;
    bottom: 100%;
    left: 1rem;
    border: 5px solid transparent;
    border-top-color: rgba(0, 0, 0, 0.9);
    z-index: 1000;
    margin-bottom: -5px;
}

@keyframes tooltipFadeIn-b-5ip9uzktn9 {
    from {
        opacity: 0;
        transform: translateY(5px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Empty state styling */
.empty-state[b-5ip9uzktn9] {
    text-align: center;
    padding: 3rem 2rem;
    color: #6c757d;
}

.empty-state i[b-5ip9uzktn9] {
    font-size: 3rem;
    margin-bottom: 1rem;
    opacity: 0.5;
}

/* ===== RESPONSIVE DESIGN ===== */

/* Tablet and smaller desktop (769px to 1024px) */
@media (min-width: 769px) and (max-width: 1024px) {
    .actions-col[b-5ip9uzktn9] {
        min-width: 140px;
        text-align: right;
    }

    .actions-cell .btn[b-5ip9uzktn9] {
        font-size: 0.75rem;
        padding: 0.25rem 0.4rem;
        min-width: 55px;
    }

    .actions-cell .btn-group[b-5ip9uzktn9] {
        gap: 0.2rem;
    }
}

/* Desktop styles (769px and up) */
@media (min-width: 769px) {
    .search-results-header .d-flex[b-5ip9uzktn9] {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        gap: 1rem;
    }

    .results-criteria[b-5ip9uzktn9] {
        flex-shrink: 0;
        align-self: center;
    }
}

/* Large desktop styles (1200px and up) - more space for buttons */
@media (min-width: 1200px) {
    .actions-col[b-5ip9uzktn9] {
        min-width: 160px;
        text-align: right;
    }

    .actions-cell .btn[b-5ip9uzktn9] {
        font-size: 0.85rem;
        padding: 0.4rem 0.6rem;
        min-width: 65px;
    }

    .actions-cell .btn-group[b-5ip9uzktn9] {
        gap: 0.3rem;
    }
}



/* Animation for table row updates */
@keyframes highlightUpdate-b-5ip9uzktn9 {
    0% {
        background-color: rgba(25, 135, 84, 0.2);
    }

    100% {
        background-color: transparent;
    }
}

.modern-table tbody tr.updated[b-5ip9uzktn9] {
    animation: highlightUpdate-b-5ip9uzktn9 2s ease-out;
}

/* Custom scrollbar for better mobile experience */
.table-responsive[b-5ip9uzktn9]::-webkit-scrollbar {
    height: 6px;
}

.table-responsive[b-5ip9uzktn9]::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 3px;
}

.table-responsive[b-5ip9uzktn9]::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 3px;
}

.table-responsive[b-5ip9uzktn9]::-webkit-scrollbar-thumb:hover {
    background: #a8a8a8;
}

/* Touch-friendly improvements */
@media (hover: none) and (pointer: coarse) {
    .modern-table tbody tr:hover[b-5ip9uzktn9] {
        transform: none !important;
        box-shadow: none !important;
        background-color: transparent !important;
    }
}

/* File Icon Colors - ensure proper display in table */
.file-icon.text-danger[b-5ip9uzktn9] {
    color: #dc3545 !important;
}

.file-icon.text-warning[b-5ip9uzktn9] {
    color: #ffc107 !important;
}

.file-icon.text-info[b-5ip9uzktn9] {
    color: #0dcaf0 !important;
}

.file-icon.text-primary[b-5ip9uzktn9] {
    color: #0d6efd !important;
}

.file-icon.text-success[b-5ip9uzktn9] {
    color: #198754 !important;
}

.file-icon.text-secondary[b-5ip9uzktn9] {
    color: #6c757d !important;
}

.file-icon.text-purple[b-5ip9uzktn9] {
    color: #8b5cf6 !important;
}

.file-icon.text-dark[b-5ip9uzktn9] {
    color: #212529 !important;
}

/* Disable table hover visuals on touch devices regardless of width */
@media (hover: none) and (pointer: coarse) {

    .table-hover>tbody>tr:hover[b-5ip9uzktn9],
    .modern-table tbody tr:hover[b-5ip9uzktn9] {
        background-color: transparent !important;
        transform: none !important;
        box-shadow: none !important;
    }

    .table-hover>tbody>tr:hover>td[b-5ip9uzktn9],
    .table-hover>tbody>tr:hover>th[b-5ip9uzktn9],
    .modern-table.table-hover tbody tr:hover>td[b-5ip9uzktn9] {
        background-color: transparent !important;
    }

    .actions-cell .btn[b-5ip9uzktn9]::before {
        display: none !important;
    }
}

/* Ensure page title uses primary consistently */
.page-title[b-5ip9uzktn9] {
    color: var(--bs-primary, #0d6efd) !important;
}

/* Unified page header sizing (slightly smaller) */
h1.page-title[b-5ip9uzktn9] {
    font-size: 1.9rem !important;
    line-height: 1.2;
}

/* Make only the page header icon smaller (don’t affect other title icons) */
h1.page-title .title-icon[b-5ip9uzktn9] {
    font-size: 1.4rem;
}

/* Responsive tweaks so headers match Upload page exactly */
@media (max-width: 575.98px) {
    h1.page-title[b-5ip9uzktn9] {
        font-size: 1.6rem !important;
    }

    h1.page-title .title-icon[b-5ip9uzktn9] {
        font-size: 1.2rem;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    h1.page-title[b-5ip9uzktn9] {
        font-size: 1.7rem !important;
    }

    h1.page-title .title-icon[b-5ip9uzktn9] {
        font-size: 1.3rem;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    h1.page-title[b-5ip9uzktn9] {
        font-size: 1.8rem !important;
    }

    h1.page-title .title-icon[b-5ip9uzktn9] {
        font-size: 1.35rem;
    }
}

/* Helper class for subtle card shadow to match Upload */
.shadow-soft[b-5ip9uzktn9] {
    box-shadow: var(--shadow-soft) !important;
}

/* Make title icons use primary color */
.title-icon[b-5ip9uzktn9] {
    color: var(--bs-primary, var(--color-accent, #0d6efd)) !important;
}

/* Card title icon inside h3 smaller as well */
h3.card-title .title-icon[b-5ip9uzktn9] {
    font-size: 1rem;
}
/* /Components/Pages/SearchResultsPanel.razor.rz.scp.css */
/* Keep row action menus visible when a short result set sits above pagination controls. */
.documents-tables[b-8ydprz885y],
.document-group-section[b-8ydprz885y],
.table-responsive[b-8ydprz885y],
.modern-table[b-8ydprz885y],
.modern-table tbody[b-8ydprz885y],
.modern-table tr[b-8ydprz885y],
.actions-cell[b-8ydprz885y],
.actions-cell .dropdown[b-8ydprz885y] {
    overflow: visible;
}

.actions-cell[b-8ydprz885y] {
    position: relative;
}

.actions-cell .dropdown[b-8ydprz885y],
.actions-cell .actions-toggle[b-8ydprz885y] {
    display: inline-flex;
}

.actions-cell .dropdown.show[b-8ydprz885y],
.actions-cell .dropdown-menu.show[b-8ydprz885y] {
    z-index: 3050;
}

.actions-cell .dropdown-menu[b-8ydprz885y] {
    background-color: #ffffff;
    border: 1px solid #e5e7eb;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.12);
}

.actions-cell .dropdown-menu[data-bs-popper][b-8ydprz885y] {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}
/* /Components/Pages/SuperAdmin.razor.rz.scp.css */
:root[b-ez0kct2xx1] {
    --shadow-soft: 0 6px 18px rgba(0, 0, 0, 0.10);
}

.super-admin-container[b-ez0kct2xx1] {
    --bg-surface: var(--surface, #f8f9fa);
    --text-muted: var(--text-secondary, #6c757d);
    /* Match Search/Upload page container padding/width */
    padding: 2rem 1rem;
    max-width: 100%;
}

.page-title[b-ez0kct2xx1] {
    letter-spacing: -0.02em;
    /* Match Search/Upload header color */
    color: var(--bs-primary, #0d6efd) !important;
}

.title-icon[b-ez0kct2xx1] {
    vertical-align: -0.1em;
    /* Match Search/Upload header icon color */
    color: var(--bs-primary, var(--color-accent, #0d6efd)) !important;
}

/* Unified page header sizing (match Search & Upload) */
h1.page-title[b-ez0kct2xx1] {
    font-size: 1.9rem !important;
    line-height: 1.2;
}

h1.page-title .title-icon[b-ez0kct2xx1] {
    font-size: 1.4rem;
}

@media (max-width: 575.98px) {
    h1.page-title[b-ez0kct2xx1] {
        font-size: 1.6rem !important;
    }

    h1.page-title .title-icon[b-ez0kct2xx1] {
        font-size: 1.2rem;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    h1.page-title[b-ez0kct2xx1] {
        font-size: 1.7rem !important;
    }

    h1.page-title .title-icon[b-ez0kct2xx1] {
        font-size: 1.3rem;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    h1.page-title[b-ez0kct2xx1] {
        font-size: 1.8rem !important;
    }

    h1.page-title .title-icon[b-ez0kct2xx1] {
        font-size: 1.35rem;
    }
}

/* Card title icon size */
h3.card-title .title-icon[b-ez0kct2xx1] {
    font-size: 1rem;
}

.shadow-soft[b-ez0kct2xx1] {
    box-shadow: var(--shadow-soft) !important;
}

.bg-surface[b-ez0kct2xx1] {
    background-color: var(--bg-surface);
    border-bottom: 1px solid var(--border-primary, rgba(0, 0, 0, .08));
}

.text-muted-custom[b-ez0kct2xx1] {
    color: var(--text-muted);
}

.card-header-tabs .nav-link[b-ez0kct2xx1] {
    border: none;
    color: var(--bs-body-color);
}

.card-header-tabs .nav-link.active[b-ez0kct2xx1] {
    border-bottom: 2px solid var(--bs-primary);
    color: var(--bs-primary);
    font-weight: 600;
}

.filter-bar[b-ez0kct2xx1] {
    background: var(--surface-secondary, #f9fafb);
}

/* Responsive tables */
.table-responsive[b-ez0kct2xx1] {
    overflow-x: auto;
}

/*
   Easier-to-grab scrollbars (scoped to Super Admin only)
   - Applies to any scrollable element inside .super-admin-container (documents, audit logs, logs, etc.)
   - Cross-browser: Firefox (scrollbar-width/color) and Chromium/WebKit (::-webkit-scrollbar)
*/
/* Local knobs */
.super-admin-container[b-ez0kct2xx1] {
    --sa-scrollbar-size: 14px;
    --sa-scrollbar-thumb: rgba(120, 120, 120, 0.7);
    --sa-scrollbar-thumb-hover: rgba(100, 100, 100, 0.9);
}

/* Firefox-only styling */
@supports (scrollbar-width: auto) {

    .super-admin-container[b-ez0kct2xx1],
    .super-admin-container *[b-ez0kct2xx1] {
        scrollbar-width: auto;
        /* options: auto | thin */
        scrollbar-color: var(--sa-scrollbar-thumb) transparent;
    }
}

/* Keep layout from shifting when scrollbars appear (browsers that support it) */
@supports (scrollbar-gutter: stable) {
    .super-admin-container[b-ez0kct2xx1] {
        scrollbar-gutter: stable both-edges;
    }
}

/* Chromium/Edge/Safari: widen the scrollbar and style the thumb */
.super-admin-container *[b-ez0kct2xx1]::-webkit-scrollbar {
    width: var(--sa-scrollbar-size);
    /* vertical scrollbar width */
    height: var(--sa-scrollbar-size);
    /* horizontal scrollbar height */
}

.super-admin-container *[b-ez0kct2xx1]::-webkit-scrollbar-thumb {
    background-color: var(--sa-scrollbar-thumb);
    border-radius: 10px;
    /* Add padding around the thumb so it's easier to grab without looking bulky */
    border: 4px solid transparent;
    background-clip: content-box;
}

.super-admin-container *[b-ez0kct2xx1]::-webkit-scrollbar-thumb:hover {
    background-color: var(--sa-scrollbar-thumb-hover);
}

.super-admin-container *[b-ez0kct2xx1]::-webkit-scrollbar-track {
    background: transparent;
    /* subtle/clean track */
}

.super-admin-container *[b-ez0kct2xx1]::-webkit-scrollbar-corner {
    background: transparent;
}
/* /Components/Pages/TermsOfService.razor.rz.scp.css */
/* Scoped styles for policy pages */

.policy-container[b-u5azuxi58o] {
    padding-top: 2rem;
    padding-bottom: 3rem;
}

.policy-header .lead[b-u5azuxi58o] {
    color: var(--bs-secondary-color, #6c757d);
}

.policy-card[b-u5azuxi58o] {
    border: 1px solid var(--border-color, rgba(0, 0, 0, 0.08));
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    transition: box-shadow 150ms ease;
}

.policy-card:hover[b-u5azuxi58o] {
    /* Keep subtle elevation without movement */
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08);
}

.section-title[b-u5azuxi58o] {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-weight: 600;
    font-size: 1.125rem;
    margin-bottom: .75rem;
    color: var(--bs-emphasis-color, #212529);
    border-bottom: 1px solid var(--border-color, rgba(0, 0, 0, 0.08));
    padding-bottom: .25rem;
}

.section-title i[b-u5azuxi58o] {
    color: var(--bs-primary, #0d6efd);
}

.policy-card .card-body>section+section[b-u5azuxi58o] {
    margin-top: 1.25rem;
}
/* /Components/Pages/Upload.razor.rz.scp.css */
/* Upload Page Specific Styles */
/* Scoped variables with safe fallbacks */
.upload-container[b-idqboriyqn] {
    --accent: var(--color-accent, #0d6efd);
    --accent-2: var(--color-accent-2, #6610f2);
    --secondary: var(--color-secondary, var(--accent-2, #6610f2));
    --bg-surface: var(--surface, #f8f9fa);
    --bg-elev: var(--surface-elev, #ffffff);
    --text-primary: var(--text-primary, #212529);
    --text-muted: var(--text-muted, #6c757d);
    --border-primary: var(--border-primary, #dee2e6);
    --radius-md: var(--radius-md, 0.375rem);
    /* Use concrete values to avoid self-referential var() */
    --shadow-sm: 0 2px 6px rgba(0, 0, 0, 0.08);
    --shadow-md: 0 10px 24px rgba(0, 0, 0, 0.12);
    --shadow-soft: 0 6px 18px rgba(0, 0, 0, 0.10);
    /* Match Search container side padding so cards appear same width */
    padding: 2rem 1rem;
    max-width: 100%;
}

/* Ensure page title uses primary color consistently */
.page-title[b-idqboriyqn] {
    /* Use Bootstrap's primary if themed, else fallback */
    color: var(--bs-primary, #0d6efd) !important;
}

/* Unified page header sizing (slightly smaller) */
h1.page-title[b-idqboriyqn] {
    font-size: 1.9rem !important;
    line-height: 1.2;
}

/* Make only the page header icon smaller */
h1.page-title .title-icon[b-idqboriyqn] {
    font-size: 1.4rem;
}

/* Responsive tweaks matching Search */
@media (max-width: 575.98px) {
    h1.page-title[b-idqboriyqn] {
        font-size: 1.6rem !important;
    }

    h1.page-title .title-icon[b-idqboriyqn] {
        font-size: 1.2rem;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    h1.page-title[b-idqboriyqn] {
        font-size: 1.7rem !important;
    }

    h1.page-title .title-icon[b-idqboriyqn] {
        font-size: 1.3rem;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    h1.page-title[b-idqboriyqn] {
        font-size: 1.8rem !important;
    }

    h1.page-title .title-icon[b-idqboriyqn] {
        font-size: 1.35rem;
    }
}

/* Make title icons use primary color */
.title-icon[b-idqboriyqn] {
    color: var(--bs-primary, var(--color-accent, #0d6efd)) !important;
}

/* Card title icon inside h3 smaller as well */
h3.card-title .title-icon[b-idqboriyqn] {
    font-size: 1rem;
}

/* File Drop Zone */
.file-drop-zone[b-idqboriyqn] {
    border: 2px dashed var(--border-primary);
    border-radius: var(--radius-md);
    padding: 3rem 2rem;
    text-align: center;
    background-color: var(--bg-surface);
    transition: all 0.3s ease;
    cursor: pointer;
    min-height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: var(--shadow-sm);
}

.file-drop-zone:hover[b-idqboriyqn] {
    border-color: var(--accent);
    background-color: rgba(13, 110, 253, 0.03);
}

.file-drop-zone.drag-over[b-idqboriyqn] {
    border-color: var(--accent);
    background-color: rgba(13, 110, 253, 0.08);
    transform: scale(1.02);
    box-shadow: var(--shadow-sm);
}

/* Enhanced Upload Icon Styles */
.upload-icon-container[b-idqboriyqn] {
    position: relative;
    display: inline-block;
}

.upload-main-icon[b-idqboriyqn] {
    font-size: 3.5rem;
    background: linear-gradient(135deg, var(--accent) 0%, var(--accent-2) 50%, var(--accent) 100%);
    background-size: 200% 200%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    animation: gradientShift-b-idqboriyqn 3s ease-in-out infinite;
    /* Use a subtle glow based on the accent color; rgba fallback for broad support */
    filter: drop-shadow(0 4px 8px rgba(13, 110, 253, 0.25));
    transition: all 0.3s ease;
}

.file-drop-zone:hover .upload-main-icon[b-idqboriyqn] {
    transform: scale(1.1);
    animation-duration: 1.5s;
}

.upload-animation-dots[b-idqboriyqn] {
    position: absolute;
    top: -10px;
    right: -15px;
    display: flex;
    gap: 3px;
}

.dot[b-idqboriyqn] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--accent), var(--accent-2));
    animation: dotPulse-b-idqboriyqn 2s ease-in-out infinite;
    opacity: 0.7;
}

.dot-1[b-idqboriyqn] {
    animation-delay: 0s;
}

.dot-2[b-idqboriyqn] {
    animation-delay: 0.3s;
}

.dot-3[b-idqboriyqn] {
    animation-delay: 0.6s;
}

.file-drop-zone.drag-over .upload-main-icon[b-idqboriyqn] {
    animation: uploadPulse-b-idqboriyqn 0.8s ease-in-out infinite;
}

.file-drop-zone.drag-over .dot[b-idqboriyqn] {
    animation: dotPulseActive-b-idqboriyqn 0.5s ease-in-out infinite;
}

/* Animations */
@keyframes gradientShift-b-idqboriyqn {

    0%,
    100% {
        background-position: 0% 50%;
    }

    50% {
        background-position: 100% 50%;
    }
}

@keyframes dotPulse-b-idqboriyqn {

    0%,
    100% {
        transform: scale(1);
        opacity: 0.7;
    }

    50% {
        transform: scale(1.3);
        opacity: 1;
    }
}

@keyframes dotPulseActive-b-idqboriyqn {

    0%,
    100% {
        transform: scale(1.2);
        opacity: 1;
    }

    50% {
        transform: scale(1.6);
        opacity: 0.8;
    }
}

@keyframes uploadPulse-b-idqboriyqn {

    0%,
    100% {
        transform: scale(1.1);
    }

    50% {
        transform: scale(1.2);
    }
}

.drop-zone-content[b-idqboriyqn] {
    width: 100%;
}

.file-requirements[b-idqboriyqn] {
    background-color: rgba(255, 255, 255, 0.8);
    padding: 1rem;
    border-radius: 0.5rem;
    margin-top: 1.5rem;
    border: 1px solid rgba(13, 110, 253, 0.2);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* File List */
/* File item styling */
.list-group .list-group-item[b-idqboriyqn] {
    border: 1px solid var(--border-primary);
    border-radius: var(--radius-md);
    margin-bottom: .5rem;
    transition: box-shadow .2s ease, transform .12s ease;
}

.list-group .list-group-item:hover[b-idqboriyqn] {
    box-shadow: var(--shadow-sm);
    transform: translateY(-1px);
}

.filename-display[b-idqboriyqn] {
    font-weight: 600;
    color: var(--text-primary);
    word-break: break-word;
}

.file-name[b-idqboriyqn] {
    color: var(--text-primary);
    word-break: break-word;
}

.file-size[b-idqboriyqn] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

/* Upload Button States */
.btn:disabled[b-idqboriyqn] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-primary:not(:disabled)[b-idqboriyqn] {
    box-shadow: var(--shadow-sm);
    transition: transform .12s ease, box-shadow .2s ease;
}

.btn-primary:not(:disabled):hover[b-idqboriyqn] {
    transform: translateY(-1px);
    box-shadow: var(--shadow-md);
}

/* Form Enhancements */
.form-control-lg[b-idqboriyqn] {
    border-radius: 0.375rem;
    font-size: 1.1rem;
    padding: 0.75rem 1rem;
}

.form-text[b-idqboriyqn] {
    font-size: 0.875rem;
    margin-top: 0.5rem;
}

/* Card Enhancements: use Bootstrap defaults to match Search */

.shadow-custom-lg[b-idqboriyqn] {
    box-shadow: var(--shadow-md) !important;
}

/* New subtle shadow for cards (matches Search page vibe) */
.shadow-soft[b-idqboriyqn] {
    box-shadow: var(--shadow-soft) !important;
}

/* Remove custom bg-surface so Upload matches Search */

/* Text Colors */
.text-muted-custom[b-idqboriyqn] {
    color: var(--text-muted) !important;
}

/* Ensure text-primary aligns with Bootstrap's primary in this scope */
.text-primary[b-idqboriyqn] {
    color: var(--bs-primary, #0d6efd) !important;
}

/* Alert Styles */
.alert[b-idqboriyqn] {
    border: none;
    border-radius: 0.375rem;
    font-weight: 500;
}

.alert-danger[b-idqboriyqn] {
    background-color: rgba(220, 53, 69, 0.1);
    color: #721c24;
    border-left: 4px solid #dc3545;
}

.alert-success[b-idqboriyqn] {
    background-color: rgba(25, 135, 84, 0.1);
    color: #0a3622;
    border-left: 4px solid #198754;
}

.alert-info[b-idqboriyqn] {
    background-color: rgba(13, 202, 240, 0.1);
    color: #055160;
    border-left: 4px solid #0dcaf0;
}

/* Loading States */
.uploading .file-drop-zone[b-idqboriyqn] {
    pointer-events: none;
    opacity: 0.7;
}

.uploading .btn-primary[b-idqboriyqn] {
    position: relative;
}

.uploading .btn-primary[b-idqboriyqn]::after {
    content: '';
    position: absolute;
    width: 16px;
    height: 16px;
    margin: auto;
    border: 2px solid transparent;
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-idqboriyqn 1s linear infinite;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

@keyframes spin-b-idqboriyqn {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/* ===== RESPONSIVE DESIGN - MOBILE FIRST ===== */

/* Large Screens (1200px and up) */
@media (min-width: 1200px) {
    .upload-container[b-idqboriyqn] {
        /* Keep horizontal padding aligned with Search (1rem) */
        padding: 2.5rem 1rem;
    }

    .file-drop-zone[b-idqboriyqn] {
        min-height: 350px;
        padding: 4rem 3rem;
    }

    .upload-main-icon[b-idqboriyqn] {
        font-size: 5rem;
    }
}

/* Desktop and Large Tablets (992px and up) */
@media (min-width: 992px) {
    .file-drop-zone[b-idqboriyqn] {
        min-height: 320px;
    }
}

/* Tablets (768px and up) */
@media (min-width: 768px) and (max-width: 991px) {
    .upload-container[b-idqboriyqn] {
        /* Match Search horizontal padding on tablets */
        padding: 1.5rem 1rem;
    }

    .file-drop-zone[b-idqboriyqn] {
        padding: 2.5rem 2rem;
        min-height: 280px;
    }

    .upload-main-icon[b-idqboriyqn] {
        font-size: 3.25rem;
    }

    .card-body[b-idqboriyqn] {
        padding: 1.5rem 1.25rem;
    }

    /* No card-header override to match Search */

    .display-5[b-idqboriyqn] {
        font-size: 2.2rem;
    }

    /* No card-title override at this breakpoint */
}

/* Large Mobile Phones (576px to 767px) */
@media (min-width: 576px) and (max-width: 767px) {
    .upload-container[b-idqboriyqn] {
        /* Match Search mobile horizontal padding (0.75rem) */
        padding: 1rem 0.75rem;
    }

    .file-drop-zone[b-idqboriyqn] {
        padding: 2rem 1.5rem;
        min-height: 240px;
    }

    .upload-main-icon[b-idqboriyqn] {
        font-size: 2.75rem;
    }

    .display-5[b-idqboriyqn] {
        font-size: 1.8rem;
    }

    .card-body[b-idqboriyqn] {
        padding: 1.25rem;
    }

    /* No card-header override to match Search */

    /* No card-title override here; inherit Bootstrap like Search */

    .file-requirements[b-idqboriyqn] {
        padding: 0.875rem;
        margin-top: 1rem;
    }

    .list-group-item[b-idqboriyqn] {
        flex-direction: column;
        align-items: flex-start !important;
        gap: 0.75rem;
        padding: 1rem;
    }

    .list-group-item .btn[b-idqboriyqn] {
        align-self: flex-end;
        width: 100%;
        max-width: 120px;
    }

    .file-name[b-idqboriyqn] {
        font-size: 0.95rem;
        line-height: 1.3;
    }

    .file-size[b-idqboriyqn] {
        font-size: 0.8rem;
    }
}

/* Small Mobile Phones (up to 575px) */
@media (max-width: 575px) {
    .upload-container[b-idqboriyqn] {
        /* Match Search mobile horizontal padding (0.75rem) */
        padding: 0.75rem 0.75rem;
    }

    .file-drop-zone[b-idqboriyqn] {
        padding: 1.5rem 1rem;
        min-height: 200px;
        border-radius: 0.5rem;
    }

    .upload-main-icon[b-idqboriyqn] {
        font-size: 2.25rem;
    }

    .upload-animation-dots[b-idqboriyqn] {
        top: -8px;
        right: -12px;
    }

    .dot[b-idqboriyqn] {
        width: 6px;
        height: 6px;
    }

    .display-5[b-idqboriyqn] {
        font-size: 1.5rem;
        line-height: 1.3;
    }

    .lead[b-idqboriyqn] {
        font-size: 1rem;
        margin-bottom: 1rem;
    }

    /* No mobile overrides for .card margin/radius */

    .card-body[b-idqboriyqn] {
        padding: 1rem;
    }

    /* No card-header override to match Search */

    /* No card-title override on mobile */

    .form-control-lg[b-idqboriyqn] {
        font-size: 1rem;
        padding: 0.75rem;
    }

    .btn-lg[b-idqboriyqn] {
        padding: 0.75rem 1.25rem;
        font-size: 1rem;
    }

    .file-requirements[b-idqboriyqn] {
        padding: 0.75rem;
        margin-top: 1rem;
        font-size: 0.875rem;
    }

    .file-requirements ul[b-idqboriyqn] {
        margin-bottom: 0.5rem;
    }

    .file-requirements li[b-idqboriyqn] {
        margin-bottom: 0.25rem;
    }

    .list-group-item[b-idqboriyqn] {
        flex-direction: column;
        align-items: flex-start !important;
        gap: 0.5rem;
        padding: 0.875rem;
        margin-bottom: 0.5rem;
        border-radius: 0.5rem;
    }

    .list-group-item .btn[b-idqboriyqn] {
        align-self: stretch;
        width: 100%;
        padding: 0.625rem;
        font-size: 0.875rem;
    }

    .file-name[b-idqboriyqn] {
        font-size: 0.9rem;
        line-height: 1.3;
        font-weight: 500;
    }

    .file-size[b-idqboriyqn] {
        font-size: 0.75rem;
        color: #6c757d;
    }

    /* Button group adjustments for mobile */
    .d-grid.gap-2.d-md-flex[b-idqboriyqn] {
        gap: 0.75rem !important;
        margin-top: 1rem;
    }

    .d-grid.gap-2.d-md-flex .btn[b-idqboriyqn] {
        width: 100%;
        padding: 0.875rem 1rem;
        font-size: 0.95rem;
    }

    /* Alert adjustments for mobile */
    .alert[b-idqboriyqn] {
        margin: 0.75rem 0;
        padding: 0.75rem;
        font-size: 0.9rem;
        border-radius: 0.5rem;
    }

    /* Progress indicators for mobile */
    .progress[b-idqboriyqn] {
        height: 8px;
        border-radius: 4px;
    }

    /* Modal adjustments for upload confirmation */
    .modal-dialog[b-idqboriyqn] {
        margin: 0.5rem;
    }

    .modal-content[b-idqboriyqn] {
        border-radius: 0.5rem;
    }

    .modal-header[b-idqboriyqn],
    .modal-body[b-idqboriyqn],
    .modal-footer[b-idqboriyqn] {
        padding: 1rem;
    }

    /* Phone number input specific styling */
    .form-control[type="tel"][b-idqboriyqn] {
        font-size: 1.1rem !important;
        /* Prevent zoom on iOS */
    }
}

/* Touch device specific improvements */
@media (hover: none) and (pointer: coarse) {
    .file-drop-zone:hover[b-idqboriyqn] {
        border-color: #dee2e6;
        background-color: #f8f9fa;
        transform: none;
    }

    .file-item:hover[b-idqboriyqn] {
        transform: none;
        box-shadow: none;
    }

    .btn-primary:not(:disabled):hover[b-idqboriyqn] {
        transform: none;
        box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    }

    /* Make touch targets more accessible */
    .btn[b-idqboriyqn],
    .file-drop-zone[b-idqboriyqn],
    .list-group-item .btn[b-idqboriyqn] {
        min-height: 48px;
        min-width: 48px;
    }
}

/* Landscape phone orientation */
@media (max-width: 767px) and (orientation: landscape) {
    .file-drop-zone[b-idqboriyqn] {
        min-height: 160px;
        padding: 1rem;
    }

    .upload-main-icon[b-idqboriyqn] {
        font-size: 2rem;
    }

    .display-5[b-idqboriyqn] {
        font-size: 1.3rem;
    }
}

/* High contrast mode support */
@media (prefers-contrast: high) {
    .file-drop-zone[b-idqboriyqn] {
        border-width: 3px;
    }

    .file-drop-zone:hover[b-idqboriyqn],
    .file-drop-zone.drag-over[b-idqboriyqn] {
        border-width: 4px;
    }

    .btn[b-idqboriyqn] {
        border: 2px solid;
    }
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {

    .upload-main-icon[b-idqboriyqn],
    .dot[b-idqboriyqn],
    .file-item[b-idqboriyqn],
    .btn-primary[b-idqboriyqn] {
        animation: none !important;
        transition: none !important;
    }

    .file-drop-zone.drag-over[b-idqboriyqn] {
        transform: none !important;
    }
}

/* Print styles */
@media print {

    .file-drop-zone[b-idqboriyqn],
    .btn[b-idqboriyqn],
    .upload-animation-dots[b-idqboriyqn] {
        display: none !important;
    }

    .file-name[b-idqboriyqn] {
        font-weight: bold;
    }
}

/* Dark mode preparation */
/* Removed empty dark-mode block; app controls theme explicitly */

/* Custom scrollbar for file lists on mobile */
.list-group[b-idqboriyqn] {
    max-height: 400px;
    overflow-y: auto;
}

.list-group[b-idqboriyqn]::-webkit-scrollbar {
    width: 4px;
}

.list-group[b-idqboriyqn]::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 2px;
}

.list-group[b-idqboriyqn]::-webkit-scrollbar-thumb {
    background: #c1c1c1;
    border-radius: 2px;
}

.list-group[b-idqboriyqn]::-webkit-scrollbar-thumb:hover {
    background: #a8a8a8;
}
/* /Components/Pages/Welcome.razor.rz.scp.css */
/* Scoped hero styles for Welcome component: define variables on the root section */
.welcome-hero[b-zoy52kmee8] {
    --hero-bg: radial-gradient(1200px 600px at 50% -10%, rgba(13, 110, 253, .08), transparent 60%),
        radial-gradient(900px 500px at 10% 120%, rgba(25, 135, 84, .06), transparent 60%),
        radial-gradient(900px 500px at 90% 120%, rgba(255, 193, 7, .05), transparent 60%);
    --hero-text: #0b1220;
    --hero-muted: #5c6b80;
    --hero-accent: #0d6efd;
}

.welcome-hero[b-zoy52kmee8] {
    /* Fill available vertical space in MainLayout and center content */
    --primary-darker: #0f3946;
    /* darker than #164E63 */
    /* Adjust these three to control overall fade of the photo */
    --hero-overlay-base: 0.06;
    /* top */
    --hero-overlay-mid: 0.08;
    /* middle */
    --hero-overlay-end: 0.10;
    /* bottom */
    flex: 1 0 auto;
    min-height: clamp(420px, 55vh, 760px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.25rem 1rem 1.5rem 1rem;
    margin: 0;
    position: relative;
    /* enable pseudo-layer stacking */
    overflow: hidden;
    color: var(--hero-text);
    isolation: isolate;
    /* ensure blend/backdrop isolation */
}

/* Background image layer */
.welcome-hero[b-zoy52kmee8]::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #f2f5f9 url('/images/welcome/hero7.jpg') center / cover no-repeat;
    z-index: -2;
    transform: scale(1);
    /* keep native scale for crisper rendering */
}

/* Soft overlay for readability (keeps dark text accessible regardless of image) */
.welcome-hero[b-zoy52kmee8]::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg,
            rgba(255, 255, 255, var(--hero-overlay-base)) 0%,
            rgba(255, 255, 255, var(--hero-overlay-mid)) 35%,
            rgba(255, 255, 255, var(--hero-overlay-end)) 100%);
    z-index: -1;
    /* Removed blur to keep underlying image sharp */
}

@media (max-width: 720px) {
    .welcome-hero[b-zoy52kmee8] {
        min-height: clamp(420px, 68vh, 780px);
        padding-top: 2.25rem;
    }

    .welcome-hero[b-zoy52kmee8]::before {
        background-position: 50% 35%;
        /* bias upward for mobile to keep focal point */
    }

    .hero-title[b-zoy52kmee8] {
        font-size: clamp(2.1rem, 9vw, 3.05rem);
    }

    .hero-tagline[b-zoy52kmee8] {
        font-size: clamp(1.02rem, 4.2vw, 1.3rem);
    }
}

@media (prefers-reduced-transparency: reduce) {
    .welcome-hero[b-zoy52kmee8]::after {
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
    }
}

@media (forced-colors: active) {
    .welcome-hero[b-zoy52kmee8]::before {
        background: Canvas;
    }

    .welcome-hero[b-zoy52kmee8]::after {
        background: none;
    }
}

.welcome-inner[b-zoy52kmee8] {
    max-width: 900px;
    margin: 0 auto;
    position: relative;
    /* above ::before/::after */
    z-index: 1;
}

/* Elevated glass card containing hero content */
.hero-card[b-zoy52kmee8] {
    --card-bg: rgba(255, 255, 255, 0.88);
    --card-bg-strong: rgba(255, 255, 255, 0.97);
    --card-border: rgba(255, 255, 255, 0.55);
    position: relative;
    max-width: 760px;
    margin: 0 auto;
    padding: clamp(1.35rem, 2.4vw, 2.25rem) clamp(1.1rem, 2.4vw, 2.15rem) clamp(1.6rem, 2.6vw, 2.25rem);
    border-radius: 26px;
    background: linear-gradient(140deg, var(--card-bg), var(--card-bg-strong));
    -webkit-backdrop-filter: blur(6px) saturate(1.2);
    backdrop-filter: blur(6px) saturate(1.2);
    border: 1px solid var(--card-border);
    box-shadow:
        0 10px 26px -10px rgba(20, 35, 55, 0.28),
        0 3px 8px rgba(20, 35, 55, 0.18),
        0 0 0 1px rgba(255, 255, 255, 0.55) inset,
        0 0 0 1px rgba(13, 110, 253, 0.55),
        /* thin brand outline */
        0 0 14px -2px rgba(13, 110, 253, 0.45);
    /* soft glow */
    overflow: hidden;
    transition: box-shadow .35s ease, background .35s ease;
}

.hero-card[b-zoy52kmee8]::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(120% 120% at 50% 0%, rgba(255, 255, 255, 0.55), transparent 70%);
    pointer-events: none;
    mix-blend-mode: soft-light;
}

/* Remove hover lift; keep static shadow */

@media (max-width: 720px) {
    .hero-card[b-zoy52kmee8] {
        border-radius: 22px;
        padding: 1.4rem 1.05rem 1.55rem;
        -webkit-backdrop-filter: blur(8px) saturate(1.25);
        backdrop-filter: blur(8px) saturate(1.25);
        box-shadow:
            0 8px 22px -10px rgba(20, 35, 55, 0.32),
            0 2px 6px rgba(20, 35, 55, 0.18),
            0 0 0 1px rgba(255, 255, 255, 0.55) inset,
            0 0 0 1px rgba(13, 110, 253, 0.55),
            0 0 12px -2px rgba(13, 110, 253, 0.45);
    }
}

@media (prefers-reduced-transparency: reduce) {
    .hero-card[b-zoy52kmee8] {
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
        background: #ffffff;
        box-shadow: 0 6px 18px -4px rgba(15, 32, 55, 0.28), 0 0 0 1px rgba(225, 230, 238, 0.9);
    }

    .hero-card[b-zoy52kmee8]::before {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .hero-card[b-zoy52kmee8] {
        transition: none;
        transform: none !important;
    }
}

.hero-title[b-zoy52kmee8] {
    font-size: clamp(2.1rem, 4.6vw, 3.4rem);
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: -0.02em;
    color: var(--hero-text);
    margin: .125rem 0 .55rem 0;
    /* add a touch above, slightly reduce below */
    /* slightly tighter to reduce vertical space */
    /* subtle depth only on the title */
    text-shadow: 0 1px 0 rgba(0, 0, 0, 0.02), 0 2px 6px rgba(0, 0, 0, 0.06);
}

.hero-title .hero-kicker[b-zoy52kmee8] {
    display: block;
    font-size: clamp(.75rem, 1.5vw, .85rem);
    letter-spacing: .16em;
    text-transform: uppercase;
    color: var(--hero-muted);
    font-weight: 800;
    margin-bottom: .25rem;
}

/* Split brand styling: X‑ray uses primary; Vault uses a darker primary */
.brand-name[b-zoy52kmee8] {
    display: inline-flex;
    gap: .35rem;
    align-items: baseline;
}

.brand-xray[b-zoy52kmee8] {
    color: var(--primary-color, var(--hero-accent));
}

.brand-vault[b-zoy52kmee8] {
    color: var(--primary-darker);
}

@keyframes underline-pop-b-zoy52kmee8 {
    0% {
        transform: scaleX(.1);
        opacity: 0;
    }

    50% {
        transform: scaleX(1.05);
        opacity: .95;
    }

    100% {
        transform: scaleX(1);
        opacity: .9;
    }
}

.hero-title .brand-caret[b-zoy52kmee8] {
    display: inline-block;
    width: .5ch;
    margin-left: .1ch;
    border-bottom: 6px solid currentColor;
    transform: translateY(2px);
    opacity: .6;
}

@media (prefers-reduced-motion: reduce) {
    .hero-title .brand-accent[b-zoy52kmee8]::after {
        animation: none !important;
    }
}

.hero-tagline[b-zoy52kmee8] {
    font-size: clamp(1.05rem, 2.2vw, 1.35rem);
    color: var(--hero-muted);
    margin: 0 0 0.5rem 0;
}

.hero-sub[b-zoy52kmee8] {
    font-size: clamp(1rem, 2vw, 1.15rem);
    color: var(--hero-muted);
    margin: 0 auto 0.9rem auto;
    max-width: 760px;
}

.hero-divider[b-zoy52kmee8] {
    width: 88px;
    height: 3px;
    margin: 0.2rem auto 0.4rem auto;
    background: linear-gradient(90deg, transparent, var(--hero-accent), transparent);
    border-radius: 2px;
}

.hero-values[b-zoy52kmee8] {
    font-weight: 700;
    letter-spacing: .08em;
    color: var(--hero-text);
    margin-bottom: .2rem;
    /* trim bottom a touch more */
}

/* --- Option B: Gradient Underline --- */
.underline-gradient[b-zoy52kmee8] {
    background: linear-gradient(90deg, var(--bs-primary, #0d6efd), var(--bs-info, #0dcaf0));
    background-size: 100% 2px;
    background-repeat: no-repeat;
    background-position: 0 100%;
    padding-bottom: .125rem;
}

/* Removed OS-level dark-mode overrides to avoid washed-out text when app theme is light */
/* /Shared/TenantBrand.razor.rz.scp.css */
.tenant-brand[b-j8yzoosaca] {
    display: block;
    color: #173f8f;
    text-decoration: none;
}

.tenant-brand:hover[b-j8yzoosaca] {
    color: #123573;
    text-decoration: none;
}

.tenant-brand-content[b-j8yzoosaca] {
    display: flex;
    align-items: center;
}

.tenant-brand--navigation[b-j8yzoosaca] {
    width: 100%;
    background: linear-gradient(90deg, #f8fbff, #fff 50%, #f8fbff);
    border-top: 1px solid rgba(255, 255, 255, 0.22);
    border-bottom: 1px solid #dfe7f3;
    box-shadow: 0 3px 8px rgba(15, 37, 77, 0.08);
}

.tenant-brand--navigation .tenant-brand-content[b-j8yzoosaca] {
    width: min(100% - 2rem, 1440px);
    min-height: 48px;
    gap: 0.75rem;
    margin: 0 auto;
}

.tenant-brand--navigation .tenant-logo-frame[b-j8yzoosaca] {
    width: 48px;
    height: 38px;
    flex: 0 0 48px;
    display: grid;
    place-items: center;
    padding: 0.15rem;
    background: #fff;
    border: 1px solid #e2e9f3;
    border-radius: 7px;
}

.tenant-brand--navigation .tenant-logo[b-j8yzoosaca],
.tenant-brand--prominent .tenant-logo[b-j8yzoosaca] {
    display: block;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.tenant-brand-copy[b-j8yzoosaca] {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.tenant-brand-context[b-j8yzoosaca] {
    color: #61718a;
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    line-height: 1.2;
    text-transform: uppercase;
}

.tenant-brand-name[b-j8yzoosaca] {
    overflow: hidden;
    color: #173f8f;
    font-size: 0.96rem;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tenant-brand--prominent[b-j8yzoosaca] {
    margin: 0 auto 1.15rem;
    border-radius: 18px;
}

.tenant-brand--prominent .tenant-brand-content[b-j8yzoosaca] {
    justify-content: center;
    gap: clamp(0.85rem, 2vw, 1.35rem);
}

.tenant-brand--prominent .tenant-logo-frame[b-j8yzoosaca] {
    width: clamp(92px, 17vw, 150px);
    height: clamp(72px, 12vw, 105px);
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    padding: 0.6rem;
    background: #fff;
    border: 1px solid #dce6f3;
    border-radius: 14px;
    box-shadow: 0 5px 16px rgba(23, 63, 143, 0.12);
}

.tenant-brand--prominent .tenant-brand-copy[b-j8yzoosaca] {
    align-items: flex-start;
    text-align: left;
}

.tenant-brand--prominent .tenant-brand-context[b-j8yzoosaca] {
    color: #526784;
    font-size: clamp(0.64rem, 1.35vw, 0.75rem);
}

.tenant-brand--prominent .tenant-brand-name[b-j8yzoosaca] {
    max-width: 520px;
    color: #173f8f;
    font-size: clamp(1.3rem, 3.2vw, 2.1rem);
    line-height: 1.15;
    white-space: normal;
}

.tenant-brand:focus-visible[b-j8yzoosaca] {
    outline: 3px solid #0d6efd;
    outline-offset: 3px;
}

@media (max-width: 575.98px) {
    .tenant-brand--navigation .tenant-brand-content[b-j8yzoosaca] {
        width: min(100% - 1rem, 1440px);
        min-height: 44px;
        gap: 0.55rem;
    }

    .tenant-brand--navigation .tenant-logo-frame[b-j8yzoosaca] {
        width: 42px;
        height: 34px;
        flex-basis: 42px;
    }

    .tenant-brand--navigation .tenant-brand-context[b-j8yzoosaca] {
        font-size: 0.58rem;
    }

    .tenant-brand--navigation .tenant-brand-name[b-j8yzoosaca] {
        font-size: 0.86rem;
    }

    .tenant-brand--prominent .tenant-brand-content[b-j8yzoosaca] {
        flex-direction: column;
    }

    .tenant-brand--prominent .tenant-brand-copy[b-j8yzoosaca] {
        align-items: center;
        text-align: center;
    }
}
/* /Shared/ToastContainer.razor.rz.scp.css */
.toast-container[b-rd9ncf5myk] {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 9999;
    display: flex;
    flex-direction: column;
    gap: 12px;
    max-width: 400px;
    pointer-events: none;
}

.toast[b-rd9ncf5myk] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    border-radius: 8px;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    pointer-events: auto;
    transform: translateX(100%);
    animation: slideIn-b-rd9ncf5myk 0.3s ease-out forwards;
    transition: all 0.3s ease;
    min-height: 60px;
}

.toast:hover[b-rd9ncf5myk] {
    transform: translateX(0) scale(1.02);
    box-shadow: 0 15px 35px -5px rgba(0, 0, 0, 0.15), 0 10px 15px -6px rgba(0, 0, 0, 0.1);
}

.toast-latest[b-rd9ncf5myk] {
    animation: slideIn-b-rd9ncf5myk 0.3s ease-out forwards, pulse-b-rd9ncf5myk 0.6s ease-in-out;
}

@keyframes slideIn-b-rd9ncf5myk {
    from {
        transform: translateX(100%);
        opacity: 0;
    }

    to {
        transform: translateX(0);
        opacity: 1;
    }
}

@keyframes pulse-b-rd9ncf5myk {

    0%,
    100% {
        transform: translateX(0) scale(1);
    }

    50% {
        transform: translateX(0) scale(1.05);
    }
}

.toast-success[b-rd9ncf5myk] {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.95) 0%, rgba(21, 128, 61, 0.95) 100%);
    color: white;
    border-color: rgba(34, 197, 94, 0.3);
}

.toast-error[b-rd9ncf5myk] {
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.95) 0%, rgba(185, 28, 28, 0.95) 100%);
    color: white;
    border-color: rgba(239, 68, 68, 0.3);
}

.toast-warning[b-rd9ncf5myk] {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.95) 0%, rgba(180, 83, 9, 0.95) 100%);
    color: white;
    border-color: rgba(245, 158, 11, 0.3);
}

.toast-info[b-rd9ncf5myk] {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.95) 0%, rgba(29, 78, 216, 0.95) 100%);
    color: white;
    border-color: rgba(59, 130, 246, 0.3);
}

.toast-icon[b-rd9ncf5myk] {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    margin-top: 2px;
}

.toast-icon svg[b-rd9ncf5myk] {
    width: 100%;
    height: 100%;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.1));
}

.toast-content[b-rd9ncf5myk] {
    flex-grow: 1;
    min-width: 0;
}

.toast-message[b-rd9ncf5myk] {
    margin: 0;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
    word-wrap: break-word;
}

.toast-close[b-rd9ncf5myk] {
    flex-shrink: 0;
    background: none;
    border: none;
    color: inherit;
    cursor: pointer;
    padding: 4px;
    border-radius: 4px;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    opacity: 0.8;
}

.toast-close:hover[b-rd9ncf5myk] {
    opacity: 1;
    background: rgba(255, 255, 255, 0.2);
    transform: scale(1.1);
}

.toast-close svg[b-rd9ncf5myk] {
    width: 16px;
    height: 16px;
}

/* Mobile responsiveness */
@media (max-width: 640px) {
    .toast-container[b-rd9ncf5myk] {
        left: 20px;
        right: 20px;
        max-width: none;
    }

    .toast[b-rd9ncf5myk] {
        padding: 14px;
        gap: 10px;
    }

    .toast-message[b-rd9ncf5myk] {
        font-size: 13px;
    }
}
