/* /Components/Layout/CMSLayout.razor.rz.scp.css */
/* Vault shell - navy sidebar + light content area, matching the public site (navy #383D78, gold #BF8F00 / #e0b23a). */
.vault-shell[b-fvnrgvvb28] {
    --v-navy: #383D78;
    --v-navy-deep: #262a58;
    --v-gold: #BF8F00;
    --v-gold-bright: #e0b23a;
    position: relative;
    display: flex;
    min-height: 100vh;
    font-family: Lato, sans-serif;
}

/* The content-area background is a fixed layer behind everything, so it stays put while the
   page scrolls (and still covers the window when a page is short or the browser over-scrolls). */
.vault-shell[b-fvnrgvvb28]::before {
    content: "";
    position: fixed;
    inset: 0;
    z-index: -1;
    background: #f5f7fb;
    pointer-events: none;
}

/* ---------- Sidebar ---------- */
.vault-sidebar[b-fvnrgvvb28] {
    width: 260px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    background:
        radial-gradient(circle at 0% 0%, rgba(224, 178, 58, 0.14), transparent 40%),
        linear-gradient(180deg, var(--v-navy) 0%, var(--v-navy-deep) 100%);
    color: #fff;
}

/* Desktop: the sidebar is pinned to the left edge and never scrolls with the page
   (it scrolls on its own if the menu is ever taller than the window). */
@media (min-width: 768px) {
    .vault-sidebar[b-fvnrgvvb28] {
        position: fixed;
        top: 0;
        left: 0;
        bottom: 0;
        z-index: 30;
        height: 100vh;
        overflow-y: auto;
        /* Bootstrap's offcanvas-md becomes an inline block at md+; keep our own look */
        visibility: visible !important;
        transform: none !important;
        background-color: transparent;
    }
}

@media (max-width: 767.98px) {
    .vault-sidebar[b-fvnrgvvb28] {
        width: 280px;
        border-right: 0;
    }
}

.vault-brand[b-fvnrgvvb28] {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    padding: 1.15rem 1.1rem 1rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.vault-brand-emblem[b-fvnrgvvb28] {
    width: auto;
    height: 40px;
    flex-shrink: 0;
}

.vault-brand-text[b-fvnrgvvb28] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.vault-brand-name[b-fvnrgvvb28] {
    font-family: "Libre Baskerville", serif;
    font-weight: 700;
    font-size: 1.1rem;
    color: #fff;
    line-height: 1.2;
}

.vault-brand-sub[b-fvnrgvvb28] {
    font-size: 0.72rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--v-gold-bright);
}

.vault-sidebar-close[b-fvnrgvvb28] {
    margin-left: auto;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
}

.vault-nav[b-fvnrgvvb28] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 0.75rem 0.7rem;
}

.vault-nav-heading[b-fvnrgvvb28] {
    margin: 0.9rem 0.6rem 0.35rem;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.45);
}

.vault-nav-heading:first-child[b-fvnrgvvb28] {
    margin-top: 0.25rem;
}

/* NavLink renders the <a>, so its class needs ::deep */
.vault-sidebar[b-fvnrgvvb28]  .vault-nav-link,
.vault-nav-link[b-fvnrgvvb28] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.7rem;
    padding: 0.6rem 0.75rem;
    border-radius: 10px;
    color: rgba(255, 255, 255, 0.82);
    font-size: 0.92rem;
    font-weight: 600;
    text-decoration: none;
    transition: background-color 0.15s, color 0.15s;
}

.vault-sidebar[b-fvnrgvvb28]  .vault-nav-link i,
.vault-nav-link i[b-fvnrgvvb28] {
    width: 1.1rem;
    font-size: 1.02rem;
    color: rgba(255, 255, 255, 0.6);
    transition: color 0.15s;
}

.vault-sidebar[b-fvnrgvvb28]  .vault-nav-link small,
.vault-nav-link small[b-fvnrgvvb28] {
    font-weight: 500;
    color: rgba(255, 255, 255, 0.5);
}

.vault-sidebar[b-fvnrgvvb28]  .vault-nav-link:hover,
.vault-nav-link:hover[b-fvnrgvvb28] {
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
}

.vault-sidebar[b-fvnrgvvb28]  .vault-nav-link:hover i,
.vault-nav-link:hover i[b-fvnrgvvb28] {
    color: var(--v-gold-bright);
}

/* Current page */
.vault-sidebar[b-fvnrgvvb28]  .vault-nav-link.active {
    background: rgba(224, 178, 58, 0.16);
    color: #fff;
}

.vault-sidebar[b-fvnrgvvb28]  .vault-nav-link.active i {
    color: var(--v-gold-bright);
}

.vault-sidebar[b-fvnrgvvb28]  .vault-nav-link.active::before {
    content: "";
    position: absolute;
    left: -0.7rem;
    top: 0.45rem;
    bottom: 0.45rem;
    width: 4px;
    border-radius: 0 4px 4px 0;
    background: var(--v-gold-bright);
}

.vault-nav-link.is-disabled[b-fvnrgvvb28] {
    opacity: 0.45;
    cursor: default;
}

.vault-nav-link.is-disabled:hover[b-fvnrgvvb28] {
    background: transparent;
}

.vault-nav-count[b-fvnrgvvb28] {
    margin-left: auto;
    min-width: 1.6rem;
    padding: 0.05rem 0.45rem;
    border-radius: 999px;
    background: rgba(224, 178, 58, 0.2);
    color: var(--v-gold-bright);
    font-size: 0.72rem;
    font-weight: 800;
    text-align: center;
}

.vault-sidebar-foot[b-fvnrgvvb28] {
    padding: 0.6rem 0.7rem 1rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    flex-direction: column;
    gap: 2px;
}

/* ---------- Main column ---------- */
/* Only the page content scrolls: the top bar is fixed, and the main column is offset
   by the sidebar width (desktop) and the top bar height. */
.vault-main[b-fvnrgvvb28] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    padding-top: 56px;
}

@media (min-width: 768px) {
    .vault-main[b-fvnrgvvb28] {
        margin-left: 260px;
    }
}

.vault-topbar[b-fvnrgvvb28] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 25;
    height: 56px;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0 1.5rem;
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(8px);
    border-bottom: 1px solid #e3e8f0;
}

@media (min-width: 768px) {
    .vault-topbar[b-fvnrgvvb28] {
        left: 260px; /* starts after the fixed sidebar */
    }
}

.vault-menu-btn[b-fvnrgvvb28] {
    width: 38px;
    height: 38px;
    border: 1px solid #e3e8f0;
    border-radius: 10px;
    background: #fff;
    color: var(--v-navy);
    font-size: 1.3rem;
    line-height: 1;
}

.vault-topbar-title[b-fvnrgvvb28] {
    font-family: "Libre Baskerville", serif;
    font-weight: 700;
    color: var(--v-navy);
}

.vault-topbar-kicker[b-fvnrgvvb28] {
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--v-gold);
}

.vault-user[b-fvnrgvvb28] {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    max-width: 50%;
    color: #4a5875;
    font-size: 0.88rem;
    font-weight: 600;
}

.vault-user-avatar[b-fvnrgvvb28] {
    flex-shrink: 0;
    display: inline-grid;
    place-items: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--v-navy);
    color: var(--v-gold-bright);
    font-weight: 800;
    font-size: 0.85rem;
}

.vault-user-name[b-fvnrgvvb28] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.vault-content[b-fvnrgvvb28] {
    flex: 1;
    min-width: 0;
    padding: 0.5rem 1.5rem 3rem;
}

@media (max-width: 575.98px) {
    .vault-topbar[b-fvnrgvvb28] {
        padding: 0 1rem;
    }

    .vault-content[b-fvnrgvvb28] {
        padding: 0.25rem 0.85rem 2.5rem;
    }
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
.onyx-nav-link[b-32vzl6gceh] {
    color: #666c72;
    font-family: Lato, sans-serif;
    font-size: 18px;
    font-weight: 700;
}
    .onyx-nav-link:hover[b-32vzl6gceh] {
        color: #BF8F00;
    }

#blazor-error-ui[b-32vzl6gceh] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-32vzl6gceh] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }


.onyx-footer[b-32vzl6gceh] {
    background-color: #383D78;
}
.onyx-footer-container[b-32vzl6gceh] {
    color: white;
}

.onyx-footer-btn[b-32vzl6gceh] {
    color: white !important;
}

.onyx-footer-container a[b-32vzl6gceh] {
    text-decoration: none;
    color: white;
}

.onyx-nav-toggler[b-32vzl6gceh] {
    border: none;    
}

    .navbar-toggler-icon[b-32vzl6gceh]::before {
        color: #BF8F00;
    }

/* ---------- Logo (emblem image + live-text wordmark) ----------
   Sized to match the original 568x119 ISA-logo-full.png: emblem 151px wide, text starting 12px after it,
   title ~34px Garamond in #1D2265, a faint hairline, then the gold tagline. */
.isa-brand[b-32vzl6gceh] {
    align-items: center;
    gap: 9px;
    text-decoration: none;
}

/* Emblem matches the wordmark block's height:
   title 34.5 + 7 padding + 1 rule + 5 gap + tagline 16.5 = 64px. Width follows the image's aspect ratio. */
.isa-brand-emblem[b-32vzl6gceh] {
    display: block;
    height: 64px;
    width: auto;
    flex-shrink: 0;
}

.isa-brand-text[b-32vzl6gceh] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    font-family: "EB Garamond", Garamond, "Adobe Garamond Pro", "Times New Roman", serif;
    font-weight: 400;
    white-space: nowrap;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

.isa-brand-name[b-32vzl6gceh] {
    display: block;
    font-size: 34.5px;
    line-height: 1;
    letter-spacing: 0.003em;
    color: #1D2265;
    padding-bottom: 7px;
    border-bottom: 1px solid #ededed; /* the faint rule under the title in the original */
}

.isa-brand-tagline[b-32vzl6gceh] {
    display: block;
    margin-top: 5px;
    font-size: 16.5px;
    line-height: 1;
    letter-spacing: 0.002em;
    color: #BF8F00;
}

.isa-brand:hover .isa-brand-name[b-32vzl6gceh] {
    color: #262c80;
}

/* ---------- Disclaimer dialog (matches the home / directory look) ---------- */
.isa-modal .modal-dialog[b-32vzl6gceh] {
    max-width: 620px;
    padding: 0 0.5rem;
}

.isa-modal .modal-content[b-32vzl6gceh] {
    border: 0;
    border-radius: 22px;
    box-shadow: 0 30px 70px rgba(20, 24, 54, 0.35);
    overflow: hidden;
    font-family: Lato, sans-serif;
}

.isa-modal .modal-header[b-32vzl6gceh] {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    padding: 1.4rem 1.5rem 1.1rem;
    border-bottom: 1px solid #e3ebf7;
    background:
        radial-gradient(circle at 0% 0%, rgba(191, 143, 0, 0.1), transparent 55%),
        linear-gradient(180deg, #fbfcff, #fff);
}

.isa-modal-icon[b-32vzl6gceh] {
    flex-shrink: 0;
    display: inline-grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: #383D78;
    color: #e0b23a;
    font-size: 1.25rem;
}

.isa-modal-kicker[b-32vzl6gceh] {
    display: block;
    color: #BF8F00;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 0.72rem;
}

.isa-modal .modal-title[b-32vzl6gceh] {
    font-family: "Libre Baskerville", serif;
    font-size: 1.4rem;
    font-weight: 700;
    color: #1f2a44;
    margin: 0.1rem 0 0;
}

.isa-modal-close[b-32vzl6gceh] {
    margin-left: auto;
    align-self: flex-start;
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #4a5875;
    font-size: 1rem;
}

.isa-modal-close:hover[b-32vzl6gceh] {
    background: #e9eef8;
    color: #1f2a44;
}

.isa-modal .modal-body[b-32vzl6gceh] {
    padding: 1.4rem 1.5rem;
    color: #4a5875;
    font-size: 0.98rem;
    line-height: 1.75;
}

.isa-modal .modal-body p[b-32vzl6gceh] {
    margin: 0 0 1rem;
}

.isa-modal .modal-body p:last-child[b-32vzl6gceh] {
    margin-bottom: 0;
}

.isa-modal .modal-footer[b-32vzl6gceh] {
    padding: 0.9rem 1.5rem 1.2rem;
    border-top: 1px solid #e3ebf7;
    background: #f8fbff;
}

.isa-modal-btn[b-32vzl6gceh] {
    border: 0;
    border-radius: 999px;
    padding: 0.55rem 1.6rem;
    background: #383D78;
    color: #e0b23a;
    font-weight: 700;
    letter-spacing: 0.02em;
    box-shadow: 0 8px 18px rgba(56, 61, 120, 0.25);
    transition: background-color 0.15s, transform 0.15s;
}

.isa-modal-btn:hover[b-32vzl6gceh] {
    background: #2f3465;
    transform: translateY(-1px);
}

.isa-modal-btn:focus-visible[b-32vzl6gceh],
.isa-modal-close:focus-visible[b-32vzl6gceh] {
    outline: 3px solid rgba(56, 61, 120, 0.35);
    outline-offset: 2px;
}



/* /Components/Pages/About.razor.rz.scp.css */
/* About page - ISA palette: navy #383D78 / ink #1f2a44 / gold #BF8F00 (matches Home and the member directory) */
.ab-page[b-59v47ev1km] {
    --ab-navy: #383D78;
    --ab-ink: #1f2a44;
    --ab-text: #4a5875;
    --ab-muted: #6b7895;
    --ab-gold: #BF8F00;
    --ab-gold-bright: #e0b23a;
    --ab-border: #e3ebf7;
    --ab-soft: #f4f7fc;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1rem 4rem;
    font-family: Lato, sans-serif;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.ab-kicker[b-59v47ev1km] {
    display: inline-block;
    color: var(--ab-gold);
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 0.74rem;
}

/* ---------- Intro (overlaps the hero like the directory search panel) ---------- */
.ab-intro[b-59v47ev1km] {
    position: relative;
    margin-top: -2.25rem;
    display: grid;
    grid-template-columns: minmax(220px, 340px) minmax(0, 1fr);
    gap: 2rem;
    align-items: center;
    padding: 1.75rem 2rem;
    background:
        radial-gradient(circle at 0% 0%, rgba(191, 143, 0, 0.08), transparent 45%),
        #fff;
    border: 1px solid var(--ab-border);
    border-radius: 20px;
    box-shadow: 0 16px 36px rgba(36, 57, 92, 0.12);
}

.ab-title[b-59v47ev1km] {
    font-family: "Libre Baskerville", serif;
    font-weight: 700;
    font-size: clamp(1.35rem, 1.1rem + 0.9vw, 1.85rem);
    line-height: 1.3;
    color: var(--ab-ink);
    margin: 0.35rem 0 0;
    padding-bottom: 0.7rem;
    position: relative;
}

.ab-title[b-59v47ev1km]::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 52px;
    height: 3px;
    border-radius: 2px;
    background: var(--ab-gold);
}

.ab-lead[b-59v47ev1km] {
    margin: 0;
    font-size: 1.08rem;
    line-height: 1.75;
    color: var(--ab-text);
}

/* ---------- Cards ---------- */
.ab-card[b-59v47ev1km] {
    background: #fff;
    border: 1px solid var(--ab-border);
    border-radius: 20px;
    box-shadow: 0 8px 22px rgba(36, 57, 92, 0.06);
    overflow: hidden;
}

.ab-card-head[b-59v47ev1km] {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    padding: 1.15rem 1.5rem;
    border-bottom: 1px solid var(--ab-border);
    background: linear-gradient(180deg, #fbfcff, #fff);
}

.ab-card-icon[b-59v47ev1km] {
    flex-shrink: 0;
    display: inline-grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: var(--ab-navy);
    color: var(--ab-gold-bright);
    font-size: 1.15rem;
}

.ab-card-title[b-59v47ev1km] {
    font-family: "Libre Baskerville", serif;
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--ab-ink);
    margin: 0;
}

.ab-card-sub[b-59v47ev1km] {
    margin: 0.1rem 0 0;
    font-size: 0.85rem;
    color: var(--ab-muted);
}

/* Areas of focus grid */
.ab-focus[b-59v47ev1km] {
    list-style: none;
    margin: 0;
    padding: 1.25rem 1.5rem 1.5rem;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 0.6rem;
}

.ab-focus li[b-59v47ev1km] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.65rem 0.85rem;
    border-radius: 12px;
    background: var(--ab-soft);
    border: 1px solid var(--ab-border);
    color: var(--ab-ink);
    font-weight: 600;
    font-size: 0.93rem;
    line-height: 1.35;
    transition: border-color 0.15s, background-color 0.15s;
}

.ab-focus li:hover[b-59v47ev1km] {
    background: #fff;
    border-color: #c9d4ea;
}

.ab-focus li i[b-59v47ev1km] {
    flex-shrink: 0;
    display: inline-grid;
    place-items: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--ab-navy);
    color: var(--ab-gold-bright);
    font-size: 0.85rem;
}

