/* /Components/Account/Pages/Manage/Security.razor.rz.scp.css */
.mfa-method[b-9j8xcjlzy4] {
    display: flex;
    gap: 1rem;
    padding: 1.1rem 0;
    border-top: 1px solid var(--border);
}

.mfa-method:first-of-type[b-9j8xcjlzy4] {
    border-top: none;
    padding-top: 0.25rem;
}

.mfa-method-icon[b-9j8xcjlzy4] {
    flex: 0 0 2.5rem;
    height: 2.5rem;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--surface-2);
    color: var(--text-primary);
    font-size: 1.15rem;
}

.mfa-method-body[b-9j8xcjlzy4] {
    flex: 1;
    min-width: 0;
}

.mfa-method-head[b-9j8xcjlzy4] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-bottom: 0.2rem;
}

.mfa-method-name[b-9j8xcjlzy4] {
    font-weight: 700;
    font-size: 0.95rem;
    color: var(--text-primary);
}

.mfa-method-text[b-9j8xcjlzy4] {
    font-size: 0.85rem;
    color: var(--text-muted);
    margin-bottom: 0.6rem;
}

.mfa-steps[b-9j8xcjlzy4] {
    font-size: 0.875rem;
    padding-left: 1.2rem;
    margin: 0.5rem 0 0;
}

.mfa-steps li[b-9j8xcjlzy4] {
    margin-bottom: 0.85rem;
}

.mfa-qr[b-9j8xcjlzy4] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    flex-wrap: wrap;
    margin-top: 0.6rem;
}

.mfa-qr img[b-9j8xcjlzy4] {
    border-radius: 8px;
    background: #fff;
    padding: 6px;
    border: 1px solid var(--border);
}

.mfa-shared-key[b-9j8xcjlzy4] {
    display: inline-block;
    margin-top: 0.25rem;
    font-size: 0.95rem;
    letter-spacing: 0.05em;
    word-break: break-all;
}

.mfa-inline-form[b-9j8xcjlzy4] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    flex-wrap: wrap;
    margin-top: 0.5rem;
}

.mfa-inline-form .form-control[b-9j8xcjlzy4],
.mfa-inline-form .form-select[b-9j8xcjlzy4] {
    width: auto;
    min-width: 10rem;
}

.mfa-code-field[b-9j8xcjlzy4] {
    font-family: Consolas, 'Courier New', monospace;
    letter-spacing: 0.25em;
    max-width: 11rem;
}
/* /Components/Account/Shared/ShowRecoveryCodes.razor.rz.scp.css */
.recovery-code-grid[b-m1y6uw9i99] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(9.5rem, 1fr));
    gap: 0.4rem 1rem;
}

.recovery-code[b-m1y6uw9i99] {
    font-size: 1rem;
    letter-spacing: 0.04em;
    color: inherit;
}
/* /Components/Admin/CdscCategoriesPage.razor.rz.scp.css */
/* Shared component styles have been moved to wwwroot/srm-components.css
   Add any CdscCategoriesPage-specific overrides below this line. */
/* /Components/Admin/TenantList.razor.rz.scp.css */
/* Page-specific styles for TenantList.razor
   Shared utilities come from wwwroot/srm-components.css */

/* Tenant ID chip */
.tenant-id-chip[b-g23littpga] {
    font-size: 0.72rem;
    color: var(--text-muted);
    background: var(--surface-2);
    padding: 0.1em 0.45em;
    border-radius: 5px;
    font-family: ui-monospace, monospace;
    border: 1px solid var(--border-clr);
}

html.dark .tenant-id-chip[b-g23littpga] { background: #1a1640; }

/* Status badge */
.state-badge[b-g23littpga] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.78rem;
    font-weight: 600;
    padding: 0.28em 0.65em;
    border-radius: 20px;
    letter-spacing: 0.01em;
}

.state-dot[b-g23littpga] {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex-shrink: 0;
}