/* ---------- Members + contact ---------- */
.ab-split[b-59v47ev1km] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
    gap: 1.25rem;
    align-items: stretch;
}

.ab-body[b-59v47ev1km] {
    margin: 0;
    padding: 1.35rem 1.5rem 0.5rem;
    font-size: 1rem;
    line-height: 1.8;
    color: var(--ab-text);
}

.ab-links[b-59v47ev1km] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.6rem;
    padding: 1rem 1.5rem 1.5rem;
}

.ab-link[b-59v47ev1km] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.5rem 1rem;
    border-radius: 999px;
    border: 1px solid var(--ab-border);
    color: var(--ab-navy);
    font-weight: 700;
    font-size: 0.9rem;
    text-decoration: none;
    transition: background-color 0.15s, border-color 0.15s, color 0.15s;
}

.ab-link:hover[b-59v47ev1km] {
    background: var(--ab-navy);
    border-color: var(--ab-navy);
    color: var(--ab-gold-bright);
}

.ab-contact[b-59v47ev1km] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 0.6rem;
    padding: 2rem 1.75rem;
    border-radius: 20px;
    color: #fff;
    background:
        radial-gradient(circle at 100% 0%, rgba(224, 178, 58, 0.22), transparent 50%),
        linear-gradient(160deg, #383D78, #262a58);
    box-shadow: 0 16px 34px rgba(56, 61, 120, 0.3);
}

.ab-contact-icon[b-59v47ev1km] {
    display: inline-grid;
    place-items: center;
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(224, 178, 58, 0.5);
    color: var(--ab-gold-bright);
    font-size: 1.4rem;
    margin-bottom: 0.4rem;
}

.ab-kicker-light[b-59v47ev1km] {
    color: var(--ab-gold-bright);
}

.ab-contact-title[b-59v47ev1km] {
    font-family: "Libre Baskerville", serif;
    font-size: 1.35rem;
    font-weight: 700;
    line-height: 1.35;
    color: #fff;
    margin: 0 0 0.6rem;
}

.ab-contact-btn[b-59v47ev1km] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    max-width: 100%;
    padding: 0.7rem 1.25rem;
    border-radius: 999px;
    background: var(--ab-gold-bright);
    color: #1f2352;
    font-weight: 800;
    text-decoration: none;
    overflow-wrap: anywhere;
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.2);
    transition: transform 0.15s, background-color 0.15s;
}

.ab-contact-btn:hover[b-59v47ev1km] {
    background: #f0c34d;
    color: #1f2352;
    transform: translateY(-1px);
}

/* ---------- Responsive ---------- */
@media (max-width: 991.98px) {
    .ab-intro[b-59v47ev1km] {
        grid-template-columns: 1fr;
        gap: 1rem;
        padding: 1.5rem;
    }

    .ab-split[b-59v47ev1km] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575.98px) {
    .ab-intro[b-59v47ev1km] {
        padding: 1.25rem;
    }

    .ab-card-head[b-59v47ev1km],
    .ab-focus[b-59v47ev1km],
    .ab-body[b-59v47ev1km],
    .ab-links[b-59v47ev1km] {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .ab-focus[b-59v47ev1km] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/CMS/AppointmentEdit.razor.rz.scp.css */
.ae-loading[b-cbudqf3u37] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    color: #6b7689;
}

.ae-loading .spinner-border[b-cbudqf3u37] {
    color: #383D78;
}

/* Bigger, navy switch to match the Vault toggles */
.form-switch .form-check-input[b-cbudqf3u37] {
    width: 2.6em;
    height: 1.4em;
    cursor: pointer;
}
/* /Components/Pages/CMS/Appointments.razor.rz.scp.css */
/* Calendar date tile (mirrors .hp-date on the public home page) */
.appt-date[b-eketqx6xgv] {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 52px;
    min-height: 54px;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid #e3e8f0;
    background: #fff;
    box-shadow: 0 4px 10px rgba(36, 57, 92, 0.06);
}

.appt-date-month[b-eketqx6xgv] {
    width: 100%;
    padding: 0.15rem 0;
    background: #383D78;
    color: #e0b23a;
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-align: center;
}

.appt-date-day[b-eketqx6xgv] {
    padding: 0.2rem 0 0.25rem;
    font-family: "Libre Baskerville", serif;
    font-size: 1.3rem;
    font-weight: 700;
    color: #1d2939;
    line-height: 1.2;
}

/* Past events: quieter tile */
.appt-past .appt-date[b-eketqx6xgv] {
    box-shadow: none;
}

.appt-past .appt-date-month[b-eketqx6xgv] {
    background: #8a8fb3;
    color: #fff;
}

.appt-past .appt-date-day[b-eketqx6xgv] {
    color: #6b7689;
}

/* Speaker avatar wrapper (photo with initials fallback) */
.appt-avatar[b-eketqx6xgv] {
    display: inline-flex;
}

.appt-avatar .vlist-avatar-initials[b-eketqx6xgv] {
    width: 22px;
    height: 22px;
    border-radius: 50%;
}

@media (max-width: 767.98px) {
    /* vault-list.css indents actions by the 42px icon width; the tile is a bit wider */
    .vlist-actions[b-eketqx6xgv] {
        padding-left: calc(52px + 0.9rem);
    }
}
/* /Components/Pages/CMS/ArticleEdit.razor.rz.scp.css */
/* Article editor - Vault form look (tokens in wwwroot/vault-list.css). */
.ae-state[b-r7q8ga8ods] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    min-height: 180px;
    color: #6b7689;
}

.ae-note[b-r7q8ga8ods] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
    padding: 0.55rem 0.8rem;
    border-radius: 10px;
    background: #fff4e5;
    color: #b54708;
    font-size: 0.85rem;
    font-weight: 600;
}

.ae-note i[b-r7q8ga8ods] {
    margin-top: 0.1rem;
}

/* Validator text styled like .vf-error */
.vf-field[b-r7q8ga8ods]  .rz-message.rz-messages-error {
    display: block;
    font-size: 0.8rem;
    color: #b42318;
    margin-top: 0.3rem;
}

/* Rich-text editor: clean bordered container with rounded corners */
.ae-editor[b-r7q8ga8ods] {
    border: 1px solid #e3e8f0;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.ae-editor:focus-within[b-r7q8ga8ods] {
    border-color: #383D78;
    box-shadow: 0 0 0 3px rgba(56, 61, 120, 0.15);
}

.ae-editor[b-r7q8ga8ods]  .rz-html-editor,
.ae-editor[b-r7q8ga8ods]  .rz-html-editor:focus-within,
.ae-editor[b-r7q8ga8ods]  .rz-html-editor.rz-state-focused {
    margin: 0;
    border: 0 !important;
    border-radius: 0;
    outline: none !important;
    box-shadow: none !important;
}

.ae-editor[b-r7q8ga8ods]  .rz-html-editor-toolbar {
    background: #fafbfd;
    border-bottom: 1px solid #e3e8f0;
}

/* Keep the caret visible in the editor (was an inline <style> block) */
.ae-editor[b-r7q8ga8ods]  .rz-html-editor-content,
.ae-editor[b-r7q8ga8ods]  .rz-html-editor-content * {
    caret-color: black !important;
    outline: none !important;
}
/* /Components/Pages/CMS/Companies.razor.rz.scp.css */
.vlist-row[b-oszfh3d0xh] {
    align-items: center;
}

.vlist-icon.navy[b-oszfh3d0xh] {
    background: #eef0fb;
    color: #383D78;
}
/* /Components/Pages/CMS/EmailTest.razor.rz.scp.css */
/* Email test - Vault form look (tokens in wwwroot/vault-list.css). */
.et-alert[b-2tpm7xk1xk] {
    display: flex;
    align-items: flex-start;
    gap: 0.6rem;
    border-radius: 12px;
    font-size: 0.9rem;
    word-break: break-word;
}

.et-alert > i[b-2tpm7xk1xk] {
    margin-top: 0.15rem;
}
/* /Components/Pages/CMS/Files.razor.rz.scp.css */
/* Vault Files - database-backed folder browser. Palette: navy #383D78, gold #BF8F00 / #e0b23a. */

.fs-header-actions[b-6m1tr72hmv] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.fs-pill[b-6m1tr72hmv] {
    min-width: 1.5rem;
    padding: 0 0.4rem;
    border-radius: 999px;
    background: #fff8e6;
    border: 1px solid #f1dfaa;
    color: #8a6700;
    font-size: 0.72rem;
    font-weight: 800;
}

.v-btn-danger-solid[b-6m1tr72hmv] {
    background: #b42318;
    border-color: #b42318;
    color: #fff;
}

.v-btn-danger-solid:hover:not(:disabled)[b-6m1tr72hmv] {
    background: #912018;
    border-color: #912018;
}

/* ---------- Two-pane layout ---------- */
.fs-layout[b-6m1tr72hmv] {
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
}

.fs-tree[b-6m1tr72hmv],
.fs-main[b-6m1tr72hmv] {
    background: #fff;
    border: 1px solid #e3e8f0;
    border-radius: 14px;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 4px 16px rgba(16, 24, 40, 0.04);
}

/* ---------- Folder tree ---------- */
.fs-tree[b-6m1tr72hmv] {
    position: sticky;
    top: 72px; /* below the Vault top bar */
    max-height: calc(100vh - 96px);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.fs-tree-head[b-6m1tr72hmv] {
    padding: 0.85rem 1rem 0.5rem;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #BF8F00;
}

.fs-tree-body[b-6m1tr72hmv] {
    overflow-y: auto;
    padding: 0 0.5rem 0.75rem;
}

.fs-node[b-6m1tr72hmv] {
    display: flex;
    align-items: center;
    gap: 0.15rem;
    width: 100%;
    min-height: 34px;
    border-radius: 8px;
    border: 1px dashed transparent;
    color: #344054;
    transition: background-color 0.12s, border-color 0.12s;
}

.fs-node:hover[b-6m1tr72hmv] {
    background: #f4f6fb;
}

.fs-node.is-active[b-6m1tr72hmv] {
    background: #eef0fb;
    color: #383D78;
    font-weight: 700;
}

.fs-node.is-drop[b-6m1tr72hmv] {
    background: #fff8e6;
    border-color: #e0b23a;
}

.fs-node-root[b-6m1tr72hmv] {
    gap: 0.55rem;
    padding: 0 0.6rem;
    margin-bottom: 0.15rem;
    background: transparent;
    font-weight: 600;
    text-align: left;
}

.fs-node-root i[b-6m1tr72hmv] {
    color: #383D78;
}

.fs-twisty[b-6m1tr72hmv],
.fs-twisty-spacer[b-6m1tr72hmv] {
    flex-shrink: 0;
    width: 22px;
    height: 22px;
}

.fs-twisty[b-6m1tr72hmv] {
    display: inline-grid;
    place-items: center;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: #6b7689;
    font-size: 0.7rem;
}

.fs-twisty:hover[b-6m1tr72hmv] {
    background: #e6e9f1;
    color: #1d2939;
}

.fs-node-label[b-6m1tr72hmv] {
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 0.45rem;
    border: 0;
    background: transparent;
    padding: 0.3rem 0.4rem 0.3rem 0.1rem;
    color: inherit;
    font: inherit;
    text-align: left;
}

.fs-node-label i[b-6m1tr72hmv] {
    color: #e0b23a;
}

.fs-node-label span:first-of-type[b-6m1tr72hmv] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fs-node-count[b-6m1tr72hmv] {
    margin-left: auto;
    padding: 0 0.4rem;
    border-radius: 999px;
    background: #f1f3f8;
    color: #6b7689;
    font-size: 0.7rem;
    font-weight: 700;
}

/* ---------- Main pane: bar ---------- */
.fs-main[b-6m1tr72hmv] {
    min-width: 0;
    overflow: hidden;
}

.fs-bar[b-6m1tr72hmv] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.85rem 1rem;
    border-bottom: 1px solid #e3e8f0;
    background: #fafbfd;
}

.fs-crumbs[b-6m1tr72hmv] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.15rem;
    min-width: 0;
}

.fs-crumb[b-6m1tr72hmv] {
    max-width: 220px;
    padding: 0.3rem 0.55rem;
    border: 1px dashed transparent;
    border-radius: 8px;
    background: transparent;
    color: #475467;
    font-weight: 600;
    font-size: 0.92rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fs-crumb:hover[b-6m1tr72hmv] {
    background: #eef0fb;
    color: #383D78;
}

.fs-crumb.is-current[b-6m1tr72hmv] {
    color: #1d2939;
    font-weight: 800;
}

.fs-crumb.is-drop[b-6m1tr72hmv] {
    background: #fff8e6;
    border-color: #e0b23a;
}

.fs-crumb-sep[b-6m1tr72hmv] {
    color: #b4bccb;
    font-size: 0.7rem;
}

.fs-tools[b-6m1tr72hmv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.fs-search[b-6m1tr72hmv] {
    position: relative;
}

.fs-search i[b-6m1tr72hmv] {
    position: absolute;
    left: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
    color: #6b7689;
    pointer-events: none;
}

.fs-search input[b-6m1tr72hmv] {
    width: 260px;
    height: 36px;
    padding: 0 0.75rem 0 2.1rem;
    border: 1px solid #d0d6e2;
    border-radius: 10px;
    font-size: 0.9rem;
    outline: none;
}

.fs-search input:focus[b-6m1tr72hmv] {
    border-color: #383D78;
    box-shadow: 0 0 0 3px rgba(56, 61, 120, 0.15);
}

.fs-sort[b-6m1tr72hmv] {
    width: auto;
    height: 36px;
    padding-top: 0;
    padding-bottom: 0;
    border-radius: 10px;
    font-size: 0.88rem;
}

.fs-view[b-6m1tr72hmv] {
    display: inline-flex;
    padding: 3px;
    border-radius: 10px;
    background: #eef1f6;
}

.fs-view button[b-6m1tr72hmv] {
    width: 32px;
    height: 30px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #6b7689;
}

.fs-view button.is-active[b-6m1tr72hmv] {
    background: #fff;
    color: #383D78;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.08);
}

.fs-subhead[b-6m1tr72hmv] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    color: #6b7689;
    font-size: 0.9rem;
    border-bottom: 1px solid #eef1f6;
}

.fs-link[b-6m1tr72hmv] {
    border: 0;
    background: none;
    padding: 0;
    color: #383D78;
    font-weight: 700;
}

/* ---------- List view ---------- */
.fs-list-head[b-6m1tr72hmv],
.fs-row[b-6m1tr72hmv] {
    display: grid;
    grid-template-columns: minmax(0, 2.4fr) minmax(0, 1.4fr) 110px 120px 176px;
    align-items: center;
    gap: 0.75rem;
    padding: 0 1rem;
}

.fs-list-head[b-6m1tr72hmv] {
    height: 36px;
    border-bottom: 1px solid #eef1f6;
    color: #6b7689;
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.fs-list[b-6m1tr72hmv] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.fs-row[b-6m1tr72hmv] {
    min-height: 54px;
    border-bottom: 1px solid #f0f2f7;
    border-left: 3px solid transparent;
    transition: background-color 0.12s;
}

.fs-row:hover[b-6m1tr72hmv] {
    background: #f8f9fd;
}

.fs-row.is-drop[b-6m1tr72hmv] {
    background: #fff8e6;
    border-left-color: #e0b23a;
}

.fs-row.is-dragging[b-6m1tr72hmv],
.fs-tile.is-dragging[b-6m1tr72hmv] {
    opacity: 0.45;
}

.fs-name[b-6m1tr72hmv] {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    min-width: 0;
    padding: 0.5rem 0;
    border: 0;
    background: none;
    color: #1d2939;
    font-weight: 600;
    text-align: left;
    text-decoration: none;
}

.fs-name:hover .fs-name-text[b-6m1tr72hmv] {
    color: #383D78;
    text-decoration: underline;
    text-decoration-color: #e0b23a;
    text-underline-offset: 3px;
}

.fs-name-stack[b-6m1tr72hmv] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.fs-name-text[b-6m1tr72hmv] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fs-name-path[b-6m1tr72hmv] {
    font-size: 0.78rem;
    font-weight: 500;
    color: #6b7689;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fs-ico[b-6m1tr72hmv] {
    flex-shrink: 0;
    font-size: 1.35rem;
    line-height: 1;
}

.fs-ico.folder[b-6m1tr72hmv] { color: #e0b23a; }
.fs-ico.pdf[b-6m1tr72hmv] { color: #d92d20; }
.fs-ico.word[b-6m1tr72hmv] { color: #2f6fd6; }
.fs-ico.excel[b-6m1tr72hmv] { color: #12805c; }
.fs-ico.plain[b-6m1tr72hmv] { color: #6b7689; }

.fs-col-tags[b-6m1tr72hmv] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
    min-width: 0;
}

.fs-tag[b-6m1tr72hmv] {
    max-width: 140px;
    padding: 0.08rem 0.5rem;
    border-radius: 999px;
    background: #eef0fb;
    color: #383D78;
    font-size: 0.74rem;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fs-tag-more[b-6m1tr72hmv] {
    background: #fff8e6;
    color: #8a6700;
}

.fs-col-size[b-6m1tr72hmv],
.fs-col-date[b-6m1tr72hmv] {
    color: #6b7689;
    font-size: 0.85rem;
    white-space: nowrap;
}

.fs-col-actions[b-6m1tr72hmv] {
    display: flex;
    justify-content: flex-end;
    gap: 0.15rem;
}

.fs-act[b-6m1tr72hmv] {
    display: inline-grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: #6b7689;
    text-decoration: none;
    opacity: 0.55;
    transition: opacity 0.12s, background-color 0.12s, color 0.12s;
}

.fs-row:hover .fs-act[b-6m1tr72hmv],
.fs-tile:hover .fs-act[b-6m1tr72hmv],
.fs-act:focus-visible[b-6m1tr72hmv] {
    opacity: 1;
}

.fs-act:hover[b-6m1tr72hmv] {
    background: #eef0fb;
    color: #383D78;
}

.fs-act.danger:hover[b-6m1tr72hmv] {
    background: #fdecec;
    color: #b42318;
}

/* ---------- Grid view ---------- */
.fs-grid[b-6m1tr72hmv] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
    gap: 0.75rem;
    padding: 1rem;
}

.fs-tile[b-6m1tr72hmv] {
    position: relative;
    display: flex;
    flex-direction: column;
    border: 1px solid #e3e8f0;
    border-radius: 12px;
    background: #fff;
    transition: border-color 0.12s, box-shadow 0.12s, transform 0.12s;
}

.fs-tile:hover[b-6m1tr72hmv] {
    border-color: #c8d0e0;
    box-shadow: 0 8px 18px rgba(16, 24, 40, 0.08);
    transform: translateY(-1px);
}

.fs-tile.is-drop[b-6m1tr72hmv] {
    border-color: #e0b23a;
    background: #fff8e6;
}

.fs-tile-open[b-6m1tr72hmv] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.35rem;
    padding: 1.1rem 0.75rem 0.6rem;
    border: 0;
    background: none;
    color: #1d2939;
    text-align: center;
    text-decoration: none;
}

.fs-tile-open .fs-ico[b-6m1tr72hmv] {
    font-size: 2.6rem;
}

.fs-tile-name[b-6m1tr72hmv] {
    max-width: 100%;
    font-weight: 700;
    font-size: 0.88rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fs-tile-meta[b-6m1tr72hmv] {
    font-size: 0.75rem;
    color: #6b7689;
}

.fs-tile-actions[b-6m1tr72hmv] {
    display: flex;
    justify-content: center;
    gap: 0.1rem;
    padding: 0.25rem 0.5rem 0.6rem;
    border-top: 1px solid #f0f2f7;
}

/* ---------- States + footer ---------- */
.fs-state[b-6m1tr72hmv] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    min-height: 280px;
    padding: 2rem 1rem;
    text-align: center;
    color: #6b7689;
}

.fs-state > i[b-6m1tr72hmv] {
    font-size: 2.6rem;
    color: #e0b23a;
}

.fs-state strong[b-6m1tr72hmv] {
    color: #1d2939;
    font-size: 1.05rem;
}

.fs-state .spinner-border[b-6m1tr72hmv] {
    color: #383D78;
}

.fs-state-actions[b-6m1tr72hmv] {
    display: flex;
    gap: 0.5rem;
    margin-top: 0.5rem;
}

.fs-foot[b-6m1tr72hmv] {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.7rem 1rem;
    background: #fafbfd;
    border-top: 1px solid #eef1f6;
    color: #6b7689;
    font-size: 0.82rem;
}

.fs-foot-hint i[b-6m1tr72hmv] {
    margin-right: 0.25rem;
}

/* ---------- Dialogs ---------- */
.fs-modal[b-6m1tr72hmv] {
    position: fixed;
    inset: 0;
    z-index: 1060;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.fs-modal-backdrop[b-6m1tr72hmv] {
    position: fixed;
    inset: 0;
    background: rgba(20, 24, 54, 0.5);
    backdrop-filter: blur(2px);
}

.fs-modal-panel[b-6m1tr72hmv] {
    position: relative;
    width: 100%;
    max-width: 480px;
    max-height: calc(100vh - 2rem);
    display: flex;
    flex-direction: column;
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 30px 70px rgba(20, 24, 54, 0.35);
    overflow: hidden;
    animation: fs-rise-b-6m1tr72hmv 0.16s ease;
}

.fs-modal-wide[b-6m1tr72hmv] {
    max-width: 560px;
}

.fs-modal-head[b-6m1tr72hmv] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1.1rem 1.25rem;
    border-bottom: 1px solid #e3e8f0;
}

.fs-modal-head h3[b-6m1tr72hmv] {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 700;
    color: #1d2939;
}

.fs-modal-icon[b-6m1tr72hmv] {
    display: inline-grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: #383D78;
    color: #e0b23a;
    font-size: 1.05rem;
}

.fs-modal-close[b-6m1tr72hmv] {
    margin-left: auto;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #6b7689;
}

.fs-modal-close:hover[b-6m1tr72hmv] {
    background: #eef1f6;
    color: #1d2939;
}

.fs-modal-body[b-6m1tr72hmv] {
    padding: 1.25rem;
    overflow-y: auto;
}

.fs-modal-lead[b-6m1tr72hmv] {
    margin: 0 0 0.75rem;
    color: #344054;
}

.fs-modal-foot[b-6m1tr72hmv] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    padding: 0.9rem 1.25rem;
    border-top: 1px solid #e3e8f0;
    background: #fafbfd;
}

.fs-warn[b-6m1tr72hmv] {
    display: flex;
    gap: 0.6rem;
    padding: 0.75rem 0.9rem;
    margin-bottom: 0.6rem;
    border-radius: 10px;
    background: #fff4e5;
    color: #93370d;
    font-size: 0.9rem;
}

.fs-warn > i[b-6m1tr72hmv] {
    margin-top: 0.1rem;
}

.fs-bullets[b-6m1tr72hmv] {
    margin: 0;
    padding-left: 1.2rem;
    color: #475467;
    font-size: 0.92rem;
}

/* Move picker */
.fs-picker[b-6m1tr72hmv] {
    max-height: 340px;
    overflow-y: auto;
    border: 1px solid #e3e8f0;
    border-radius: 12px;
    padding: 0.35rem;
}

.fs-pick[b-6m1tr72hmv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.45rem 0.75rem;
    border: 1px solid transparent;
    border-radius: 8px;
    background: transparent;
    color: #344054;
    text-align: left;
}

.fs-pick i[b-6m1tr72hmv] {
    color: #e0b23a;
}

.fs-pick:hover:not(:disabled)[b-6m1tr72hmv] {
    background: #f4f6fb;
}

.fs-pick.is-picked[b-6m1tr72hmv] {
    background: #eef0fb;
    border-color: #383D78;
    color: #383D78;
    font-weight: 700;
}

.fs-pick:disabled[b-6m1tr72hmv] {
    opacity: 0.4;
    cursor: not-allowed;
}

/* Upload drop zone (the native file input covers it, so click and drag-and-drop both work) */
.fs-drop[b-6m1tr72hmv] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.3rem;
    padding: 1.6rem 1rem;
    border: 2px dashed #c8d0e0;
    border-radius: 14px;
    background: #fafbfd;
    text-align: center;
    transition: border-color 0.12s, background-color 0.12s;
}

.fs-drop:hover[b-6m1tr72hmv] {
    border-color: #383D78;
    background: #eef0fb;
}

.fs-drop.has-file[b-6m1tr72hmv] {
    border-style: solid;
    border-color: #383D78;
    background: #fff;
}

.fs-drop[b-6m1tr72hmv]  .fs-drop-input {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.fs-drop-icon[b-6m1tr72hmv] {
    font-size: 2rem;
    color: #383D78;
}

.fs-drop-title[b-6m1tr72hmv] {
    font-weight: 700;
    color: #1d2939;
    word-break: break-word;
}

.fs-drop-hint[b-6m1tr72hmv] {
    font-size: 0.82rem;
    color: #6b7689;
}

@keyframes fs-rise-b-6m1tr72hmv {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: none; }
}

/* ---------- Responsive ---------- */
@media (max-width: 1199.98px) {
    .fs-list-head[b-6m1tr72hmv],
    .fs-row[b-6m1tr72hmv] {
        grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) 90px 150px;
    }

    .fs-list-head span:nth-child(4)[b-6m1tr72hmv],
    .fs-col-date[b-6m1tr72hmv] {
        display: none;
    }
}

@media (max-width: 991.98px) {
    .fs-layout[b-6m1tr72hmv] {
        grid-template-columns: 1fr;
    }

    .fs-tree[b-6m1tr72hmv] {
        position: static;
        max-height: 260px;
    }
}

@media (max-width: 767.98px) {
    .fs-list-head[b-6m1tr72hmv] {
        display: none;
    }

    .fs-row[b-6m1tr72hmv] {
        grid-template-columns: minmax(0, 1fr) auto;
        padding: 0.35rem 0.75rem;
    }

    .fs-col-tags[b-6m1tr72hmv],
    .fs-col-size[b-6m1tr72hmv] {
        display: none;
    }

    .fs-act[b-6m1tr72hmv] {
        opacity: 1;
    }

    .fs-search input[b-6m1tr72hmv] {
        width: 100%;
    }

    .fs-tools[b-6m1tr72hmv],
    .fs-search[b-6m1tr72hmv] {
        flex: 1;
    }

    .fs-foot-hint[b-6m1tr72hmv] {
        display: none;
    }
}
/* /Components/Pages/CMS/HomeContentEdit.razor.rz.scp.css */
/* Home page "Who We Are" editor - Vault form look (tokens in wwwroot/vault-list.css). */
.hc-state[b-dcl4os3ie0] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    min-height: 180px;
    color: #6b7689;
}

.hc-updated[b-dcl4os3ie0] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin-right: auto;
    font-size: 0.8rem;
    color: #6b7689;
}