.state-badge--active[b-g23littpga]    { background: #f0fdf4; color: #166534; border: 1px solid #bbf7d0; }
.state-badge--active    .state-dot[b-g23littpga] { background: #22c55e; }

.state-badge--suspended[b-g23littpga] { background: #fffbeb; color: #92400e; border: 1px solid #fde68a; }
.state-badge--suspended .state-dot[b-g23littpga] { background: #f59e0b; }

.state-badge--inactive[b-g23littpga]  { background: var(--surface-2); color: var(--text-muted); border: 1px solid var(--border-clr); }
.state-badge--inactive  .state-dot[b-g23littpga] { background: #9ca3af; }

html.dark .state-badge--active[b-g23littpga]    { background: rgba(5,150,105,0.12);  color: #86efac; border-color: rgba(5,150,105,0.25); }
html.dark .state-badge--suspended[b-g23littpga] { background: rgba(251,191,36,0.10); color: #fbbf24; border-color: rgba(251,191,36,0.25); }
html.dark .state-badge--inactive[b-g23littpga]  { background: rgba(100,100,120,0.10); }

/* Section label (modal) */
.section-label[b-g23littpga] {
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--text-muted);
    margin-bottom: 0.65rem;
}

/* Connection strings panel */
.cs-panel[b-g23littpga] {
    background: var(--surface-2);
    border: 1px solid var(--border-clr);
    border-radius: var(--radius-md);
    padding: 1rem;
}

html.dark .cs-panel[b-g23littpga] { background: #1a1640; border-color: #3a3570; }

.cs-list[b-g23littpga] {
    max-height: 190px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--border-clr) transparent;
}

.cs-item[b-g23littpga] {
    background: var(--surface);
    border: 1px solid var(--border-clr);
    border-radius: var(--radius-sm);
    padding: 0.55rem 0.7rem;
    margin-bottom: 0.5rem;
}

html.dark .cs-item[b-g23littpga] { background: #161230; border-color: #3a3570; }

.cs-value[b-g23littpga] {
    color: var(--text-muted);
    font-size: 0.74rem;
    word-break: break-all;
}

.cs-add-form[b-g23littpga] {
    border-top: 1px solid var(--border-clr);
    padding-top: 0.75rem;
}
/* /Components/CertificateDocument.razor.rz.scp.css */
/* ── CertificateDocument.razor.css ──────────────────────────────────────────
   Scoped styles for the printable certificate document.
   The global @page / html / body print rules live in
   wwwroot/css/certificate-print.css (linked from App.razor).
   ──────────────────────────────────────────────────────────────────────────── */

/* Toolbar (screen only) */
.oa-print-toolbar[b-ymcikm5m14] {
    display: flex;
    justify-content: center;
    margin-bottom: 1.5rem;
    padding: .75rem 1.5rem;
    background: #f8f9fa;
    border: 1px solid #dee2e6;
    border-radius: 8px;
}

.oa-toolbar-inner[b-ymcikm5m14] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .6rem;
    width: 100%;
    max-width: 600px;
}

.oa-toolbar-label[b-ymcikm5m14] {
    font-size: .78rem;
    font-weight: 600;
    color: #6c757d;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.oa-toolbar-actions[b-ymcikm5m14] {
    display: flex;
    gap: .75rem;
    justify-content: center;
    flex-wrap: wrap;
}

.oa-action-btn[b-ymcikm5m14] {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    border: none;
    padding: .55rem 1.5rem;
    border-radius: 6px;
    font-size: .9rem;
    font-weight: 600;
    cursor: pointer;
    letter-spacing: .02em;
    transition: background .18s, transform .1s, box-shadow .18s;
    box-shadow: 0 2px 6px rgba(0,0,0,.12);
}

.oa-action-btn:hover:not(:disabled)[b-ymcikm5m14] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0,0,0,.18);
}

.oa-action-btn:active:not(:disabled)[b-ymcikm5m14] {
    transform: translateY(0);
}

.oa-print-btn[b-ymcikm5m14] {
    background: #1a3a6b;
    color: #fff;
}

.oa-print-btn:hover:not(:disabled)[b-ymcikm5m14] { background: #0f2347; }

.oa-download-btn[b-ymcikm5m14] {
    background: #198754;
    color: #fff;
}

.oa-download-btn:hover:not(:disabled)[b-ymcikm5m14] { background: #146c43; }
.oa-download-btn:disabled[b-ymcikm5m14] { opacity: .65; cursor: not-allowed; box-shadow: none; }

/* Spinner inside button */
.oa-spinner[b-ymcikm5m14] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255,255,255,.4);
    border-top-color: #fff;
    border-radius: 50%;
    animation: oa-spin-b-ymcikm5m14 .7s linear infinite;
}

@keyframes oa-spin-b-ymcikm5m14 { to { transform: rotate(360deg); } }

/* Page shell */
.oa-cert-wrapper[b-ymcikm5m14] { font-family: 'Times New Roman', Times, serif; color: #000; }

.oa-cert-page[b-ymcikm5m14] {
    width: 210mm;
    min-height: 297mm;
    margin: 0 auto 24px;
    background: #fff;
    box-shadow: 0 2px 12px rgba(0,0,0,.18);
    box-sizing: border-box;
    padding: 8mm;
}

@media print {
    .oa-print-toolbar[b-ymcikm5m14] { display: none !important; }
    .oa-cert-page[b-ymcikm5m14] {
        box-shadow: none;
        margin: 0;
        width: 210mm;
        height: 297mm;
        min-height: unset;
        overflow: hidden;
        padding: 8mm;
        page-break-after: always;
    }
    .oa-cert-border[b-ymcikm5m14] {
        height: calc(297mm - 16mm);
        min-height: unset;
        overflow: hidden;
    }
    .oa-page-break[b-ymcikm5m14] { page-break-before: always; }
    .oa-cert-content[b-ymcikm5m14] { gap: .5rem; }
}

/* Decorative border */
.oa-cert-border[b-ymcikm5m14] {
    border: 3px solid #000;
    border-radius: 8px;
    height: 100%;
    min-height: calc(297mm - 16mm);
    padding: 6mm;
    box-sizing: border-box;
    position: relative;
}

.oa-cert-content[b-ymcikm5m14] { display: flex; flex-direction: column; gap: 1rem; }

/* Cover block (page 2 top) */
.oa-cert-cover[b-ymcikm5m14] { text-align: center; margin-bottom: .6rem; }

.oa-title-xl[b-ymcikm5m14] {
    font-size: 3.4rem;
    font-weight: 900;
   /* letter-spacing: .12em;*/
    color: #000;
    margin: 0 0 .3rem;
    text-transform: uppercase;
  
}

.oa-subtitle[b-ymcikm5m14] { font-size: 1rem; font-weight: 700; margin: 0 0 .5rem; }

.oa-title-numbers[b-ymcikm5m14] { justify-content: flex-start; gap: 3rem; font-size: 1rem; font-weight: 700; margin-top: .4rem; }

/* Header: logo + text */
.oa-header-block[b-ymcikm5m14] {
    display: flex;
    align-items: flex-start;
    gap: 1.2rem;
}

.oa-logo[b-ymcikm5m14] {
    width: 90px;
    height: 90px;
    object-fit: contain;
    flex-shrink: 0;
}

.oa-header-text[b-ymcikm5m14] { flex: 1; }

/* Large bold fund name used in the header */
.oa-fund-name-lg[b-ymcikm5m14] {
    font-size: 1.9rem;
    font-weight: 900;
    color: #000;
    margin: 0 0 .3rem;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.oa-legal[b-ymcikm5m14] { font-size: .82rem; margin: 0 0 .25rem; line-height: 1.5; }

/* Divider */
.oa-divider[b-ymcikm5m14] { border: none; border-top: 2px solid #000; margin: .5rem 0; }

/* Section title */
.oa-section-title[b-ymcikm5m14] { text-align: center; margin: .3rem 0; }
.oa-section-h3[b-ymcikm5m14] { font-size: 1.25rem; font-weight: 900; margin: 0 0 .15rem; color: #000; text-transform: uppercase; letter-spacing: .06em; }
.oa-section-sub[b-ymcikm5m14]  { font-size: .92rem; font-weight: 700; margin: 0; color: #000; }

/* Page 1 meta row */
.oa-p1-meta[b-ymcikm5m14] { margin: .4rem 0; }

/* Owner table */
.oa-owner-table[b-ymcikm5m14] { width: 100%; border-collapse: collapse; font-size: .92rem; }
.oa-owner-table th[b-ymcikm5m14], .oa-owner-table td[b-ymcikm5m14] { border: 1px solid #000; padding: 7px 8px; vertical-align: top; }
.oa-owner-table thead th[b-ymcikm5m14] { font-weight: 700; font-size: .9rem; }
.oa-owner-table tbody td[b-ymcikm5m14] { min-height: 2rem; }
.oa-certifies[b-ymcikm5m14] { width: 60%; }
.oa-narrow-col[b-ymcikm5m14] { width: 20%; text-align: center; }
.oa-side-cell[b-ymcikm5m14] { text-align: center; vertical-align: middle; }
.oa-certifies-empty[b-ymcikm5m14] { width: 60%; }

/* Acknowledgement block (page 1 bottom) */
.oa-ack-block[b-ymcikm5m14] { margin-top: 2rem; font-size: .95rem; }
.oa-ack-title[b-ymcikm5m14] { text-align: center; margin: 0 0 1.2rem; font-size: 1rem; font-weight: 700; }
.oa-ack-line[b-ymcikm5m14] { display: flex; margin: 1rem 0; }
.oa-fill-short[b-ymcikm5m14] { min-width: 40px; flex: 0 0 40px; }

/* Owns block */
.oa-owns-block[b-ymcikm5m14] { font-size: .95rem; }
.oa-owns-block p[b-ymcikm5m14] { margin: .5rem 0; }
.oa-line[b-ymcikm5m14] { display: flex; }

/* Fill underline */
.oa-fill[b-ymcikm5m14] {
    display: inline-block;
    flex: 1;
    border-bottom: 1px solid #000;
    min-width: 120px;
    margin-left: 6px;
}
.oa-inline-fill[b-ymcikm5m14] { min-width: 80px; margin: 0 6px; }

/* Centred paragraphs */
.oa-centered[b-ymcikm5m14] { text-align: center; font-size: .95rem; margin: .5rem 0; }
.oa-warning[b-ymcikm5m14]   { font-weight: 700; font-size: 1rem; }
.oa-fund-footer[b-ymcikm5m14] { font-weight: 900; color: #000; font-size: 1rem; }

/* Signature */
.oa-signature-block[b-ymcikm5m14] { display: flex; justify-content: center; margin: .4rem 0; }
.oa-sig-wrap[b-ymcikm5m14] { display: flex; flex-direction: column; align-items: center; }
.oa-sig-img[b-ymcikm5m14] { width: 45mm; height: auto; display: block; margin-bottom: -4px; }
.oa-sig-line[b-ymcikm5m14] { width: 55mm; border-top: 1px solid #000; }

/* Serial */
.oa-serial[b-ymcikm5m14] { font-size: .9rem; margin-top: .6rem; text-align: right; }

/* Row helpers */
.oa-row-2col[b-ymcikm5m14] { display: flex; gap: 2rem; }
.oa-row-3col[b-ymcikm5m14] { display: flex; gap: 1rem; font-size: .95rem; }
.oa-row-3col > div[b-ymcikm5m14], .oa-row-2col > div[b-ymcikm5m14] { display: flex; flex: 1; }
/* /Components/Communications/HtmlEmailEditor.razor.rz.scp.css */
/* Quill builds its toolbar and text area inside the host, outside this component's scope, hence ::deep. */
.email-editor[b-5k9y52qaev]  .ql-toolbar.ql-snow {
    border-color: var(--border-clr);
    border-radius: var(--radius-md) var(--radius-md) 0 0;
    background: var(--surface);
}
.email-editor[b-5k9y52qaev]  .ql-container.ql-snow {
    height: var(--email-editor-height);
    border-color: var(--border-clr);
    border-radius: 0 0 var(--radius-md) var(--radius-md);
    background: var(--surface);
    color: var(--text-primary);
    font-family: inherit;
    font-size: .95rem;
}
.email-editor[b-5k9y52qaev]  .ql-editor.ql-blank::before {
    color: var(--text-muted);
}
/* Dark mode: the toolbar's icons and pickers follow the text colour. */
html.dark .email-editor[b-5k9y52qaev]  .ql-snow .ql-stroke {
    stroke: var(--text-primary);
}
html.dark .email-editor[b-5k9y52qaev]  .ql-snow .ql-fill {
    fill: var(--text-primary);
}
html.dark .email-editor[b-5k9y52qaev]  .ql-snow .ql-picker,
html.dark .email-editor[b-5k9y52qaev]  .ql-snow .ql-picker-options {
    color: var(--text-primary);
    background: var(--surface);
}
/* /Components/Guides/GuideFeedbackBoard.razor.rz.scp.css */
.feedback-search[b-ymx0pu0yib] {
    width: auto;
    min-width: 260px;
    flex: 1 1 260px;
    max-width: 420px;
}

.feedback-row[b-ymx0pu0yib] {
    cursor: pointer;
}

.feedback-said[b-ymx0pu0yib] {
    min-width: 220px;
    max-width: 420px;
}

.feedback-detail[b-ymx0pu0yib] {
    position: sticky;
    top: calc(var(--header-height) + 1rem);
}

.feedback-text[b-ymx0pu0yib] {
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.feedback-attachment[b-ymx0pu0yib] {
    display: block;
    max-width: 100%;
    max-height: 320px;
    border: 1px solid var(--border-clr);
    border-radius: var(--radius-md);
}
/* /Components/Guides/GuideFeedbackForm.razor.rz.scp.css */
.feedback-options[b-fqdviabf32] {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
}

fieldset legend[b-fqdviabf32] {
    float: none;
    width: auto;
    margin-bottom: .4rem;
}

/* Drawn here rather than by Bootstrap's .btn-check:checked + .btn, which draws a plain .btn's
   chosen state transparent. Scoped under .feedback-options so these outrank it. */
.feedback-options .btn.feedback-option[b-fqdviabf32] {
    border: 1px solid var(--border-clr);
    background: var(--surface);
    color: var(--text-primary);
}
.feedback-options .btn.feedback-option:hover[b-fqdviabf32] { border-color: var(--clr-violet-xlt); }
.feedback-options .btn.feedback-option--on[b-fqdviabf32],
.feedback-options .btn.feedback-option--on:hover[b-fqdviabf32] {
    border-color: var(--clr-violet);
    background: var(--clr-violet);
    color: #fff;
}
html.dark .feedback-options .btn.feedback-option--on[b-fqdviabf32],
html.dark .feedback-options .btn.feedback-option--on:hover[b-fqdviabf32] {
    border-color: var(--clr-violet-xlt);
    background: var(--clr-violet-xlt);
}
/* /Components/Guides/GuideIndex.razor.rz.scp.css */
.guide-card-icon[b-kfkbvtcrko] {
    width: 40px;
    height: 40px;
    border-radius: var(--radius-md);
    background: var(--clr-violet-grad);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.15rem;
    flex-shrink: 0;
}

.guide-howto[b-kfkbvtcrko] {
    display: grid;
    gap: .4rem;
    padding-left: 1.25rem;
}
/* /Components/Guides/GuidePage.razor.rz.scp.css */
/* A training guide, laid out like product documentation inside SRMCore's own look: the usual
   page header, then on a wide screen a contents panel that stays in view (the module being read
   is marked as the reader scrolls) beside one reading column of cards. A short card about the
   guide comes first, with the reference material folded away; then one card per module. In each
   screen the words come first, then the pictures. Narrower screens drop the panel for a strip of
   modules under the header. Colours come from app.css's tokens, so light and dark themes work. */

.guide[b-q2fmi1qd8n] {
    --g-chip-all: rgba(5,150,105,.12);   --g-chip-all-ink: #047857;
    --g-chip-staff: rgba(2,132,199,.12); --g-chip-staff-ink: #0369a1;
    --g-chip-admin: rgba(225,29,72,.10); --g-chip-admin-ink: #be123c;
    --g-chip-info: rgba(37,12,119,.09);  --g-chip-info-ink: #250C77;
    --g-chip-muted: rgba(100,116,139,.14); --g-chip-muted-ink: #475569;
    --g-note: rgba(237,100,43,.10);
    --g-accent-ink: #c2410c;
    --g-phone: clamp(260px, 19vw, 380px);   /* a phone screenshot's width */
    --g-anchor: calc(var(--header-height) + 64px);   /* room above a #link's target */
    font-size: clamp(15px, calc(14px + .1vw), 16px);
    line-height: 1.6;
    color: var(--text-primary);
}

html.dark .guide[b-q2fmi1qd8n] {
    --g-chip-all: rgba(16,185,129,.20);   --g-chip-all-ink: #6ee7b7;
    --g-chip-staff: rgba(56,189,248,.18); --g-chip-staff-ink: #7dd3fc;
    --g-chip-admin: rgba(251,113,133,.18); --g-chip-admin-ink: #fda4af;
    --g-chip-info: rgba(167,139,250,.20); --g-chip-info-ink: #c4b5fd;
    --g-chip-muted: rgba(148,163,184,.20); --g-chip-muted-ink: #cbd5e1;
    --g-note: rgba(237,100,43,.16);
    --g-accent-ink: #fdba74;
}

/* Layout: contents panel + reading column on a wide screen */
.guide-nav[b-q2fmi1qd8n] { display: none; }
@media (min-width: 1500px) {
    .guide[b-q2fmi1qd8n] { --g-anchor: calc(var(--header-height) + 1rem); }
    .guide-layout[b-q2fmi1qd8n] {
        display: grid;
        grid-template-columns: 270px minmax(0, 1fr);
        gap: 1.5rem;
        align-items: start;
    }
    .guide-nav[b-q2fmi1qd8n] {
        display: block;
        position: sticky;
        top: calc(var(--header-height) + 1rem);
        max-height: calc(100vh - var(--header-height) - 2rem);
        overflow-y: auto;
        scrollbar-width: thin;
        padding: 1em .6em 1em .8em;
        font-size: .92em;
    }
}

/* Contents panel */
.guide-nav-title[b-q2fmi1qd8n] {
    margin: 0 0 .6em .5em;
    font-size: .72em;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--text-muted);
}
.guide-nav ol[b-q2fmi1qd8n] { list-style: none; margin: 0; padding: 0; }
.guide-nav-modules > li + li[b-q2fmi1qd8n] { margin-top: .15em; }
.guide-nav-modules > li > a[b-q2fmi1qd8n] {
    display: flex;
    align-items: flex-start;
    gap: .6em;
    padding: .45em .5em;
    border-radius: var(--radius-md);
    color: var(--text-primary);
    font-weight: 600;
    line-height: 1.35;
    text-decoration: none;
}
.guide-nav-modules > li > a:hover[b-q2fmi1qd8n] { background: var(--surface-2); }
.guide-nav-n[b-q2fmi1qd8n] {
    flex-shrink: 0;
    display: inline-grid;
    place-items: center;
    width: 1.65em;
    height: 1.65em;
    border-radius: 6px;
    background: var(--g-chip-muted);
    color: var(--text-secondary);
    font-size: .82em;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}
.guide-nav-modules > li[data-active] > a[b-q2fmi1qd8n] { background: var(--g-note); color: var(--g-accent-ink); }
.guide-nav-modules > li[data-active] .guide-nav-n[b-q2fmi1qd8n] { background: var(--clr-accent-grad); color: #fff; }
/* The screens of the module being read open under it. */
.guide-nav .guide-nav-screens[b-q2fmi1qd8n] {
    display: none;
    margin: .15em 0 .45em 1.3em;
    padding-left: .7em;
    border-left: 2px solid var(--border-clr);
}
.guide-nav-modules > li[data-active] .guide-nav-screens[b-q2fmi1qd8n] { display: block; }
.guide-nav-screens a[b-q2fmi1qd8n] {
    display: block;
    padding: .28em .5em;
    border-radius: 6px;
    color: var(--text-secondary);
    font-size: .92em;
    line-height: 1.35;
    text-decoration: none;
}
.guide-nav-screens a:hover[b-q2fmi1qd8n] { color: var(--text-primary); background: var(--surface-2); }
.guide-nav-screens li[data-active] > a[b-q2fmi1qd8n] { color: var(--g-accent-ink); font-weight: 600; }

/* Cards */
.guide-card-body[b-q2fmi1qd8n] { padding: 1.5em; }
@media (max-width: 575.98px) {
    .guide-card-body[b-q2fmi1qd8n] { padding: 1em; }
}

/* About the guide: a short introduction, the picture date, and the reference material folded away */
.guide-overview[b-q2fmi1qd8n] { margin-bottom: 1.5em; }
.guide-intro-text[b-q2fmi1qd8n] {
    margin: 0;
    max-width: 80ch;
    font-size: 1.05em;
    color: var(--text-secondary);
}
.guide-meta-line[b-q2fmi1qd8n] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .4em 1em;
    margin-top: .75em;
    font-size: .85em;
    color: var(--text-muted);
}
.guide-meta-line .srm-badge[b-q2fmi1qd8n] { white-space: normal; }
.guide-more[b-q2fmi1qd8n] {
    margin-top: 1.25em;
    border: 1px solid var(--border-clr);
    border-radius: var(--radius-md);
}
.guide-more + .guide-more[b-q2fmi1qd8n] { margin-top: .6em; }
.guide-more > summary[b-q2fmi1qd8n] {
    display: flex;
    align-items: center;
    gap: .6em;
    padding: .7em 1em;
    border-radius: var(--radius-md);
    font-weight: 600;
    list-style: none;
    cursor: pointer;
}
.guide-more > summary[b-q2fmi1qd8n]::-webkit-details-marker { display: none; }
.guide-more > summary:hover[b-q2fmi1qd8n] { background: var(--surface-2); }
.guide-more > summary > .bi:first-child[b-q2fmi1qd8n] { color: var(--g-accent-ink); }
.guide-more-chevron[b-q2fmi1qd8n] {
    margin-left: auto;
    color: var(--text-muted);
    transition: transform .2s ease;
}
.guide-more[open] > summary[b-q2fmi1qd8n] {
    border-bottom: 1px solid var(--border-clr);
    border-radius: var(--radius-md) var(--radius-md) 0 0;
}
.guide-more[open] .guide-more-chevron[b-q2fmi1qd8n] { transform: rotate(180deg); }
.guide-more > .guide-facts[b-q2fmi1qd8n] { padding: 1em 1.25em 1.1em; }
.guide-more > .table-responsive[b-q2fmi1qd8n] { padding: .25em .75em .5em; }

.guide-facts[b-q2fmi1qd8n] {
    list-style: none;
    margin: 0;
    display: grid;
    gap: .5em;
}
.guide-facts li[b-q2fmi1qd8n] {
    position: relative;
    max-width: 80ch;
    padding-left: 1.5em;
}
.guide-facts li[b-q2fmi1qd8n]::before {
    content: "";
    position: absolute;
    left: .2em;
    top: .55em;
    width: .55em;
    height: .55em;
    border-radius: 3px;
    background: var(--clr-orange);
}
.guide-who[b-q2fmi1qd8n] {
    width: 100%;
    border-collapse: collapse;
}
.guide-who td[b-q2fmi1qd8n] {
    padding: .65em .5em;
    border-bottom: 1px solid var(--border-clr);
    vertical-align: top;
}
.guide-who tr:last-child td[b-q2fmi1qd8n] { border-bottom: 0; }
.guide-who td:first-child[b-q2fmi1qd8n] { white-space: nowrap; width: 1%; padding-right: 1.25em; }

/* Module strip (narrower screens) */
.guide-strip[b-q2fmi1qd8n] {
    position: sticky;
    top: var(--header-height);
    z-index: 50;
    display: flex;
    gap: .5em;
    overflow-x: auto;
    scrollbar-width: none;
    margin: 0 -.25rem 1rem;
    padding: .6rem .25rem;
    background: var(--body-bg);
    border-bottom: 1px solid var(--border-clr);
}
.guide-strip[b-q2fmi1qd8n]::-webkit-scrollbar { display: none; }
.guide-strip a[b-q2fmi1qd8n] {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: .45em;
    padding: .35em .85em .35em .35em;
    border: 1px solid var(--border-clr);
    border-radius: 999px;
    background: var(--surface);
    color: var(--text-primary);
    font-size: .85em;
    font-weight: 600;
    text-decoration: none;
}
.guide-strip a:hover[b-q2fmi1qd8n] { border-color: var(--clr-orange); }
.guide-strip a b[b-q2fmi1qd8n] {
    display: inline-grid;
    place-items: center;
    min-width: 1.75em;
    height: 1.75em;
    border-radius: 999px;
    background: var(--body-bg);
    font-size: .88em;
    font-variant-numeric: tabular-nums;
}
@media (min-width: 1500px) {
    .guide-strip[b-q2fmi1qd8n] { display: none; }   /* the contents panel takes its place */
}

/* Modules: a card each, headed by its number in an orange badge, like the page header's icon */
.guide-module[b-q2fmi1qd8n] {
    margin-bottom: 1.5em;
    scroll-margin-top: var(--g-anchor);
}
.guide-module-head[b-q2fmi1qd8n] {
    display: flex;
    align-items: flex-start;
    gap: 1em;
    padding: 1.25em 1.5em;
    border-bottom: 1px solid var(--border-clr);
}
@media (max-width: 575.98px) {
    .guide-module-head[b-q2fmi1qd8n] { padding: 1em; }
}
.guide-module-n[b-q2fmi1qd8n] {
    flex-shrink: 0;
    display: grid;
    place-items: center;
    width: 2.6em;
    height: 2.6em;
    border-radius: var(--radius-md);
    background: var(--clr-accent-grad);
    box-shadow: 0 4px 14px rgba(237,100,43,.30);
    color: #fff;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
}
.guide-module-of[b-q2fmi1qd8n] {
    margin: 0;
    font-size: .72em;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--g-accent-ink);
}
.guide-module-head h2[b-q2fmi1qd8n] {
    margin: .1em 0 0;
    font-size: 1.4em;
    font-weight: 700;
    line-height: 1.25;
}
.guide-lead[b-q2fmi1qd8n] {
    margin: .35em 0 0;
    max-width: 75ch;
    color: var(--text-secondary);
}

/* Screens */
.guide-screen[b-q2fmi1qd8n] {
    padding: 1.75em 0;
    border-bottom: 1px solid var(--border-clr);
    scroll-margin-top: var(--g-anchor);
}
.guide-screen:last-child[b-q2fmi1qd8n] { border-bottom: 0; padding-bottom: 0; }
.guide-card-body > .guide-screen:first-child[b-q2fmi1qd8n] { padding-top: 0; }
.guide-screen header[b-q2fmi1qd8n] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    justify-content: space-between;
    gap: .5em 1em;
}
.guide-screen h3[b-q2fmi1qd8n] {
    margin: 0;
    font-size: 1.2em;
    font-weight: 700;
    line-height: 1.3;
}
.guide-meta[b-q2fmi1qd8n] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .4em;
}
.guide-where[b-q2fmi1qd8n] {
    font-family: ui-monospace, Consolas, monospace;
    font-size: .8em;
    color: var(--text-muted);
}
.guide-chip[b-q2fmi1qd8n] {
    display: inline-block;
    padding: .25em .7em;
    border-radius: 999px;
    font-size: .78em;
    font-weight: 700;
    white-space: nowrap;
}
.guide-chip--all[b-q2fmi1qd8n]   { background: var(--g-chip-all);   color: var(--g-chip-all-ink); }
.guide-chip--staff[b-q2fmi1qd8n] { background: var(--g-chip-staff); color: var(--g-chip-staff-ink); }
.guide-chip--admin[b-q2fmi1qd8n] { background: var(--g-chip-admin); color: var(--g-chip-admin-ink); }
.guide-chip--info[b-q2fmi1qd8n]  { background: var(--g-chip-info);  color: var(--g-chip-info-ink); }
.guide-chip--muted[b-q2fmi1qd8n] { background: var(--g-chip-muted); color: var(--g-chip-muted-ink); }

.guide-purpose[b-q2fmi1qd8n] {
    margin: .6em 0 .45em;
    max-width: 75ch;
    font-size: 1.05em;
    font-weight: 600;
}
.guide-points[b-q2fmi1qd8n] {
    margin: 0;
    padding-left: 1.3em;
    max-width: 80ch;
    display: grid;
    gap: .35em;
}
.guide-points li[b-q2fmi1qd8n]::marker { color: var(--clr-orange); }

/* Things to do in order: a numbered badge per step. */
.guide-points + .guide-steps[b-q2fmi1qd8n] { margin-top: 1em; }
.guide-steps[b-q2fmi1qd8n] {
    margin: 0;
    padding: 0;
    max-width: 80ch;
    list-style: none;
    counter-reset: guide-step;
    display: grid;
    gap: .6em;
}
.guide-steps li[b-q2fmi1qd8n] {
    counter-increment: guide-step;
    position: relative;
    padding-left: 2.4em;
    min-height: 1.75em;
}
.guide-steps li[b-q2fmi1qd8n]::before {
    content: counter(guide-step);
    position: absolute;
    left: 0;
    top: 0;
    width: 2.05em;
    height: 2.05em;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: var(--clr-orange);
    color: #fff;
    font-size: .85em;
    font-weight: 700;
}
.guide-note[b-q2fmi1qd8n] {
    margin: 1em 0 0;
    max-width: 80ch;
    padding: .75em 1em;
    border-radius: var(--radius-md);
    background: var(--g-note);
}

/* Pictures */
.guide-shots[b-q2fmi1qd8n] {
    display: grid;
    gap: clamp(1rem, 1.4vw, 2rem);
    margin-top: 1.25em;
    align-items: start;
}
@media (min-width: 720px) {
    .guide-shots--c2[b-q2fmi1qd8n] { grid-template-columns: repeat(2, 1fr); }
    .guide-shots--c3[b-q2fmi1qd8n] { grid-template-columns: repeat(3, 1fr); }
    .guide-shots--c4[b-q2fmi1qd8n] { grid-template-columns: repeat(4, 1fr); }
}
@media (min-width: 720px) and (max-width: 1199.98px), (min-width: 1500px) and (max-width: 1999.98px) {
    /* Three or four desktop pictures are too small side by side in a column under about 1100px
       (a tablet or laptop, or beside the contents panel): two across. */
    .guide-shots--c3:not(:has(.guide-zoom--phone))[b-q2fmi1qd8n],
    .guide-shots--c4:not(:has(.guide-zoom--phone))[b-q2fmi1qd8n] { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 720px) {
    /* Phones keep their own width, side by side from the left, instead of spreading across a wide
       screen with gaps between them. */
    .guide-shots--c2:has(.guide-zoom--phone)[b-q2fmi1qd8n] { grid-template-columns: repeat(2, minmax(0, var(--g-phone))); }
    .guide-shots--c3:has(.guide-zoom--phone)[b-q2fmi1qd8n] { grid-template-columns: repeat(3, minmax(0, var(--g-phone))); }
    .guide-shots--c4:has(.guide-zoom--phone)[b-q2fmi1qd8n] { grid-template-columns: repeat(4, minmax(0, var(--g-phone))); }
}
@media (max-width: 719.98px) {
    /* Phone screenshots still sit two across on a phone; desktop ones go one under the other. */
    .guide-shots--c3:has(.guide-zoom--phone)[b-q2fmi1qd8n],
    .guide-shots--c4:has(.guide-zoom--phone)[b-q2fmi1qd8n] { grid-template-columns: repeat(2, 1fr); }
}
.guide-shot[b-q2fmi1qd8n] { margin: 0; min-width: 0; }
.guide-zoom[b-q2fmi1qd8n] {
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden;
    border: 1px solid var(--border-clr);
    border-radius: var(--radius-md);
    background: var(--surface);
    box-shadow: var(--shadow-xs);
    cursor: zoom-in;
}
.guide-zoom img[b-q2fmi1qd8n] {
    display: block;
    width: 100%;
    height: auto;
}
/* A full-page desktop picture beside another is cropped to its top; tap for the rest. The crop
   grows with the screen so a wider picture still shows the same share of the page. */
.guide-shots--c2 .guide-zoom:not(.guide-zoom--phone)[b-q2fmi1qd8n],
.guide-shots--c3 .guide-zoom:not(.guide-zoom--phone)[b-q2fmi1qd8n],
.guide-shots--c4 .guide-zoom:not(.guide-zoom--phone)[b-q2fmi1qd8n] { max-height: clamp(480px, 30vw, 760px); }
.guide-shots--c2 .guide-zoom:not(.guide-zoom--phone) img[b-q2fmi1qd8n],
.guide-shots--c3 .guide-zoom:not(.guide-zoom--phone) img[b-q2fmi1qd8n],
.guide-shots--c4 .guide-zoom:not(.guide-zoom--phone) img[b-q2fmi1qd8n] { object-fit: cover; object-position: top; }
.guide-zoom--phone[b-q2fmi1qd8n] {
    border-radius: 22px;
    border-width: 6px;
    border-color: #1f1b3a;
    max-width: var(--g-phone);
}
.guide-shot figcaption[b-q2fmi1qd8n] {
    margin-top: .45em;
    font-size: .85em;
    color: var(--text-secondary);
}

.guide-screen-foot[b-q2fmi1qd8n] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .5em 1em;
    margin-top: 1.25em;
}

/* Full-size viewer */
.guide-lb[b-q2fmi1qd8n] {
    position: fixed;
    inset: 0;
    z-index: 1080;
    display: flex;
    flex-direction: column;
    background: #0d0b1d;
    outline: none;
}
.guide-lb-bar[b-q2fmi1qd8n] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: .75rem;
    padding: .65rem 1rem;
    color: #eef0f8;
}
.guide-lb-bar span[b-q2fmi1qd8n] {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 600;
}
.guide-lb-actions[b-q2fmi1qd8n] { display: flex; gap: .5rem; flex-shrink: 0; }
.guide-lb-fit[b-q2fmi1qd8n],
.guide-lb-close[b-q2fmi1qd8n] {
    padding: .55rem 1rem;
    border-radius: 999px;
    font-weight: 600;
    cursor: pointer;
}
.guide-lb-fit[b-q2fmi1qd8n] { border: 1px solid #5d5a80; background: transparent; color: #eef0f8; }
.guide-lb-close[b-q2fmi1qd8n] { border: 0; background: var(--clr-orange); color: #fff; }
.guide-lb-scroll[b-q2fmi1qd8n] {
    flex: 1;
    overflow: auto;
    padding: 0 1rem 1rem;
}
.guide-lb-scroll img[b-q2fmi1qd8n] {
    display: block;
    max-width: none;
    margin: 0 auto;
    border-radius: 8px;
}
.guide-lb-scroll.fit img[b-q2fmi1qd8n] {
    max-width: 100%;
    max-height: calc(100vh - 80px);
    object-fit: contain;
}
/* /Components/Investors/FrontOfficePage.razor.rz.scp.css */
/* Front Office Page - scoped styles
   Shared utilities come from wwwroot/srm-components.css */

/* Investor detail label/value pairs */
.fo-detail-label[b-48p0idqqj4] {
    display: block;
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted);
    margin-bottom: 2px;
}

.fo-detail-value[b-48p0idqqj4] {
    display: block;
    font-size: 0.875rem;
    color: var(--text-primary);
}

/* Section divider with centred label */
.fo-section-divider[b-48p0idqqj4] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin: 1.25rem 0 0.75rem;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--text-muted);
}

.fo-section-divider[b-48p0idqqj4]::before,
.fo-section-divider[b-48p0idqqj4]::after {
    content: "";
    flex: 1;
    border-top: 1px solid var(--border-clr);
}

/* Tab table scroll container */
.fo-tab-table[b-48p0idqqj4] {
    max-height: 340px;
    overflow-y: auto;
}

/* Query text - truncated */
.fo-query-text[b-48p0idqqj4] {
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    max-height: 2.6rem;
    line-height: 1.3rem;
    font-size: 0.85rem;
    cursor: default;
    transition: all 0.15s ease;
    color: var(--text-primary);
}

.fo-query-text:hover[b-48p0idqqj4] {
    overflow: visible;
    -webkit-line-clamp: unset;
    max-height: none;
    position: relative;
    z-index: 10;
    background: var(--surface-2);
    padding: 0.25rem 0.4rem;
    border-radius: var(--radius-sm);
    box-shadow: var(--shadow-sm);
}

/* Response card */
.fo-response-card[b-48p0idqqj4] {
    background: var(--surface-2);
    border: 1px solid var(--border-clr);
    border-radius: var(--radius-md);
    padding: 0.75rem 1rem;
}

html.dark .fo-response-card[b-48p0idqqj4] { background: #1a1640; border-color: #3a3570; }

/* An entry the investor wrote in the portal, not a reply staff sent. Same card, flagged on the
   leading edge and tinted, so a thread that mixes both reads as a conversation rather than as
   the registrar apparently talking to itself. */
.fo-response-card.fo-response-card--investor[b-48p0idqqj4] {
    border-left: 3px solid var(--bs-warning, #f0ad4e);
    background: color-mix(in srgb, var(--bs-warning, #f0ad4e) 7%, var(--surface-2));
}

html.dark .fo-response-card.fo-response-card--investor[b-48p0idqqj4] {
    border-left-color: #f0c479;
    background: #2a2140;
}

/* Panel header (match srm-params style) */
.srm-params-panel-header[b-48p0idqqj4] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1.25rem;
    border-bottom: 1px solid var(--border-clr);
    font-weight: 600;
    font-size: 0.875rem;
    background: var(--surface-2);
    border-radius: var(--radius-md) var(--radius-md) 0 0;
    color: var(--text-primary);
}

html.dark .srm-params-panel-header[b-48p0idqqj4] {
    background: #1a1640;
    border-bottom-color: #3a3570;
}

/* Compact action buttons in tables */
.fo-tab-table .btn-sm[b-48p0idqqj4] {
    padding: 0.2rem 0.5rem;
    font-size: 0.75rem;
    line-height: 1.4;
}
/* /Components/Investors/InvestorDetails.razor.rz.scp.css */
/* Scoped styles for InvestorDetails.razor
   Shared utility classes come from wwwroot/srm-components.css  */

/* Search results row cursor */
.result-row[b-pboy1gefam] {
    cursor: pointer;
    user-select: none;
}

.result-row:hover td[b-pboy1gefam] { background: rgba(37,12,119,0.05) !important; }
html.dark .result-row:hover td[b-pboy1gefam] { background: rgba(255,255,255,0.05) !important; }

/* Sticky thead in search modal */
.srm-table thead.sticky-top th[b-pboy1gefam] {
    position: sticky;
    top: 0;
    z-index: 1;
    background: var(--surface-2);
}

html.dark .srm-table thead.sticky-top th[b-pboy1gefam] { background: #1a1640; }

/* Tab panel transition */
.tab-panel-body[b-pboy1gefam] {
    animation: tab-fade-b-pboy1gefam 0.15s ease-in;
}

@keyframes tab-fade-b-pboy1gefam {
    from { opacity: 0; transform: translateY(4px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* Form-control read-only */
.form-control.bg-light[readonly][b-pboy1gefam] {
    border-color: var(--border-clr);
    color: var(--text-muted);
    cursor: not-allowed;
    background: var(--surface-2) !important;
}
/* /Components/Layout/DisplayLayout.razor.rz.scp.css */
[b-bbw0ntgrne] .tv-display-body {
    margin: 0;
    padding: 0;
    width: 100vw;
    min-height: 100vh;
    overflow-x: hidden;
}
/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* MainLayout.razor - scoped styles
   Layout shell is handled by app.css (.srm-layout, .srm-sidebar, .top-header etc.)
   Only component-specific overrides belong here. */

/* Reconnect / error UI handled by ReconnectModal.razor.css */
/* /Components/Layout/MfaNudgeBanner.razor.rz.scp.css */
.mfa-nudge[b-5hlqn90n18] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 1.25rem;
    padding: 0.85rem 1.1rem;
    border-radius: 12px;
    border: 1px solid rgba(237, 100, 43, 0.35);
    background: rgba(237, 100, 43, 0.08);
    color: var(--text-primary);
}

.mfa-nudge-icon[b-5hlqn90n18] {
    flex: 0 0 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ED642B;
    color: #fff;
    font-size: 1.05rem;
}

.mfa-nudge-text[b-5hlqn90n18] {
    flex: 1 1 18rem;
    display: flex;
    flex-direction: column;
    font-size: 0.875rem;
    line-height: 1.4;
}

.mfa-nudge-text span[b-5hlqn90n18] {
    color: var(--text-muted);
}

.mfa-nudge-actions[b-5hlqn90n18] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}
/* /Components/Layout/NavMenu.razor.rz.scp.css */
/* NavMenu scoped styles – layout handled by app.css */

.srm-nav form[b-lt688oe2ti] {
    display: contents;
}
/* /Components/Layout/PrintLayout.razor.rz.scp.css */
.print-layout-root[b-9luoda8u1o] {
    all: initial;
    display: block;
    font-family: inherit;
}

/* Hide every app-shell element that bleeds through */
[b-9luoda8u1o]::slotted(*), :host[b-9luoda8u1o] { all: initial; }
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-zhil7if8x8],
.components-reconnect-repeated-attempt-visible[b-zhil7if8x8],
.components-reconnect-failed-visible[b-zhil7if8x8],
.components-pause-visible[b-zhil7if8x8],
.components-resume-failed-visible[b-zhil7if8x8],
.components-rejoining-animation[b-zhil7if8x8] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-zhil7if8x8],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-zhil7if8x8],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-zhil7if8x8],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-zhil7if8x8],
#components-reconnect-modal.components-reconnect-retrying[b-zhil7if8x8],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-zhil7if8x8],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-zhil7if8x8],
#components-reconnect-modal.components-reconnect-failed[b-zhil7if8x8],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-zhil7if8x8] {
    display: block;
}


#components-reconnect-modal[b-zhil7if8x8] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-zhil7if8x8 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-zhil7if8x8 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-zhil7if8x8 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-zhil7if8x8]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-zhil7if8x8 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-zhil7if8x8 {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-zhil7if8x8 {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-zhil7if8x8 {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-zhil7if8x8] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-zhil7if8x8] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-zhil7if8x8] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-zhil7if8x8] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-zhil7if8x8] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-zhil7if8x8] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-zhil7if8x8] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-zhil7if8x8 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-zhil7if8x8] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-zhil7if8x8 {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Notifications/NotificationBell.razor.rz.scp.css */
.notif-bell[b-l4jg6k7tkp] {
    position: relative;
}

.notif-count[b-l4jg6k7tkp] {
    position: absolute;
    top: 1px;
    inset-inline-end: 0;
    min-width: 17px;
    height: 17px;
    padding: 0 4px;
    border-radius: 999px;
    background: #e11d48;
    border: 2px solid var(--header-bg);
    color: #fff;
    font-size: 0.62rem;
    font-weight: 700;
    line-height: 13px;
    text-align: center;
    pointer-events: none;
}

/* Catches the outside click that closes the panel. */
.notif-backdrop[b-l4jg6k7tkp] {
    position: fixed;
    inset: 0;
    z-index: 1040;
}

.notif-panel[b-l4jg6k7tkp] {
    position: absolute;
    top: calc(100% + 10px);
    inset-inline-end: -8px;
    z-index: 1045;
    width: min(420px, calc(100vw - 24px));
    max-height: min(560px, calc(100vh - var(--header-height) - 24px));
    display: flex;
    flex-direction: column;
    background: var(--surface);
    border: 1px solid var(--border-clr);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-lg);
    overflow: hidden;
    animation: notif-in-b-l4jg6k7tkp 0.14s ease-out;
}

@keyframes notif-in-b-l4jg6k7tkp {
    from { opacity: 0; transform: translateY(-4px); }
    to   { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
    .notif-panel[b-l4jg6k7tkp] { animation: none; }
}

.notif-panel-header[b-l4jg6k7tkp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.85rem 0.75rem 0.85rem 1rem;
    border-bottom: 1px solid var(--border-clr);
    color: var(--text-primary);
}

.notif-header-count[b-l4jg6k7tkp] {
    padding: 0.05rem 0.5rem;
    border-radius: 999px;
    background: rgba(225, 29, 72, 0.1);
    color: #e11d48;
    font-size: 0.72rem;
    font-weight: 700;
}

.notif-link-btn[b-l4jg6k7tkp] {
    border: none;
    background: transparent;
    padding: 0.3rem 0.5rem;
    border-radius: var(--radius-sm);
    color: var(--clr-violet-lt);
    font-size: 0.78rem;
    font-weight: 600;
    white-space: nowrap;
}

.notif-link-btn:hover:not(:disabled)[b-l4jg6k7tkp] {
    background: rgba(37, 12, 119, 0.07);
}

html.dark .notif-link-btn[b-l4jg6k7tkp] { color: #a5b4fc; }
html.dark .notif-link-btn:hover:not(:disabled)[b-l4jg6k7tkp] { background: rgba(255, 255, 255, 0.07); }

.notif-close-btn[b-l4jg6k7tkp] {
    width: 30px;
    height: 30px;
    border: none;
    background: transparent;
    border-radius: var(--radius-sm);
    color: var(--text-muted);
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.notif-close-btn:hover[b-l4jg6k7tkp] {
    background: var(--surface-2);
    color: var(--text-primary);
}

.notif-panel-body[b-l4jg6k7tkp] {
    flex: 1;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 0.4rem;
}

.notif-section-label[b-l4jg6k7tkp] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.6rem 0.6rem 0.3rem;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.notif-section-count[b-l4jg6k7tkp] {
    padding: 0 0.4rem;
    border-radius: 999px;
    background: var(--surface-2);
    border: 1px solid var(--border-clr);
    letter-spacing: 0;
}

.notif-state[b-l4jg6k7tkp] {
    padding: 2.5rem 1.5rem;
    text-align: center;
    color: var(--text-primary);
}

.notif-state-icon[b-l4jg6k7tkp] {
    display: block;
    margin-bottom: 0.6rem;
    font-size: 1.9rem;
    color: var(--text-muted);
}

.notif-state-icon--ok[b-l4jg6k7tkp] {
    color: #059669;
}

.notif-panel-footer[b-l4jg6k7tkp] {
    border-top: 1px solid var(--border-clr);
    background: var(--surface-2);
    text-align: center;
}

.notif-panel-footer a[b-l4jg6k7tkp] {
    display: block;
    padding: 0.7rem;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--clr-violet-lt);
    text-decoration: none;
}

.notif-panel-footer a:hover[b-l4jg6k7tkp] {
    text-decoration: underline;
}

html.dark .notif-panel-footer a[b-l4jg6k7tkp] { color: #a5b4fc; }

/* Phones: a sheet under the header rather than a popover off the bell. */
@media (max-width: 575.98px) {
    .notif-panel[b-l4jg6k7tkp] {
        position: fixed;
        top: calc(var(--header-height) + 6px);
        inset-inline: 8px;
        width: auto;
        max-height: calc(100vh - var(--header-height) - 16px);
    }
}

/* Focused on open for the keyboard; the panel itself needs no ring. */
.notif-panel:focus[b-l4jg6k7tkp] {
    outline: none;
}
/* /Components/Notifications/NotificationRow.razor.rz.scp.css */
.notif-row[b-7hsy9qqtky] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    width: 100%;
    padding: 0.8rem 1rem;
    border: none;
    border-radius: var(--radius-md);
    background: transparent;
    color: var(--text-primary);
    text-align: start;
    cursor: pointer;
    transition: background var(--transition);
}

.notif-row:hover[b-7hsy9qqtky],
.notif-row:focus-visible[b-7hsy9qqtky] {
    background: var(--surface-2);
    outline: none;
}

.notif-row:focus-visible[b-7hsy9qqtky] {
    box-shadow: 0 0 0 3px var(--input-focus);
}

.notif-row--unread[b-7hsy9qqtky] {
    background: rgba(37, 12, 119, 0.045);
}

html.dark .notif-row--unread[b-7hsy9qqtky] {
    background: rgba(255, 255, 255, 0.045);
}

.notif-icon[b-7hsy9qqtky] {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    color: #fff;
}

.notif-icon--request[b-7hsy9qqtky]  { background: linear-gradient(135deg, #0284c7, #38bdf8); }
.notif-icon--kyc[b-7hsy9qqtky]      { background: linear-gradient(135deg, #7c3aed, #a78bfa); }
.notif-icon--dividend[b-7hsy9qqtky] { background: linear-gradient(135deg, #059669, #34d399); }
.notif-icon--other[b-7hsy9qqtky]    { background: var(--clr-orange-grad); }

.notif-content[b-7hsy9qqtky] {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    min-width: 0;
    flex: 1;
}

.notif-title[b-7hsy9qqtky] {
    font-size: 0.875rem;
    line-height: 1.3;
    font-weight: 500;
    color: var(--text-primary);
    overflow-wrap: anywhere;
}

.notif-row--unread .notif-title[b-7hsy9qqtky] {
    font-weight: 650;
}

.notif-body[b-7hsy9qqtky] {
    font-size: 0.8rem;
    line-height: 1.4;
    color: var(--text-secondary);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    overflow-wrap: anywhere;
}

.notif-meta[b-7hsy9qqtky] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.35rem;
    margin-top: 0.15rem;
    font-size: 0.72rem;
    color: var(--text-muted);
}

.notif-chip[b-7hsy9qqtky] {
    display: inline-flex;
    align-items: center;
    gap: 0.2rem;
    padding: 0.05rem 0.45rem;
    border-radius: 999px;
    border: 1px solid var(--border-clr);
    background: var(--surface);
    color: var(--text-secondary);
    font-weight: 500;
}

.notif-chip--open[b-7hsy9qqtky] {
    border-color: rgba(237, 100, 43, 0.35);
    color: var(--clr-orange-dk);
}

.notif-chip--done[b-7hsy9qqtky] {
    border-color: rgba(5, 150, 105, 0.35);
    color: #047857;
}

html.dark .notif-chip--open[b-7hsy9qqtky] { color: #fb923c; }
html.dark .notif-chip--done[b-7hsy9qqtky] { color: #34d399; }

.notif-unread-dot[b-7hsy9qqtky] {
    flex-shrink: 0;
    width: 9px;
    height: 9px;
    margin-top: 0.4rem;
    border-radius: 50%;
    background: var(--clr-orange);
}
/* /Components/Queue/QueryDashboard.razor.rz.scp.css */
/* QueryDashboard – page-local tweaks on top of app.css / srm-components.css.
   Anything reusable belongs in those files, not here. */

/* Keep long free-text queries from stretching the row height without limit. */
.query-text-truncate[b-3ib1g2ihui] {
    white-space: normal;
    word-break: break-word;
  overflow: visible;
    line-height: 1.4;
  max-height: 5.6em; /* Approximately 4 lines of text */
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.chart-container[b-3ib1g2ihui] {
  height: 300px;
  width: 100%;
}

/* .dash-empty is sized by its parent on /dashboard, where every panel has a fixed
   height. The tab panels here grow with their content, so give the empty state a
   floor of its own and stack the icon above the message. */
.dash-empty[b-3ib1g2ihui] {
    flex-direction: column;
    min-height: 220px;
    padding: 2rem 1rem;
    text-align: center;
}

/* The filter bar packs six controls into one row; drop the label tracking a touch
   so they still read as labels at that width. */
.form-label.text-uppercase[b-3ib1g2ihui] {
    letter-spacing: 0.04em;
    font-size: 0.7rem;
}
/* /Components/Queue/TicketDisplay.razor.rz.scp.css */
/* ══════════════════════════════════════════════════════════
   TV Ticket Display – full-screen board styles
   Designed for 32"+ monitors at 1080p / 4K
   ══════════════════════════════════════════════════════════ */

/* ── Root board ── */
.tv-board[b-27f5uztvqq] {
    display: flex;
    flex-direction: column;
    width: 100vw;
    min-height: 100vh;
    background: #0d0f1a;
    font-family: 'Segoe UI', system-ui, sans-serif;
    color: #f0f4ff;
    overflow: hidden;
    padding: 0.9rem;
    background-image:
        linear-gradient(#0d0f1a, #0d0f1a),
        linear-gradient(135deg, #3b82f6 0%, #7c3aed 35%, #eab308 65%, #22c55e 100%);
    background-origin: padding-box, border-box;
    background-clip: padding-box, border-box;
    border: 0.9rem solid transparent;
    box-sizing: border-box;
}

/* ── Header ── */
.tv-header[b-27f5uztvqq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.2rem 2.5rem;
    background: linear-gradient(135deg, #1a1f3a 0%, #0f1525 100%);
    border-bottom: 3px solid #3b82f6;
    flex-shrink: 0;
}

.tv-header-left[b-27f5uztvqq] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.tv-brand-block[b-27f5uztvqq] {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.tv-welcome-line[b-27f5uztvqq] {
    font-size: 1.2rem;
    font-weight: 500;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #93c5fd;
    opacity: 0.85;
}

.tv-brand-name[b-27f5uztvqq] {
    font-size: 1.8rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    background: linear-gradient(90deg, #60a5fa 0%, #a78bfa 50%, #f472b6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: none;
}

.tv-header-center[b-27f5uztvqq] {
    text-align: center;
}

.tv-clock[b-27f5uztvqq] {
    font-size: 3rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    color: #facc15;
    letter-spacing: 0.06em;
    text-shadow: 0 0 18px rgba(250, 204, 21, 0.5);
}

.tv-header-right[b-27f5uztvqq] {
    display: flex;
    align-items: center;
}

.tv-live-pill[b-27f5uztvqq] {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    background: rgba(34, 197, 94, 0.15);
    border: 2px solid #22c55e;
    color: #4ade80;
    border-radius: 999px;
    padding: 0.4rem 1.4rem;
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.tv-live-dot[b-27f5uztvqq] {
    width: 0.8rem;
    height: 0.8rem;
    background: #4ade80;
    border-radius: 50%;
    animation: tv-pulse-b-27f5uztvqq 1.4s ease-in-out infinite;
    box-shadow: 0 0 8px #4ade80;
}

@keyframes tv-pulse-b-27f5uztvqq {
    0%, 100% { opacity: 1; transform: scale(1); }
    50%       { opacity: 0.4; transform: scale(0.7); }
}

/* ── Two-column layout ── */
.tv-columns[b-27f5uztvqq] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    flex: 1;
    min-height: 0;
}

/* ── Panel shared ── */
.tv-panel[b-27f5uztvqq] {
    display: flex;
    flex-direction: column;
    border-right: 1px solid #1e2540;
    min-height: 0;
}

.tv-panel:last-child[b-27f5uztvqq] {
    border-right: none;
}

.tv-panel-header[b-27f5uztvqq] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.2rem 2rem;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    flex-shrink: 0;
}

/* Active / In-Progress panel */
.tv-panel-header-active[b-27f5uztvqq] {
    background: linear-gradient(90deg, #1e3a8a 0%, #1d4ed8 100%);
    color: #bfdbfe;
    border-bottom: 3px solid #3b82f6;
}

/* Waiting panel */
.tv-panel-header-waiting[b-27f5uztvqq] {
    background: linear-gradient(90deg, #713f12 0%, #a16207 100%);
    color: #fef3c7;
    border-bottom: 3px solid #eab308;
}

.tv-count-badge[b-27f5uztvqq] {
    margin-left: auto;
    border-radius: 999px;
    padding: 0.2rem 1rem;
    font-size: 1.6rem;
    font-weight: 800;
    min-width: 3rem;
    text-align: center;
}

.tv-count-active[b-27f5uztvqq] {
    background: rgba(255, 255, 255, 0.15);
    color: #93c5fd;
    border: 2px solid #60a5fa;
}

.tv-count-waiting[b-27f5uztvqq] {
    background: rgba(255, 255, 255, 0.15);
    color: #fde68a;
    border: 2px solid #fbbf24;
}

/* ── Panel body ── */
.tv-panel-body[b-27f5uztvqq] {
    flex: 1;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.tv-panel-scroll[b-27f5uztvqq] {
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: #1e2540 transparent;
}

/* ── Table ── */
.tv-table[b-27f5uztvqq] {
    width: 100%;
    border-collapse: collapse;
    font-size: 1.55rem;
}

.tv-table thead tr[b-27f5uztvqq] {
    background: #111627;
    border-bottom: 2px solid #1e2a4a;
}

.tv-table thead th[b-27f5uztvqq] {
    padding: 1rem 1.4rem;
    font-size: 1.1rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #6b7db3;
}

.tv-table tbody tr[b-27f5uztvqq] {
    border-bottom: 1px solid #161c30;
    transition: background 0.2s;
}

.tv-table tbody tr:hover[b-27f5uztvqq] {
    background: rgba(59, 130, 246, 0.08);
}

.tv-table tbody tr.tv-row-active[b-27f5uztvqq] {
    background: rgba(29, 78, 216, 0.12);
}

.tv-table tbody tr.tv-row-active:hover[b-27f5uztvqq] {
    background: rgba(29, 78, 216, 0.2);
}

.tv-table td[b-27f5uztvqq] {
    padding: 1.1rem 1.4rem;
    vertical-align: middle;
}

/* ── Ticket number chip ── */
.tv-ticket-num[b-27f5uztvqq] {
    display: inline-block;
    background: linear-gradient(135deg, #1d4ed8, #7c3aed);
    color: #fff;
    font-size: 1.8rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    padding: 0.25rem 1rem;
    border-radius: 8px;
    min-width: 4.5rem;
    text-align: center;
    box-shadow: 0 0 14px rgba(124, 58, 237, 0.4);
}

.tv-ticket-waiting[b-27f5uztvqq] {
    background: linear-gradient(135deg, #78350f, #d97706);
    box-shadow: 0 0 14px rgba(217, 119, 6, 0.35);
}

/* ── Counter badge ── */
.tv-counter-badge[b-27f5uztvqq] {
    display: inline-block;
    background: #1e3a8a;
    color: #93c5fd;
    font-size: 1.5rem;
    font-weight: 800;
    padding: 0.2rem 0.9rem;
    border-radius: 6px;
    border: 1px solid #2563eb;
}

/* ── Name ── */
.tv-name[b-27f5uztvqq] {
    font-size: 1.6rem;
    font-weight: 600;
    color: #e2e8f0;
}

/* ── Position / time ── */
.tv-pos[b-27f5uztvqq] {
    font-size: 1.6rem;
    font-weight: 700;
    color: #475569;
    width: 3rem;
    text-align: center;
}

.tv-time[b-27f5uztvqq] {
    font-size: 1.4rem;
    color: #4b5563;
    font-variant-numeric: tabular-nums;
}

/* ── Priority badges ── */
.tv-badge[b-27f5uztvqq] {
    display: inline-flex;
    align-items: center;
    font-size: 1.2rem;
    font-weight: 700;
    padding: 0.3rem 0.9rem;
    border-radius: 6px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.tv-badge-premium[b-27f5uztvqq] {
    background: linear-gradient(135deg, #6d28d9, #a855f7);
    color: #f5f3ff;
    box-shadow: 0 0 10px rgba(168, 85, 247, 0.4);
}

.tv-badge-priority[b-27f5uztvqq] {
    background: linear-gradient(135deg, #b45309, #f59e0b);
    color: #fffbeb;
    box-shadow: 0 0 10px rgba(245, 158, 11, 0.35);
}

.tv-badge-standard[b-27f5uztvqq] {
    background: #1e293b;
    color: #64748b;
    border: 1px solid #334155;
}

/* ── Empty state ── */
.tv-empty[b-27f5uztvqq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1.2rem;
    flex: 1;
    padding: 5rem 2rem;
    color: #374151;
    font-size: 1.6rem;
    font-weight: 600;
}

.tv-empty-icon[b-27f5uztvqq] {
    font-size: 5rem;
    opacity: 0.3;
}

.tv-empty-icon-green[b-27f5uztvqq] {
    color: #22c55e;
}