/* Rich-text editor: clean bordered container with rounded corners */
.hc-editor[b-dcl4os3ie0] {
    border: 1px solid #e3e8f0;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.hc-editor:focus-within[b-dcl4os3ie0] {
    border-color: #383D78;
    box-shadow: 0 0 0 3px rgba(56, 61, 120, 0.15);
}

.hc-editor[b-dcl4os3ie0]  .rz-html-editor,
.hc-editor[b-dcl4os3ie0]  .rz-html-editor:focus-within,
.hc-editor[b-dcl4os3ie0]  .rz-html-editor.rz-state-focused {
    margin: 0;
    border: 0 !important;
    border-radius: 0;
    outline: none !important;
    box-shadow: none !important;
}

.hc-editor[b-dcl4os3ie0]  .rz-html-editor-toolbar {
    background: #fafbfd;
    border-bottom: 1px solid #e3e8f0;
}

.hc-editor[b-dcl4os3ie0]  .rz-html-editor-content {
    outline: none !important;
}

@media (max-width: 575.98px) {
    .hc-updated[b-dcl4os3ie0] {
        width: 100%;
        margin-right: 0;
    }
}
/* /Components/Pages/CMS/Industries.razor.rz.scp.css */
.vlist-row[b-rx9hkwrxpj] {
    align-items: center;
}

.vlist-icon.navy[b-rx9hkwrxpj] {
    background: #eef0fb;
    color: #383D78;
}
/* /Components/Pages/CMS/PdfEdit.razor.rz.scp.css */
/* Edit Member Publication - Vault form look (tokens in wwwroot/vault-list.css). */
.pe2-state[b-3qjm56pzxn] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    min-height: 180px;
    color: #6b7689;
}

.pe2-alert[b-3qjm56pzxn] {
    display: flex;
    align-items: flex-start;
    gap: 0.6rem;
    border-radius: 12px;
    font-size: 0.9rem;
}

.pe2-alert > i[b-3qjm56pzxn] {
    margin-top: 0.15rem;
}

.pe2-details[b-3qjm56pzxn] {
    margin-top: 0.35rem;
    font-size: 0.82rem;
}

.pe2-details summary[b-3qjm56pzxn] {
    cursor: pointer;
    font-weight: 600;
}

.pe2-details > div[b-3qjm56pzxn] {
    margin-top: 0.3rem;
    word-break: break-word;
}

.pe2-readonly[b-3qjm56pzxn] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-height: 38px;
    padding: 0.45rem 0.75rem;
    border: 1px solid #e3e8f0;
    border-radius: 8px;
    background: #fafbfd;
    color: #1d2939;
    word-break: break-all;
}

.pe2-readonly i[b-3qjm56pzxn] {
    color: #b42318;
    flex-shrink: 0;
}
/* /Components/Pages/CMS/PdfUpload.razor.rz.scp.css */
.pub-page[b-ngvgsisdol] {
    --pub-accent: #383D78;
    --pub-accent-soft: #eef3fc;
    --pub-border: #e3e8f0;
    --pub-muted: #6b7689;
    max-width: 760px;
    margin: 0 auto;
    padding: 1.25rem 0 3rem;
}

.pub-back[b-ngvgsisdol] {
    color: var(--pub-muted);
    text-decoration: none;
    font-size: 0.9rem;
}

.pub-back:hover[b-ngvgsisdol] {
    color: var(--pub-accent);
}

.pub-header[b-ngvgsisdol] {
    margin: 0.25rem 0 1.25rem;
}

.pub-title[b-ngvgsisdol] {
    font-weight: 600;
    margin-bottom: 0.25rem;
}

.pub-subtitle[b-ngvgsisdol] {
    color: var(--pub-muted);
    margin: 0;
}

.pub-card[b-ngvgsisdol] {
    background: #fff;
    border: 1px solid var(--pub-border);
    border-radius: 14px;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 4px 16px rgba(16, 24, 40, 0.05);
    padding: 1.5rem;
}

.pub-loading[b-ngvgsisdol] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    justify-content: center;
    min-height: 200px;
    color: var(--pub-muted);
}

.pub-section + .pub-section[b-ngvgsisdol] {
    border-top: 1px solid var(--pub-border);
    margin-top: 1.5rem;
    padding-top: 1.5rem;
}

.pub-step-label[b-ngvgsisdol] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    font-weight: 600;
    margin-bottom: 1rem;
}

.pub-step-num[b-ngvgsisdol] {
    display: inline-grid;
    place-items: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: var(--pub-accent-soft);
    color: var(--pub-accent);
    font-size: 0.8rem;
    font-weight: 700;
}

/* ---------- Type tiles ---------- */
.pub-type-grid[b-ngvgsisdol] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
}

@media (max-width: 575.98px) {
    .pub-type-grid[b-ngvgsisdol] {
        grid-template-columns: 1fr;
    }
}

.pub-type-tile[b-ngvgsisdol] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.85rem;
    text-align: left;
    padding: 1rem;
    background: #fff;
    border: 1.5px solid var(--pub-border);
    border-radius: 12px;
    cursor: pointer;
    transition: border-color 0.15s, box-shadow 0.15s, background-color 0.15s;
}

.pub-type-tile:hover[b-ngvgsisdol] {
    border-color: #b9c7e2;
}

.pub-type-tile:focus-visible[b-ngvgsisdol] {
    outline: 3px solid rgba(56, 61, 120, 0.3);
    outline-offset: 2px;
}

.pub-type-tile.is-selected[b-ngvgsisdol] {
    border-color: var(--pub-accent);
    background: var(--pub-accent-soft);
    box-shadow: 0 0 0 3px rgba(56, 61, 120, 0.08);
}

.pub-type-icon[b-ngvgsisdol] {
    flex-shrink: 0;
    display: inline-grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: 10px;
    font-size: 1.35rem;
}

.pub-type-icon.pdf[b-ngvgsisdol] {
    background: #fdecec;
    color: #c53030;
}

.pub-type-icon.link[b-ngvgsisdol] {
    background: #e7f0ff;
    color: #2f6fd6;
}

.pub-type-text[b-ngvgsisdol] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.pub-type-name[b-ngvgsisdol] {
    font-weight: 600;
    color: #1d2939;
}

.pub-type-desc[b-ngvgsisdol] {
    font-size: 0.85rem;
    color: var(--pub-muted);
}

.pub-type-check[b-ngvgsisdol] {
    position: absolute;
    top: 0.6rem;
    right: 0.6rem;
    color: var(--pub-accent);
    opacity: 0;
    transform: scale(0.6);
    transition: opacity 0.15s, transform 0.15s;
}

.pub-type-tile.is-selected .pub-type-check[b-ngvgsisdol] {
    opacity: 1;
    transform: scale(1);
}

/* ---------- Inputs ---------- */
.pub-input:focus[b-ngvgsisdol] {
    border-color: var(--pub-accent);
    box-shadow: 0 0 0 3px rgba(56, 61, 120, 0.15);
}

.form-label[b-ngvgsisdol] {
    font-weight: 500;
    font-size: 0.92rem;
}

.pub-field-error[b-ngvgsisdol] {
    color: #b42318;
    font-size: 0.85rem;
    margin-top: 0.35rem;
}

/* ---------- Drop zone ---------- */
.pub-dropzone[b-ngvgsisdol] {
    position: relative;
    border: 2px dashed #c8d3e6;
    border-radius: 12px;
    background: #fafbfd;
    padding: 2.25rem 1rem;
    text-align: center;
    transition: border-color 0.15s, background-color 0.15s;
}

.pub-dropzone:hover[b-ngvgsisdol],
.pub-dropzone.is-dragover[b-ngvgsisdol] {
    border-color: var(--pub-accent);
    background: var(--pub-accent-soft);
}

/* The native file input covers the whole zone so click and drag-and-drop both work without JS. */
.pub-dropzone[b-ngvgsisdol]  .pub-dropzone-input {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.pub-dropzone-icon[b-ngvgsisdol] {
    font-size: 2.2rem;
    color: var(--pub-accent);
    line-height: 1;
    margin-bottom: 0.5rem;
}

.pub-dropzone-title[b-ngvgsisdol] {
    font-weight: 500;
}

.pub-dropzone-browse[b-ngvgsisdol] {
    color: var(--pub-accent);
    text-decoration: underline;
}

.pub-dropzone-hint[b-ngvgsisdol] {
    font-size: 0.85rem;
    color: var(--pub-muted);
    margin-top: 0.25rem;
}

.pub-file-chip[b-ngvgsisdol] {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    padding: 0.85rem 1rem;
    border: 1px solid var(--pub-border);
    border-radius: 12px;
    background: #fafbfd;
}

.pub-file-meta[b-ngvgsisdol] {
    flex: 1;
    min-width: 0;
}

.pub-file-name[b-ngvgsisdol] {
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pub-file-size[b-ngvgsisdol] {
    font-size: 0.85rem;
    color: var(--pub-muted);
}

/* ---------- Member picker ---------- */
[b-ngvgsisdol] .pub-member-select {
    min-height: 44px;
}

/* ---------- Errors + actions ---------- */
.pub-error-pre[b-ngvgsisdol] {
    white-space: pre-wrap;
    font-size: 0.75rem;
    max-height: 200px;
    overflow: auto;
}

.pub-actions[b-ngvgsisdol] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    border-top: 1px solid var(--pub-border);
    margin: 1.5rem -1.5rem -1.5rem;
    padding: 1rem 1.5rem;
    background: #fafbfd;
    border-radius: 0 0 14px 14px;
}

.pub-actions-status[b-ngvgsisdol] {
    flex: 1;
    font-size: 0.85rem;
    color: var(--pub-muted);
}

.pub-submit[b-ngvgsisdol] {
    min-width: 140px;
    background: var(--pub-accent);
    border-color: var(--pub-accent);
}

.pub-submit:hover:not(:disabled)[b-ngvgsisdol] {
    background: #2a2e5c;
    border-color: #2a2e5c;
}

@media (max-width: 575.98px) {
    .pub-card[b-ngvgsisdol] {
        padding: 1.1rem;
    }

    .pub-actions[b-ngvgsisdol] {
        flex-wrap: wrap;
        margin: 1.25rem -1.1rem -1.1rem;
        padding: 1rem 1.1rem;
    }

    .pub-actions-status[b-ngvgsisdol] {
        flex-basis: 100%;
    }

    .pub-actions .btn[b-ngvgsisdol] {
        flex: 1;
    }
}
/* /Components/Pages/CMS/People.razor.rz.scp.css */
.onyx-datagrid-text[b-d6nhbogr40]
 {
    margin: 0;
}
/* /Components/Pages/CMS/PeopleCreateEdit.razor.rz.scp.css */
/* People editor - same tokens as the Vault list pages (wwwroot/vault-list.css). */
.pe-page[b-g1jq7fuj9g] {
    --pub-accent: #383D78;
    --pub-accent-soft: #eef3fc;
    --pub-border: #e3e8f0;
    --pub-muted: #6b7689;
    max-width: 1120px;
    margin: 0 auto;
    padding: 0 0 4rem;
}

/* ---------- Loading / access states ---------- */
.pe-state[b-g1jq7fuj9g] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    min-height: 50vh;
    color: var(--pub-muted);
}

.pe-state-card[b-g1jq7fuj9g] {
    flex-direction: column;
    text-align: center;
    min-height: auto;
    margin-top: 3rem;
    padding: 2.5rem 1.5rem;
    background: #fff;
    border: 1px solid var(--pub-border);
    border-radius: 14px;
}

.pe-state-card h5[b-g1jq7fuj9g] {
    color: #1d2939;
    font-weight: 600;
    margin: 0;
}

.pe-state-card p[b-g1jq7fuj9g] {
    margin: 0 0 0.5rem;
}

.pe-state-icon[b-g1jq7fuj9g] {
    display: inline-grid;
    place-items: center;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--pub-accent-soft);
    color: var(--pub-accent);
    font-size: 1.5rem;
}

/* ---------- Sticky header bar ---------- */
.pe-bar[b-g1jq7fuj9g] {
    position: sticky;
    top: 56px; /* below the Vault top bar (CMSLayout .vault-topbar) */
    z-index: 20;
    display: flex;
    align-items: center;
    gap: 0.85rem;
    padding: 0.9rem 0;
    margin-bottom: 1rem;
    background: rgba(248, 249, 251, 0.92);
    backdrop-filter: blur(6px);
    border-bottom: 1px solid var(--pub-border);
}

.pe-back[b-g1jq7fuj9g] {
    display: inline-grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    color: var(--pub-muted);
    border: 1px solid var(--pub-border);
    background: #fff;
    text-decoration: none;
    flex-shrink: 0;
}

.pe-back:hover[b-g1jq7fuj9g] {
    color: var(--pub-accent);
    border-color: #c8d3e6;
}

.pe-bar-title[b-g1jq7fuj9g] {
    flex: 1;
    min-width: 0;
}

.pe-bar-title h2[b-g1jq7fuj9g] {
    font-size: 1.35rem;
    font-weight: 600;
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pe-bar-sub[b-g1jq7fuj9g] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin-top: 0.15rem;
}

.pe-dirty[b-g1jq7fuj9g] {
    font-size: 0.8rem;
    color: #b54708;
}

.pe-dirty i[b-g1jq7fuj9g] {
    font-size: 0.45rem;
    vertical-align: middle;
    margin-right: 0.2rem;
}

.pe-bar-actions[b-g1jq7fuj9g] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

.pe-save[b-g1jq7fuj9g] {
    min-width: 110px;
    background: var(--pub-accent);
    border-color: var(--pub-accent);
}

.pe-save:hover:not(:disabled)[b-g1jq7fuj9g] {
    background: #2a2e5c;
    border-color: #2a2e5c;
}

.pe-confirm-text[b-g1jq7fuj9g] {
    font-size: 0.85rem;
    font-weight: 500;
    color: #b42318;
}

.pe-errors[b-g1jq7fuj9g] {
    display: flex;
    gap: 0.6rem;
    align-items: flex-start;
    border-radius: 12px;
}

.pe-errors i[b-g1jq7fuj9g] {
    margin-top: 0.15rem;
}

/* ---------- Layout ---------- */
.pe-grid[b-g1jq7fuj9g] {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 1.25rem;
    align-items: start;
}

.pe-aside[b-g1jq7fuj9g] {
    position: sticky;
    top: 140px;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.pe-main[b-g1jq7fuj9g] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    min-width: 0;
}

.pe-card[b-g1jq7fuj9g] {
    background: #fff;
    border: 1px solid var(--pub-border);
    border-radius: 14px;
    box-shadow: 0 1px 2px rgba(16, 24, 40, 0.04), 0 4px 16px rgba(16, 24, 40, 0.04);
    padding: 1.25rem;
}

.pe-card-title[b-g1jq7fuj9g] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.95rem;
    font-weight: 600;
    color: #1d2939;
    margin: 0 0 1rem;
}

.pe-card-title i[b-g1jq7fuj9g] {
    color: var(--pub-accent);
}

.pe-card-head[b-g1jq7fuj9g] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
}

.pe-hint[b-g1jq7fuj9g] {
    font-size: 0.85rem;
    color: var(--pub-muted);
    margin: 0.35rem 0 1rem;
}

/* ---------- Fields ---------- */
.pe-fields[b-g1jq7fuj9g] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.9rem 1rem;
}

.pe-fields-1[b-g1jq7fuj9g] {
    grid-template-columns: 1fr;
}

.pe-f[b-g1jq7fuj9g] {
    min-width: 0;
}

.pe-f-wide[b-g1jq7fuj9g] {
    grid-column: 1 / -1;
}

.pe-f-row3[b-g1jq7fuj9g] {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 1rem;
}

.form-label[b-g1jq7fuj9g] {
    font-size: 0.85rem;
    font-weight: 500;
    color: #344054;
    margin-bottom: 0.3rem;
}

.pe-req[b-g1jq7fuj9g] {
    color: #b42318;
}

.pe-page .form-control:focus[b-g1jq7fuj9g],
.pe-page .form-check-input:focus[b-g1jq7fuj9g] {
    border-color: var(--pub-accent);
    box-shadow: 0 0 0 3px rgba(56, 61, 120, 0.15);
}

.pe-page .form-check-input:checked[b-g1jq7fuj9g] {
    background-color: var(--pub-accent);
    border-color: var(--pub-accent);
}

.input-group-text[b-g1jq7fuj9g] {
    background: #fafbfd;
    color: var(--pub-muted);
    width: 42px;
    justify-content: center;
}

.pe-field-error[b-g1jq7fuj9g] {
    color: #b42318;
    font-size: 0.8rem;
    margin-top: 0.35rem;
}

/* Radzen dropdowns: match Bootstrap input height/radius */
[b-g1jq7fuj9g] .pe-dd {
    width: 100%;
    min-height: 38px;
    border-radius: 0.375rem;
}

/* ---------- Photo card ---------- */
.pe-photo-card[b-g1jq7fuj9g] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.85rem;
}

.pe-photo[b-g1jq7fuj9g] {
    position: relative;
    width: 140px;
    height: 140px;
    border-radius: 50%;
    overflow: hidden;
    border: 1px solid var(--pub-border);
    background: var(--pub-accent-soft);
}

.pe-photo img[b-g1jq7fuj9g] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.pe-photo-initials[b-g1jq7fuj9g] {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    font-size: 2.6rem;
    font-weight: 700;
    color: var(--pub-accent);
}

.pe-photo-busy[b-g1jq7fuj9g] {
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    background: rgba(255, 255, 255, 0.7);
    color: var(--pub-accent);
}

.pe-photo-actions[b-g1jq7fuj9g] {
    display: flex;
    gap: 0.4rem;
}

.pe-ghost-btn[b-g1jq7fuj9g] {
    border-radius: 8px;
    border: 1px solid #c8d3e6;
    color: var(--pub-accent);
    background: #fff;
}

.pe-ghost-btn:hover[b-g1jq7fuj9g] {
    background: var(--pub-accent-soft);
    color: var(--pub-accent);
}

.pe-ghost-btn.danger:hover[b-g1jq7fuj9g] {
    background: #fdecec;
    border-color: #f5c2c2;
    color: #b42318;
}

.pe-file-label[b-g1jq7fuj9g] {
    cursor: pointer;
    margin: 0;
}

/* ---------- Toggles ---------- */
.pe-toggles[b-g1jq7fuj9g] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.pe-toggle[b-g1jq7fuj9g] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    cursor: pointer;
    margin: 0;
}

.pe-toggle-title[b-g1jq7fuj9g] {
    display: block;
    font-size: 0.88rem;
    font-weight: 600;
    color: #1d2939;
}

.pe-toggle-desc[b-g1jq7fuj9g] {
    display: block;
    font-size: 0.8rem;
    color: var(--pub-muted);
}

.pe-toggle .form-check-input[b-g1jq7fuj9g] {
    width: 2.4em;
    height: 1.3em;
    cursor: pointer;
}

.pe-link[b-g1jq7fuj9g] {
    font-size: 0.85rem;
    color: var(--pub-accent);
    text-decoration: none;
    border-top: 1px solid var(--pub-border);
    padding-top: 0.85rem;
}

.pe-link:hover[b-g1jq7fuj9g] {
    text-decoration: underline;
}

/* ---------- Profile sections ---------- */
.pe-sections[b-g1jq7fuj9g] {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
}

.pe-sections-empty[b-g1jq7fuj9g] {
    font-size: 0.88rem;
    color: var(--pub-muted);
    padding: 1rem;
    text-align: center;
    border: 1px dashed #c8d3e6;
    border-radius: 10px;
    margin-bottom: 0.25rem;
}

.pe-section[b-g1jq7fuj9g] {
    border: 1px solid var(--pub-border);
    border-radius: 10px;
    background: #fff;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.pe-section:hover[b-g1jq7fuj9g] {
    border-color: #c8d3e6;
}

.pe-section.is-open[b-g1jq7fuj9g] {
    border-color: var(--pub-accent);
    box-shadow: 0 0 0 3px rgba(56, 61, 120, 0.08);
}

.pe-section-head[b-g1jq7fuj9g] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 0.6rem 0.6rem 0.85rem;
}

.pe-section.is-open .pe-section-head[b-g1jq7fuj9g] {
    border-bottom: 1px solid var(--pub-border);
}

.pe-section-toggle[b-g1jq7fuj9g] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    border: 0;
    background: none;
    padding: 0.15rem 0;
}

.pe-section-title[b-g1jq7fuj9g] {
    font-weight: 600;
    color: #1d2939;
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pe-section-preview[b-g1jq7fuj9g] {
    font-size: 0.82rem;
    color: var(--pub-muted);
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.pe-section-title-input[b-g1jq7fuj9g] {
    flex: 1;
    font-weight: 600;
}

.pe-section-actions[b-g1jq7fuj9g] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    flex-shrink: 0;
}

.pe-icon-btn[b-g1jq7fuj9g] {
    width: 32px;
    height: 32px;
    padding: 0;
    border-radius: 8px;
    color: var(--pub-muted);
    border: 1px solid transparent;
}

.pe-icon-btn:hover[b-g1jq7fuj9g] {
    background: #eef1f6;
    color: #1d2939;
}

.pe-icon-btn.danger:hover[b-g1jq7fuj9g] {
    background: #fdecec;
    color: #b42318;
}

/* HTML editor host (class name is used by autoSizeProfileSectionEditors in wwwroot/app.js) */
.profile-section-editor-host[b-g1jq7fuj9g] {
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    border-radius: 0 0 10px 10px;
}

.profile-section-editor-host[b-g1jq7fuj9g]  .rz-html-editor,
.profile-section-editor-host[b-g1jq7fuj9g]  .rz-html-editor:focus-within,
.profile-section-editor-host[b-g1jq7fuj9g]  .rz-html-editor.rz-state-focused {
    width: 100% !important;
    max-width: 100%;
    min-width: 0;
    border: 0 !important;
    border-radius: 0;
    outline: none !important;
    box-shadow: none !important;
}

.profile-section-editor-host[b-g1jq7fuj9g]  .rz-html-editor-toolbar {
    background: #fafbfd;
    border-bottom: 1px solid var(--pub-border);
}

.profile-section-editor-host[b-g1jq7fuj9g]  .rz-html-editor-content {
    min-height: 220px;
    overflow: auto;
    outline: none !important;
}

.profile-section-editor-host[b-g1jq7fuj9g]  .rz-html-editor-source.rz-textarea {
    width: 100% !important;
    padding: 0.5rem;
    margin: 0;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    resize: none;
}

/* ---------- Responsive ---------- */
@media (max-width: 991.98px) {
    .pe-grid[b-g1jq7fuj9g] {
        grid-template-columns: 1fr;
    }

    .pe-aside[b-g1jq7fuj9g] {
        position: static;
        display: grid;
        grid-template-columns: auto 1fr;
        align-items: stretch;
    }

    .pe-photo[b-g1jq7fuj9g] {
        width: 110px;
        height: 110px;
    }
}

@media (max-width: 575.98px) {
    .pe-bar[b-g1jq7fuj9g] {
        flex-wrap: wrap;
    }

    .pe-bar-actions[b-g1jq7fuj9g] {
        width: 100%;
    }

    .pe-bar-actions .btn[b-g1jq7fuj9g] {
        flex: 1;
    }

    .pe-aside[b-g1jq7fuj9g],
    .pe-fields[b-g1jq7fuj9g],
    .pe-f-row3[b-g1jq7fuj9g] {
        grid-template-columns: 1fr;
    }

    .pe-card[b-g1jq7fuj9g] {
        padding: 1rem;
    }
}
/* /Components/Pages/CMS/PracticeAreas.razor.rz.scp.css */
.vlist-row[b-bot7id4ezr] {
    align-items: center;
}

.vlist-icon.navy[b-bot7id4ezr] {
    background: #eef0fb;
    color: #383D78;
}
/* /Components/Pages/CMS/Users.razor.rz.scp.css */
/* vlist-* tokens are declared on .vlist-page; this page uses .v-page, so re-declare them here. */
.users-page[b-vpgdxxvf1a] {
    --pub-accent: #383D78;
    --pub-accent-soft: #eef0fb;
    --pub-border: #e3e8f0;
    --pub-muted: #6b7689;
}

/* The grid sits inside the vlist-card, so drop its own card chrome. */
.users-card[b-vpgdxxvf1a]  .rz-data-grid {
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.users-card[b-vpgdxxvf1a]  .rz-data-grid .rz-grid-table td {
    vertical-align: middle;
}

/* Edit row switches: Radzen's switch knob is wider than its track and grid cells clip overflow,
   which cut the knob in half. Let switch cells overflow and give the switch room on both sides. */
.users-card[b-vpgdxxvf1a]  .rz-data-grid .rz-grid-table td:has(.rz-switch),
.users-card[b-vpgdxxvf1a]  .rz-data-grid .rz-cell-data:has(.rz-switch) {
    overflow: visible;
    text-overflow: clip;
}

.users-card[b-vpgdxxvf1a]  .rz-data-grid .rz-switch {
    margin: 4px 10px;
    vertical-align: middle;
}

.user-cell[b-vpgdxxvf1a] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    min-width: 0;
}

.user-cell .vlist-person-avatar[b-vpgdxxvf1a] {
    width: 34px;
    height: 34px;
    font-size: 0.78rem;
}

.user-cell-main[b-vpgdxxvf1a] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    min-width: 0;
    font-weight: 600;
    color: #1d2939;
}

.user-cell-email[b-vpgdxxvf1a] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.user-actions[b-vpgdxxvf1a] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    flex-wrap: nowrap;
}

.user-actions .vlist-icon-btn[b-vpgdxxvf1a] {
    border: 1px solid #e3e8f0;
    background: #fff;
}

.user-reset-dialog .vf-actions[b-vpgdxxvf1a] {
    margin-top: 1rem;
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* Home page - ISA palette: navy #383D78 / ink #1f2a44 / gold #BF8F00 (matches the Members directory) */
.home-page[b-7c662z368b] {
    --hp-navy: #383D78;
    --hp-ink: #1f2a44;
    --hp-text: #4a5875;
    --hp-muted: #6b7895;
    --hp-gold: #BF8F00;
    --hp-gold-bright: #e0b23a;
    --hp-border: #e3ebf7;
    --hp-soft: #f4f7fc;
    background: linear-gradient(180deg, #f8fbff 0%, #f2f7fd 100%);
    font-family: Lato, sans-serif;
}

.home-content-surface[b-7c662z368b] {
    max-width: 1920px;
    margin: 0 auto;
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid var(--hp-border);
    border-radius: 24px;
    box-shadow: 0 20px 45px rgba(36, 57, 92, 0.08);
    padding: 1rem 1.25rem 1.5rem;
}

.home-section[b-7c662z368b] {
    margin: 0;
    padding: 1rem 0;
}

/* ---------- Member search buttons (unchanged) ---------- */
.home-actions-section[b-7c662z368b] {
    padding-top: 0.6rem;
    padding-bottom: 0.6rem;
}

.home-actions-section[b-7c662z368b]  a.onyx-home-card,
.home-actions-section[b-7c662z368b]  a.onyx-home-card:link,
.home-actions-section[b-7c662z368b]  a.onyx-home-card:visited,
.home-actions-section[b-7c662z368b]  a.onyx-home-card:focus {
    border: 2px solid #BF8F00 !important;
    border-radius: 12px;
    background-color: #383D78 !important;
    color: #BF8F00 !important;
    font-weight: 700;
    font-size: 1.2rem;
    letter-spacing: 0.01em;
    box-shadow: 0 10px 22px rgba(56, 61, 120, 0.34);
    transition: transform 0.18s ease, box-shadow 0.18s ease, background-color 0.18s ease;
    display: block;
    width: 100%;
    height: 100%;
}

.home-actions-section[b-7c662z368b]  a.onyx-home-card:hover,
.home-actions-section[b-7c662z368b]  a.onyx-home-card.active {
    transform: translateY(-1px);
    box-shadow: 0 13px 24px rgba(56, 61, 120, 0.4);
    background-color: #2f3465 !important;
    border-color: #d3a01a !important;
    color: #d3a01a !important;
}

.home-actions-section[b-7c662z368b]  a.onyx-home-card .card-body {
    min-height: 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;
    padding: 0.72rem 0.9rem;
    background-color: transparent;
}

.home-actions-section[b-7c662z368b]  a.onyx-home-card .home-button-text,
.home-actions-section[b-7c662z368b]  a.onyx-home-card .home-button-arrow {
    color: #BF8F00 !important;
}

.home-actions-section[b-7c662z368b]  a.onyx-home-card:hover .home-button-text,
.home-actions-section[b-7c662z368b]  a.onyx-home-card:hover .home-button-arrow,
.home-actions-section[b-7c662z368b]  a.onyx-home-card.active .home-button-text,
.home-actions-section[b-7c662z368b]  a.onyx-home-card.active .home-button-arrow {
    color: #d3a01a !important;
}

.home-button-text[b-7c662z368b] {
    text-transform: uppercase;
    font-size: 1.26rem;
    line-height: 1.05;
}

.home-button-arrow[b-7c662z368b] {
    font-size: 1.2rem;
    margin-left: 0.08rem;
}

.onyx-home-card-icon[b-7c662z368b] {
    width: 28px;
    height: 28px;
    object-fit: contain;
    filter: brightness(0) saturate(100%) invert(67%) sepia(38%) saturate(1068%) hue-rotate(11deg) brightness(89%) contrast(95%);
}

/* ---------- Shared bits ---------- */
.hp-kicker[b-7c662z368b] {
    display: inline-block;
    color: var(--hp-gold);
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 0.74rem;
}

.hp-meta[b-7c662z368b] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.25rem 0.75rem;
    font-size: 0.82rem;
    color: var(--hp-muted);
}

.hp-meta i[b-7c662z368b] {
    margin-right: 0.15rem;
}

/* ---------- Who We Are ---------- */
.hp-about[b-7c662z368b] {
    display: grid;
    grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
    gap: 2.5rem;
    margin: 1.25rem 0 0.5rem;
    padding: 2rem 2.25rem;
    border-radius: 20px;
    background:
        radial-gradient(circle at 0% 0%, rgba(191, 143, 0, 0.08), transparent 45%),
        linear-gradient(180deg, #fbfcff, #f5f8fd);
    border: 1px solid var(--hp-border);
}

.hp-about-title[b-7c662z368b] {
    font-family: "Libre Baskerville", serif;
    font-weight: 700;
    font-size: clamp(1.7rem, 1.3rem + 1.4vw, 2.4rem);
    color: var(--hp-ink);
    letter-spacing: -0.01em;
    margin: 0.35rem 0 0;
    padding-bottom: 0.75rem;
    position: relative;
}

.hp-about-title[b-7c662z368b]::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 56px;
    height: 3px;
    border-radius: 2px;
    background: var(--hp-gold);
}

/* Count tiles stack vertically: big number on the left, label beside it */
.hp-stats[b-7c662z368b] {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    margin-top: 1.5rem;
    max-width: 280px;
}

.hp-stat[b-7c662z368b] {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    padding: 0.75rem 1.1rem;
    border-radius: 14px;
    background: var(--hp-navy);
    color: #fff;
    text-decoration: none;
    box-shadow: 0 10px 22px rgba(56, 61, 120, 0.22);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.hp-stat:hover[b-7c662z368b] {
    transform: translateY(-2px);
    box-shadow: 0 14px 26px rgba(56, 61, 120, 0.3);
    color: #fff;
}

.hp-stat-num[b-7c662z368b] {
    min-width: 2.6ch;
    font-family: "Libre Baskerville", serif;
    font-weight: 700;
    font-size: 1.8rem;
    line-height: 1.1;
    color: var(--hp-gold-bright);
}

.hp-stat[b-7c662z368b]::after {
    content: "\2192"; /* → */
    margin-left: auto;
    color: rgba(255, 255, 255, 0.5);
    transition: transform 0.15s, color 0.15s;
}

.hp-stat:hover[b-7c662z368b]::after {
    color: var(--hp-gold-bright);
    transform: translateX(3px);
}

.hp-stat-label[b-7c662z368b] {
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.85);
}

/* Admin-edited HTML has no scope attribute, so style it via ::deep */
.hp-about-body[b-7c662z368b] {
    align-self: center;
}

.home-who-we-are[b-7c662z368b]  p,
.home-who-we-are[b-7c662z368b]  li {
    font-size: 1.04rem;
    line-height: 1.75;
    color: var(--hp-text);
}

.home-who-we-are[b-7c662z368b]  p {
    margin: 0 0 1.1rem;
}

.home-who-we-are[b-7c662z368b]  p:first-child::first-letter {
    float: left;
    font-family: "Libre Baskerville", serif;
    font-size: 3.1rem;
    line-height: 0.9;
    padding: 0.35rem 0.5rem 0 0;
    color: var(--hp-navy);
}

.home-who-we-are[b-7c662z368b]  p:last-child {
    margin-bottom: 0;
}

.home-who-we-are[b-7c662z368b]  a {
    color: var(--hp-navy);
    font-weight: 600;
}

/* ---------- Articles + Speaking panels ---------- */
.hp-panels[b-7c662z368b] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
    margin-top: 1.5rem;
}

.hp-panel[b-7c662z368b] {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid var(--hp-border);
    border-radius: 20px;
    box-shadow: 0 8px 22px rgba(36, 57, 92, 0.06);
    overflow: hidden;
}

.hp-panel-head[b-7c662z368b] {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    padding: 1.15rem 1.35rem;
    border-bottom: 1px solid var(--hp-border);
    background: linear-gradient(180deg, #fbfcff, #fff);
}

.hp-panel-icon[b-7c662z368b] {
    flex-shrink: 0;
    display: inline-grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: var(--hp-navy);
    color: var(--hp-gold-bright);
    font-size: 1.15rem;
}

.hp-panel-title[b-7c662z368b] {
    font-family: "Libre Baskerville", serif;
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--hp-ink);
    margin: 0;
}

.hp-panel-sub[b-7c662z368b] {
    margin: 0.1rem 0 0;
    font-size: 0.85rem;
    color: var(--hp-muted);
}

.hp-count[b-7c662z368b] {
    margin-left: auto;
    min-width: 2rem;
    padding: 0.15rem 0.6rem;
    border-radius: 999px;
    background: #fff8e6;
    border: 1px solid #f1dfaa;
    color: #8a6700;
    font-weight: 700;
    font-size: 0.82rem;
    text-align: center;
}

.hp-list[b-7c662z368b] {
    list-style: none;
    margin: 0;
    padding: 0.4rem 0;
}

.hp-empty[b-7c662z368b] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    min-height: 200px;
    padding: 2rem 1rem;
    text-align: center;
    color: var(--hp-muted);
}

.hp-empty i[b-7c662z368b] {
    display: inline-grid;
    place-items: center;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--hp-soft);
    color: var(--hp-navy);
    font-size: 1.4rem;
}

.hp-more[b-7c662z368b] {
    margin: 0 1.35rem 1.1rem;
    padding: 0.55rem;
    border: 1px dashed #c9d4ea;
    border-radius: 12px;
    background: transparent;
    color: var(--hp-navy);
    font-weight: 700;
    font-size: 0.88rem;
}

.hp-more:hover[b-7c662z368b] {
    background: var(--hp-soft);
    border-style: solid;
}

.hp-more i[b-7c662z368b] {
    margin-left: 0.3rem;
}

/* Avatars (photo with initials fallback) */
.hp-avatar[b-7c662z368b] {
    flex-shrink: 0;
    display: inline-block;
    border-radius: 50%;
    overflow: hidden;
    background: var(--hp-soft);
    border: 2px solid #fff;
    box-shadow: 0 0 0 1.5px var(--hp-gold);
}

.hp-avatar img[b-7c662z368b] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.hp-avatar-initials[b-7c662z368b] {
    place-items: center;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #383D78, #2a2e5c);
    color: var(--hp-gold-bright);
    font-family: "Libre Baskerville", serif;
    font-weight: 700;
}

.hp-avatar-xs[b-7c662z368b] { width: 22px; height: 22px; font-size: 0.55rem; border-width: 1px; box-shadow: 0 0 0 1px var(--hp-gold); }
.hp-avatar-sm[b-7c662z368b] { width: 30px; height: 30px; font-size: 0.65rem; }
.hp-avatar-md[b-7c662z368b] { width: 52px; height: 52px; font-size: 1rem; }

/* Article rows */
.hp-article[b-7c662z368b] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 0.85rem;
    padding: 0.75rem 1.35rem;
    border-bottom: 1px solid #eef2f8;
    transition: background-color 0.15s;
}

.hp-article:last-child[b-7c662z368b] {
    border-bottom: 0;
}

.hp-article:hover[b-7c662z368b] {
    background: #fafcff;
}

.hp-article-main[b-7c662z368b] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
    text-decoration: none;
}

.hp-article-title[b-7c662z368b] {
    font-weight: 700;
    color: var(--hp-ink);
    line-height: 1.35;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.hp-article-main:hover .hp-article-title[b-7c662z368b] {
    color: var(--hp-navy);
    text-decoration: underline;
    text-decoration-color: var(--hp-gold);
    text-underline-offset: 3px;
}

.hp-type[b-7c662z368b] {
    padding: 0.05rem 0.45rem;
    border-radius: 6px;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.hp-type.pdf[b-7c662z368b] {
    background: #fdecec;
    color: #b42318;
}

.hp-type.link[b-7c662z368b] {
    background: #eef0fb;
    color: var(--hp-navy);
}

.hp-author[b-7c662z368b] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    max-width: 180px;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--hp-text);
    text-decoration: none;
}

.hp-author:hover[b-7c662z368b] {
    color: var(--hp-navy);
}

.hp-author-name[b-7c662z368b] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hp-action[b-7c662z368b] {
    display: inline-grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    border: 1px solid var(--hp-border);
    color: var(--hp-navy);
    text-decoration: none;
    transition: background-color 0.15s, color 0.15s, border-color 0.15s;
}

.hp-action:hover[b-7c662z368b] {
    background: var(--hp-navy);
    border-color: var(--hp-navy);
    color: var(--hp-gold-bright);
}

/* Speaking rows */
.hp-event[b-7c662z368b] {
    display: flex;
    align-items: center;
    gap: 1rem;
    width: 100%;
    padding: 0.8rem 1.35rem;
    border: 0;
    border-bottom: 1px solid #eef2f8;
    background: transparent;
    text-align: left;
    transition: background-color 0.15s;
}

.hp-list li:last-child .hp-event[b-7c662z368b] {
    border-bottom: 0;
}

.hp-event:hover[b-7c662z368b] {
    background: #fafcff;
}

.hp-event:focus-visible[b-7c662z368b] {
    outline: 3px solid rgba(56, 61, 120, 0.3);
    outline-offset: -3px;
}

.hp-date[b-7c662z368b] {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 54px;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid var(--hp-border);
    background: #fff;
    box-shadow: 0 4px 10px rgba(36, 57, 92, 0.06);
}

.hp-date-month[b-7c662z368b] {
    width: 100%;
    padding: 0.15rem 0;
    background: var(--hp-navy);
    color: var(--hp-gold-bright);
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    text-align: center;
}

.hp-date-day[b-7c662z368b] {
    padding: 0.2rem 0 0.25rem;
    font-family: "Libre Baskerville", serif;
    font-size: 1.35rem;
    font-weight: 700;
    color: var(--hp-ink);
    line-height: 1.2;
}

.hp-date-year[b-7c662z368b] {
    width: 100%;
    padding: 0 0 0.25rem;
    margin-top: -0.2rem;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: var(--hp-muted, #6b7895);
    text-align: center;
}

.hp-date-lg[b-7c662z368b] {
    width: 68px;
}

.hp-date-lg .hp-date-year[b-7c662z368b] {
    font-size: 0.75rem;
}

.hp-date-lg .hp-date-day[b-7c662z368b] {
    font-size: 1.75rem;
}

.hp-event-body[b-7c662z368b] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.hp-event-title[b-7c662z368b] {
    font-weight: 700;
    color: var(--hp-ink);
    line-height: 1.35;
}

.hp-speaker[b-7c662z368b] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--hp-text);
}

.hp-event-arrow[b-7c662z368b] {
    color: #c3cbdb;
    transition: transform 0.15s, color 0.15s;
}

.hp-event:hover .hp-event-arrow[b-7c662z368b] {
    color: var(--hp-gold);
    transform: translateX(3px);
}

/* ---------- Appointment dialog ---------- */
.hp-modal[b-7c662z368b] {
    position: fixed;
    inset: 0;
    z-index: 1060;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    outline: none;
}

.hp-modal-backdrop[b-7c662z368b] {
    position: fixed;
    inset: 0;
    background: rgba(20, 24, 54, 0.55);
    backdrop-filter: blur(3px);
    animation: hp-fade-b-7c662z368b 0.15s ease;
}

.hp-modal-panel[b-7c662z368b] {
    position: relative;
    width: 100%;
    max-width: 620px;
    max-height: calc(100vh - 2rem);
    overflow-y: auto;
    padding: 1.75rem;
    background: #fff;
    border-radius: 22px;
    box-shadow: 0 30px 70px rgba(20, 24, 54, 0.35);
    animation: hp-rise-b-7c662z368b 0.18s ease;
    font-family: Lato, sans-serif;
}

.hp-modal-close[b-7c662z368b] {
    position: absolute;
    top: 0.85rem;
    right: 0.85rem;
    width: 38px;
    height: 38px;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #4a5875;
}

.hp-modal-close:hover[b-7c662z368b] {
    background: #e9eef8;
    color: #1f2a44;
}

.hp-modal-head[b-7c662z368b] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding-right: 2.5rem;
}

.hp-modal-title[b-7c662z368b] {
    font-family: "Libre Baskerville", serif;
    font-size: 1.35rem;
    font-weight: 700;
    color: #1f2a44;
    margin: 0.2rem 0 0;
    line-height: 1.3;
}

.hp-facts[b-7c662z368b] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 0.75rem;
    margin: 1.4rem 0 0;
}

.hp-facts > div[b-7c662z368b] {
    padding: 0.85rem 1rem;
    border-radius: 14px;
    background: #f4f7fc;
    border: 1px solid #e3ebf7;
}

.hp-facts dt[b-7c662z368b] {
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #BF8F00;
    margin-bottom: 0.3rem;
}

.hp-facts dd[b-7c662z368b] {
    margin: 0;
    color: #1f2a44;
    font-weight: 600;
    line-height: 1.45;
}

/* Add to calendar */
.hp-cal[b-7c662z368b] {
    margin-top: 1rem;
}

.hp-cal-btn[b-7c662z368b] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1.15rem;
    border: 0;
    border-radius: 999px;
    background: #383D78;
    color: #fff;
    font-weight: 700;
    box-shadow: 0 8px 18px rgba(56, 61, 120, 0.25);
    transition: background-color 0.15s, transform 0.15s;
}

.hp-cal-btn:hover[b-7c662z368b] {
    background: #2f3465;
    transform: translateY(-1px);
}

.hp-cal-btn > .bi-calendar-plus[b-7c662z368b] {
    color: #e0b23a;
    font-size: 1.05rem;
}

.hp-cal-caret[b-7c662z368b] {
    font-size: 0.75rem;
    opacity: 0.75;
}

.hp-cal-options[b-7c662z368b] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.5rem;
    margin-top: 0.75rem;
    animation: hp-fade-b-7c662z368b 0.15s ease;
}

.hp-cal-option[b-7c662z368b] {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    padding: 0.7rem 0.85rem;
    border: 1px solid #e3ebf7;
    border-radius: 12px;
    background: #fff;
    color: #1f2a44;
    text-decoration: none;
    transition: border-color 0.15s, background-color 0.15s;
}

.hp-cal-option:hover[b-7c662z368b] {
    border-color: #383D78;
    background: #f8fbff;
    color: #1f2a44;
}

.hp-cal-option > i[b-7c662z368b] {
    flex-shrink: 0;
    display: inline-grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: #f4f7fc;
    color: #383D78;
    font-size: 1.05rem;
}

.hp-cal-option span[b-7c662z368b] {
    display: flex;
    flex-direction: column;
    min-width: 0;
    line-height: 1.3;
}

.hp-cal-option strong[b-7c662z368b] {
    font-size: 0.9rem;
}

.hp-cal-option small[b-7c662z368b] {
    font-size: 0.76rem;
    color: #6b7895;
}

@media (max-width: 575.98px) {
    .hp-cal-options[b-7c662z368b] {
        grid-template-columns: 1fr;
    }
}

.hp-modal-desc[b-7c662z368b] {
    margin-top: 1.25rem;
    color: #4a5875;
    line-height: 1.7;
    white-space: pre-line;
}

.hp-speaker-card[b-7c662z368b] {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    margin-top: 1.4rem;
    padding: 0.85rem 1rem;
    border-radius: 14px;
    border: 1px solid #e3ebf7;
    text-decoration: none;
    transition: border-color 0.15s, background-color 0.15s;
}

.hp-speaker-card:hover[b-7c662z368b] {
    border-color: #383D78;
    background: #f8fbff;
}

.hp-speaker-label[b-7c662z368b] {
    display: block;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #BF8F00;
}

.hp-speaker-name[b-7c662z368b] {
    display: block;
    font-weight: 700;
    color: #1f2a44;
}

.hp-speaker-link[b-7c662z368b] {
    margin-left: auto;
    font-size: 0.85rem;
    font-weight: 700;
    color: #383D78;
    white-space: nowrap;
}

@keyframes hp-fade-b-7c662z368b {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes hp-rise-b-7c662z368b {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: none; }
}

/* ---------- Responsive ---------- */
@media (max-width: 991.98px) {
    .hp-about[b-7c662z368b] {
        grid-template-columns: 1fr;
        gap: 1.25rem;
        padding: 1.5rem;
    }

    .hp-panels[b-7c662z368b] {
        grid-template-columns: 1fr;
    }

    /* Single-column layout has room, so let the stacked tiles sit side by side again */
    .hp-stats[b-7c662z368b] {
        flex-direction: row;
        max-width: none;
    }

    .hp-stat[b-7c662z368b] {
        flex: 1;
    }
}

@media (max-width: 767.98px) {
    .home-content-surface[b-7c662z368b] {
        border-radius: 18px;
        padding: 0.7rem 0.75rem 1rem;
    }

    .home-section[b-7c662z368b] {
        padding: 0.85rem 0;
    }

    .hp-about[b-7c662z368b] {
        padding: 1.25rem;
    }

    .hp-article[b-7c662z368b] {
        grid-template-columns: minmax(0, 1fr) auto;
        padding: 0.75rem 1rem;
    }

    .hp-author[b-7c662z368b] {
        grid-column: 1;
        grid-row: 2;
    }

    .hp-action[b-7c662z368b] {
        grid-row: 1 / span 2;
        grid-column: 2;
    }

    .hp-event[b-7c662z368b],
    .hp-panel-head[b-7c662z368b] {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .hp-modal-panel[b-7c662z368b] {
        padding: 1.35rem;
    }
}
/* /Components/Pages/Members/ArticleReader.razor.rz.scp.css */
.onyx-article-container[b-gxmep0t4v6] {
    margin-top: 60px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

    .onyx-article-container h1[b-gxmep0t4v6] {
        font-family: tablet-gothic-narrow, "Helvetica Neue", Helvetica, Arial, sans-serif;
        font-weight: 900;
        font-stretch: condensed;
        letter-spacing: -0.02em;
    }

    .onyx-article-container h5[b-gxmep0t4v6] {
        font-family: abril-text, Georgia, "Times New Roman", Times, serif;
        font-weight: 700;
        font-stretch: condensed;
        letter-spacing: -0.02em;
    }

    .onyx-article-container h6[b-gxmep0t4v6] {
        font-family: tablet-gothic-narrow, "Helvetica Neue", Helvetica, Arial, sans-serif;
        font-weight: 600;
        color: #BF8E00;
        font-stretch: condensed;
        letter-spacing: -0.02em;
        text-transform: uppercase;
        margin-bottom: 20px;
    }

.onyx-article-content-text[b-gxmep0t4v6] {
    font-size: 19px;
    font-family: abril-text, Georgia, "Times New Roman", Times, serif;
}
/* /Components/Pages/Members/Articles.razor.rz.scp.css */
.onyx-articles-container[b-abliu1lw4u] {
    margin-top: 60px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

    .onyx-articles-container h1[b-abliu1lw4u] {
        font-family: tablet-gothic-narrow, "Helvetica Neue", Helvetica, Arial, sans-serif;
        font-weight: 900;
        font-stretch: condensed;
        letter-spacing: -0.02em;
    }

    .onyx-articles-container h5[b-abliu1lw4u] {
        font-family: abril-text, Georgia, "Times New Roman", Times, serif;
        font-weight: 700;
        font-stretch: condensed;
        letter-spacing: -0.02em;
    }

    .onyx-articles-container h6[b-abliu1lw4u] {
        font-family: tablet-gothic-narrow, "Helvetica Neue", Helvetica, Arial, sans-serif;
        font-weight: 600;
        color: #BF8E00;
        font-stretch: condensed;
        letter-spacing: -0.02em;
        text-transform: uppercase;
        margin-bottom: 20px;
    }

.onyx-articles-content-text[b-abliu1lw4u] {
    font-size: 19px;
    font-family: abril-text, Georgia, "Times New Roman", Times, serif;
}

.onyx-articles-card[b-abliu1lw4u] {
    margin-bottom: 20px;
    padding: 12px;
    border: 1px solid lightgrey;
    box-shadow: 5px 5px 10px black;
    border-radius: 4px;
}

.onyx-articles-card:hover[b-abliu1lw4u] {
    cursor: pointer;
}
/* /Components/Pages/Members/MemberProfile.razor.rz.scp.css */
/* Public member profile - ISA palette: navy #383D78 / ink #1f2a44 / gold #BF8F00 */
.mp[b-ab40zg2d48] {
    --mp-navy: #383D78;
    --mp-ink: #1f2a44;
    --mp-text: #4a5875;
    --mp-muted: #6b7895;
    --mp-gold: #BF8F00;
    --mp-border: #e3ebf7;
    --mp-soft: #f4f7fc;
    font-family: Lato, sans-serif;
    color: var(--mp-text);
    text-align: left;
}

/* ---------- Header ---------- */
.mp-head[b-ab40zg2d48] {
    display: flex;
    gap: 1.5rem;
    align-items: center;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid var(--mp-border);
}

.mp-photo[b-ab40zg2d48] {
    flex-shrink: 0;
    width: 132px;
    height: 132px;
    border-radius: 50%;
    overflow: hidden;
    background: var(--mp-soft);
    border: 3px solid #fff;
    box-shadow: 0 0 0 2px var(--mp-gold), 0 10px 24px rgba(36, 57, 92, 0.15);
}

.mp-photo img[b-ab40zg2d48] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.mp-initials[b-ab40zg2d48] {
    place-items: center;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #383D78, #2a2e5c);
    color: var(--mp-gold);
    font-family: "Libre Baskerville", serif;
    font-size: 2.6rem;
    font-weight: 700;
}

.mp-id[b-ab40zg2d48] {
    min-width: 0;
    flex: 1;
}

.mp-name[b-ab40zg2d48] {
    font-family: "Libre Baskerville", serif;
    font-weight: 700;
    font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2.1rem);
    color: var(--mp-ink);
    letter-spacing: -0.01em;
    margin: 0 0 0.3rem;
}

.mp-role[b-ab40zg2d48] {
    font-size: 1.05rem;
    color: var(--mp-text);
    margin-bottom: 0.2rem;
}

.mp-company[b-ab40zg2d48] {
    font-weight: 700;
    color: var(--mp-navy);
}

.mp-sep[b-ab40zg2d48] {
    margin: 0 0.4rem;
    color: #c3cbdb;
}

.mp-loc[b-ab40zg2d48] {
    font-size: 0.95rem;
    color: var(--mp-muted);
}

.mp-contact[b-ab40zg2d48] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.9rem;
}

.mp-btn[b-ab40zg2d48] {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    max-width: 100%;
    padding: 0.4rem 0.85rem;
    border-radius: 999px;
    border: 1px solid var(--mp-border);
    background: #fff;
    color: var(--mp-ink);
    font-size: 0.9rem;
    font-weight: 600;
    text-decoration: none;
    transition: border-color 0.15s, background-color 0.15s, color 0.15s;
}

.mp-btn span[b-ab40zg2d48] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mp-btn i[b-ab40zg2d48] {
    color: var(--mp-navy);
}

.mp-btn:hover[b-ab40zg2d48] {
    border-color: var(--mp-navy);
    background: var(--mp-soft);
    color: var(--mp-navy);
}

.mp-btn-accent[b-ab40zg2d48] {
    background: var(--mp-navy);
    border-color: var(--mp-navy);
    color: #fff;
}

.mp-btn-accent i[b-ab40zg2d48] {
    color: var(--mp-gold);
}

.mp-btn-accent:hover[b-ab40zg2d48] {
    background: #2f3465;
    border-color: #2f3465;
    color: #fff;
}

.mp-icon[b-ab40zg2d48] {
    display: inline-grid;
    place-items: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid var(--mp-border);
    background: #fff;
    color: var(--mp-navy);
    font-size: 1rem;
    text-decoration: none;
    transition: background-color 0.15s, color 0.15s, border-color 0.15s;
}

.mp-icon:hover[b-ab40zg2d48] {
    background: var(--mp-navy);
    border-color: var(--mp-navy);
    color: var(--mp-gold);
}

/* ---------- Body ---------- */
.mp-body[b-ab40zg2d48] {
    display: grid;
    grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
    gap: 2rem;
    padding-top: 1.5rem;
}

.mp-body-single[b-ab40zg2d48] {
    grid-template-columns: 1fr;
}

.mp-facts[b-ab40zg2d48] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.mp-body-single .mp-facts[b-ab40zg2d48] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.mp-fact-label[b-ab40zg2d48] {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--mp-gold);
    margin-bottom: 0.5rem;
}

.mp-fact-label i[b-ab40zg2d48] {
    margin-right: 0.2rem;
}

.mp-tags[b-ab40zg2d48] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.mp-tag[b-ab40zg2d48] {
    display: inline-block;
    padding: 0.25rem 0.65rem;
    border-radius: 999px;
    background: var(--mp-soft);
    border: 1px solid var(--mp-border);
    color: var(--mp-ink);
    font-size: 0.82rem;
    line-height: 1.35;
}

.mp-address[b-ab40zg2d48] {
    font-style: normal;
    font-size: 0.92rem;
    line-height: 1.55;
    color: var(--mp-text);
    margin: 0;
}

.mp-address strong[b-ab40zg2d48] {
    color: var(--mp-ink);
}

/* ---------- Profile sections ---------- */
.mp-sections[b-ab40zg2d48] {
    display: flex;
    flex-direction: column;
    gap: 1.6rem;
    min-width: 0;
}

.mp-section-title[b-ab40zg2d48] {
    font-family: "Libre Baskerville", serif;
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--mp-ink);
    margin: 0 0 0.65rem;
    padding-bottom: 0.45rem;
    position: relative;
}

.mp-section-title[b-ab40zg2d48]::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 44px;
    height: 3px;
    border-radius: 2px;
    background: var(--mp-gold);
}

/* Admin-entered HTML has no scope attribute, so style it with ::deep */
.mp-section-content[b-ab40zg2d48] {
    font-size: 1rem;
    line-height: 1.7;
    color: var(--mp-text);
    overflow-wrap: anywhere;
}

.mp-section-content[b-ab40zg2d48]  p {
    margin: 0 0 0.85rem;
}

.mp-section-content[b-ab40zg2d48]  p:last-child {
    margin-bottom: 0;
}

.mp-section-content[b-ab40zg2d48]  ul,
.mp-section-content[b-ab40zg2d48]  ol {
    padding-left: 1.25rem;
    margin: 0 0 0.85rem;
}

.mp-section-content[b-ab40zg2d48]  li {
    margin-bottom: 0.3rem;
}

.mp-section-content[b-ab40zg2d48]  li::marker {
    color: var(--mp-gold);
}

.mp-section-content[b-ab40zg2d48]  a {
    color: var(--mp-navy);
    font-weight: 600;
}

.mp-section-content[b-ab40zg2d48]  h1,
.mp-section-content[b-ab40zg2d48]  h2,
.mp-section-content[b-ab40zg2d48]  h3,
.mp-section-content[b-ab40zg2d48]  h4 {
    font-size: 1.02rem;
    font-weight: 700;
    color: var(--mp-ink);
    margin: 1rem 0 0.4rem;
}

/* ---------- Responsive ---------- */
@media (max-width: 767.98px) {
    .mp-head[b-ab40zg2d48] {
        flex-direction: column;
        text-align: center;
    }

    .mp-contact[b-ab40zg2d48] {
        justify-content: center;
    }

    .mp-body[b-ab40zg2d48] {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .mp-photo[b-ab40zg2d48] {
        width: 112px;
        height: 112px;
    }
}
/* /Components/Pages/Members/MemberProfilePage.razor.rz.scp.css */
.mpp-page[b-vg44r9hbuf] {
    max-width: 1375px;
    margin: 0 auto;
    padding: 1.5rem 1rem 4rem;
    font-family: Lato, sans-serif;
}

.mpp-back[b-vg44r9hbuf] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: 0.9rem;
    font-weight: 600;
    font-size: 0.92rem;
    color: #383D78;
    text-decoration: none;
}

.mpp-back:hover[b-vg44r9hbuf] {
    color: #BF8F00;
}

.mpp-card[b-vg44r9hbuf] {
    background: #fff;
    border: 1px solid #e3ebf7;
    border-radius: 24px;
    box-shadow: 0 20px 45px rgba(36, 57, 92, 0.08);
    padding: clamp(1.25rem, 3vw, 2.25rem);
}

.mpp-state[b-vg44r9hbuf] {
    display: grid;
    place-items: center;
    gap: 0.5rem;
    min-height: 240px;
    text-align: center;
    color: #6b7895;
}

.mpp-state > i[b-vg44r9hbuf] {
    font-size: 2rem;
    color: #383D78;
}

.mpp-state h3[b-vg44r9hbuf] {
    font-family: "Libre Baskerville", serif;
    font-size: 1.25rem;
    color: #1f2a44;
    margin: 0;
}

.mpp-state p[b-vg44r9hbuf] {
    margin: 0;
}
