@import '_content/Z.Blazor.Diagrams/Z.Blazor.Diagrams.ezdqu7jd9f.bundle.scp.css';

/* /Components/CustomComponents/CommandPalette/CommandPalette.razor.rz.scp.css */
.cp-backdrop[b-m83a7mrjzy] {
	position: fixed;
	inset: 0;
	background-color: rgba(0, 0, 0, 0.45);
	z-index: 9998;
	animation: cp-fade-in-b-m83a7mrjzy 120ms ease-out;
}

.cp-root[b-m83a7mrjzy] {
	position: fixed;
	top: 15vh;
	left: 50%;
	transform: translateX(-50%);
	width: 640px;
	max-width: calc(100vw - 32px);
	max-height: 70vh;
	background-color: #1a1d2e;
	color: rgba(255, 255, 255, 0.85);
	border: 1px solid rgba(0, 217, 197, 0.5);
	border-radius: 8px;
	box-shadow: 0 24px 64px rgba(0, 0, 0, 0.6);
	z-index: 9999;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	animation: cp-pop-in-b-m83a7mrjzy 140ms ease-out;
}

@keyframes cp-fade-in-b-m83a7mrjzy {
	from { opacity: 0; }
	to { opacity: 1; }
}

@keyframes cp-pop-in-b-m83a7mrjzy {
	from { opacity: 0; transform: translateX(-50%) scale(0.97); }
	to   { opacity: 1; transform: translateX(-50%) scale(1); }
}

.cp-input-row[b-m83a7mrjzy] {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 14px 16px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.cp-input-icon[b-m83a7mrjzy] {
	color: rgba(255, 255, 255, 0.45);
	font-size: 16px;
}

.cp-input[b-m83a7mrjzy] {
	flex: 1;
	background: transparent;
	border: 0;
	outline: 0;
	color: rgba(255, 255, 255, 0.9);
	font-size: 16px;
	font-family: inherit;
	padding: 2px 0;
}

.cp-input[b-m83a7mrjzy]::placeholder {
	color: rgba(255, 255, 255, 0.35);
}

.cp-esc-hint[b-m83a7mrjzy] {
	font-size: 11px;
	color: rgba(255, 255, 255, 0.45);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 4px;
	padding: 2px 6px;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.cp-notice[b-m83a7mrjzy] {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 10px 16px;
	background-color: rgba(255, 180, 80, 0.10);
	border-bottom: 1px solid rgba(255, 180, 80, 0.25);
	color: #ffc46b;
	font-size: 12px;
}

.cp-results[b-m83a7mrjzy] {
	overflow-y: auto;
	max-height: calc(70vh - 110px);
	padding: 6px 0;
}

.cp-empty[b-m83a7mrjzy] {
	padding: 16px 18px;
	color: rgba(255, 255, 255, 0.45);
	font-size: 13px;
}

.cp-empty strong[b-m83a7mrjzy] {
	color: rgba(255, 255, 255, 0.75);
	font-weight: 600;
}

.cp-row[b-m83a7mrjzy] {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 9px 16px;
	cursor: pointer;
	border-left: 2px solid transparent;
	transition: background-color 60ms ease, border-color 60ms ease;
}

.cp-row--selected[b-m83a7mrjzy] {
	background-color: #242840;
	border-left-color: #00d9c5;
}

.cp-row-icon[b-m83a7mrjzy] {
	color: rgba(255, 255, 255, 0.55);
	font-size: 14px;
	width: 18px;
	text-align: center;
	flex-shrink: 0;
}

.cp-row--selected .cp-row-icon[b-m83a7mrjzy] {
	color: #00d9c5;
}

.cp-row-name[b-m83a7mrjzy] {
	flex: 1;
	color: rgba(255, 255, 255, 0.9);
	font-size: 14px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.cp-row-path[b-m83a7mrjzy] {
	color: rgba(255, 255, 255, 0.45);
	font-size: 12px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 45%;
}

.cp-row-badge[b-m83a7mrjzy] {
	font-size: 10px;
	line-height: 1;
	padding: 3px 6px;
	border-radius: 3px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	font-weight: 600;
	flex-shrink: 0;
}

.cp-row-badge--action[b-m83a7mrjzy] {
	background-color: rgba(0, 217, 197, 0.15);
	color: #00d9c5;
}

.cp-row-badge--recent[b-m83a7mrjzy] {
	background-color: rgba(255, 255, 255, 0.08);
	color: rgba(255, 255, 255, 0.6);
}

[b-m83a7mrjzy] mark.cp-hit {
	background: transparent;
	color: #00d9c5;
	font-weight: 600;
	padding: 0;
}

.cp-show-all[b-m83a7mrjzy] {
	padding: 10px 16px;
	color: rgba(255, 255, 255, 0.55);
	font-size: 12px;
	cursor: pointer;
	text-align: center;
	border-top: 1px dashed rgba(255, 255, 255, 0.08);
	transition: color 80ms ease, background-color 80ms ease;
}

.cp-show-all:hover[b-m83a7mrjzy] {
	color: #00d9c5;
	background-color: rgba(0, 217, 197, 0.05);
}

.cp-footer[b-m83a7mrjzy] {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 16px;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	font-size: 11px;
	color: rgba(255, 255, 255, 0.45);
	background-color: rgba(0, 0, 0, 0.15);
}

.cp-footer-sep[b-m83a7mrjzy] {
	opacity: 0.5;
}
/* /Components/CustomComponents/Dashboard/DashboardDrawer.razor.rz.scp.css */
.ws-drawer-overlay[b-s8bn5o9xip] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 500;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 80px;
    animation: ws-drawer-fade-in-b-s8bn5o9xip 0.15s ease;
}

.ws-drawer-panel[b-s8bn5o9xip] {
    background: #ffffff;
    border-radius: 12px;
    max-height: 80vh;
    overflow-y: auto;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.25);
    outline: none;
    animation: ws-drawer-pop-b-s8bn5o9xip 0.18s ease;
}

.ws-drawer-header[b-s8bn5o9xip] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid #e2e8f0;
    position: sticky;
    top: 0;
    background: #ffffff;
    z-index: 1;
}

.ws-drawer-title[b-s8bn5o9xip] {
    font-size: 15px;
    font-weight: 700;
    color: #1a1d2e;
}

.ws-drawer-close[b-s8bn5o9xip] {
    width: 28px;
    height: 28px;
    border: none;
    background: #f1f5f9;
    border-radius: 50%;
    cursor: pointer;
    font-size: 18px;
    line-height: 1;
    color: #64748b;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ws-drawer-close:hover[b-s8bn5o9xip] {
    background: #e2e8f0;
    color: #1a1d2e;
}

.ws-drawer-close:focus-visible[b-s8bn5o9xip] {
    outline: 2px solid #0a3d62;
    outline-offset: 2px;
}

.ws-drawer-body[b-s8bn5o9xip] {
    padding: 16px 20px;
}

@keyframes ws-drawer-fade-in-b-s8bn5o9xip {
    from { background: rgba(0, 0, 0, 0); }
    to   { background: rgba(0, 0, 0, 0.4); }
}

@keyframes ws-drawer-pop-b-s8bn5o9xip {
    from { opacity: 0; transform: translateY(-8px); }
    to   { opacity: 1; transform: translateY(0); }
}
/* /Components/CustomComponents/EmailVariablePickerPopup.razor.rz.scp.css */
.email-var-picker[b-30d8bisv0s] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    max-height: 520px;
}

.email-var-picker__search-input[b-30d8bisv0s] {
    width: 100%;
}

.email-var-picker__list[b-30d8bisv0s] {
    flex: 1;
    min-height: 300px;
    max-height: 420px;
    overflow-y: auto;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    background: #fff;
}

.email-var-picker__category[b-30d8bisv0s] {
    padding: 0.5rem 0.75rem;
    background: #f3f4f6;
    font-weight: 600;
    font-size: 0.85rem;
    color: #374151;
    border-top: 1px solid #e5e7eb;
    border-bottom: 1px solid #e5e7eb;
    position: sticky;
    top: 0;
    z-index: 1;
}

.email-var-picker__category:first-child[b-30d8bisv0s] {
    border-top: none;
}

.email-var-picker__row[b-30d8bisv0s] {
    display: grid;
    grid-template-columns: minmax(140px, 1fr) auto;
    grid-template-rows: auto auto;
    grid-column-gap: 0.75rem;
    align-items: start;
    width: 100%;
    padding: 0.5rem 0.75rem;
    background: transparent;
    border: none;
    border-bottom: 1px solid #f3f4f6;
    text-align: left;
    cursor: pointer;
    font: inherit;
}

.email-var-picker__row:hover[b-30d8bisv0s],
.email-var-picker__row:focus[b-30d8bisv0s] {
    background: #e6f0ee;
    outline: none;
}

.email-var-picker__name[b-30d8bisv0s] {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
    font-weight: 500;
    color: #111827;
}

.email-var-picker__token[b-30d8bisv0s] {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
    padding: 0.125rem 0.375rem;
    background: #0a3d62;
    color: #fff;
    border-radius: 3px;
    font-size: 0.8rem;
    white-space: nowrap;
}

.email-var-picker__desc[b-30d8bisv0s] {
    grid-column: 1 / 3;
    grid-row: 2 / 3;
    margin-top: 0.125rem;
    font-size: 0.8rem;
    color: #6b7280;
}

.email-var-picker__empty[b-30d8bisv0s] {
    padding: 2rem 1rem;
    text-align: center;
    color: #6b7280;
}

.email-var-picker__footer[b-30d8bisv0s] {
    display: flex;
    justify-content: flex-end;
    padding-top: 0.25rem;
}
/* /Components/CustomComponents/GridStackDashboard.razor.rz.scp.css */
[b-owfx8wsegt]::-webkit-scrollbar {
    width: 10px;
}

[b-owfx8wsegt]::-webkit-scrollbar-track-piece {
    background-color: #FFF;
}

[b-owfx8wsegt]::-webkit-scrollbar-thumb {
    background-color: #CBCBCB;
    outline: 2px solid #FFF;
    outline-offset: -2px;
    border: .1px solid #B7B7B7;
}

[b-owfx8wsegt]::-webkit-scrollbar-thumb:hover {
    background-color: #909090;
}
/* /Components/CustomComponents/IQ/IqFab.razor.rz.scp.css */
/* ─── Floating Action Button ─────────────────────────────────── */

.iq-fab[b-ii5lkfhnnt] {
    position: fixed;
    bottom: 24px;
    right: 24px;
    height: 44px;
    border-radius: 22px;
    background: linear-gradient(135deg, #0d9488, #0f766e);
    color: #fff;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(13, 148, 136, 0.4);
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 1.1rem 0 0.85rem;
    z-index: 1040;
    transition: all 0.25s ease;
    font-family: inherit;
    font-size: 0.875rem;
    font-weight: 600;
    white-space: nowrap;
}

.iq-fab:hover[b-ii5lkfhnnt] {
    transform: translateY(-2px);
    box-shadow: 0 6px 22px rgba(13, 148, 136, 0.5);
    background: linear-gradient(135deg, #0f766e, #115e59);
}

.iq-fab:active[b-ii5lkfhnnt] {
    transform: translateY(0);
}

/* Echelon theme — green accent */
.iq-fab-echelon[b-ii5lkfhnnt] {
    background: #11C683;
    box-shadow: 0 3px 12px rgba(17, 198, 131, 0.35);
}

.iq-fab-echelon:hover[b-ii5lkfhnnt] {
    background: #0eaa6f;
    box-shadow: 0 5px 20px rgba(17, 198, 131, 0.45);
}

.iq-fab svg[b-ii5lkfhnnt] {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

/* Mobile: shift above bottom nav, reduce size */
@media (max-width: 768px) {
    .iq-fab[b-ii5lkfhnnt] {
        bottom: 70px;
        right: 12px;
        height: 36px;
        font-size: 0.75rem;
        padding: 0 0.8rem 0 0.6rem;
    }
}
/* /Components/CustomComponents/IQ/IqInsightCard.razor.rz.scp.css */
/* ─── Container ──────────────────────────────────────────────── */

.iq-insight-container[b-3px9he8r2e] {
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    background: #fafffe;
    margin-bottom: 12px;
    overflow: hidden;
}

/* ─── Header ─────────────────────────────────────────────────── */

.iq-insight-header[b-3px9he8r2e] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 14px;
    background: linear-gradient(135deg, #0d9488, #0f766e);
    cursor: pointer;
    user-select: none;
}

.iq-insight-header-left[b-3px9he8r2e] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.iq-insight-icon[b-3px9he8r2e] {
    font-weight: 700;
    font-size: 12px;
    color: #fff;
    letter-spacing: 0.5px;
}

.iq-insight-title[b-3px9he8r2e] {
    font-size: 12px;
    font-weight: 600;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.iq-insight-badge[b-3px9he8r2e] {
    background: rgba(255, 255, 255, 0.3);
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    padding: 1px 7px;
    border-radius: 10px;
    min-width: 20px;
    text-align: center;
}

.iq-insight-header-right[b-3px9he8r2e] {
    display: flex;
    align-items: center;
    gap: 6px;
}

.iq-insight-toggle[b-3px9he8r2e] {
    color: rgba(255, 255, 255, 0.7);
    font-size: 12px;
    transition: transform 0.2s ease;
}

.iq-insight-toggle.open[b-3px9he8r2e] {
    transform: rotate(180deg);
}

.iq-insight-dismiss[b-3px9he8r2e] {
    background: none;
    border: none;
    color: rgba(255, 255, 255, 0.5);
    cursor: pointer;
    font-size: 14px;
    padding: 0 2px;
    line-height: 1;
}

.iq-insight-dismiss:hover[b-3px9he8r2e] {
    color: #fff;
}

/* ─── Body ───────────────────────────────────────────────────── */

.iq-insight-body[b-3px9he8r2e] {
    padding: 10px;
}

/* ─── Insight cards ──────────────────────────────────────────── */

.iq-insight-card[b-3px9he8r2e] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    width: 100%;
    padding: 10px 12px;
    margin-bottom: 6px;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    cursor: pointer;
    text-align: left;
    font-size: 13px;
    line-height: 1.4;
    color: #334155;
    transition: all 0.15s ease;
}

.iq-insight-card:hover[b-3px9he8r2e] {
    background: #f0fdfa;
    border-color: #0d9488;
}

.iq-insight-alert[b-3px9he8r2e] { border-left: 3px solid #ef4444; }
.iq-insight-warning[b-3px9he8r2e] { border-left: 3px solid #f59e0b; }
.iq-insight-info[b-3px9he8r2e] { border-left: 3px solid #0d9488; }

.iq-insight-card-icon[b-3px9he8r2e] {
    flex-shrink: 0;
    font-size: 14px;
    line-height: 1.4;
}

.iq-insight-card-text[b-3px9he8r2e] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.iq-insight-card-text strong[b-3px9he8r2e] {
    font-size: 13px;
    color: #0f172a;
}

.iq-insight-card-text span[b-3px9he8r2e] {
    font-size: 12px;
    color: #64748b;
}

.iq-insight-card-chevron[b-3px9he8r2e] {
    flex-shrink: 0;
    color: #94a3b8;
    font-size: 16px;
    transition: color 0.15s ease;
}

.iq-insight-card:hover .iq-insight-card-chevron[b-3px9he8r2e] {
    color: #0d9488;
}

/* ─── Suggestions ────────────────────────────────────────────── */

.iq-insight-suggestions[b-3px9he8r2e] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid #f1f5f9;
}

.iq-insight-suggestion[b-3px9he8r2e] {
    background: none;
    border: none;
    text-align: left;
    padding: 6px 10px;
    font-size: 13px;
    color: #334155;
    cursor: pointer;
    border-radius: 6px;
    transition: all 0.15s ease;
}

.iq-insight-suggestion:hover[b-3px9he8r2e] {
    background: #f0fdfa;
    color: #0f766e;
}

/* ─── Quick actions ──────────────────────────────────────────── */

.iq-insight-actions[b-3px9he8r2e] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4px;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid #f1f5f9;
}

.iq-insight-action-btn[b-3px9he8r2e] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    background: transparent;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 12px;
    color: #334155;
    transition: background 0.15s ease;
    white-space: nowrap;
}

.iq-insight-action-btn:hover[b-3px9he8r2e] {
    background: #f0fdfa;
    color: #0f766e;
}

/* ─── Loading ────────────────────────────────────────────────── */

.iq-insight-loading[b-3px9he8r2e] {
    font-size: 12px;
    color: #94a3b8;
    text-align: center;
    padding: 8px;
    animation: iq-insight-pulse-b-3px9he8r2e 1.5s infinite;
}

@keyframes iq-insight-pulse-b-3px9he8r2e {
    0%, 100% { opacity: 0.5; }
    50% { opacity: 1; }
}
/* /Components/CustomComponents/IQ/IqMessageRenderer.razor.rz.scp.css */
/* ─── Message container ──────────────────────────────────────── */

.iq-msg[b-vubhj961aw] {
    padding: 10px 14px;
    margin-bottom: 8px;
    border-radius: 10px;
    max-width: 92%;
    font-size: 14px;
    line-height: 1.6;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* User messages: right-aligned, teal gradient */
.iq-msg-user[b-vubhj961aw] {
    margin-left: auto;
    background: linear-gradient(135deg, #0d9488, #0f766e);
    color: #fff;
    border-bottom-right-radius: 3px;
}

/* Assistant messages: left-aligned, white */
.iq-msg-assistant[b-vubhj961aw] {
    margin-right: auto;
    background: #fff;
    color: #1e293b;
    border: 1px solid #e2e8f0;
    border-bottom-left-radius: 3px;
}

/* ─── Message header (role + time) ───────────────────────────── */

.iq-msg-header[b-vubhj961aw] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 4px;
    font-size: 11px;
    opacity: 0.7;
}

.iq-msg-role[b-vubhj961aw] {
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.iq-msg-time[b-vubhj961aw] {
    font-variant-numeric: tabular-nums;
}

/* ─── Content formatting ─────────────────────────────────────── */

.iq-msg-content[b-vubhj961aw]  p {
    margin: 0 0 6px 0;
}

.iq-msg-content[b-vubhj961aw]  p:last-child {
    margin-bottom: 0;
}

.iq-msg-content[b-vubhj961aw]  table {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
    margin: 8px 0;
}

.iq-msg-content[b-vubhj961aw]  th,
.iq-msg-content[b-vubhj961aw]  td {
    padding: 4px 8px;
    border: 1px solid #e2e8f0;
    text-align: left;
}

.iq-msg-content[b-vubhj961aw]  th {
    background: #f8fafc;
    font-weight: 600;
}

.iq-msg-content[b-vubhj961aw]  tr:hover td {
    background: #f0fdfa;
}

.iq-msg-content[b-vubhj961aw]  code {
    background: #f1f5f9;
    padding: 1px 4px;
    border-radius: 3px;
    font-size: 12px;
}

.iq-msg-content[b-vubhj961aw]  pre {
    background: #1e293b;
    color: #e2e8f0;
    padding: 10px;
    border-radius: 6px;
    overflow-x: auto;
    font-size: 12px;
}

/* ─── Entity links ───────────────────────────────────────────── */

[b-vubhj961aw] .iq-entity-link {
    color: #0d9488;
    cursor: pointer;
    text-decoration: underline;
    text-decoration-style: dotted;
    text-underline-offset: 2px;
}

[b-vubhj961aw] .iq-entity-link:hover {
    color: #0f766e;
    text-decoration-style: solid;
}

[b-vubhj961aw] .iq-entity-code-link {
    color: #0d9488;
    text-decoration: none;
    font-weight: 500;
}

[b-vubhj961aw] .iq-entity-code-link:hover {
    text-decoration: underline;
}

/* ─── Inline buttons in assistant content (I6) ───────────────── */

/* Download button — emitted by ConvertReportIds for report download links. */
[b-vubhj961aw] .iq-download-btn {
    display: inline-block;
    background: #198754;
    color: #fff;
    padding: 8px 16px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 500;
    margin: 4px 0;
    border: none;
    cursor: pointer;
}

/* Open-report button — emitted by ConvertOpenReportMarkers for [OPEN_REPORT:]. */
[b-vubhj961aw] .iq-open-report-btn {
    display: inline-block;
    background: #11C683;
    color: #fff;
    padding: 8px 16px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 500;
    margin: 4px 0;
    border: none;
    cursor: pointer;
}

/* ─── AML status colorisation (I6) ───────────────────────────── */

[b-vubhj961aw] .iq-aml-status-amber {
    color: #ffc107;
    font-weight: bold;
}

[b-vubhj961aw] .iq-aml-status-green {
    color: #28a745;
}

[b-vubhj961aw] .iq-aml-status-red {
    color: #dc3545;
}
/* /Components/CustomComponents/IQ/IqPanel.razor.rz.scp.css */
/* ─── Overlay ────────────────────────────────────────────────── */

.iq-panel-overlay[b-kdjnre56jp] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.15);
    z-index: 1049;
}

/* ─── Panel ──────────────────────────────────────────────────── */

/* Translucent surround per IQ panel transparency standard
   (docs/standards/IQ-PANEL-TRANSPARENCY.md). Bubbles, header, chip pills
   stay opaque; only the panel surface, chip strip and input strip are
   translucent. NO backdrop-filter — blur softens behind-text and
   defeats the legibility-of-behind-content goal. */
.iq-panel[b-kdjnre56jp] {
    position: fixed;
    top: 0;
    right: -440px;
    width: 420px;
    max-width: 90vw;
    height: 100vh;
    display: flex;
    flex-direction: column;
    background: rgba(255, 255, 255, 0.40);
    box-shadow: -4px 0 20px rgba(0, 0, 0, 0.15);
    z-index: 1050;
    transition: right 0.25s ease;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

.iq-panel-open[b-kdjnre56jp] {
    right: 0;
}

/* Full-screen mode — expands to fill available width */
.iq-panel-full[b-kdjnre56jp] {
    width: 100%;
    max-width: 100vw;
}

.iq-panel-full .iq-msg-content[b-kdjnre56jp]  table {
    font-size: 13px;
}

/* ─── Header ─────────────────────────────────────────────────── */

.iq-panel-header[b-kdjnre56jp] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
    background: linear-gradient(135deg, #0d9488, #0f766e);
    color: #fff;
    flex-shrink: 0;
}

.iq-panel-header-left[b-kdjnre56jp] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.iq-panel-logo[b-kdjnre56jp] {
    font-weight: 700;
    font-size: 16px;
    letter-spacing: 1px;
}

.iq-panel-badge[b-kdjnre56jp] {
    background: rgba(255, 255, 255, 0.2);
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.iq-panel-header-right[b-kdjnre56jp] {
    display: flex;
    gap: 4px;
}

.iq-panel-btn[b-kdjnre56jp] {
    background: transparent;
    border: none;
    color: rgba(255, 255, 255, 0.7);
    cursor: pointer;
    width: 30px;
    height: 30px;
    border-radius: 6px;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s ease;
}

.iq-panel-btn:hover[b-kdjnre56jp] {
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
}

/* ─── Context banner ─────────────────────────────────────────── */

.iq-panel-banner[b-kdjnre56jp] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 14px;
    background: #fef9c3;
    border-bottom: 1px solid #fde68a;
    font-size: 12px;
    color: #92400e;
    flex-shrink: 0;
}

.iq-panel-banner-btn[b-kdjnre56jp] {
    background: #f59e0b;
    color: #fff;
    border: none;
    border-radius: 4px;
    padding: 2px 8px;
    font-size: 11px;
    cursor: pointer;
    font-weight: 600;
    white-space: nowrap;
}

.iq-panel-banner-dismiss[b-kdjnre56jp] {
    background: none;
    border: none;
    cursor: pointer;
    color: #92400e;
    font-size: 14px;
    margin-left: auto;
    padding: 0 2px;
}

/* ─── Messages area ──────────────────────────────────────────── */

.iq-panel-messages[b-kdjnre56jp] {
    flex: 1;
    overflow-y: auto;
    padding: 14px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    background: rgba(255, 255, 255, 0.75);
}

/* ─── Welcome state ──────────────────────────────────────────── */

.iq-panel-welcome[b-kdjnre56jp] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex: 1;
    gap: 16px;
    padding: 20px;
    text-align: center;
}

.iq-panel-welcome-title[b-kdjnre56jp] {
    font-size: 18px;
    font-weight: 600;
    color: #0f766e;
}

.iq-panel-suggestions[b-kdjnre56jp] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

.iq-panel-suggestion[b-kdjnre56jp] {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 10px 14px;
    text-align: left;
    cursor: pointer;
    font-size: 13px;
    color: #334155;
    transition: all 0.15s ease;
    line-height: 1.4;
}

.iq-panel-suggestion:hover[b-kdjnre56jp] {
    border-color: #0d9488;
    background: #f0fdfa;
    color: #0f766e;
}

/* Inline suggestion strip — persists below messages until first user message.
   Background per IQ panel transparency standard — translucent so behind-screen
   stays visible; chip pills (.iq-panel-suggestion) themselves stay opaque. */
.iq-panel-suggestions-inline[b-kdjnre56jp] {
    background: rgba(255, 255, 255, 0.50);
    flex-direction: row;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 8px;
    padding: 4px 0 2px;
}

.iq-panel-suggestions-inline .iq-panel-suggestion[b-kdjnre56jp] {
    padding: 6px 12px;
    border-radius: 16px;
    font-size: 12px;
    background: #fff;
    color: #0f766e;
    border: 1px solid #99f6e4;
    width: auto;
    text-align: center;
    line-height: 1.2;
}

.iq-panel-suggestions-inline .iq-panel-suggestion:hover[b-kdjnre56jp] {
    background: #ccfbf1;
    border-color: #0d9488;
    color: #134e4a;
}

/* Action chips — teal-filled variant for one-touch actions (Route / SkillId).
   Visually distinct from question chips so the user can spot "do something
   now" affordances vs "ask the LLM". Mirrors the POC iq-chip-action style. */
.iq-panel-suggestions-inline .iq-panel-suggestion-action[b-kdjnre56jp] {
    background: #ccfbf1;
    border-color: #0d9488;
    color: #0f766e;
    font-weight: 600;
}

.iq-panel-suggestions-inline .iq-panel-suggestion-action:hover[b-kdjnre56jp] {
    background: #0d9488;
    border-color: #0d9488;
    color: #fff;
}

/* ─── Thinking animation ─────────────────────────────────────── */

/* Thinking bubble is rendered by IqPanel, not IqMessageRenderer,
   so we need the base message styles here (can't rely on IqMessageRenderer's scoped CSS) */
.iq-msg-thinking[b-kdjnre56jp] {
    padding: 10px 14px;
    margin-bottom: 8px;
    border-radius: 10px;
    max-width: 80px;
    font-size: 14px;
    margin-right: auto;
    background: #fff;
    color: #1e293b;
    border: 1px solid #e2e8f0;
    border-bottom-left-radius: 3px;
}

.iq-msg-thinking-label[b-kdjnre56jp] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    opacity: 0.7;
    margin-bottom: 4px;
}

.iq-thinking-dots[b-kdjnre56jp] {
    display: flex;
    gap: 4px;
    padding: 4px 0;
}

.iq-thinking-dots span[b-kdjnre56jp] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #94a3b8;
    animation: iq-bounce-b-kdjnre56jp 1.4s infinite ease-in-out both;
}

.iq-thinking-dots span:nth-child(1)[b-kdjnre56jp] { animation-delay: -0.32s; }
.iq-thinking-dots span:nth-child(2)[b-kdjnre56jp] { animation-delay: -0.16s; }

@keyframes iq-bounce-b-kdjnre56jp {
    0%, 80%, 100% { transform: scale(0.6); opacity: 0.4; }
    40% { transform: scale(1); opacity: 1; }
}

/* ─── Error display ──────────────────────────────────────────── */

.iq-panel-error[b-kdjnre56jp] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    background: #fef2f2;
    border: 1px solid #fecaca;
    border-radius: 8px;
    color: #dc2626;
    font-size: 12px;
    margin-top: 4px;
}

.iq-panel-error-retry[b-kdjnre56jp] {
    background: #dc2626;
    color: #fff;
    border: none;
    border-radius: 4px;
    padding: 2px 10px;
    font-size: 11px;
    cursor: pointer;
    font-weight: 600;
    white-space: nowrap;
    margin-left: auto;
}

/* ─── Entity action bar ──────────────────────────────────────── */

.iq-entity-bar[b-kdjnre56jp] {
    position: relative;
    border-top: 1px solid #e2e8f0;
    flex-shrink: 0;
}

.iq-entity-bar-toggle[b-kdjnre56jp] {
    display: flex;
    align-items: center;
    gap: 6px;
    width: 100%;
    padding: 8px 14px;
    background: #fff;
    border: none;
    cursor: pointer;
    font-size: 13px;
    color: #334155;
    transition: background 0.15s ease;
}

.iq-entity-bar-toggle:hover[b-kdjnre56jp] {
    background: #f0fdfa;
}

.iq-entity-bar-name[b-kdjnre56jp] {
    font-weight: 600;
    flex: 1;
    text-align: left;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.iq-entity-bar-arrow[b-kdjnre56jp] {
    transition: transform 0.2s ease;
    font-size: 11px;
}

.iq-entity-bar-arrow.open[b-kdjnre56jp] {
    transform: rotate(180deg);
}

.iq-entity-bar-actions[b-kdjnre56jp] {
    position: absolute;
    bottom: 100%;
    left: 0;
    right: 0;
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 8px 8px 0 0;
    box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.08);
    padding: 6px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4px;
    animation: iq-slide-up-b-kdjnre56jp 0.15s ease;
}

@keyframes iq-slide-up-b-kdjnre56jp {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

.iq-entity-action-btn[b-kdjnre56jp] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 10px;
    background: transparent;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: 12px;
    color: #334155;
    transition: background 0.15s ease;
    white-space: nowrap;
}

.iq-entity-action-btn:hover[b-kdjnre56jp] {
    background: #f0fdfa;
    color: #0f766e;
}

/* ─── Input area ─────────────────────────────────────────────── */

.iq-panel-input[b-kdjnre56jp] {
    display: flex;
    align-items: flex-end;
    gap: 8px;
    padding: 10px 14px;
    border-top: 1px solid #e2e8f0;
    background: rgba(255, 255, 255, 0.65);
    flex-shrink: 0;
}

.iq-panel-input textarea[b-kdjnre56jp] {
    flex: 1;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 8px 12px;
    font-size: 14px;
    font-family: inherit;
    resize: none;
    min-height: 38px;
    max-height: 120px;
    outline: none;
    transition: border-color 0.15s ease;
    line-height: 1.4;
}

.iq-panel-input textarea:focus[b-kdjnre56jp] {
    border-color: #0d9488;
}

.iq-panel-input textarea:disabled[b-kdjnre56jp] {
    background: #f8fafc;
    color: #94a3b8;
}

.iq-panel-send[b-kdjnre56jp],
.iq-panel-cancel[b-kdjnre56jp] {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    transition: all 0.15s ease;
    flex-shrink: 0;
}

.iq-panel-send[b-kdjnre56jp] {
    background: linear-gradient(135deg, #0d9488, #0f766e);
    color: #fff;
}

.iq-panel-send:hover:not(:disabled)[b-kdjnre56jp] {
    transform: scale(1.05);
}

.iq-panel-send:disabled[b-kdjnre56jp] {
    background: #cbd5e1;
    cursor: not-allowed;
}

.iq-panel-cancel[b-kdjnre56jp] {
    background: #ef4444;
    color: #fff;
}

.iq-panel-cancel:hover[b-kdjnre56jp] {
    background: #dc2626;
}

/* ─── Entity confirm popup ───────────────────────────────────── */

.iq-entity-confirm[b-kdjnre56jp] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1060;
}

.iq-entity-confirm-box[b-kdjnre56jp] {
    background: #fff;
    border-radius: 12px;
    padding: 20px;
    min-width: 280px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
    animation: iq-scale-in-b-kdjnre56jp 0.15s ease;
}

@keyframes iq-scale-in-b-kdjnre56jp {
    from { opacity: 0; transform: scale(0.95); }
    to { opacity: 1; transform: scale(1); }
}

.iq-entity-confirm-title[b-kdjnre56jp] {
    font-size: 16px;
    font-weight: 600;
    color: #0f172a;
    margin-bottom: 8px;
}

.iq-entity-confirm-body[b-kdjnre56jp] {
    font-size: 14px;
    color: #475569;
    margin-bottom: 16px;
}

.iq-entity-confirm-actions[b-kdjnre56jp] {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
}

.iq-entity-confirm-cancel[b-kdjnre56jp],
.iq-entity-confirm-go[b-kdjnre56jp] {
    padding: 6px 16px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    font-size: 13px;
    font-weight: 500;
}

.iq-entity-confirm-cancel[b-kdjnre56jp] {
    background: #f1f5f9;
    color: #475569;
}

.iq-entity-confirm-go[b-kdjnre56jp] {
    background: #0d9488;
    color: #fff;
}

.iq-entity-confirm-go:hover[b-kdjnre56jp] {
    background: #0f766e;
}

/* ═══════════════════════════════════════════════════════════════
   echelon theme overrides
   All rules scoped under .iq-panel-echelon — WealthSphere
   styles above are untouched.
   ═══════════════════════════════════════════════════════════════ */

/* Echelon variant of the translucent surround — navy alpha so the navy-themed
   panel stays in-theme rather than showing pale-grey through the surround. */
.iq-panel-echelon[b-kdjnre56jp] {
    background: rgba(15, 23, 42, 0.40);
    width: 400px;
    right: -440px;
    border-left: 1px solid rgba(200, 200, 210, 0.4);
    box-shadow: -4px 0 30px rgba(0, 0, 0, 0.15);
}

.iq-panel-echelon .iq-panel-suggestions-inline[b-kdjnre56jp] {
    background: rgba(15, 23, 42, 0.50);
}

.iq-panel-echelon .iq-panel-input[b-kdjnre56jp] {
    background: rgba(15, 23, 42, 0.65);
}

.iq-panel-echelon.iq-panel-open[b-kdjnre56jp] {
    right: 0;
}

/* Header — dark navy instead of teal */
.iq-panel-echelon .iq-panel-header[b-kdjnre56jp] {
    background: linear-gradient(135deg, #1a1a2e, #16213e);
}

.iq-panel-echelon .iq-panel-logo[b-kdjnre56jp] {
    font-size: 15px;
    letter-spacing: 0.3px;
}

.iq-panel-echelon .iq-panel-badge[b-kdjnre56jp] {
    background: rgba(17, 198, 131, 0.25);
}

/* Welcome — slightly different accent */
.iq-panel-echelon .iq-panel-welcome-title[b-kdjnre56jp] {
    color: #1a1a2e;
}

/* Suggestions — horizontal chips instead of vertical buttons */
.iq-panel-echelon .iq-panel-suggestions[b-kdjnre56jp] {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 6px;
}

.iq-panel-echelon .iq-panel-suggestion[b-kdjnre56jp] {
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 12px;
    border: 1.5px solid #e5e7eb;
    background: rgba(255, 255, 255, 0.7);
    color: #6b7280;
    text-align: center;
}

.iq-panel-echelon .iq-panel-suggestion:hover[b-kdjnre56jp] {
    border-color: #11C683;
    background: rgba(17, 198, 131, 0.08);
    color: #11C683;
}

/* Action chips — Echelon variant uses the brand-green accent. */
.iq-panel-echelon .iq-panel-suggestion-action[b-kdjnre56jp] {
    background: rgba(17, 198, 131, 0.15);
    border-color: #11C683;
    color: #11C683;
    font-weight: 600;
}

.iq-panel-echelon .iq-panel-suggestion-action:hover[b-kdjnre56jp] {
    background: #11C683;
    border-color: #11C683;
    color: #fff;
}

/* Messages — user bubbles: purple-to-blue gradient */
.iq-panel-echelon[b-kdjnre56jp]  .iq-msg-user {
    background: linear-gradient(135deg, #7c3aed, #3b82f6);
}

/* Messages — assistant bubbles: light grey, no border */
.iq-panel-echelon[b-kdjnre56jp]  .iq-msg-assistant {
    background: #f3f4f6;
    border: none;
    color: #1a1a2e;
}

/* Thinking indicator */
.iq-panel-echelon .iq-msg-thinking[b-kdjnre56jp] {
    background: #f3f4f6;
    border: none;
}

/* Entity links — echelon accent green */
.iq-panel-echelon[b-kdjnre56jp]  .iq-entity-link {
    color: #11C683;
}

.iq-panel-echelon[b-kdjnre56jp]  .iq-entity-link:hover {
    color: #0eaa6f;
}

.iq-panel-echelon[b-kdjnre56jp]  .iq-entity-code-link {
    color: #11C683;
}

/* Table hover — echelon accent */
.iq-panel-echelon[b-kdjnre56jp]  .iq-msg-content tr:hover td {
    background: rgba(17, 198, 131, 0.08);
}

/* Input — pill-shaped */
.iq-panel-echelon .iq-panel-input textarea[b-kdjnre56jp] {
    border-radius: 20px;
    padding: 8px 16px;
    background: rgba(255, 255, 255, 0.8);
    font-size: 13px;
}

.iq-panel-echelon .iq-panel-input textarea:focus[b-kdjnre56jp] {
    border-color: #7c3aed;
}

/* Send button — purple-to-blue gradient */
.iq-panel-echelon .iq-panel-send[b-kdjnre56jp] {
    background: linear-gradient(135deg, #7c3aed, #3b82f6);
}

/* Cancel button stays red — no change needed */

/* Entity bar — subtle tweak */
.iq-panel-echelon .iq-entity-action-btn:hover[b-kdjnre56jp] {
    background: rgba(17, 198, 131, 0.08);
    color: #11C683;
}

/* Entity confirm popup — echelon accent */
.iq-panel-echelon .iq-entity-confirm-go[b-kdjnre56jp] {
    background: #11C683;
}

.iq-panel-echelon .iq-entity-confirm-go:hover[b-kdjnre56jp] {
    background: #0eaa6f;
}

/* Context banner — keep as-is (yellow is fine for both themes) */

/* Error display — keep as-is (red is fine for both themes) */
/* /Components/CustomComponents/MessageBox.razor.rz.scp.css */
.msg-text[b-1nl5jq275e] {
  white-space: pre-wrap;
  font-size: 9pt;
}
/* /Components/CustomComponents/MyDevExpress/MyDxGrid.razor.rz.scp.css */
/* ============================================================
   MyDxGrid — visual theme
   Palette: teal #3bb0a0, bg #f7f9fc, border #e2e8f0,
            text #1a1d2e / #4a5568 / #94a3b8
   ============================================================ */

/* ===== Flex layout chain ===== */
/* Root container — flex column so toolbar + grid share space naturally.
   DxLoadingPanel wrapper rules are in site.css (global) because the
   loading panel DOM is generated by DevExpress and doesn't carry the
   Blazor CSS-isolation scope attribute. */
.grid-flex-root[b-wn94e4z28a] {
	display: flex;
	flex-direction: column;
	flex: 1;
	min-height: 0;
	height: 100%;
}

/* =====================================================================
   Card styling — split into two independent axes:
     .card-framed      → outer chrome: shadow, border, rounded corners,
                         left accent bar, top gradient, toolbar-as-header-band,
                         uppercase title.
     .card-accent-teal / .card-accent-green → inner styling: row hover/focus,
                         column header tint, sort arrow, summary footer,
                         empty state accent.
   Emitted by MyDxGrid.razor based on CardVariant:
     default/metrics  → card-framed card-accent-teal
     finance          → card-framed card-accent-green
     flat             → card-accent-teal       (no frame — for modals/wizards)
     flat-finance     → card-accent-green      (no frame)
     none             → nothing (plain grid)
   Modals and wizards cascade "flat" so their grids keep the same accent
   feel without double-framing over the modal/wizard's own container.
   ===================================================================== */

/* ========== OUTER FRAME (card-framed only) ========== */

.grid-flex-root.card-framed[b-wn94e4z28a] {
	background: white;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06), 0 4px 12px rgba(0, 0, 0, 0.04);
	overflow: hidden;
	position: relative;
	transition: box-shadow 0.2s ease;
}

.grid-flex-root.card-framed:hover[b-wn94e4z28a] {
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.10);
}

/* Full-height 3px left accent bar (uses --card-accent from accent class) */
.grid-flex-root.card-framed[b-wn94e4z28a]::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 3px;
	background: var(--card-accent);
	z-index: 2;
	pointer-events: none;
}

/* Top fade tint — per accent */
.grid-flex-root.card-framed.card-accent-teal[b-wn94e4z28a] {
	background: linear-gradient(180deg, rgba(59, 176, 160, 0.025), white 44px);
}

.grid-flex-root.card-framed.card-accent-green[b-wn94e4z28a] {
	background: linear-gradient(180deg, rgba(26, 138, 58, 0.025), white 44px);
}

/* Toolbar becomes the card-header band (only when framed) */
.grid-flex-root.card-framed .toolbar-container[b-wn94e4z28a] {
	background: transparent;
	border: none;
	border-bottom: 1px solid #e2e8f0;
	border-radius: 0;
	padding-left: 18px;
	padding-right: 8px;
	min-height: 42px;
}

/* Uppercase title — only framed (section-label treatment belongs to the header band) */
.grid-flex-root.card-framed .toolbar-container[b-wn94e4z28a]  .dxbl-toolbar-item-text,
.grid-flex-root.card-framed .toolbar-container[b-wn94e4z28a]  [class*="toolbar-title"] {
	text-transform: uppercase;
	font-weight: 700;
	font-size: 11px;
	letter-spacing: 0.09em;
	color: #0a3d62;
}

/* ========== ACCENT — TEAL (default, metrics, flat) ========== */

.grid-flex-root.card-accent-teal[b-wn94e4z28a] {
	--card-accent: #3bb0a0;
}

/* Row hover */
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  tr[data-visible-index]:hover > td {
	background: rgba(59, 176, 160, 0.06) !important;
	transition: background 0.13s ease;
}

.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  tr[data-visible-index]:hover > td:first-child {
	box-shadow: inset 2px 0 0 rgba(59, 176, 160, 0.55);
}

/* Focused row */
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-focused-row > td {
	background: rgba(59, 176, 160, 0.12) !important;
	color: #1a1d2e !important;
}

.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-focused-row > td:first-child {
	box-shadow: inset 3px 0 0 #3bb0a0 !important;
}

/* Focus row emphasis text — darker teal so it reads against the tint */
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-focused-row > td strong,
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-focused-row > td a {
	color: #2a9080 !important;
}

/* Selected row */
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-selected-row > td {
	background: rgba(59, 176, 160, 0.12) !important;
	color: #1a1d2e !important;
}

.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-selected-row > td:first-child {
	box-shadow: inset 3px 0 0 #3bb0a0 !important;
}

/* Column header — subtle teal bg */
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-row,
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-row > th,
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-cell,
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  [class*="dxbl-grid-header"] th {
	background: rgba(59, 176, 160, 0.05) !important;
}

/* Sort indicator */
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-sort-indicator {
	color: #3bb0a0 !important;
}

/* Summary footer — teal tint + border, navy text for readability */
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-footer-row > td,
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-footer-cell {
	background: rgba(59, 176, 160, 0.08) !important;
	border-top: 2px solid #3bb0a0 !important;
	border-bottom: none !important;
	padding: 10px 12px !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	color: #0a3d62 !important;
}

/* Empty state */
.grid-flex-root.card-accent-teal .grid-empty-state[b-wn94e4z28a]::before {
	color: rgba(59, 176, 160, 0.35);
}

.grid-flex-root.card-accent-teal .grid-empty-clear-btn[b-wn94e4z28a] {
	color: #3bb0a0;
	border-color: #3bb0a0;
}

.grid-flex-root.card-accent-teal .grid-empty-clear-btn:hover[b-wn94e4z28a] {
	background: rgba(59, 176, 160, 0.08);
	color: #2a9080;
}

/* Scrollbar — no override needed; base scrollbar rule below is already teal. */

/* ========== ACCENT — GREEN (finance, flat-finance) ========== */

.grid-flex-root.card-accent-green[b-wn94e4z28a] {
	--card-accent: #1a8a3a;
}

/* Row hover */
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  tr[data-visible-index]:hover > td {
	background: rgba(26, 138, 58, 0.06) !important;
	transition: background 0.13s ease;
}

.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  tr[data-visible-index]:hover > td:first-child {
	box-shadow: inset 2px 0 0 rgba(26, 138, 58, 0.55);
}

/* Focused row */
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-focused-row > td {
	background: rgba(26, 138, 58, 0.12) !important;
	color: #1a1d2e !important;
}

.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-focused-row > td:first-child {
	box-shadow: inset 3px 0 0 #1a8a3a !important;
}

.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-focused-row > td strong,
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-focused-row > td a {
	color: #1a8a3a !important;
}

/* Selected row */
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-selected-row > td {
	background: rgba(26, 138, 58, 0.12) !important;
	color: #1a1d2e !important;
}

.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-selected-row > td:first-child {
	box-shadow: inset 3px 0 0 #1a8a3a !important;
}

/* Column header — subtle green bg */
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-row,
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-row > th,
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-cell,
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  [class*="dxbl-grid-header"] th {
	background: rgba(26, 138, 58, 0.05) !important;
}

/* Sort indicator */
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-sort-indicator {
	color: #1a8a3a !important;
}

/* Summary footer */
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-footer-row > td,
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-footer-cell {
	background: rgba(26, 138, 58, 0.08) !important;
	border-top: 2px solid #1a8a3a !important;
	border-bottom: none !important;
	padding: 10px 12px !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	color: #0a3d62 !important;
}

/* Empty state */
.grid-flex-root.card-accent-green .grid-empty-state[b-wn94e4z28a]::before {
	color: rgba(26, 138, 58, 0.35);
}

.grid-flex-root.card-accent-green .grid-empty-clear-btn[b-wn94e4z28a] {
	color: #1a8a3a;
	border-color: #1a8a3a;
}

.grid-flex-root.card-accent-green .grid-empty-clear-btn:hover[b-wn94e4z28a] {
	background: rgba(26, 138, 58, 0.08);
	color: #166e2e;
}

/* Loading spinner — green */
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-loading-panel-content::before {
	border-color: rgba(26, 138, 58, 0.20);
	border-top-color: #1a8a3a;
}

/* Scrollbar — green */
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid ::-webkit-scrollbar-thumb {
	background: rgba(26, 138, 58, 0.5);
}

.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid ::-webkit-scrollbar-thumb:hover {
	background: #1a8a3a;
}

.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid,
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid * {
	scrollbar-color: rgba(26, 138, 58, 0.5) transparent;
}

/* ========== SHARED (any accent class) ========== */

/* Column header typography — Title Case bold navy, accent-class agnostic */
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-row > th,
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-row th,
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-cell,
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  [class*="dxbl-grid-header"] th,
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-cell-content,
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-row > th,
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-row th,
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-cell,
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  [class*="dxbl-grid-header"] th,
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-cell-content {
	text-transform: none !important;
	font-weight: 700 !important;
	letter-spacing: 0.01em !important;
	color: #0a3d62 !important;
}

/* Negative values in summary — red regardless of accent */
.grid-flex-root.card-accent-teal .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-footer-row > td .grid-cell-negative,
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-footer-row > td .grid-cell-negative {
	color: #b91c1c !important;
}

/* ===== Toolbar ===== */
.toolbar-container[b-wn94e4z28a] {
	display: flex;
	flex-direction: row;
	align-items: center;
	flex-shrink: 0;
	background: #f7f9fc;
	border: 1px solid #e2e8f0;
	border-bottom: none;
	border-radius: 8px 8px 0 0;
	padding: 4px 8px;
	gap: 2px;
	min-height: 38px;
}

.toolbar-container[b-wn94e4z28a]  .dxbl-toolbar {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	min-height: unset !important;
}

/* Toolbar buttons — subtle, icon-forward */
.toolbar-container[b-wn94e4z28a]  .dxbl-btn {
	color: #4a5568 !important;
	font-size: 12px !important;
	border-radius: 6px !important;
	transition: all 0.15s !important;
	padding: 4px 8px !important;
}

.toolbar-container[b-wn94e4z28a]  .dxbl-btn:hover {
	color: #2a9080 !important;
	background: rgba(59, 176, 160, 0.10) !important;
}

/* Toolbar icon sizing */
.toolbar-container[b-wn94e4z28a]  .dxbl-image,
.toolbar-container[b-wn94e4z28a]  [class*="dx-icon-"] {
	font-size: 15px !important;
	color: inherit !important;
}

/* Toolbar separators — thin and subtle */
.toolbar-container[b-wn94e4z28a]  .dxbl-toolbar-separator,
.toolbar-container[b-wn94e4z28a]  .dxbl-btn-group-separator {
	background: #e2e8f0 !important;
	width: 1px !important;
	margin: 6px 4px !important;
	opacity: 0.6;
}

/* Toolbar dropdown items */
.toolbar-container[b-wn94e4z28a]  .dxbl-dropdown-item,
.toolbar-container[b-wn94e4z28a]  .dxbl-toolbar-dropdown .dxbl-btn {
	font-size: 12px !important;
	color: #4a5568 !important;
	padding: 6px 14px !important;
}

.toolbar-container[b-wn94e4z28a]  .dxbl-dropdown-item:hover,
.toolbar-container[b-wn94e4z28a]  .dxbl-toolbar-dropdown .dxbl-btn:hover {
	background: rgba(59, 176, 160, 0.08) !important;
	color: #2a9080 !important;
}

/* Toolbar search input — soft background to blend with toolbar */
.toolbar-container[b-wn94e4z28a]  .search2 .dxbl-text-edit {
	border: 1px solid #e2e8f0 !important;
	border-radius: 7px !important;
	background: rgba(255, 255, 255, 0.7) !important;
	font-size: 12px !important;
	min-width: 160px;
	transition: all 0.15s !important;
}

.toolbar-container[b-wn94e4z28a]  .search2 .dxbl-text-edit:focus-within {
	border-color: #3bb0a0 !important;
	background: #fff !important;
	box-shadow: 0 0 0 3px rgba(59, 176, 160, 0.12) !important;
}

.toolbar-container[b-wn94e4z28a]  .search2 .dxbl-text-edit::placeholder,
.toolbar-container[b-wn94e4z28a]  .search2 input::placeholder {
	color: #94a3b8 !important;
}

/* Search + clear button icons inside the search box — pick up the teal accent */
.toolbar-container[b-wn94e4z28a]  .search2 .dxbl-text-edit .dx-icon-search,
.toolbar-container[b-wn94e4z28a]  .search2 .dxbl-text-edit .dx-icon-clear {
	color: #3bb0a0 !important;
	opacity: 0.75;
	transition: opacity 0.15s;
}

.toolbar-container[b-wn94e4z28a]  .search2 .dxbl-text-edit:focus-within .dx-icon-search,
.toolbar-container[b-wn94e4z28a]  .search2 .dxbl-text-edit .dxbl-btn:hover .dx-icon-search,
.toolbar-container[b-wn94e4z28a]  .search2 .dxbl-text-edit .dxbl-btn:hover .dx-icon-clear {
	opacity: 1;
}

/* Active layout name badge — teal pill next to layouts icon */
.layout-name-badge[b-wn94e4z28a] {
	display: inline-flex;
	align-items: center;
	font-size: 10px;
	font-weight: 600;
	color: #2a9080;
	background: rgba(59, 176, 160, 0.12);
	padding: 2px 8px;
	border-radius: 8px;
	margin-left: 4px;
	white-space: nowrap;
	max-width: 120px;
	overflow: hidden;
	text-overflow: ellipsis;
	line-height: 1.3;
}

/* Row count badge — pill style, vertically centred in toolbar */
.grid-row-count[b-wn94e4z28a] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 10px;
	font-weight: 600;
	color: #4a5568;
	background: rgba(59, 176, 160, 0.10);
	padding: 4px 10px;
	border-radius: 10px;
	white-space: nowrap;
	letter-spacing: 0.02em;
	line-height: 1;
}

/* The DxToolbarItem template wrapper needs to align its content to the toolbar centre */
.toolbar-container[b-wn94e4z28a]  .dxbl-toolbar-item:has(.grid-row-count) {
	display: flex !important;
	align-items: center !important;
}

.toolbar-container[b-wn94e4z28a]  .dxbl-toolbar-template:has(.grid-row-count),
.toolbar-container[b-wn94e4z28a]  .dxbl-toolbar-item-template:has(.grid-row-count) {
	display: flex !important;
	align-items: center !important;
}

/* Layouts button template — align with standard icon buttons */
.toolbar-container[b-wn94e4z28a]  .dxbl-toolbar-item:has(.dx-icon-detailslayout) {
	display: flex !important;
	align-items: center !important;
}

.toolbar-container[b-wn94e4z28a]  .dxbl-toolbar-template:has(.dx-icon-detailslayout),
.toolbar-container[b-wn94e4z28a]  .dxbl-toolbar-item-template:has(.dx-icon-detailslayout) {
	display: flex !important;
	align-items: center !important;
}

/* ===== Empty state ===== */
.grid-empty-state[b-wn94e4z28a] {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 48px 20px;
	gap: 8px;
}

.grid-empty-state[b-wn94e4z28a]::before {
	content: "\2205"; /* ∅ empty-set — reads as "nothing here" for both filter-empty and no-data states */
	font-size: 40px;
	font-weight: 200;
	line-height: 1;
	color: #cbd5e0;
}

.grid-empty-message[b-wn94e4z28a] {
	font-size: 13px;
	color: #94a3b8;
	font-weight: 500;
}

.grid-empty-clear-btn[b-wn94e4z28a] {
	margin-top: 8px;
	font-size: 12px;
	font-weight: 500;
	color: #3bb0a0;
	background: transparent;
	border: 1px solid #3bb0a0;
	border-radius: 6px;
	padding: 5px 16px;
	cursor: pointer;
	transition: all 0.15s;
}

.grid-empty-clear-btn:hover[b-wn94e4z28a] {
	background: rgba(59, 176, 160, 0.08);
	color: #2a9080;
}

/* ===== Grid height ===== */
.grid-height-wrapper[b-wn94e4z28a] {
	flex: 1;
	min-height: 0;
}

.grid-height-wrapper[b-wn94e4z28a]  .my-grid {
	height: 100% !important;
}

/* ===== Grid border & rounding ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid {
	border: 1px solid #e2e8f0 !important;
	border-radius: 0 0 8px 8px !important;
	overflow: hidden;
	background: #fff !important;
}

/* When toolbar is hidden, round all corners */
:not(.toolbar-container) + .grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid {
	border-radius: 8px !important;
}

/* ===== Table — collapse borders, horizontal-only lines ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid table,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-table {
	border-collapse: collapse !important;
	border-spacing: 0 !important;
}

/* Kill all cell borders, add back only the horizontals we want */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid th,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid td {
	border-left: none !important;
	border-right: none !important;
	border-top: none !important;
}

/* ===== Header row ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-row {
	background: #f7f9fc !important;
}

.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-row > th,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-row th,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-cell,
.grid-height-wrapper[b-wn94e4z28a]  [class*="dxbl-grid-header"] th {
	background: #f7f9fc !important;
	border-bottom: 2px solid #e2e8f0 !important;
	padding: 9px 8px !important;  /* tighter horizontal padding recovers ~8px per column on wide grids */
	font-size: 11px !important;
	font-weight: 600 !important;
	color: #4a5568 !important;
	white-space: normal;  /* allow wrap so narrow columns don't crowd neighbours */
	letter-spacing: 0.01em;
	text-transform: none;
}

.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-cell-content {
	font-size: 11px !important;
	font-weight: 600 !important;
	color: #4a5568 !important;
}

/* Filtered column header highlight */
.grid-height-wrapper[b-wn94e4z28a]  .grid-header-filtered {
	background: rgba(59, 176, 160, 0.10) !important;
	border-bottom-color: #3bb0a0 !important;
}

.grid-height-wrapper[b-wn94e4z28a]  .grid-header-filtered .dxbl-grid-header-cell-content {
	color: #2a9080 !important;
}

/* Filtered column — accent-aware override for card-accent-green grids so the
   teal highlight doesn't clash with the green card accent. */
.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .grid-header-filtered {
	background: rgba(26, 138, 58, 0.10) !important;
	border-bottom-color: #1a8a3a !important;
}

.grid-flex-root.card-accent-green .grid-height-wrapper[b-wn94e4z28a]  .grid-header-filtered .dxbl-grid-header-cell-content {
	color: #166e2e !important;
}

/* Sort indicator — teal, gentle opacity */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-sort-indicator {
	color: #3bb0a0 !important;
	opacity: 0.7;
	font-size: 10px !important;
}

/* Filter-menu icon in header — match header colour, not accent */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-filter-menu-button,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-cell .dxbl-btn {
	color: #94a3b8 !important;
	opacity: 0.7;
	transition: opacity 0.15s !important;
}

.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-filter-menu-button:hover,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-header-cell .dxbl-btn:hover {
	color: #3bb0a0 !important;
	opacity: 1;
}

/* Column resize handle — subtle */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-column-resize-handle {
	background: #e2e8f0 !important;
	width: 1px !important;
}

/* ===== Data rows =====
   This DevExpress build renders data rows WITHOUT the .dxbl-grid-data-row
   class — they're plain <tr data-visible-index="N" role="row">. Match on
   the data attribute so selectors actually fire. Spacer / empty / footer
   rows don't carry data-visible-index, so they're correctly excluded. */
.grid-height-wrapper[b-wn94e4z28a]  tr[data-visible-index] {
	transition: background 0.13s !important;
}

.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-data-row > td,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-data-row td,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-cell {
	padding: 9px 12px !important;
	font-size: 12px !important;
	color: #1a1d2e !important;
	vertical-align: middle !important;
	background: #fff;
}

/* Last data row — no bottom border */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-data-row:last-child > td,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-data-row:last-of-type > td,
.grid-height-wrapper[b-wn94e4z28a]  tbody tr:last-child > td {
	border-bottom: none !important;
}

/* Hover */
.grid-height-wrapper[b-wn94e4z28a]  tr[data-visible-index]:hover > td {
	background: rgba(59, 176, 160, 0.08) !important;
}

/* Alternating row stripe — disabled for clean look */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-data-row:nth-child(even) > td {
	background: #fff;
}

/* ===== Focused row ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-focused-row > td {
	background: rgba(59, 176, 160, 0.14) !important;
	color: #1a1d2e !important;
}

/* Left accent on first cell */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-focused-row > td:first-child {
	box-shadow: inset 3px 0 0 #3bb0a0;
}

/* Emphasise primary text in the focused row */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-focused-row > td strong,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-focused-row > td a {
	color: #2a9080 !important;
}

/* ===== Selected rows (multi-select) ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-selected-row > td {
	background: rgba(59, 176, 160, 0.14) !important;
	color: #1a1d2e !important;
}

.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-selected-row > td:first-child {
	box-shadow: inset 3px 0 0 #3bb0a0;
}

/* ===== Group row ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-group-row > td {
	background: #f7f9fc !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	color: #4a5568 !important;
	border-bottom: 1px solid #e2e8f0 !important;
	padding: 8px 12px !important;
}

/* Group expand/collapse icon */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-group-row .dxbl-image,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-group-row [class*="dx-icon-"] {
	color: #3bb0a0 !important;
	font-size: 12px !important;
}

/* ===== Group panel ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-group-panel {
	background: #f7f9fc !important;
	border-bottom: 1px solid #e2e8f0 !important;
	padding: 6px 12px !important;
	font-size: 11px !important;
	color: #94a3b8 !important;
}

/* Group panel tags (dragged column chips) */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-group-panel .dxbl-btn,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-group-panel-item {
	background: rgba(59, 176, 160, 0.08) !important;
	color: #4a5568 !important;
	border: 1px solid rgba(59, 176, 160, 0.25) !important;
	border-radius: 6px !important;
	font-size: 11px !important;
	padding: 2px 8px !important;
}

/* ===== Summary / footer row ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-footer-row > td,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-footer-cell {
	background: #f7f9fc !important;
	border-top: 2px solid #e2e8f0 !important;
	border-bottom: none !important;
	padding: 9px 12px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	color: #1a1d2e !important;
}

/* ===== Pager ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-pager {
	background: #f7f9fc !important;
	border-top: 1px solid #e2e8f0 !important;
	padding: 6px 12px !important;
	font-size: 12px !important;
}

.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-pager .dxbl-btn {
	font-size: 12px !important;
	color: #4a5568 !important;
	border-radius: 6px !important;
	min-width: 28px;
	min-height: 28px;
}

.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-pager .dxbl-btn:hover {
	color: #2a9080 !important;
	background: rgba(59, 176, 160, 0.10) !important;
}

/* Active page button */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-pager .dxbl-btn.dxbl-active,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-pager .dxbl-btn[aria-current] {
	background: #3bb0a0 !important;
	color: #fff !important;
	border-radius: 6px !important;
}

/* Page size selector */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-pager select,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-pager .dxbl-text-edit {
	border: 1.5px solid #e2e8f0 !important;
	border-radius: 7px !important;
	font-size: 12px !important;
	background: #fff !important;
	color: #4a5568 !important;
}

/* ===== Filter row ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-filter-row > td {
	background: #fff !important;
	border-bottom: 1px solid #e2e8f0 !important;
	padding: 4px 8px !important;
}

.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-filter-row .dxbl-text-edit {
	font-size: 12px !important;
	border: 1.5px solid #e2e8f0 !important;
	border-radius: 7px !important;
	background: #f7f9fc !important;
	transition: border-color 0.15s !important;
}

.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-filter-row .dxbl-text-edit:focus-within {
	border-color: #3bb0a0 !important;
	background: #fff !important;
	box-shadow: 0 0 0 3px rgba(59, 176, 160, 0.12) !important;
}

/* ===== Column chooser popup ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-column-chooser {
	border: 1px solid #edf0f4 !important;
	border-radius: 10px !important;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.10) !important;
	background: #f8f9fb !important;
}

/* Context menu styling moved to site-theme-fluent.css (portaled to body, outside component scope) */

/* ===== Search box (DxGrid built-in) ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-search-box .dxbl-text-edit {
	border: 1.5px solid #e2e8f0 !important;
	border-radius: 7px !important;
	font-size: 12px !important;
	background: #fff !important;
}

.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-search-box .dxbl-text-edit:focus-within {
	border-color: #3bb0a0 !important;
	box-shadow: 0 0 0 3px rgba(59, 176, 160, 0.12) !important;
}

/* ===== Editable cell hint — subtle background so users know which cells accept input ===== */
.grid-height-wrapper[b-wn94e4z28a]  .grid-cell-editable {
	background: rgba(59, 176, 160, 0.03) !important;
	border-left: 1px dashed rgba(59, 176, 160, 0.20) !important;
}

/* ===== Mandatory column header indicator — teal asterisk after caption ===== */
.grid-height-wrapper[b-wn94e4z28a]  .grid-header-mandatory .dxbl-grid-header-cell-content::after {
	content: " *";
	color: #d32f2f;
	font-weight: 700;
}

/* ===== Active edit row highlight ===== */
.grid-height-wrapper[b-wn94e4z28a]  .grid-row-editing {
	background: rgba(59, 176, 160, 0.06) !important;
}

/* ===== Edit cells ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-edit-cell .dxbl-text-edit,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-edit-cell .dxbl-combobox,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-edit-cell .dxbl-date-edit {
	border: 1.5px solid #e2e8f0 !important;
	border-radius: 7px !important;
	font-size: 12px !important;
	background: #f7f9fc !important;
	transition: border-color 0.15s !important;
}

.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-edit-cell .dxbl-text-edit:focus-within,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-edit-cell .dxbl-combobox:focus-within,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-edit-cell .dxbl-date-edit:focus-within {
	border-color: #3bb0a0 !important;
	background: #fff !important;
	box-shadow: 0 0 0 3px rgba(59, 176, 160, 0.12) !important;
}

/* ===== Loading panel overlay =====
   Adds a CSS-only rotating teal ring above the loading text. The component has
   IndicatorAreaVisible="false" so DevExpress's built-in spinner isn't rendered;
   the ::before below fills that gap without touching component markup. */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-loading-panel,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-loading-panel-content {
	border-radius: 8px !important;
}

/* Softer background shading — white with slight opacity instead of DX default grey */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-loading-panel {
	background: rgba(255, 255, 255, 0.75) !important;
	backdrop-filter: blur(2px);
}

/* Centred panel — a small rounded card rather than a full-height overlay band.
   min-width uses min(...) so the panel stays ≤90% of the container on narrow
   splitter panes — avoids horizontal overflow when the grid is < 160px wide. */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-loading-panel-content {
	background: #ffffff !important;
	border: 1px solid #e2e8f0 !important;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.10) !important;
	padding: 20px 28px !important;
	min-width: min(160px, 90%);
	text-align: center;
	color: #4a5568 !important;
	font-size: 13px !important;
	font-weight: 500 !important;
}

/* Teal spinner — default for every grid. Green variant overrides below. */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-loading-panel-content::before {
	content: "";
	display: block;
	width: 32px;
	height: 32px;
	margin: 0 auto 12px;
	border: 3px solid rgba(59, 176, 160, 0.20);
	border-top-color: #3bb0a0;
	border-radius: 50%;
	animation: mydxgrid-spinner-b-wn94e4z28a 0.8s linear infinite;
}

/* Scoped-CSS note: Blazor doesn't rewrite @keyframes names, so they're global.
   The mydxgrid- prefix avoids collisions with other components' animations. */
@keyframes mydxgrid-spinner-b-wn94e4z28a {
	to {
		transform: rotate(360deg);
	}
}

/* Respect users who prefer reduced motion — slow the spin instead of stopping
   completely so the loading state is still visually distinguishable. */
@media (prefers-reduced-motion: reduce) {
	.grid-height-wrapper[b-wn94e4z28a]  .dxbl-loading-panel-content::before {
		animation-duration: 3s;
	}
}

/* ===== Scrollbar — thin, subtle, teal to match app scheme. =====
   Base applies to every grid (plain, card-none, or unstyled). Green finance
   grids override to green in the card-accent-green block above. */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid ::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}

.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid ::-webkit-scrollbar-track {
	background: transparent;
}

.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid ::-webkit-scrollbar-thumb {
	background: rgba(59, 176, 160, 0.5);
	border-radius: 4px;
}

.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid ::-webkit-scrollbar-thumb:hover {
	background: #3bb0a0;
}

/* Corner where horizontal + vertical scrollbars meet — transparent, not the
   default grey block browsers render. */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid ::-webkit-scrollbar-corner {
	background: transparent;
}

/* Firefox — scrollbar-width/color only apply in Firefox; Chromium ignores. */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid,
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid * {
	scrollbar-width: thin;
	scrollbar-color: rgba(59, 176, 160, 0.5) transparent;
}

/* ===== Drag handle (AllowDragRows) ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-drag-handle {
	color: #94a3b8 !important;
	cursor: grab !important;
}

.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-drag-handle:hover {
	color: #3bb0a0 !important;
}

/* ===== Selection column checkbox ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-selection-cell {
	padding: 9px 8px !important;
}

/* ===== Popup edit form ===== */
.grid-height-wrapper[b-wn94e4z28a]  .dxbl-grid-edit-form-popup {
	border-radius: 10px !important;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12) !important;
	border: 1px solid #e2e8f0 !important;
}

/* ===== Negative amounts — red text ===== */
.grid-height-wrapper[b-wn94e4z28a]  .grid-cell-negative {
	color: #d32f2f !important;
}

/* ===== Overdue dates — red text ===== */
.grid-height-wrapper[b-wn94e4z28a]  .grid-cell-overdue {
	color: #d32f2f !important;
	font-weight: 600;
}

/* ===== Status/priority badges ===== */
.grid-height-wrapper[b-wn94e4z28a]  .grid-badge {
	display: inline-block;
	font-size: 11px;
	font-weight: 600;
	padding: 2px 10px;
	border-radius: 10px;
	line-height: 1.4;
	white-space: nowrap;
}

.grid-height-wrapper[b-wn94e4z28a]  .grid-badge-danger {
	background: rgba(211, 47, 47, 0.10);
	color: #d32f2f;
}

.grid-height-wrapper[b-wn94e4z28a]  .grid-badge-warning {
	background: rgba(237, 167, 44, 0.12);
	color: #b27a1a;
}

.grid-height-wrapper[b-wn94e4z28a]  .grid-badge-success {
	background: rgba(59, 176, 160, 0.12);
	color: #2a9080;
}

/* ===== Boolean icons (read-only checkboxes) ===== */
.grid-height-wrapper[b-wn94e4z28a]  .grid-bool-icon {
	font-size: 14px;
	font-weight: 700;
	display: inline-block;
	text-align: center;
	width: 20px;
}

.grid-height-wrapper[b-wn94e4z28a]  .grid-bool-true {
	color: #3bb0a0;
}

.grid-height-wrapper[b-wn94e4z28a]  .grid-bool-false {
	color: #d0d5dd;
	font-weight: 400;
}
/* /Components/CustomComponents/MyDevExpress/MyDxTreeList.razor.rz.scp.css */
/* ============================================================
   MyDxTreeList — visual theme (ported from MyDxGrid)
   Palette: teal #3bb0a0, bg #f7f9fc, border #e2e8f0,
            text #1a1d2e / #4a5568 / #94a3b8
   ============================================================ */

/* ===== Toolbar ===== */
.toolbar-container[b-f7x082tcii] {
	display: flex;
	flex-direction: row;
	align-items: center;
	background: #f7f9fc;
	border: 1px solid #e2e8f0;
	border-bottom: none;
	border-radius: 8px 8px 0 0;
	padding: 4px 8px;
	gap: 2px;
	min-height: 38px;
}

.toolbar-container[b-f7x082tcii]  .dxbl-toolbar {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	min-height: unset !important;
}

.toolbar-container[b-f7x082tcii]  .dxbl-btn {
	color: #4a5568 !important;
	font-size: 12px !important;
	border-radius: 6px !important;
	transition: all 0.15s !important;
	padding: 4px 8px !important;
}

.toolbar-container[b-f7x082tcii]  .dxbl-btn:hover {
	color: #2a9080 !important;
	background: rgba(59, 176, 160, 0.10) !important;
}

.toolbar-container[b-f7x082tcii]  .dxbl-image,
.toolbar-container[b-f7x082tcii]  [class*="dx-icon-"] {
	font-size: 15px !important;
	color: inherit !important;
}

.toolbar-container[b-f7x082tcii]  .dxbl-toolbar-separator,
.toolbar-container[b-f7x082tcii]  .dxbl-btn-group-separator {
	background: #e2e8f0 !important;
	width: 1px !important;
	margin: 6px 4px !important;
	opacity: 0.6;
}

.toolbar-container[b-f7x082tcii]  .dxbl-dropdown-item,
.toolbar-container[b-f7x082tcii]  .dxbl-toolbar-dropdown .dxbl-btn {
	font-size: 12px !important;
	color: #4a5568 !important;
	padding: 6px 14px !important;
}

.toolbar-container[b-f7x082tcii]  .dxbl-dropdown-item:hover,
.toolbar-container[b-f7x082tcii]  .dxbl-toolbar-dropdown .dxbl-btn:hover {
	background: rgba(59, 176, 160, 0.08) !important;
	color: #2a9080 !important;
}

.toolbar-container[b-f7x082tcii]  .search2 .dxbl-text-edit {
	border: 1px solid #e2e8f0 !important;
	border-radius: 7px !important;
	background: rgba(255, 255, 255, 0.7) !important;
	font-size: 12px !important;
	min-width: 160px;
	transition: all 0.15s !important;
}

.toolbar-container[b-f7x082tcii]  .search2 .dxbl-text-edit:focus-within {
	border-color: #3bb0a0 !important;
	background: #fff !important;
	box-shadow: 0 0 0 3px rgba(59, 176, 160, 0.12) !important;
}

.toolbar-container[b-f7x082tcii]  .search2 .dxbl-text-edit::placeholder,
.toolbar-container[b-f7x082tcii]  .search2 input::placeholder {
	color: #94a3b8 !important;
}

/* Active layout name badge */
.layout-name-badge[b-f7x082tcii] {
	display: inline-flex;
	align-items: center;
	font-size: 10px;
	font-weight: 600;
	color: #2a9080;
	background: rgba(59, 176, 160, 0.12);
	padding: 2px 8px;
	border-radius: 8px;
	margin-left: 4px;
	white-space: nowrap;
	max-width: 120px;
	overflow: hidden;
	text-overflow: ellipsis;
	line-height: 1.3;
}

/* Row count badge */
.grid-row-count[b-f7x082tcii] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 10px;
	font-weight: 600;
	color: #4a5568;
	background: rgba(59, 176, 160, 0.10);
	padding: 4px 10px;
	border-radius: 10px;
	white-space: nowrap;
	letter-spacing: 0.02em;
	line-height: 1;
}

.toolbar-container[b-f7x082tcii]  .dxbl-toolbar-item:has(.grid-row-count) {
	display: flex !important;
	align-items: center !important;
}

.toolbar-container[b-f7x082tcii]  .dxbl-toolbar-template:has(.grid-row-count),
.toolbar-container[b-f7x082tcii]  .dxbl-toolbar-item-template:has(.grid-row-count) {
	display: flex !important;
	align-items: center !important;
}

/* Empty state */
.grid-empty-state[b-f7x082tcii] {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 48px 20px;
	gap: 8px;
}

.grid-empty-state[b-f7x082tcii]::before {
	content: "\2014";
	font-size: 28px;
	color: #e2e8f0;
}

.grid-empty-message[b-f7x082tcii] {
	font-size: 13px;
	color: #94a3b8;
	font-weight: 500;
}

.grid-empty-clear-btn[b-f7x082tcii] {
	margin-top: 8px;
	font-size: 12px;
	font-weight: 500;
	color: #3bb0a0;
	background: transparent;
	border: 1px solid #3bb0a0;
	border-radius: 6px;
	padding: 5px 16px;
	cursor: pointer;
	transition: all 0.15s;
}

.grid-empty-clear-btn:hover[b-f7x082tcii] {
	background: rgba(59, 176, 160, 0.08);
	color: #2a9080;
}

/* ===== TreeList border & rounding ===== */
[b-f7x082tcii] .dxbl-treelist {
	border: 1px solid #e2e8f0 !important;
	border-radius: 0 0 8px 8px !important;
	overflow: hidden;
	background: #fff !important;
}

[b-f7x082tcii] .dxbl-treelist table {
	border-collapse: collapse !important;
	border-spacing: 0 !important;
}

[b-f7x082tcii] .dxbl-treelist th,
[b-f7x082tcii] .dxbl-treelist td {
	border-left: none !important;
	border-right: none !important;
	border-top: none !important;
}

/* ===== Header row ===== */
[b-f7x082tcii] .dxbl-treelist-header-row {
	background: #f7f9fc !important;
}

[b-f7x082tcii] .dxbl-treelist-header-row > th,
[b-f7x082tcii] .dxbl-treelist-header-row th,
[b-f7x082tcii] .dxbl-treelist-header-cell,
[b-f7x082tcii] [class*="dxbl-treelist-header"] th {
	background: #f7f9fc !important;
	border-bottom: 2px solid #e2e8f0 !important;
	padding: 9px 12px !important;
	font-size: 11px !important;
	font-weight: 600 !important;
	color: #4a5568 !important;
	white-space: nowrap;
	letter-spacing: 0.01em;
	text-transform: none;
}

[b-f7x082tcii] .dxbl-treelist-header-cell-content {
	font-size: 11px !important;
	font-weight: 600 !important;
	color: #4a5568 !important;
}

/* Sort indicator */
[b-f7x082tcii] .dxbl-treelist-sort-indicator {
	color: #3bb0a0 !important;
	opacity: 0.7;
	font-size: 10px !important;
}

/* Filtered column header highlight */
[b-f7x082tcii] .grid-header-filtered {
	background: rgba(59, 176, 160, 0.10) !important;
	border-bottom-color: #3bb0a0 !important;
}

[b-f7x082tcii] .grid-header-filtered .dxbl-treelist-header-cell-content {
	color: #2a9080 !important;
}

/* Filter-menu icon */
[b-f7x082tcii] .dxbl-treelist-filter-menu-button,
[b-f7x082tcii] .dxbl-treelist-header-cell .dxbl-btn {
	color: #94a3b8 !important;
	opacity: 0.7;
	transition: opacity 0.15s !important;
}

[b-f7x082tcii] .dxbl-treelist-filter-menu-button:hover,
[b-f7x082tcii] .dxbl-treelist-header-cell .dxbl-btn:hover {
	color: #3bb0a0 !important;
	opacity: 1;
}

/* Column resize handle */
[b-f7x082tcii] .dxbl-treelist-column-resize-handle {
	background: #e2e8f0 !important;
	width: 1px !important;
}

/* ===== Data rows ===== */
[b-f7x082tcii] .dxbl-treelist-data-row {
	transition: background 0.13s !important;
}

[b-f7x082tcii] .dxbl-treelist-data-row > td,
[b-f7x082tcii] .dxbl-treelist-data-row td {
	padding: 9px 12px !important;
	font-size: 12px !important;
	color: #1a1d2e !important;
	vertical-align: middle !important;
	background: #fff;
}

/* Hover */
[b-f7x082tcii] .dxbl-treelist-data-row:hover > td {
	background: rgba(59, 176, 160, 0.08) !important;
}

/* ===== Focused row ===== */
[b-f7x082tcii] .dxbl-treelist-focused-row > td,
[b-f7x082tcii] .dxbl-treelist-focused-row.dxbl-treelist-data-row > td {
	background: rgba(59, 176, 160, 0.14) !important;
	color: #1a1d2e !important;
}

[b-f7x082tcii] .dxbl-treelist-focused-row > td:first-child {
	box-shadow: inset 3px 0 0 #3bb0a0;
}

[b-f7x082tcii] .dxbl-treelist-focused-row > td strong,
[b-f7x082tcii] .dxbl-treelist-focused-row > td a {
	color: #2a9080 !important;
}

/* ===== Selected rows ===== */
[b-f7x082tcii] .dxbl-treelist-selected-row > td {
	background: rgba(59, 176, 160, 0.14) !important;
	color: #1a1d2e !important;
}

[b-f7x082tcii] .dxbl-treelist-selected-row > td:first-child {
	box-shadow: inset 3px 0 0 #3bb0a0;
}

/* ===== Filter row ===== */
[b-f7x082tcii] .dxbl-treelist-filter-row > td {
	background: #fff !important;
	border-bottom: 1px solid #e2e8f0 !important;
	padding: 4px 8px !important;
}

[b-f7x082tcii] .dxbl-treelist-filter-row .dxbl-text-edit {
	font-size: 12px !important;
	border: 1.5px solid #e2e8f0 !important;
	border-radius: 7px !important;
	background: #f7f9fc !important;
	transition: border-color 0.15s !important;
}

[b-f7x082tcii] .dxbl-treelist-filter-row .dxbl-text-edit:focus-within {
	border-color: #3bb0a0 !important;
	background: #fff !important;
	box-shadow: 0 0 0 3px rgba(59, 176, 160, 0.12) !important;
}

/* ===== Search box ===== */
[b-f7x082tcii] .dxbl-treelist-search-box .dxbl-text-edit {
	border: 1.5px solid #e2e8f0 !important;
	border-radius: 7px !important;
	font-size: 12px !important;
	background: #fff !important;
}

[b-f7x082tcii] .dxbl-treelist-search-box .dxbl-text-edit:focus-within {
	border-color: #3bb0a0 !important;
	box-shadow: 0 0 0 3px rgba(59, 176, 160, 0.12) !important;
}

/* Context menu styling moved to site-theme-fluent.css (portaled to body, outside component scope) */

/* ===== Scrollbar ===== */
[b-f7x082tcii] .dxbl-treelist ::-webkit-scrollbar {
	width: 6px;
	height: 6px;
}

[b-f7x082tcii] .dxbl-treelist ::-webkit-scrollbar-track {
	background: transparent;
}

[b-f7x082tcii] .dxbl-treelist ::-webkit-scrollbar-thumb {
	background: #e2e8f0;
	border-radius: 3px;
}

[b-f7x082tcii] .dxbl-treelist ::-webkit-scrollbar-thumb:hover {
	background: #94a3b8;
}

/* ===== Drag handle ===== */
[b-f7x082tcii] .dxbl-treelist-drag-handle {
	color: #94a3b8 !important;
	cursor: grab !important;
}

[b-f7x082tcii] .dxbl-treelist-drag-handle:hover {
	color: #3bb0a0 !important;
}

/* ===== Loading panel ===== */
[b-f7x082tcii] .dxbl-loading-panel,
[b-f7x082tcii] .dxbl-loading-panel-content {
	border-radius: 8px !important;
}

/* ===== Negative amounts ===== */
[b-f7x082tcii] .grid-cell-negative {
	color: #d32f2f !important;
}

/* ===== Overdue dates ===== */
[b-f7x082tcii] .grid-cell-overdue {
	color: #d32f2f !important;
	font-weight: 600;
}

/* ===== Status badges ===== */
[b-f7x082tcii] .grid-badge {
	display: inline-block;
	font-size: 11px;
	font-weight: 600;
	padding: 2px 10px;
	border-radius: 10px;
	line-height: 1.4;
	white-space: nowrap;
}

[b-f7x082tcii] .grid-badge-danger {
	background: rgba(211, 47, 47, 0.10);
	color: #d32f2f;
}

[b-f7x082tcii] .grid-badge-warning {
	background: rgba(237, 167, 44, 0.12);
	color: #b27a1a;
}

[b-f7x082tcii] .grid-badge-success {
	background: rgba(59, 176, 160, 0.12);
	color: #2a9080;
}

/* ===== Boolean icons ===== */
[b-f7x082tcii] .grid-bool-icon {
	font-size: 14px;
	font-weight: 700;
	display: inline-block;
	text-align: center;
	width: 20px;
}

[b-f7x082tcii] .grid-bool-true {
	color: #3bb0a0;
}

[b-f7x082tcii] .grid-bool-false {
	color: #d0d5dd;
	font-weight: 400;
}

/* ===== Column chooser popup ===== */
[b-f7x082tcii] .dxbl-treelist-column-chooser {
	border: 1px solid #edf0f4 !important;
	border-radius: 10px !important;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.10) !important;
	background: #f8f9fb !important;
}
/* /Components/CustomComponents/PendingApprovalsDrawer.razor.rz.scp.css */
.pad-root[b-8c69k23x68] {
    display: flex;
    flex-direction: column;
    height: 100%;
    gap: 12px;
    padding: 4px 2px;
}

.pad-loading[b-8c69k23x68],
.pad-empty[b-8c69k23x68] {
    padding: 24px;
    text-align: center;
    color: #6c757d;
}

.pad-empty[b-8c69k23x68] {
    font-style: italic;
}

.pad-intro[b-8c69k23x68] {
    font-size: 0.9rem;
    color: #495057;
    margin: 0;
}

.pad-list[b-8c69k23x68] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    border: 1px solid #dee2e6;
    border-radius: 4px;
}

.pad-row[b-8c69k23x68] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 10px 14px;
    border-bottom: 1px solid #f0f0f0;
    gap: 12px;
}

.pad-row:last-child[b-8c69k23x68] {
    border-bottom: none;
}

.pad-row:hover[b-8c69k23x68] {
    background-color: #f8f9fa;
}

.pad-row-main[b-8c69k23x68] {
    flex: 1;
    min-width: 0;
}

.pad-row-user[b-8c69k23x68] {
    font-size: 0.95rem;
    font-weight: 600;
    color: #212529;
}

.pad-row-usercode[b-8c69k23x68] {
    font-weight: normal;
    color: #6c757d;
    font-size: 0.82rem;
    margin-left: 4px;
}

.pad-row-role[b-8c69k23x68] {
    margin-top: 2px;
    font-size: 0.88rem;
    color: #343a40;
}

.pad-row-category[b-8c69k23x68] {
    margin-left: 8px;
    font-size: 0.72rem;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    background-color: #e9ecef;
    padding: 1px 6px;
    border-radius: 8px;
}

.pad-row-meta[b-8c69k23x68] {
    margin-top: 4px;
    font-size: 0.78rem;
    color: #6c757d;
}

.pad-row-reason[b-8c69k23x68] {
    font-style: italic;
}

.pad-row-actions[b-8c69k23x68] {
    display: flex;
    gap: 4px;
    flex-shrink: 0;
}
/* /Components/Layout/EchelonHeader.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════
   echelon Client Portal — Header
   Matches Brett's echelon-portal.html POC header.
   ═══════════════════════════════════════════════════════════════════ */

.ech-header[b-xl7mar3bie] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 1.25rem;
    height: 50px;
    background: linear-gradient(135deg, #1a1a2e, #16213e);
    color: #fff;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

/* ─── Left: brand ────────────────────────────────────────────────── */

.ech-header-left[b-xl7mar3bie] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.ech-header-brand[b-xl7mar3bie] {
    font-size: 1.05rem;
    font-weight: 300;
    letter-spacing: 0.5px;
    color: #fff;
    text-decoration: none;
}

.ech-header-brand:hover[b-xl7mar3bie] {
    color: #fff;
    text-decoration: none;
}

.ech-header-brand strong[b-xl7mar3bie] {
    font-weight: 600;
}

/* ─── Right: icons + user ────────────────────────────────────────── */

.ech-header-right[b-xl7mar3bie] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.ech-header-icon[b-xl7mar3bie] {
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, 0.5);
    cursor: pointer;
    border-radius: 50%;
    transition: all 0.2s ease;
    position: relative;
    text-decoration: none;
}

.ech-header-icon:hover[b-xl7mar3bie] {
    color: #fff;
    background: rgba(255, 255, 255, 0.1);
    text-decoration: none;
}

.ech-header-icon svg[b-xl7mar3bie] {
    width: 18px;
    height: 18px;
}

.ech-header-notif-dot[b-xl7mar3bie] {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 7px;
    height: 7px;
    background: #ef4444;
    border-radius: 50%;
    border: 1.5px solid #1a1a2e;
}

/* ─── User ───────────────────────────────────────────────────────── */

.ech-header-user[b-xl7mar3bie] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: default;
    padding: 0.3rem 0.5rem;
    border-radius: 6px;
}

.ech-header-avatar[b-xl7mar3bie] {
    width: 28px;
    height: 28px;
    background: #11C683;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.72rem;
    font-weight: 700;
    color: #fff;
}

/* Persona accent colors — mirror EchelonNav avatar. Driven by EchelonCapabilities.PersonaAccentClass. */
.ech-header-avatar.persona-full[b-xl7mar3bie]   { background: #9333ea; }   /* full service — purple */
.ech-header-avatar.persona-invest[b-xl7mar3bie] { background: #4f46e5; }   /* investment client — indigo */
.ech-header-avatar.persona-trust[b-xl7mar3bie]  { background: #059669; }   /* trust beneficiary — green */
.ech-header-avatar.persona-corp[b-xl7mar3bie]   { background: #0891b2; }   /* corporate client — cyan */

.ech-header-uname[b-xl7mar3bie] {
    font-size: 0.78rem;
    color: rgba(255, 255, 255, 0.8);
}

@media (max-width: 640px) {
    .ech-header-uname[b-xl7mar3bie] {
        display: none;
    }
}
/* /Components/Layout/EchelonMobileNav.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════
   echelon Client Portal — Mobile Bottom Navigation
   Matches Brett's echelon-portal.html POC mobile nav.
   Only visible on screens <= 768px via the echelon-theme media query.
   ═══════════════════════════════════════════════════════════════════ */

.ech-mobile-nav[b-z7mhws5epn] {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    height: 56px;
    background: #1a1a2e;
    z-index: 1000;
    align-items: center;
    justify-content: space-around;
    padding: 0 0.5rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.ech-mn-item[b-z7mhws5epn] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.15rem;
    color: rgba(255, 255, 255, 0.4);
    font-size: 0.6rem;
    font-weight: 600;
    cursor: pointer;
    padding: 0.4rem;
    text-decoration: none;
    transition: color 0.2s ease;
}

.ech-mn-item:hover[b-z7mhws5epn] {
    text-decoration: none;
}

.ech-mn-item.active[b-z7mhws5epn] {
    color: #11C683;
}

.ech-mn-item svg[b-z7mhws5epn] {
    width: 18px;
    height: 18px;
}

/* Show mobile nav, hide sidebar on small screens */
@media (max-width: 768px) {
    .ech-mobile-nav[b-z7mhws5epn] {
        display: flex !important;
    }
}
/* /Components/Layout/EchelonNav.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════
   echelon Client Portal — Sidebar Navigation
   ───────────────────────────────────────────────────────────────────
   Matches Brett's echelon-portal.html POC: narrow icon sidebar with
   tooltips, green accent on active/hover, dark navy background.
   ═══════════════════════════════════════════════════════════════════ */

.echelon-nav[b-ippk6y37hl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 0.6rem 0;
    gap: 0.15rem;
    background: #1a1a2e;
    overflow-y: auto;
    overflow-x: hidden;
}

/* ─── Logo ────────────────────────────────────────────────────────── */

.echelon-nav-logo[b-ippk6y37hl] {
    width: 34px;
    height: 34px;
    margin-bottom: 0.6rem;
    flex-shrink: 0;
}

.echelon-nav-logo img[b-ippk6y37hl] {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    object-fit: contain;
}

/* ─── Menu items ──────────────────────────────────────────────────── */

.echelon-nav-items[b-ippk6y37hl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.15rem;
    width: 100%;
}

.echelon-nav-item[b-ippk6y37hl] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgba(255, 255, 255, 0.4);
    cursor: pointer;
    transition: all 0.2s ease;
    border-radius: 6px;
    position: relative;
    text-decoration: none;
    background: none;
    border: none;
    padding: 0;
}

.echelon-nav-item:hover[b-ippk6y37hl] {
    color: rgba(255, 255, 255, 0.8);
    background: rgba(255, 255, 255, 0.08);
    text-decoration: none;
}

.echelon-nav-item.active[b-ippk6y37hl] {
    color: #11C683;
    background: rgba(17, 198, 131, 0.12);
}

/* Hide the text label — icon-only sidebar */
.echelon-nav-label[b-ippk6y37hl] {
    display: none;
}

/* ─── Tooltip on hover ────────────────────────────────────────────── */

.echelon-nav-tooltip[b-ippk6y37hl] {
    position: absolute;
    left: 54px;
    background: #1a1a2e;
    color: #fff;
    font-size: 0.72rem;
    padding: 0.3rem 0.6rem;
    border-radius: 4px;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.15s ease;
    z-index: 1001;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.echelon-nav-item:hover .echelon-nav-tooltip[b-ippk6y37hl] {
    opacity: 1;
}

/* ─── Icons (mask-based, inherits currentColor) ───────────────────── */

.echelon-nav-icon[b-ippk6y37hl] {
    width: 18px;
    height: 18px;
    display: inline-block;
    background-color: currentColor;
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-size: contain;
    -webkit-mask-size: contain;
    mask-position: center;
    -webkit-mask-position: center;
}

.echelon-icon-home[b-ippk6y37hl] {
    -webkit-mask-image: url("/images/menuicons/home.svg");
    mask-image: url("/images/menuicons/home.svg");
}

.echelon-icon-entities[b-ippk6y37hl] {
    -webkit-mask-image: url("/images/menuicons/entitiesges.svg");
    mask-image: url("/images/menuicons/entitiesges.svg");
}

.echelon-icon-dashboard[b-ippk6y37hl] {
    -webkit-mask-image: url("/images/menuicons/entitydashboard.svg");
    mask-image: url("/images/menuicons/entitydashboard.svg");
}

.echelon-icon-documents[b-ippk6y37hl] {
    -webkit-mask-image: url("/images/menuicons/entitydocuments.svg");
    mask-image: url("/images/menuicons/entitydocuments.svg");
}

.echelon-icon-ownership[b-ippk6y37hl] {
    -webkit-mask-image: url("/images/menuicons/entitylivewealth.svg");
    mask-image: url("/images/menuicons/entitylivewealth.svg");
}

.echelon-icon-compliance[b-ippk6y37hl] {
    -webkit-mask-image: url("/images/menuicons/entitycompliance.svg");
    mask-image: url("/images/menuicons/entitycompliance.svg");
}

.echelon-icon-messages[b-ippk6y37hl] {
    -webkit-mask-image: url("/images/menuicons/entityportalmessages.svg");
    mask-image: url("/images/menuicons/entityportalmessages.svg");
}

.echelon-icon-alerts[b-ippk6y37hl] {
    -webkit-mask-image: url("/images/menuicons/alerts.svg");
    mask-image: url("/images/menuicons/alerts.svg");
}

.echelon-icon-services[b-ippk6y37hl] {
    -webkit-mask-image: url("/images/menuicons/entityworkflow.svg");
    mask-image: url("/images/menuicons/entityworkflow.svg");
}

.echelon-icon-requests[b-ippk6y37hl] {
    -webkit-mask-image: url("/images/menuicons/entitytasks.svg");
    mask-image: url("/images/menuicons/entitytasks.svg");
}

.echelon-icon-logout[b-ippk6y37hl] {
    -webkit-mask-image: url("/images/menuicons/logout.svg");
    mask-image: url("/images/menuicons/logout.svg");
}

/* ─── Spacer ──────────────────────────────────────────────────────── */

.echelon-nav-spacer[b-ippk6y37hl] {
    flex: 1;
}

/* ─── User avatar ─────────────────────────────────────────────────── */

.echelon-nav-user[b-ippk6y37hl] {
    margin-top: auto;
    margin-bottom: 0.5rem;
}

.echelon-nav-avatar[b-ippk6y37hl] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #11C683;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.7rem;
    font-weight: 700;
    color: #fff;
    cursor: pointer;
    transition: opacity 0.2s ease;
}

.echelon-nav-avatar:hover[b-ippk6y37hl] {
    opacity: 0.85;
}

/* Persona accent colors — match Brett's POC. Derived from EchelonCapabilities.PersonaAccentClass.
   persona-default leaves the existing brand teal in place. */
.echelon-nav-avatar.persona-full[b-ippk6y37hl]   { background: #9333ea; }   /* full service — purple */
.echelon-nav-avatar.persona-invest[b-ippk6y37hl] { background: #4f46e5; }   /* investment client — indigo */
.echelon-nav-avatar.persona-trust[b-ippk6y37hl]  { background: #059669; }   /* trust beneficiary — green */
.echelon-nav-avatar.persona-corp[b-ippk6y37hl]   { background: #0891b2; }   /* corporate client — cyan */
/* /Components/Layout/SearchItem.razor.rz.scp.css */
.listbox-item-template[b-1jn14wf0bi] {
	display: flex;
	align-items: center;
}

	.listbox-item-template > img[b-1jn14wf0bi] {
		border-radius: 50%;
		width: 2rem;
		height: 2rem;
	}

	.listbox-item-template-initials[b-1jn14wf0bi] {
		border-radius: 50%;
		width: 2rem;
		height: 2rem;
	}

img + .listbox-item-template-text[b-1jn14wf0bi] {
	margin-left: 0.5rem;
}

.dxbl-sm img + .listbox-item-template-text[b-1jn14wf0bi] {
	margin-left: 0.375rem;
}

.key-rel-initials2 + .listbox-item-template-text[b-1jn14wf0bi] {
	margin-left: 0.375rem;
}

.dxbl-lg img + .listbox-item-template-text[b-1jn14wf0bi] {
	margin-left: 0.625rem;
}

.listbox-item-template-text[b-1jn14wf0bi] {
	display: flex;
	flex-flow: column;
}

.listbox-item-template-text-phone[b-1jn14wf0bi] {
	opacity: 0.65;
}

.key-rel-initials2[b-1jn14wf0bi] {
	display: inline-block;
	width: 30px; /* Adjust as needed */
	height: 30px; /* Adjust as needed */
	background-color: #007bff; /* Example background color */
	color: white; /* Text color */
	text-align: center;
	line-height: 30px; /* Vertically center the text */
}

.key-rel-image[b-1jn14wf0bi] {
	width: 30px; /* Adjust as needed */
	height: 30px; /* Adjust as needed */
}
/* /Components/Pages/Accounting/Funds/CommitmentRegister.razor.rz.scp.css */
/* ── Root ───────────────────────────────────────────────────────────────── */
.cr-root[b-ptf5mwhkzj] {
    font-family: inherit;
    font-size: 12px;
    color: #333;
    background: #f5f7fa;
    min-height: 200px;
}

/* ── Header ─────────────────────────────────────────────────────────────── */
.cr-header[b-ptf5mwhkzj] {
    display: flex;
    align-items: baseline;
    gap: 12px;
    padding: 12px 18px 14px;
    background: #0a3d62;
    color: white;
    border-radius: 6px 6px 0 0;
    margin-bottom: 18px;
    flex-wrap: wrap;
}

.cr-header-title[b-ptf5mwhkzj] {
    font-size: 15px;
    font-weight: 700;
    flex: 1;
    min-width: 200px;
}

.cr-header-meta[b-ptf5mwhkzj] {
    font-size: 11px;
    opacity: 0.85;
    display: flex;
    gap: 5px;
    align-items: center;
}

.cr-sep[b-ptf5mwhkzj] { opacity: 0.4; }

.cr-header-date[b-ptf5mwhkzj] {
    font-size: 10px;
    opacity: 0.65;
    white-space: nowrap;
    flex-shrink: 0;
}

/* ── KPI strip ───────────────────────────────────────────────────────────── */
.cr-kpi-strip[b-ptf5mwhkzj] {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
    padding: 0 18px 16px;
}

.cr-kpi[b-ptf5mwhkzj] {
    background: white;
    border-radius: 6px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.08);
    overflow: hidden;
}

.cr-kpi-label[b-ptf5mwhkzj] {
    background: #1a4b8c;
    color: white;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    padding: 5px 10px;
}

.cr-kpi-accent .cr-kpi-label[b-ptf5mwhkzj] {
    background: #00a896;
}

.cr-kpi-value[b-ptf5mwhkzj] {
    padding: 8px 10px 2px;
    font-size: 16px;
    font-weight: 700;
    color: #0a3d62;
    line-height: 1.1;
}

.cr-value-blue[b-ptf5mwhkzj] { color: #0d6efd; }

.cr-kpi-sub[b-ptf5mwhkzj] {
    padding: 0 10px 8px;
    font-size: 9px;
    color: #888;
    text-transform: uppercase;
}

/* ── Progress bar ────────────────────────────────────────────────────────── */
.cr-progress-section[b-ptf5mwhkzj] {
    padding: 0 18px 18px;
}

.cr-progress-track[b-ptf5mwhkzj] {
    background: #dde3ea;
    border-radius: 5px;
    height: 10px;
    overflow: hidden;
}

.cr-progress-fill[b-ptf5mwhkzj] {
    background: linear-gradient(90deg, #00a896, #11C683);
    height: 100%;
    border-radius: 5px;
    transition: width 0.5s ease;
}

.cr-progress-legend[b-ptf5mwhkzj] {
    display: flex;
    justify-content: space-between;
    margin-top: 5px;
    font-size: 10px;
}

.cr-legend-called[b-ptf5mwhkzj]  { color: #00a896; font-weight: 600; }
.cr-legend-uncalled[b-ptf5mwhkzj] { color: #6c757d; }

/* ── Table container ─────────────────────────────────────────────────────── */
.cr-table-wrap[b-ptf5mwhkzj] {
    background: white;
    border: 1px solid #dde3ea;
    border-radius: 6px;
    overflow: hidden;
    margin: 0 18px 18px;
}

.cr-table-header[b-ptf5mwhkzj] {
    background: #1a4b8c;
    color: white;
    padding: 8px 14px;
    font-size: 11px;
    font-weight: 600;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cr-table-count[b-ptf5mwhkzj] {
    font-size: 10px;
    opacity: 0.75;
    font-weight: 400;
}

/* ── Table ───────────────────────────────────────────────────────────────── */
.cr-table[b-ptf5mwhkzj] {
    width: 100%;
    border-collapse: collapse;
    font-size: 11px;
}

.cr-table thead th[b-ptf5mwhkzj] {
    background: #f3f5f8;
    color: #555;
    font-weight: 600;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    padding: 7px 11px;
    border-bottom: 1px solid #dde3ea;
    white-space: nowrap;
}

.cr-th-right[b-ptf5mwhkzj] { text-align: right !important; }
.cr-th-center[b-ptf5mwhkzj] { text-align: center !important; }

.cr-table tbody tr[b-ptf5mwhkzj] {
    border-bottom: 1px solid #f0f2f5;
    transition: background 0.1s;
}

.cr-table tbody tr:last-child[b-ptf5mwhkzj] { border-bottom: none; }
.cr-table tbody tr:hover[b-ptf5mwhkzj] { background: #f7fafc; }

.cr-table td[b-ptf5mwhkzj] { padding: 6px 11px; vertical-align: middle; }

.cr-td-name[b-ptf5mwhkzj] { font-weight: 600; color: #0a3d62; }
.cr-td-date[b-ptf5mwhkzj] { color: #666; white-space: nowrap; }
.cr-td-num[b-ptf5mwhkzj]  { text-align: right; font-variant-numeric: tabular-nums; }
.cr-td-uncalled[b-ptf5mwhkzj] { color: #0d6efd; font-weight: 600; }
.cr-td-dpi[b-ptf5mwhkzj]  { color: #0a3d62; font-weight: 700; }

/* ── Mini progress bar (per row) ─────────────────────────────────────────── */
.cr-td-bar[b-ptf5mwhkzj] {
    white-space: nowrap;
    vertical-align: middle;
}

.cr-mini-track[b-ptf5mwhkzj] {
    display: inline-block;
    width: 72px;
    height: 6px;
    background: #e9ecef;
    border-radius: 3px;
    overflow: hidden;
    vertical-align: middle;
    margin-right: 5px;
}

.cr-mini-fill[b-ptf5mwhkzj] {
    height: 100%;
    background: #11C683;
    border-radius: 3px;
}

.cr-mini-pct[b-ptf5mwhkzj] {
    font-size: 10px;
    color: #666;
    vertical-align: middle;
}

/* ── Table footer ────────────────────────────────────────────────────────── */
.cr-table tfoot tr[b-ptf5mwhkzj] {
    background: #f3f5f8;
    border-top: 2px solid #dde3ea;
}

.cr-table tfoot td[b-ptf5mwhkzj] {
    padding: 7px 11px;
    font-size: 11px;
    color: #0a3d62;
}

/* ── Badges ──────────────────────────────────────────────────────────────── */
.cr-badge[b-ptf5mwhkzj] {
    display: inline-block;
    padding: 2px 7px;
    border-radius: 10px;
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

.cr-badge-teal[b-ptf5mwhkzj]  { background: #d0f5ed; color: #006c56; }
.cr-badge-navy[b-ptf5mwhkzj]  { background: #dde8f8; color: #0a3d62; }

/* ── Empty / loading ─────────────────────────────────────────────────────── */
.cr-empty[b-ptf5mwhkzj] {
    padding: 24px 18px;
    color: #888;
    font-style: italic;
}
/* /Components/Pages/Accounting/Funds/FundDashboard.razor.rz.scp.css */
.fd-dashboard[b-e7b3rmb3g7] {
    font-size: 12px;
    color: #333;
}

/* ── Fund header ────────────────────────────────────────────────────── */

.fd-fund-header[b-e7b3rmb3g7] {
    display: flex;
    align-items: baseline;
    gap: 12px;
    padding: 10px 16px 12px;
    background: #0a3d62;
    color: white;
    border-radius: 6px 6px 0 0;
    margin-bottom: 16px;
}

.fd-fund-title[b-e7b3rmb3g7] {
    font-size: 15px;
    font-weight: 700;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
}

.fd-fund-meta[b-e7b3rmb3g7] {
    font-size: 11px;
    opacity: 0.85;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    align-items: center;
}

.fd-sep[b-e7b3rmb3g7] {
    opacity: 0.5;
}

.fd-as-of[b-e7b3rmb3g7] {
    font-size: 10px;
    opacity: 0.7;
    white-space: nowrap;
    flex-shrink: 0;
}

/* ── KPI Cards ──────────────────────────────────────────────────────── */

.fd-kpi-row[b-e7b3rmb3g7] {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
    margin-bottom: 16px;
}

.fd-kpi-card[b-e7b3rmb3g7] {
    border-radius: 6px;
    overflow: hidden;
    box-shadow: 0 1px 6px rgba(0,0,0,0.1);
    background: white;
}

.fd-kpi-label[b-e7b3rmb3g7] {
    background: #1a4b8c;
    color: white;
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    padding: 5px 10px;
}

.fd-accent-teal .fd-kpi-label[b-e7b3rmb3g7] {
    background: #00a896;
}

.fd-kpi-value[b-e7b3rmb3g7] {
    padding: 8px 10px 2px;
    font-size: 17px;
    font-weight: 700;
    color: #0a3d62;
    line-height: 1.1;
}

.fd-kpi-sub[b-e7b3rmb3g7] {
    padding: 0 10px 8px;
    font-size: 9px;
    color: #888;
    text-transform: uppercase;
}

/* ── Stale price warning ────────────────────────────────────────────── */

.fd-stale-warning[b-e7b3rmb3g7] {
    background: #fff3cd;
    border: 1px solid #ffc107;
    border-radius: 4px;
    padding: 6px 12px;
    margin-bottom: 12px;
    font-size: 11px;
    color: #856404;
}

/* ── Economics strip (closed-end) ───────────────────────────────────── */

.fd-econ-strip[b-e7b3rmb3g7] {
    display: flex;
    gap: 0;
    margin-bottom: 16px;
    border: 1px solid #dde3ea;
    border-radius: 6px;
    overflow: hidden;
    background: #f8f9fb;
}

.fd-econ-item[b-e7b3rmb3g7] {
    flex: 1;
    padding: 8px 14px;
    border-right: 1px solid #dde3ea;
    text-align: center;
}

.fd-econ-item:last-child[b-e7b3rmb3g7] {
    border-right: none;
}

.fd-econ-label[b-e7b3rmb3g7] {
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #666;
    margin-bottom: 3px;
}

.fd-econ-value[b-e7b3rmb3g7] {
    font-size: 14px;
    font-weight: 700;
    color: #0a3d62;
}

/* ── Content row (two-column panels) ───────────────────────────────── */

.fd-content-row[b-e7b3rmb3g7] {
    display: flex;
    gap: 14px;
    align-items: flex-start;
}

.fd-panel[b-e7b3rmb3g7] {
    background: white;
    border: 1px solid #dde3ea;
    border-radius: 6px;
    overflow: hidden;
}

.fd-panel-wide[b-e7b3rmb3g7] {
    flex: 2;
}

.fd-panel-narrow[b-e7b3rmb3g7] {
    flex: 1;
}

.fd-panel-header[b-e7b3rmb3g7] {
    background: #1a4b8c;
    color: white;
    padding: 7px 12px;
    font-size: 11px;
    font-weight: 600;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.fd-panel-count[b-e7b3rmb3g7] {
    font-size: 10px;
    opacity: 0.8;
    font-weight: 400;
}

.fd-empty[b-e7b3rmb3g7] {
    padding: 16px 12px;
    color: #888;
    font-style: italic;
}

/* ── Tables ─────────────────────────────────────────────────────────── */

.fd-table[b-e7b3rmb3g7] {
    width: 100%;
    border-collapse: collapse;
    font-size: 11px;
}

.fd-table thead th[b-e7b3rmb3g7] {
    background: #f3f5f8;
    color: #444;
    font-weight: 600;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    padding: 6px 10px;
    border-bottom: 1px solid #dde3ea;
    white-space: nowrap;
}

.fd-table tbody tr[b-e7b3rmb3g7] {
    border-bottom: 1px solid #f0f0f0;
}

.fd-table tbody tr:last-child[b-e7b3rmb3g7] {
    border-bottom: none;
}

.fd-table tbody tr:hover[b-e7b3rmb3g7] {
    background: #f7fafc;
}

.fd-table td[b-e7b3rmb3g7] {
    padding: 5px 10px;
    vertical-align: middle;
}

.fd-row-stale td[b-e7b3rmb3g7] {
    background: #fffbf0;
    color: #7a5c00;
}

.fd-row-exited td[b-e7b3rmb3g7] {
    color: #888;
}

.fd-bold[b-e7b3rmb3g7] {
    font-weight: 600;
    color: #0a3d62;
}

.fd-mono[b-e7b3rmb3g7] {
    font-family: monospace;
    font-size: 10px;
}

.fd-table-footer[b-e7b3rmb3g7] {
    padding: 5px 10px;
    font-size: 10px;
    color: #888;
    border-top: 1px solid #f0f0f0;
}

.fd-accrual-total[b-e7b3rmb3g7] {
    padding: 7px 10px;
    font-size: 11px;
    text-align: right;
    border-top: 1px solid #dde3ea;
    background: #f8f9fb;
    color: #555;
}

/* ── Badges ─────────────────────────────────────────────────────────── */

.fd-badge[b-e7b3rmb3g7] {
    display: inline-block;
    padding: 2px 6px;
    border-radius: 10px;
    font-size: 9px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.fd-badge-green[b-e7b3rmb3g7] {
    background: #d4edda;
    color: #155724;
}

.fd-badge-grey[b-e7b3rmb3g7] {
    background: #e9ecef;
    color: #666;
}

.fd-badge-red[b-e7b3rmb3g7] {
    background: #f8d7da;
    color: #721c24;
}

/* ── Full-width panel ───────────────────────────────────────────────── */

.fd-panel-full[b-e7b3rmb3g7] {
    width: 100%;
}

.mb-3[b-e7b3rmb3g7] {
    margin-bottom: 12px;
}

/* ── Table footer totals ────────────────────────────────────────────── */

.fd-table tfoot td[b-e7b3rmb3g7] {
    padding: 6px 10px;
    border-top: 2px solid #dde3ea;
    background: #f3f5f8;
    font-size: 11px;
}

.fd-table-total td[b-e7b3rmb3g7] {
    font-weight: 600;
    color: #0a3d62;
}

/* ── Credit rows (liabilities in NAV composition) ───────────────────── */

.fd-row-credit td[b-e7b3rmb3g7] {
    background: #fff8f8;
    color: #5a2020;
}

/* ── Gain / loss colouring ──────────────────────────────────────────── */

.fd-positive[b-e7b3rmb3g7] {
    color: #155724;
}

.fd-negative[b-e7b3rmb3g7] {
    color: #721c24;
}
/* /Components/Pages/Accounting/Funds/InvestmentReconciliation.razor.rz.scp.css */
.invrecon-summary-bar[b-d299eql9e9] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    padding: 12px 16px;
    background: #f5f7fa;
    border-bottom: 1px solid #dce1e9;
}

.invrecon-summary-card[b-d299eql9e9] {
    display: flex;
    flex-direction: column;
    padding: 10px 18px;
    border-radius: 6px;
    min-width: 150px;
    color: #fff;
}

.invrecon-asset[b-d299eql9e9] {
    background: #1a4b8c;
}

.invrecon-liability[b-d299eql9e9] {
    background: #c0392b;
}

.invrecon-nav[b-d299eql9e9] {
    background: #11C683;
}

.invrecon-sync-ok[b-d299eql9e9] {
    background: #5a6a7e;
}

.invrecon-warn[b-d299eql9e9] {
    background: #e67e22;
}

.invrecon-summary-label[b-d299eql9e9] {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    opacity: 0.85;
    margin-bottom: 4px;
}

.invrecon-summary-value[b-d299eql9e9] {
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
}

.invrecon-summary-sub[b-d299eql9e9] {
    font-size: 10px;
    margin-top: 5px;
    opacity: 0.9;
}

.invrecon-empty[b-d299eql9e9] {
    padding: 60px 40px;
    text-align: center;
    color: #8a95a0;
    font-size: 14px;
}
/* /Components/Pages/Accounting/Funds/OpenFundHoldings.razor.rz.scp.css */
.ofh-nav-strip[b-i8isos5wa8] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 24px;
    padding: 8px 16px;
    background: #f0f4f8;
    border-top: 1px solid #d0dae4;
    border-bottom: 1px solid #d0dae4;
    font-size: 13px;
    color: #1a4b8c;
}

.ofh-nav-strip--stale[b-i8isos5wa8] {
    background: #fff8e1;
    border-color: #ffe082;
}

.ofh-nav-item[b-i8isos5wa8] {
    display: flex;
    flex-direction: column;
    line-height: 1.3;
}

.ofh-nav-label[b-i8isos5wa8] {
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #7a8fa6;
}

.ofh-nav-total[b-i8isos5wa8] {
    font-weight: 700;
    font-size: 14px;
    color: #11744a;
}

.ofh-nav-warning[b-i8isos5wa8] {
    color: #b45309;
    font-weight: 600;
    font-size: 12px;
    margin-left: auto;
}
/* /Components/Pages/Accounting/PurchaseLedger/InvoiceRecoverWiPLineEditor.razor.rz.scp.css */
.recover-validation-state[b-eq1to15v07] {
    color: red;
}

.recover-date-notice[b-eq1to15v07] {
    margin: 0 0 8px 0;
    padding: 8px 12px;
    background: #fff8e1;
    border-left: 4px solid #f0ad4e;
    color: #5c4400;
    font-size: 0.9em;
    border-radius: 4px;
}

.recover-summary-line[b-eq1to15v07] {
    padding: 6px 10px;
    background: #f5f5f5;
    border-radius: 3px;
    font-family: monospace;
    color: #555;
}
/* /Components/Pages/Accounting/SalesLedger/FISCQueueCasePicker.razor.rz.scp.css */
/* FISCQueueCasePicker scoped styles. Single-purpose modal: list of open
   Fiscalisation cases with a Queue button on each row. */

.rs-iqp[b-s7tw0v4b26] { padding: 4px 0; font-size: 13px; color: #1a1a2e; }

.rs-iqp__header[b-s7tw0v4b26] {
    margin-bottom: 12px; padding-bottom: 8px;
    border-bottom: 1px solid #e4e8ed;
    color: #0a3d62; font-size: 14px;
}

.rs-iqp__empty[b-s7tw0v4b26] { font-size: 12px; color: #6b7280; font-style: italic; }

.rs-iqp__list[b-s7tw0v4b26]  { list-style: none; margin: 0; padding: 0; }

.rs-iqp__item[b-s7tw0v4b26] {
    display: flex; align-items: center; gap: 12px;
    padding: 10px 12px; border-bottom: 1px solid #e4e8ed;
}

.rs-iqp__item:last-child[b-s7tw0v4b26] { border-bottom: none; }

.rs-iqp__main[b-s7tw0v4b26]  { flex: 1 1 auto; min-width: 0; }
.rs-iqp__title[b-s7tw0v4b26] { font-weight: 600; color: #0a3d62; }
.rs-iqp__meta[b-s7tw0v4b26]  { font-size: 11px; color: #6b7280; margin-top: 2px; }
/* /Components/Pages/Assets/EditInvestment.razor.rz.scp.css */
.investment-save-footer[b-ws8y742est] {
    position: sticky;
    bottom: 0;
    z-index: 10;
    background: white;
    border-top: 1px solid #dee2e6;
    box-shadow: 0 -2px 6px rgba(0,0,0,.08);
    padding: 8px 12px;
    display: flex;
    align-items: center;
    gap: 12px;
}
/* /Components/Pages/Assets/EditOther.razor.rz.scp.css */
.divgrid[b-5602pqy27l] {
	height: calc(100% - 100px);
	width: 99%;
	display: flex;
	flex-direction: column;
}
/* /Components/Pages/Compliance/SAR/SARNoAccess.razor.rz.scp.css */
.sar-no-access[b-8ytzifsk5z] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 60px 20px;
    color: #4a5568;
    text-align: center;
}

.sar-no-access__icon[b-8ytzifsk5z] { color: #94a3b8; }

.sar-no-access__title[b-8ytzifsk5z] {
    margin: 4px 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: #0a3d62;
}

.sar-no-access__body[b-8ytzifsk5z] {
    margin: 0;
    font-size: 13px;
    max-width: 480px;
}

.sar-no-access__link[b-8ytzifsk5z] {
    font-size: 13px;
    color: #0d9488;
    text-decoration: none;
    margin-top: 8px;
}

.sar-no-access__link:hover[b-8ytzifsk5z] { text-decoration: underline; }
/* /Components/Pages/Documents/Controls/DocumentPreview.razor.rz.scp.css */
.lf-dp-root[b-au1ba0pqbs] {
    display: flex;
    flex-direction: column;
    height: 100%;
    outline: none;
}

.lf-dp-msg[b-au1ba0pqbs] {
    padding: 16px;
    color: #4a5568;
    font-size: 13px;
}

.lf-dp-generating[b-au1ba0pqbs] {
    padding: 16px;
    color: #4a5568;
    font-size: 13px;
    font-style: italic;
}

.lf-dp-fallback[b-au1ba0pqbs] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    gap: 8px;
    padding: 24px;
    text-align: center;
}

.lf-dp-fallback-icon[b-au1ba0pqbs] {
    font-size: 48px;
    font-weight: 700;
    color: #a0aec0;
    letter-spacing: 1px;
}

.lf-dp-toolbar[b-au1ba0pqbs] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    border-bottom: 1px solid #e2e8f0;
    flex-shrink: 0;
}

.lf-dp-zoom-btn[b-au1ba0pqbs] {
    width: 28px;
    height: 28px;
    border: 1px solid #cbd5e0;
    border-radius: 4px;
    background: #fff;
    cursor: pointer;
    font-size: 16px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lf-dp-zoom-btn:hover[b-au1ba0pqbs] {
    background: #f7fafc;
}

.lf-dp-zoom-label[b-au1ba0pqbs] {
    font-size: 12px;
    color: #4a5568;
    min-width: 36px;
    text-align: center;
}

.lf-dp-loading-pages[b-au1ba0pqbs] {
    font-size: 12px;
    color: #718096;
    margin-left: 8px;
    font-style: italic;
}

.lf-dp-carousel-wrap[b-au1ba0pqbs] {
    flex: 1;
    overflow: hidden;
    transform-origin: top center;
    transition: transform 0.15s ease;
}

.lf-dp-page-nav[b-au1ba0pqbs] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 6px 8px;
    border-top: 1px solid #e2e8f0;
    flex-shrink: 0;
}

.lf-dp-nav-btn[b-au1ba0pqbs] {
    width: 28px;
    height: 28px;
    border: 1px solid #cbd5e0;
    border-radius: 4px;
    background: #fff;
    cursor: pointer;
    font-size: 18px;
    line-height: 1;
}

.lf-dp-nav-btn:disabled[b-au1ba0pqbs] {
    opacity: 0.4;
    cursor: default;
}

.lf-dp-nav-btn:hover:not(:disabled)[b-au1ba0pqbs] {
    background: #f7fafc;
}

.lf-dp-page-input[b-au1ba0pqbs] {
    width: 48px;
    text-align: center;
    border: 1px solid #cbd5e0;
    border-radius: 4px;
    padding: 2px 4px;
    font-size: 13px;
}

.lf-dp-page-total[b-au1ba0pqbs] {
    font-size: 13px;
    color: #4a5568;
}
/* /Components/Pages/Documents/DocumentEditor.razor.rz.scp.css */
[b-14ahh1aebl] .my-style {
    color: red !important;
}
/* /Components/Pages/Documents/DocumentsViewer.razor.rz.scp.css */
/* LiveFile / DocumentsViewer — UX-1 shell
   Scoped via Blazor CSS isolation. Selectors are intentionally simple — the
   .lf-* class names won't leak. Palette mirrors the baseline POC. */

/* Search bar — compact toolbar style */
.lf-search-form[b-ya5cd7gjqk] {
    display: block;
}

.lf-search-bar[b-ya5cd7gjqk] {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 12px 16px;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.lf-search-label[b-ya5cd7gjqk] {
    font-size: 11px;
    font-weight: 600;
    color: #4a5568;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.lf-search-entity[b-ya5cd7gjqk] {
    min-width: 200px;
    flex: 0 1 240px;
}

.lf-search-text[b-ya5cd7gjqk] {
    flex: 1 1 240px;
    min-width: 220px;
}

/* Advanced search — collapsible panel below the search bar */
.lf-adv-search[b-ya5cd7gjqk] {
    background: #f7f9fc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 14px 18px;
    margin-bottom: 14px;
}

/* KPI strip — 6 cards in a responsive grid */
.lf-kpi-strip[b-ya5cd7gjqk] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 12px;
    margin-bottom: 14px;
}

.lf-kpi-card[b-ya5cd7gjqk] {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 12px 14px;
    position: relative;
    overflow: hidden;
}

.lf-kpi-card[b-ya5cd7gjqk]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
}

.lf-kpi-navy[b-ya5cd7gjqk]::before  { background: #0a3d62; }
.lf-kpi-green[b-ya5cd7gjqk]::before { background: #1a8a3a; }
.lf-kpi-amber[b-ya5cd7gjqk]::before { background: #c97c00; }
.lf-kpi-blue[b-ya5cd7gjqk]::before  { background: #1a6fd4; }
.lf-kpi-teal[b-ya5cd7gjqk]::before  { background: #00a896; }
.lf-kpi-red[b-ya5cd7gjqk]::before   { background: #d93025; }

.lf-kpi-label[b-ya5cd7gjqk] {
    font-size: 10px;
    text-transform: uppercase;
    font-weight: 600;
    color: #94a3b8;
    letter-spacing: 0.5px;
    margin-bottom: 4px;
}

.lf-kpi-value[b-ya5cd7gjqk] {
    font-size: 22px;
    font-weight: 800;
    color: #1a1d2e;
    line-height: 1.1;
}

.lf-kpi-sub[b-ya5cd7gjqk] {
    font-size: 10px;
    color: #94a3b8;
    margin-top: 3px;
}

/* View toggle (Grid / Explorer / Dashboard) — segmented control at the end
   of the search bar. Connected segments share a single border (overflow:hidden
   so the corners clip), separated by an internal right-border. Active segment
   uses RenderStyle.Primary (blue); inactive uses Secondary (light grey). */
.lf-view-toggle[b-ya5cd7gjqk] {
    display: inline-flex;
    gap: 0;
    margin-left: auto;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    overflow: hidden;
    height: fit-content;
}

.lf-view-toggle[b-ya5cd7gjqk]  .dxbl-btn {
    border: none;
    border-radius: 0;
    padding: 5px 12px;
    font-size: 11px;
    font-weight: 600;
    box-shadow: none;
}

.lf-view-toggle[b-ya5cd7gjqk]  .dxbl-btn:not(:last-child) {
    border-right: 1px solid #e2e8f0;
}

/* Inactive (RenderStyle.Secondary) — flat light background */
.lf-view-toggle[b-ya5cd7gjqk]  .dxbl-btn.dxbl-btn-secondary {
    background: #f7f9fc;
    color: #4a5568;
}

.lf-view-toggle[b-ya5cd7gjqk]  .dxbl-btn.dxbl-btn-secondary:hover {
    background: #e2e8f0;
    color: #1a1d2e;
}

/* Active (RenderStyle.Primary) — POC blue */
.lf-view-toggle[b-ya5cd7gjqk]  .dxbl-btn.dxbl-btn-primary {
    background: #1a6fd4;
    color: #fff;
}

.lf-view-toggle[b-ya5cd7gjqk]  .dxbl-btn.dxbl-btn-primary:hover {
    background: #1560b8;
    color: #fff;
}

/* Tree pane — left-rail navigator for Explorer view.
   Lives inside a MyDxSplitterPane (which gives the draggable resize handle and
   handles its own width via the pane's Size parameter). This div just fills its
   slot and lays out the header + scrollable body. */
.lf-tree-pane[b-ya5cd7gjqk] {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    background: #fff;
    overflow: hidden;
}

.lf-tree-header[b-ya5cd7gjqk] {
    padding: 10px 12px;
    border-bottom: 1px solid #e2e8f0;
    background: #f7f9fc;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.lf-tree-title[b-ya5cd7gjqk] {
    font-size: 12px;
    font-weight: 700;
    color: #1a1d2e;
    flex-shrink: 0;
}

.lf-tree-header-select[b-ya5cd7gjqk] {
    flex: 1;
    min-width: 0;
}

.lf-tree-body[b-ya5cd7gjqk] {
    flex: 1;
    overflow-y: auto;
    padding: 0;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

/* Sticky "All" row above the DxTreeView — always visible, clears the filter. */
.lf-tree-all[b-ya5cd7gjqk] {
    display: flex;
    align-items: center;
    padding: 5px 10px;
    cursor: pointer;
    color: #4a5568;
    font-size: 12px;
    border-left: 3px solid transparent;
    border-bottom: 1px solid #f0f4f8;
    transition: background .1s;
    user-select: none;
    flex-shrink: 0;
}

.lf-tree-all:hover[b-ya5cd7gjqk] {
    background: rgba(10, 61, 98, 0.06);
}

.lf-tree-all-selected[b-ya5cd7gjqk] {
    background: rgba(26, 111, 212, 0.08);
    border-left-color: #1a6fd4;
    color: #1a1d2e;
    font-weight: 600;
}

.lf-tree-all-selected .lf-tv-count[b-ya5cd7gjqk] {
    background: rgba(26, 111, 212, 0.12);
    color: #1a6fd4;
}

/* DxTreeView styling — mirror the POC look (compact rows, count pill on right,
   blue left-border on selected node, navy-tinted hover). We use ::deep to reach
   into DevExpress's internal markup since this is a scoped .razor.css. */
.lf-tree-body[b-ya5cd7gjqk]  .lf-tree-view {
    height: 100%;
    background: transparent;
    border: none;
    font-size: 12px;
}

/* Filter panel at the top of the tree */
.lf-tree-body[b-ya5cd7gjqk]  .lf-tree-view .dxbl-treeview-filter {
    padding: 8px 12px;
    border-bottom: 1px solid #e2e8f0;
    background: #fff;
}

.lf-tree-body[b-ya5cd7gjqk]  .lf-tree-view .dxbl-treeview-filter input {
    font-size: 11px;
}

/* Each node row */
.lf-tree-body[b-ya5cd7gjqk]  .lf-tree-view .dxbl-treeview-node {
    padding: 4px 10px;
    cursor: pointer;
    color: #4a5568;
    border-left: 3px solid transparent;
    transition: background .1s;
    user-select: none;
}

.lf-tree-body[b-ya5cd7gjqk]  .lf-tree-view .dxbl-treeview-node:hover {
    background: rgba(10, 61, 98, 0.06);
}

.lf-tree-body[b-ya5cd7gjqk]  .lf-tree-view .dxbl-treeview-node.dxbl-selected {
    background: rgba(26, 111, 212, 0.08);
    border-left-color: #1a6fd4;
    color: #1a1d2e;
    font-weight: 600;
}

/* Node template contents (icon + label + count pill) */
.lf-tv-icon[b-ya5cd7gjqk] {
    font-size: 14px;
    flex-shrink: 0;
    width: 18px;
    text-align: center;
    margin-right: 4px;
    line-height: 1;
}

.lf-tv-label[b-ya5cd7gjqk] {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin-right: 6px;
}

.lf-tv-count[b-ya5cd7gjqk] {
    font-size: 10px;
    font-weight: 700;
    color: #94a3b8;
    background: #f7f9fc;
    padding: 1px 7px;
    border-radius: 8px;
    flex-shrink: 0;
}

.lf-tree-body[b-ya5cd7gjqk]  .lf-tree-view .dxbl-selected .lf-tv-count {
    background: rgba(26, 111, 212, 0.12);
    color: #1a6fd4;
}

/* Force the DxTreeView node text container into a flex row so label + count
   line up correctly with the count pill on the right edge. */
.lf-tree-body[b-ya5cd7gjqk]  .lf-tree-view .dxbl-treeview-node-text {
    display: flex;
    align-items: center;
    width: 100%;
    min-width: 0;
}

/* Documents-pane wrapper — flex column so breadcrumb sits above the grid in
   Explorer mode, grid fills the rest. */
.lf-pane-content[b-ya5cd7gjqk] {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.lf-pane-grid[b-ya5cd7gjqk] {
    flex: 1;
    min-height: 0;
}

/* Breadcrumb — Explorer-mode strip above the grid showing the current filter path */
.lf-breadcrumb[b-ya5cd7gjqk] {
    padding: 8px 14px;
    border-bottom: 1px solid #e2e8f0;
    background: #fff;
    font-size: 12px;
    display: flex;
    align-items: center;
    gap: 6px;
    flex-shrink: 0;
    flex-wrap: wrap;
}

.lf-bc-item[b-ya5cd7gjqk] {
    color: #1a6fd4;
    cursor: pointer;
    font-weight: 600;
    user-select: none;
}

.lf-bc-item:hover[b-ya5cd7gjqk] {
    text-decoration: underline;
}

.lf-bc-sep[b-ya5cd7gjqk] {
    color: #94a3b8;
    font-size: 10px;
}

.lf-bc-current[b-ya5cd7gjqk] {
    color: #1a1d2e;
    font-weight: 600;
    cursor: default;
}

.lf-bc-current:hover[b-ya5cd7gjqk] {
    text-decoration: none;
}

/* Dashboard view — 2-column grid of chart cards with horizontal bar lists.
   Bars are clickable and drill back to Explorer view with the matching tree
   filter applied. */
.lf-dashboard[b-ya5cd7gjqk] {
    flex: 1;
    overflow: auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    min-height: 0;
}

.lf-chart-card[b-ya5cd7gjqk] {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.lf-chart-title[b-ya5cd7gjqk] {
    padding: 12px 16px;
    border-bottom: 1px solid #e2e8f0;
    background: #f7f9fc;
    font-size: 13px;
    font-weight: 700;
    color: #1a1d2e;
    flex-shrink: 0;
}

.lf-chart-body[b-ya5cd7gjqk] {
    flex: 1;
    overflow-y: auto;
    padding: 8px 14px;
}

.lf-chart-empty[b-ya5cd7gjqk] {
    padding: 40px;
    text-align: center;
    color: #94a3b8;
    font-size: 12px;
}

.lf-hbar-row[b-ya5cd7gjqk] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 4px;
    border-bottom: 1px solid #f0f4f8;
    cursor: pointer;
    transition: background .1s;
}

.lf-hbar-row:hover[b-ya5cd7gjqk] {
    background: rgba(26, 111, 212, 0.06);
}

.lf-hbar-row:last-child[b-ya5cd7gjqk] {
    border-bottom: none;
}

.lf-hbar-label[b-ya5cd7gjqk] {
    width: 160px;
    flex-shrink: 0;
    font-size: 12px;
    color: #1a1d2e;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.lf-hbar-track[b-ya5cd7gjqk] {
    flex: 1;
    height: 14px;
    background: #f0f4f8;
    border-radius: 7px;
    overflow: hidden;
}

.lf-hbar-fill[b-ya5cd7gjqk] {
    height: 100%;
    border-radius: 7px;
    transition: width .25s ease;
}

.lf-hbar-teal[b-ya5cd7gjqk] { background: linear-gradient(90deg, #00a896, #00d9c9); }
.lf-hbar-navy[b-ya5cd7gjqk] { background: linear-gradient(90deg, #0a3d62, #1a6fd4); }

.lf-hbar-actual[b-ya5cd7gjqk] {
    width: 48px;
    flex-shrink: 0;
    font-size: 12px;
    color: #4a5568;
    text-align: right;
    font-variant-numeric: tabular-nums;
}

/* Preview pane (right side, inside the Details splitter pane) — UX-6
   POC-style enriched preview: header strip + scrollable body containing the
   thumbnail card (with file-type badge), metadata rows, and IQ Analysis card. */
.lf-preview[b-ya5cd7gjqk] {
    height: 100%;
    display: flex;
    flex-direction: column;
    background: #fff;
    overflow: hidden;
}

.lf-preview-header[b-ya5cd7gjqk] {
    padding: 14px 16px;
    border-bottom: 1px solid #e2e8f0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-shrink: 0;
}

.lf-preview-title[b-ya5cd7gjqk] {
    font-size: 13px;
    font-weight: 700;
    color: #1a1d2e;
}

.lf-preview-body[b-ya5cd7gjqk] {
    flex: 1;
    overflow-y: auto;
    padding: 14px 16px;
}

.lf-preview-empty[b-ya5cd7gjqk] {
    text-align: center;
    padding: 40px 16px;
    color: #94a3b8;
    font-size: 12px;
}

/* Thumbnail card */
.lf-preview-thumb[b-ya5cd7gjqk] {
    width: 100%;
    height: 180px;
    background: #f7f9fc;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    overflow: hidden;
    position: relative;
}

.lf-preview-thumb-img[b-ya5cd7gjqk] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px;
}

.lf-preview-thumb-icon[b-ya5cd7gjqk] {
    font-size: 48px;
    opacity: 0.3;
}

.lf-preview-thumb-pending[b-ya5cd7gjqk] {
    font-size: 11px;
    color: #94a3b8;
    margin-top: 4px;
}

.lf-preview-thumb-type[b-ya5cd7gjqk] {
    position: absolute;
    top: 8px;
    right: 8px;
    background: rgba(0, 0, 0, 0.5);
    color: #fff;
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.3px;
    z-index: 2;
}

/* Clickable thumbnail — opens DocumentPreview modal (full DxPdfViewer for
   PDFs, DxCarousel for doc/xls/image previews). Same code path as the
   right-click Preview action; just a more obvious surface. */
.lf-preview-thumb-clickable[b-ya5cd7gjqk] {
    cursor: pointer;
}

.lf-preview-thumb-overlay[b-ya5cd7gjqk] {
    position: absolute;
    inset: 0;
    background: rgba(10, 61, 98, 0.55);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
    font-weight: 600;
    opacity: 0;
    transition: opacity .15s ease;
    border-radius: 8px;
    pointer-events: none;
}

.lf-preview-thumb-clickable:hover .lf-preview-thumb-overlay[b-ya5cd7gjqk] {
    opacity: 1;
}

/* Metadata rows */
.lf-preview-meta[b-ya5cd7gjqk] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 16px;
}

.lf-preview-meta-row[b-ya5cd7gjqk] {
    display: flex;
    gap: 8px;
    font-size: 11px;
    align-items: flex-start;
}

.lf-preview-meta-label[b-ya5cd7gjqk] {
    width: 100px;
    font-weight: 600;
    color: #94a3b8;
    flex-shrink: 0;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    font-size: 10px;
    padding-top: 1px;
}

.lf-preview-meta-val[b-ya5cd7gjqk] {
    color: #1a1d2e;
    flex: 1;
    word-break: break-word;
}

.lf-preview-meta-strong[b-ya5cd7gjqk] {
    font-weight: 600;
}

.lf-preview-verified-yes[b-ya5cd7gjqk] {
    color: #1a8a3a;
    font-weight: 600;
}

.lf-preview-verified-no[b-ya5cd7gjqk] {
    color: #94a3b8;
}

.lf-preview-checkedout[b-ya5cd7gjqk] {
    color: #c97c00;
    font-weight: 600;
}

.lf-preview-divider[b-ya5cd7gjqk] {
    height: 1px;
    background: #e2e8f0;
    margin: 12px 0;
}

/* IQ Analysis / AI summary card */
.lf-preview-ai[b-ya5cd7gjqk] {
    background: linear-gradient(135deg, rgba(26, 111, 212, 0.05), rgba(0, 168, 150, 0.05));
    border: 1px solid rgba(26, 111, 212, 0.12);
    border-radius: 8px;
    padding: 14px;
    margin-top: 8px;
}

.lf-preview-ai-title[b-ya5cd7gjqk] {
    font-size: 11px;
    font-weight: 700;
    color: #1a6fd4;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.lf-preview-ai-title[b-ya5cd7gjqk]::before {
    content: '✨';
    font-size: 13px;
}

.lf-preview-ai-text[b-ya5cd7gjqk] {
    font-size: 12px;
    line-height: 1.6;
    color: #4a5568;
    white-space: pre-wrap;
}

/* WebDAV editing session strip — shown in preview pane when the current user
   has the file checked out and it supports Office desktop editing. */
.lf-webdav-expiry[b-ya5cd7gjqk] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    border-radius: 4px;
    margin-top: 6px;
    font-size: 0.8rem;
}

.lf-webdav-expiry--active[b-ya5cd7gjqk] {
    background: #cff4fc;
    color: #055160;
    border: 1px solid #b6effb;
}

.lf-webdav-expiry-msg[b-ya5cd7gjqk] {
    flex: 1;
    min-width: 0;
}

.lf-webdav-reopen-btn[b-ya5cd7gjqk] {
    font-size: 0.75rem;
    white-space: nowrap;
    flex-shrink: 0;
}

.lf-webdav-expiry-actions[b-ya5cd7gjqk] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

/* Office lock held by another user — visible to everyone viewing the doc */
.lf-webdav-expiry--locked[b-ya5cd7gjqk] {
    background: #d1fae5;
    color: #065f46;
    border: 1px solid #a7f3d0;
}

/* Waiting for Office to send its LOCK after a Native Edit click */
.lf-webdav-expiry--pending[b-ya5cd7gjqk] {
    background: #f1f5f9;
    color: #475569;
    border: 1px solid #cbd5e1;
}

.lf-webdav-expiry--pending .lf-webdav-expiry-msg[b-ya5cd7gjqk]::after {
    /* Clip a static '...' by revealing it progressively — works in all browsers.
       Animating `content` in @keyframes only works in Chromium 87+. */
    content: '...';
    display: inline-block;
    overflow: hidden;
    width: 0;
    vertical-align: bottom;
    animation: lf-ellipsis-b-ya5cd7gjqk 1.2s steps(4, end) infinite;
}

@keyframes lf-ellipsis-b-ya5cd7gjqk {
    0%   { width: 0; }
    25%  { width: 0.5em; }
    50%  { width: 1em; }
    75%  { width: 1.5em; }
    100% { width: 0; }
}

/* Protected View warning — poll timed out without a LOCK */
.lf-webdav-expiry--warning[b-ya5cd7gjqk] {
    background: #fff3cd;
    color: #664d03;
    border: 1px solid #ffe69c;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
}

.lf-webdav-setup-link[b-ya5cd7gjqk] {
    font-size: 0.75rem;
    color: #0d6efd;
    text-decoration: underline;
    white-space: nowrap;
    align-self: center;
}
/* /Components/Pages/Documents/DropDocs.razor.rz.scp.css */
.custom-drop-zone[b-vz573ehv01] {
	padding: 0 !important;
	border-style: dashed !important;
	border-width: 2px !important;
	height: 230px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

	.custom-drop-zone svg[b-vz573ehv01] {
		width: 42px;
		height: 42px;
	}

.drop-file-icon[b-vz573ehv01] {
	mask-repeat: no-repeat !important;
	-webkit-mask-repeat: no-repeat !important;
	height: 42px !important;
	width: 42px !important;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	margin: 3px 0 0 0 !important;
	display: inline-block;
	-webkit-mask-image: url("/images/menuicons/drag.svg");
	mask-image: url("/images/menuicons/drag.svg");
	mask-size: contain;
	background-color: currentColor;
	/*background-size: contain;
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	background-position: center center;
	background-color: currentColor;
	width: 42px;
	height: 42px;
	-webkit-mask-image: url("/images/menuicons/drag.svg");
	mask-image: url("/images/menuicons/drag.svg");*/
}
/* /Components/Pages/Echelon/Compliance/EchelonCompliance.razor.rz.scp.css */
.ech-compliance-page[b-jo9tmiiqiq] {
    width: 100%;
}

/* ── Summary cards ────────────────────────────────────────────────── */
.ech-compliance-summary[b-jo9tmiiqiq] {
    display: flex;
    gap: 1rem;
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
}

.ech-summary-card[b-jo9tmiiqiq] {
    background: #ffffff;
    border-radius: 10px;
    box-shadow: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.06);
    padding: 1rem;
    text-align: center;
    flex: 1;
    min-width: 140px;
}

.ech-summary-val[b-jo9tmiiqiq] {
    font-size: 1.5rem;
    font-weight: 700;
}

.ech-summary-label[b-jo9tmiiqiq] {
    font-size: .75rem;
    color: #9ca3af;
    margin-top: .15rem;
}

.ech-summary-green .ech-summary-val[b-jo9tmiiqiq] { color: #11C683; }
.ech-summary-amber .ech-summary-val[b-jo9tmiiqiq] { color: #d97706; }
.ech-summary-blue  .ech-summary-val[b-jo9tmiiqiq] { color: #3b82f6; }

/* ── Table ────────────────────────────────────────────────────────── */
.ech-tbl[b-jo9tmiiqiq] {
    width: 100%;
    border-collapse: collapse;
}

.ech-tbl th[b-jo9tmiiqiq] {
    background: #f8f9fb;
    padding: .55rem .9rem;
    text-align: left;
    font-size: .67rem;
    font-weight: 700;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: .5px;
    border-bottom: 2px solid #e5e7eb;
    white-space: nowrap;
}

.ech-tbl td[b-jo9tmiiqiq] {
    padding: .6rem .9rem;
    font-size: .8rem;
    color: #1a1a2e;
    border-bottom: 1px solid #f3f4f6;
    vertical-align: middle;
}

.ech-tbl tr:last-child td[b-jo9tmiiqiq] {
    border-bottom: none;
}

.ech-tbl-row[b-jo9tmiiqiq] {
    cursor: pointer;
    transition: background .15s;
}

.ech-tbl-row:hover td[b-jo9tmiiqiq] {
    background: rgba(17,198,131,.04);
}

/* ── Loading / Empty ──────────────────────────────────────────────── */
.ech-compliance-loading[b-jo9tmiiqiq] {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

.ech-compliance-skeleton[b-jo9tmiiqiq] {
    height: 36px;
    border-radius: 6px;
    background: #e5e7eb;
    animation: echCompPulse-b-jo9tmiiqiq 1.5s ease-in-out infinite;
}

@keyframes echCompPulse-b-jo9tmiiqiq {
    0%, 100% { opacity: 1; }
    50%      { opacity: .4; }
}

.ech-compliance-empty[b-jo9tmiiqiq] {
    text-align: center;
    color: #9ca3af;
    padding: 3rem 1rem;
}

.ech-compliance-empty p[b-jo9tmiiqiq] {
    font-size: .82rem;
    margin-top: .5rem;
}

/* ── Responsive ───────────────────────────────────────────────────── */
@media (max-width: 768px) {
    .ech-compliance-summary[b-jo9tmiiqiq] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .ech-compliance-summary[b-jo9tmiiqiq] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Echelon/Dashboard/EchelonDashboard.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════
   echelon Client Portal — Dashboard
   Design tokens from Brett's echelon-portal.html POC.
   ═══════════════════════════════════════════════════════════════════ */

.ech-dash[b-ha4olqr7v7] {
    width: 100%;
    animation: echFadeIn 0.3s ease;
}

/* ─── Invite banner ─────────────────────────────────────────────── */

.ech-invite-banner[b-ha4olqr7v7] {
    background: linear-gradient(135deg, #0891b2, #0d9488);
    color: #fff;
    padding: 1rem 3rem 1rem 1.25rem;
    border-radius: 10px;
    margin-bottom: 1.25rem;
    display: flex;
    align-items: center;
    gap: .75rem;
    font-size: .9rem;
    position: relative;
    box-shadow: 0 2px 12px rgba(8,145,178,.25);
    animation: ech-slide-down-b-ha4olqr7v7 .4s ease;
}

.ech-invite-close[b-ha4olqr7v7] {
    position: absolute;
    top: 8px;
    right: 12px;
    background: none;
    border: none;
    color: #fff;
    font-size: 1.3rem;
    cursor: pointer;
    line-height: 1;
    opacity: .8;
}

.ech-invite-close:hover[b-ha4olqr7v7] {
    opacity: 1;
}

@keyframes ech-slide-down-b-ha4olqr7v7 {
    from { opacity: 0; transform: translateY(-16px); }
    to   { opacity: 1; transform: translateY(0); }
}

/* ─── ES pending questionnaire banner ───────────────────────────── */

.ech-es-banner[b-ha4olqr7v7] {
    background: linear-gradient(135deg, #059669, #047857);
    color: #fff;
    padding: 1rem 3rem 1rem 1.25rem;
    border-radius: 10px;
    margin-bottom: 1.25rem;
    display: flex;
    align-items: center;
    gap: .75rem;
    font-size: .9rem;
    position: relative;
    box-shadow: 0 2px 12px rgba(5,150,105,.25);
    animation: ech-slide-down-b-ha4olqr7v7 .4s ease;
}

.ech-es-banner-btn[b-ha4olqr7v7] {
    background: rgba(255,255,255,.2);
    border: 1.5px solid rgba(255,255,255,.5);
    color: #fff;
    font-size: .78rem;
    font-weight: 600;
    padding: .3rem .85rem;
    border-radius: 6px;
    cursor: pointer;
    white-space: nowrap;
    transition: background .15s;
}

.ech-es-banner-btn:hover[b-ha4olqr7v7] {
    background: rgba(255,255,255,.35);
}

.ech-es-banner-btn--outline[b-ha4olqr7v7] {
    background: transparent;
    border-color: rgba(255,255,255,.4);
}

/* ─── Welcome hero ───────────────────────────────────────────────── */

.ech-hero[b-ha4olqr7v7] {
    background: linear-gradient(135deg, #1a1a2e, #16213e);
    border-radius: 10px;
    padding: 1.5rem;
    color: #fff;
    margin-bottom: 1.25rem;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.ech-hero-right[b-ha4olqr7v7] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: .75rem;
}

.ech-hero-alerts[b-ha4olqr7v7] {
    display: flex;
    gap: .5rem;
}

.ech-hero-change-up[b-ha4olqr7v7] {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    font-size: .8rem;
    font-weight: 600;
    padding: .25rem .6rem;
    border-radius: 20px;
    background: rgba(17, 198, 131, .15);
    color: #11C683;
}

.ech-hero-change-down[b-ha4olqr7v7] {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    font-size: .8rem;
    font-weight: 600;
    padding: .25rem .6rem;
    border-radius: 20px;
    background: rgba(239, 68, 68, .15);
    color: #ef4444;
}

.ech-hero-greeting[b-ha4olqr7v7] {
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: -0.5px;
    margin-bottom: 0.2rem;
}

.ech-hero-sub[b-ha4olqr7v7] {
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.5);
}

/* Primary KPI — the persona-driven big number (Portfolio Value / Net Worth /
   Trust Value). Suppressed when the value would be misleading (mixed CCY, no
   priced holdings) — see EchelonDashboard.BuildHeroKpi. */
.ech-hero-kpi[b-ha4olqr7v7] {
    margin-top: 0.9rem;
}

.ech-hero-kpi-val[b-ha4olqr7v7] {
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: -0.5px;
    color: #fff;
}

.ech-hero-kpi-label[b-ha4olqr7v7] {
    font-size: 0.72rem;
    color: rgba(255, 255, 255, 0.55);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 0.1rem;
}

.ech-hero-stats[b-ha4olqr7v7] {
    display: flex;
    gap: 2rem;
}

.ech-hero-stat[b-ha4olqr7v7] {
    text-align: center;
}

.ech-hero-stat-val[b-ha4olqr7v7] {
    font-size: 1.6rem;
    font-weight: 700;
}

.ech-hero-stat-label[b-ha4olqr7v7] {
    font-size: 0.68rem;
    color: rgba(255, 255, 255, 0.45);
    text-transform: uppercase;
    letter-spacing: 0.4px;
    margin-top: 0.1rem;
}

/* ─── Tile grid ──────────────────────────────────────────────────── */

.ech-grid[b-ha4olqr7v7] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
    margin-bottom: 1.25rem;
}

@media (max-width: 640px) {
    .ech-hero[b-ha4olqr7v7] { flex-direction: column; gap: 1rem; }
    .ech-hero-stats[b-ha4olqr7v7] { justify-content: space-around; width: 100%; }
}
/* /Components/Pages/Echelon/Documents/EchelonDocuments.razor.rz.scp.css */
.ech-documents-page[b-3bz6cqish4] {
    width: 100%;
}

/* ── Filter bar ───────────────────────────────────────────────────── */
.ech-filter-bar[b-3bz6cqish4] {
    display: flex;
    gap: .6rem;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 1rem;
}

.ech-filter-select[b-3bz6cqish4] {
    padding: .4rem .6rem;
    border: 1.5px solid #e5e7eb;
    border-radius: 6px;
    font-size: .78rem;
    color: #1a1a2e;
    background: white;
    cursor: pointer;
    outline: none;
    font-family: inherit;
}

.ech-filter-select:focus[b-3bz6cqish4] {
    border-color: #11C683;
}

.ech-filter-search[b-3bz6cqish4] {
    padding: .4rem .8rem;
    border: 1.5px solid #e5e7eb;
    border-radius: 6px;
    font-size: .78rem;
    width: 200px;
    outline: none;
    font-family: inherit;
}

.ech-filter-search:focus[b-3bz6cqish4] {
    border-color: #11C683;
}

/* ── Table ────────────────────────────────────────────────────────── */
.ech-tbl[b-3bz6cqish4] {
    width: 100%;
    border-collapse: collapse;
}

.ech-tbl th[b-3bz6cqish4] {
    background: #f8f9fb;
    padding: .55rem .9rem;
    text-align: left;
    font-size: .67rem;
    font-weight: 700;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: .5px;
    border-bottom: 2px solid #e5e7eb;
    white-space: nowrap;
}

.ech-tbl td[b-3bz6cqish4] {
    padding: .6rem .9rem;
    font-size: .8rem;
    color: #1a1a2e;
    border-bottom: 1px solid #f3f4f6;
    vertical-align: middle;
}

.ech-tbl tr:last-child td[b-3bz6cqish4] {
    border-bottom: none;
}

.ech-tbl-row[b-3bz6cqish4] {
    cursor: pointer;
    transition: background .15s;
}

.ech-tbl-row:hover td[b-3bz6cqish4] {
    background: rgba(17,198,131,.04);
}

.ech-tbl-row.selected td[b-3bz6cqish4] {
    background: rgba(17,198,131,.08);
}

/* ── Loading / Empty ──────────────────────────────────────────────── */
.ech-doc-loading[b-3bz6cqish4] {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

.ech-doc-skeleton[b-3bz6cqish4] {
    height: 36px;
    border-radius: 6px;
    background: #e5e7eb;
    animation: echDocPulse-b-3bz6cqish4 1.5s ease-in-out infinite;
}

@keyframes echDocPulse-b-3bz6cqish4 {
    0%, 100% { opacity: 1; }
    50%      { opacity: .4; }
}

.ech-doc-empty[b-3bz6cqish4],
.ech-doc-empty-preview[b-3bz6cqish4] {
    text-align: center;
    color: #9ca3af;
    padding: 3rem 1rem;
}

.ech-doc-empty p[b-3bz6cqish4],
.ech-doc-empty-preview p[b-3bz6cqish4] {
    font-size: .82rem;
    margin-top: .5rem;
}
/* /Components/Pages/Echelon/Entities/EchelonEntities.razor.rz.scp.css */
.ech-entities-page[b-1eak68c5ng] {
    width: 100%;
}

/* ── Entity card grid ─────────────────────────────────────────────── */
.ech-entity-grid[b-1eak68c5ng] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.ech-entity-card[b-1eak68c5ng] {
    background: white;
    border: 1.5px solid #e5e7eb;
    border-radius: 10px;
    padding: 1rem;
    cursor: pointer;
    transition: all .2s;
}

.ech-entity-card:hover[b-1eak68c5ng] {
    border-color: #11C683;
    box-shadow: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.06);
}

.ech-entity-card.highlighted[b-1eak68c5ng] {
    border-color: #11C683;
    background: rgba(17,198,131,.04);
}

.ech-entity-card-name[b-1eak68c5ng] {
    font-size: .88rem;
    font-weight: 600;
    color: #1a1a2e;
    margin-bottom: .25rem;
}

.ech-entity-card-meta[b-1eak68c5ng] {
    font-size: .72rem;
    color: #6b7280;
    margin-bottom: .35rem;
}

.ech-entity-card-badges[b-1eak68c5ng] {
    display: flex;
    gap: .3rem;
    flex-wrap: wrap;
}

/* ── Ownership structure card ─────────────────────────────────────── */
.ech-ownership-card[b-1eak68c5ng] {
    background: white;
    border-radius: 10px;
    box-shadow: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.06);
    padding: 1.25rem;
    margin-top: 1rem;
}

.ech-ownership-header[b-1eak68c5ng] {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin-bottom: 1rem;
    font-size: .82rem;
    font-weight: 600;
    color: #1a1a2e;
}

.ech-ownership-list[b-1eak68c5ng] {
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

.ech-ownership-row[b-1eak68c5ng] {
    display: grid;
    grid-template-columns: 1fr auto 180px;
    gap: 1rem;
    align-items: center;
    padding: .5rem .75rem;
    background: #f9fafb;
    border-radius: 6px;
}

.ech-ownership-name[b-1eak68c5ng] {
    font-size: .82rem;
    font-weight: 500;
    color: #1a1a2e;
}

.ech-ownership-type[b-1eak68c5ng] {
    font-size: .72rem;
    color: #6b7280;
    white-space: nowrap;
}

.ech-ownership-holding[b-1eak68c5ng] {
    display: flex;
    align-items: center;
    gap: .5rem;
}

.ech-ownership-bar-bg[b-1eak68c5ng] {
    flex: 1;
    height: 6px;
    background: #e5e7eb;
    border-radius: 3px;
    overflow: hidden;
}

.ech-ownership-bar[b-1eak68c5ng] {
    height: 100%;
    background: #11C683;
    border-radius: 3px;
    transition: width .3s ease;
}

.ech-ownership-pct[b-1eak68c5ng] {
    font-size: .75rem;
    font-weight: 600;
    color: #11C683;
    white-space: nowrap;
    min-width: 40px;
    text-align: right;
}

.ech-ownership-footer[b-1eak68c5ng] {
    margin-top: 1rem;
    padding-top: .75rem;
    border-top: 1px solid #e5e7eb;
}

.ech-ownership-loading[b-1eak68c5ng],
.ech-ownership-empty[b-1eak68c5ng] {
    text-align: center;
    color: #9ca3af;
    padding: 1.5rem;
    font-size: .82rem;
}

/* ── Skeleton / Empty ─────────────────────────────────────────────── */
.ech-entity-skeleton[b-1eak68c5ng] {
    height: 80px;
    border-radius: 6px;
    background: #e5e7eb;
    animation: echEntPulse-b-1eak68c5ng 1.5s ease-in-out infinite;
}

@keyframes echEntPulse-b-1eak68c5ng {
    0%, 100% { opacity: 1; }
    50%      { opacity: .4; }
}

.ech-entities-empty[b-1eak68c5ng] {
    text-align: center;
    color: #9ca3af;
    padding: 3rem 1rem;
}

.ech-entities-empty p[b-1eak68c5ng] {
    font-size: .82rem;
    margin-top: .5rem;
}

/* ── Responsive ───────────────────────────────────────────────────── */
@media (max-width: 1024px) {
    .ech-entity-grid[b-1eak68c5ng] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .ech-entity-grid[b-1eak68c5ng] {
        grid-template-columns: 1fr;
    }

    .ech-ownership-row[b-1eak68c5ng] {
        grid-template-columns: 1fr;
        gap: .25rem;
    }
}
/* /Components/Pages/Echelon/Messages/EchelonMessages.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════
   EchelonMessages — scoped styles matching POC msg-* classes
   ═══════════════════════════════════════════════════════════════════ */

.ech-messages-page[b-6hsqvwqbk4] {
    width: 100%;
}

/* ── Message list ─────────────────────────────────────────────────── */
.ech-msg-list[b-6hsqvwqbk4] {
    max-height: calc(100vh - 260px);
    overflow-y: auto;
}

.ech-msg-item[b-6hsqvwqbk4] {
    display: flex;
    gap: .75rem;
    padding: .7rem .9rem;
    cursor: pointer;
    border-bottom: 1px solid #f3f4f6;
    transition: background .15s;
    align-items: flex-start;
}

.ech-msg-item:last-child[b-6hsqvwqbk4] {
    border-bottom: none;
}

.ech-msg-item:hover[b-6hsqvwqbk4] {
    background: rgba(17, 198, 131, .04);
}

.ech-msg-item.selected[b-6hsqvwqbk4] {
    background: rgba(17, 198, 131, .08);
    border-left: 3px solid #11C683;
}

.ech-msg-item.unread[b-6hsqvwqbk4] {
    font-weight: 600;
}

.ech-msg-item.unread[b-6hsqvwqbk4]  .ech-msg-sender {
    font-weight: 700;
}

/* ── Avatar ───────────────────────────────────────────────────────── */
.ech-msg-avatar[b-6hsqvwqbk4] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .7rem;
    font-weight: 700;
    color: white;
    flex-shrink: 0;
}

/* ── Content ──────────────────────────────────────────────────────── */
.ech-msg-content[b-6hsqvwqbk4] {
    flex: 1;
    min-width: 0;
}

.ech-msg-sender[b-6hsqvwqbk4] {
    font-size: .8rem;
    color: #1a1a2e;
    margin-bottom: .1rem;
}

.ech-msg-subject[b-6hsqvwqbk4] {
    font-size: .75rem;
    color: #6b7280;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ech-msg-attach[b-6hsqvwqbk4] {
    color: #9ca3af;
    font-size: .7rem;
    margin-top: .15rem;
}

.ech-msg-date[b-6hsqvwqbk4] {
    font-size: .65rem;
    color: #9ca3af;
    flex-shrink: 0;
    margin-top: .1rem;
    white-space: nowrap;
}

/* ── Message body in preview ──────────────────────────────────────── */
.ech-msg-body[b-6hsqvwqbk4] {
    font-size: .82rem;
    white-space: pre-line;
    line-height: 1.6;
    color: #1a1a2e;
}

/* ── Attachment pill ──────────────────────────────────────────────── */
.ech-attachment-pill[b-6hsqvwqbk4] {
    margin-top: .5rem;
    padding: .6rem;
    background: #f3f4f6;
    border-radius: 6px;
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: .78rem;
    cursor: pointer;
    transition: background .15s;
}

.ech-attachment-pill:hover[b-6hsqvwqbk4] {
    background: #e5e7eb;
}

/* ── Empty states ─────────────────────────────────────────────────── */
.ech-msg-empty[b-6hsqvwqbk4] {
    text-align: center;
    color: #9ca3af;
    padding: 3rem 1rem;
}

.ech-msg-empty p[b-6hsqvwqbk4] {
    font-size: .82rem;
    margin-top: .5rem;
}

.ech-msg-empty-preview[b-6hsqvwqbk4] {
    text-align: center;
    color: #9ca3af;
    padding: 2rem 0;
}

.ech-msg-empty-preview p[b-6hsqvwqbk4] {
    font-size: .82rem;
    margin-top: .5rem;
}

/* ── Loading skeletons ────────────────────────────────────────────── */
.ech-msg-skeleton-avatar[b-6hsqvwqbk4] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #e5e7eb;
    flex-shrink: 0;
    animation: echPulse-b-6hsqvwqbk4 1.5s ease-in-out infinite;
}

.ech-msg-skeleton-lines[b-6hsqvwqbk4] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: .4rem;
    padding-top: .2rem;
}

.ech-msg-skeleton-line[b-6hsqvwqbk4] {
    height: 10px;
    border-radius: 4px;
    background: #e5e7eb;
    animation: echPulse-b-6hsqvwqbk4 1.5s ease-in-out infinite;
}

.ech-msg-skeleton-line.w60[b-6hsqvwqbk4] { width: 60%; }
.ech-msg-skeleton-line.w90[b-6hsqvwqbk4] { width: 90%; }

@keyframes echPulse-b-6hsqvwqbk4 {
    0%, 100% { opacity: 1; }
    50%      { opacity: .4; }
}

/* ── Responsive ───────────────────────────────────────────────────── */
@media (max-width: 1024px) {
    .ech-msg-list[b-6hsqvwqbk4] {
        max-height: 50vh;
    }
}
/* /Components/Pages/Echelon/Portfolio/EchelonPortfolio.razor.rz.scp.css */
.ech-portfolio-page[b-a4mctnk8d7] {
    width: 100%;
}

/* Hero shared styles live in echelon-pages.css (.ech-hero-banner*) */

/* ── Charts row ───────────────────────────────────────────────────── */
.ech-charts-row[b-a4mctnk8d7] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-bottom: 1rem;
}

/* ── Pie legend ───────────────────────────────────────────────────── */
.ech-pie-legend[b-a4mctnk8d7] {
    display: flex;
    flex-direction: column;
    gap: .4rem;
}

.ech-pie-legend-item[b-a4mctnk8d7] {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: .78rem;
    color: #1a1a2e;
}

.ech-pie-legend-dot[b-a4mctnk8d7] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex-shrink: 0;
}

/* ── Bar chart ────────────────────────────────────────────────────── */
.ech-bar-chart[b-a4mctnk8d7] {
    display: flex;
    align-items: flex-end;
    gap: 6px;
    height: 150px;
    padding-top: 10px;
}

.ech-bar-col[b-a4mctnk8d7] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 100%;
    justify-content: flex-end;
    position: relative;
    min-width: 20px;
}

.ech-bar[b-a4mctnk8d7] {
    background: #11C683;
    border-radius: 3px 3px 0 0;
    width: 100%;
    transition: height .5s;
    min-height: 4px;
}

.ech-bar:hover[b-a4mctnk8d7] {
    opacity: .85;
}

.ech-bar-label[b-a4mctnk8d7] {
    font-size: .6rem;
    color: #9ca3af;
    white-space: nowrap;
    margin-top: 4px;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    text-align: center;
}

.ech-bar-val[b-a4mctnk8d7] {
    font-size: .62rem;
    font-weight: 600;
    color: #6b7280;
    margin-bottom: 2px;
}

/* ── Filter bar ───────────────────────────────────────────────────── */
.ech-filter-bar[b-a4mctnk8d7] {
    display: flex;
    gap: .6rem;
    align-items: center;
    margin-bottom: 1rem;
}

.ech-filter-select[b-a4mctnk8d7] {
    padding: .4rem .6rem;
    border: 1.5px solid #e5e7eb;
    border-radius: 6px;
    font-size: .78rem;
    color: #1a1a2e;
    background: white;
    cursor: pointer;
    outline: none;
    font-family: inherit;
}

/* ── Table ────────────────────────────────────────────────────────── */
.ech-tbl[b-a4mctnk8d7] { width: 100%; border-collapse: collapse; }
.ech-tbl th[b-a4mctnk8d7] { background: #f8f9fb; padding: .55rem .9rem; text-align: left; font-size: .67rem; font-weight: 700; color: #9ca3af; text-transform: uppercase; letter-spacing: .5px; border-bottom: 2px solid #e5e7eb; white-space: nowrap; }
.ech-tbl td[b-a4mctnk8d7] { padding: .6rem .9rem; font-size: .8rem; color: #1a1a2e; border-bottom: 1px solid #f3f4f6; }
.ech-tbl tr:last-child td[b-a4mctnk8d7] { border-bottom: none; }
.ech-tbl tr:hover td[b-a4mctnk8d7] { background: rgba(17,198,131,.04); }

@keyframes echPulse-b-a4mctnk8d7 { 0%,100%{opacity:1} 50%{opacity:.4} }

@media (max-width: 1024px) {
    .ech-charts-row[b-a4mctnk8d7] {
        grid-template-columns: 1fr;
    }
}

/* /Components/Pages/Echelon/Profile/EchelonProfile.razor.rz.scp.css */
.ech-profile-page[b-dmetur5ec4] {
    max-width: 700px;
    margin: 0 auto;
}

.ech-profile-body[b-dmetur5ec4] {
    padding: 1.5rem;
}

.ech-profile-grid[b-dmetur5ec4] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
}

.ech-profile-footer[b-dmetur5ec4] {
    margin-top: 1.25rem;
    padding-top: 1rem;
    border-top: 1px solid #e5e7eb;
}

.ech-profile-loading[b-dmetur5ec4] {
    text-align: center;
    color: #9ca3af;
    padding: 2rem;
    font-size: .85rem;
}

@media (max-width: 640px) {
    .ech-profile-grid[b-dmetur5ec4] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Echelon/Requests/EchelonRequests.razor.rz.scp.css */
.ech-requests-page[b-qrl7fwxxgd] {
    max-width: 800px;
    margin: 0 auto;
}

/* ── Request item (matches POC .request-item) ─────────────────────── */
.ech-req-item[b-qrl7fwxxgd] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: .8rem 1rem;
    border-bottom: 1px solid #f3f4f6;
    transition: background .15s;
    cursor: pointer;
}

.ech-req-item:last-child[b-qrl7fwxxgd] {
    border-bottom: none;
}

.ech-req-item:hover[b-qrl7fwxxgd] {
    background: rgba(17,198,131,.04);
}

.ech-req-item.selected[b-qrl7fwxxgd] {
    background: rgba(17,198,131,.06);
    border-left: 3px solid #11C683;
}

/* ── Inline detail panel ──────────────────────────────────────────── */
.ech-req-detail[b-qrl7fwxxgd] {
    padding: .75rem 1rem .75rem 3.25rem;
    background: #f9fafb;
    border-bottom: 1px solid #e5e7eb;
    animation: echReqSlide-b-qrl7fwxxgd .2s ease;
}

.ech-req-narrative[b-qrl7fwxxgd] {
    font-size: .82rem;
    white-space: pre-line;
    line-height: 1.6;
    color: #1a1a2e;
}

@keyframes echReqSlide-b-qrl7fwxxgd {
    from { opacity: 0; max-height: 0; padding-top: 0; padding-bottom: 0; }
    to   { opacity: 1; max-height: 400px; }
}

.ech-req-icon[b-qrl7fwxxgd] {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ech-req-info[b-qrl7fwxxgd] {
    flex: 1;
    min-width: 0;
}

.ech-req-title[b-qrl7fwxxgd] {
    font-size: .82rem;
    font-weight: 600;
    color: #1a1a2e;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ech-req-meta[b-qrl7fwxxgd] {
    font-size: .72rem;
    color: #6b7280;
}

/* ── Loading / Empty ──────────────────────────────────────────────── */
.ech-req-loading[b-qrl7fwxxgd] {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: .5rem;
}

.ech-req-skeleton[b-qrl7fwxxgd] {
    height: 52px;
    border-radius: 6px;
    background: #e5e7eb;
    animation: echReqPulse-b-qrl7fwxxgd 1.5s ease-in-out infinite;
}

@keyframes echReqPulse-b-qrl7fwxxgd {
    0%, 100% { opacity: 1; }
    50%      { opacity: .4; }
}

.ech-req-empty[b-qrl7fwxxgd] {
    text-align: center;
    color: #9ca3af;
    padding: 2rem 1rem;
    font-size: .82rem;
}
/* /Components/Pages/Echelon/Services/EchelonESQuestionnaire.razor.rz.scp.css */
.ech-esq-modal[b-cc206zq6yb] {
    width: 780px;
    max-width: 95vw;
}

.ech-esq-header[b-cc206zq6yb] {
    background: linear-gradient(135deg, #059669, #0d9488);
    color: #fff;
    border-radius: 10px 10px 0 0;
}

.ech-esq-header .ech-modal-title[b-cc206zq6yb] { color: #fff; }

.ech-esq-subtitle[b-cc206zq6yb] {
    font-size: .8rem;
    opacity: .85;
    margin-top: 3px;
}

.ech-esq-body[b-cc206zq6yb] {
    max-height: 70vh;
    overflow-y: auto;
}

.ech-esq-intro[b-cc206zq6yb] {
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 8px;
    padding: 12px 14px;
    margin-bottom: 1.25rem;
    font-size: .82rem;
    color: #166534;
    line-height: 1.5;
}

/* ── Section ──────────────────────────────────────────────────────── */
.ech-esq-section[b-cc206zq6yb] {
    margin-bottom: 1.25rem;
    padding-bottom: 1.25rem;
    border-bottom: 1px solid #f3f4f6;
}

.ech-esq-section:last-child[b-cc206zq6yb] {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.ech-esq-section-title[b-cc206zq6yb] {
    font-weight: 700;
    font-size: .82rem;
    color: #0a3d62;
    margin-bottom: .75rem;
    padding-bottom: 5px;
    border-bottom: 2px solid #059669;
    display: inline-block;
}

/* ── Hint text ────────────────────────────────────────────────────── */
.ech-esq-hint[b-cc206zq6yb] {
    font-size: .74rem;
    color: #64748b;
    margin-top: 5px;
    padding: 5px 10px;
    background: #f8fafc;
    border-left: 3px solid #0d9488;
    border-radius: 0 4px 4px 0;
    line-height: 1.45;
}

.ech-esq-field-hint[b-cc206zq6yb] {
    font-size: .72rem;
    color: #9ca3af;
    margin-top: 3px;
}

/* ── Foreign tax resident checkbox ───────────────────────────────── */
.ech-esq-check-row[b-cc206zq6yb] {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    font-size: .82rem;
    cursor: pointer;
    padding: 8px 10px;
    border: 1.5px solid #e5e7eb;
    border-radius: 6px;
    margin-bottom: .5rem;
    transition: border-color .15s, background .15s;
}

.ech-esq-check-row:hover[b-cc206zq6yb] {
    border-color: #059669;
    background: #f0fdf4;
}

.ech-esq-check-row input[type="checkbox"][b-cc206zq6yb] {
    margin-top: 2px;
    flex-shrink: 0;
    accent-color: #059669;
}

/* ── Activity checkboxes ──────────────────────────────────────────── */
.ech-esq-activity-grid[b-cc206zq6yb] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .4rem;
    margin-top: .25rem;
}

.ech-esq-activity-item[b-cc206zq6yb] {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: 7px 10px;
    border: 1.5px solid #e5e7eb;
    border-radius: 6px;
    font-size: .8rem;
    cursor: pointer;
    transition: border-color .15s, background .15s;
}

.ech-esq-activity-item:hover[b-cc206zq6yb],
.ech-esq-activity-item.selected[b-cc206zq6yb] {
    border-color: #059669;
    background: #f0fdf4;
}

.ech-esq-activity-item input[type="checkbox"][b-cc206zq6yb] {
    accent-color: #059669;
    flex-shrink: 0;
}

/* ── Narrow selects / number inputs ──────────────────────────────── */
.ech-esq-select-sm[b-cc206zq6yb] { max-width: 280px; }
.ech-esq-num[b-cc206zq6yb]       { max-width: 200px; }

/* ── Supporting documents ─────────────────────────────────────────── */
.ech-esq-optional[b-cc206zq6yb] {
    font-size: .72rem;
    font-weight: 400;
    color: #9ca3af;
    margin-left: .4rem;
}

.ech-esq-upload-zone[b-cc206zq6yb] {
    position: relative;
    display: flex;
    align-items: center;
    gap: .6rem;
    padding: 14px 16px;
    border: 1.5px dashed #d1d5db;
    border-radius: 6px;
    font-size: .8rem;
    color: #6b7280;
    cursor: pointer;
    transition: border-color .15s, background .15s;
    margin-top: .5rem;
}

.ech-esq-upload-zone:hover[b-cc206zq6yb],
.ech-esq-upload-zone:focus-within[b-cc206zq6yb] {
    border-color: #059669;
    background: #f0fdf4;
    color: #059669;
}

.ech-esq-upload-zone--busy[b-cc206zq6yb] {
    opacity: .6;
    pointer-events: none;
}

.ech-esq-file-list[b-cc206zq6yb] {
    display: flex;
    flex-direction: column;
    gap: .3rem;
    margin-top: .6rem;
}

.ech-esq-file-item[b-cc206zq6yb] {
    display: flex;
    align-items: center;
    gap: .45rem;
    padding: 5px 10px;
    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 5px;
    font-size: .78rem;
    color: #374151;
}

.ech-esq-file-item span[b-cc206zq6yb] { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.ech-esq-file-remove[b-cc206zq6yb] {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 1rem;
    line-height: 1;
    color: #9ca3af;
    padding: 0 2px;
    flex-shrink: 0;
    transition: color .1s;
}

.ech-esq-file-remove:hover[b-cc206zq6yb] { color: #dc2626; }

/* ── Declaration ──────────────────────────────────────────────────── */
.ech-esq-declaration[b-cc206zq6yb] {
    display: flex;
    align-items: flex-start;
    gap: .6rem;
    font-size: .8rem;
    cursor: pointer;
    padding: 10px 12px;
    border: 1.5px solid #e5e7eb;
    border-radius: 6px;
    line-height: 1.5;
    transition: border-color .2s, background .2s;
}

.ech-esq-declaration:hover[b-cc206zq6yb] { border-color: #059669; }

.ech-esq-declaration input[type="checkbox"][b-cc206zq6yb] {
    margin-top: 2px;
    flex-shrink: 0;
    accent-color: #059669;
}

.ech-esq-declaration--pulse[b-cc206zq6yb] {
    border-color: #dc2626;
    background: #fef2f2;
    animation: esqPulse-b-cc206zq6yb .4s ease-in-out;
}

@keyframes esqPulse-b-cc206zq6yb {
    0%, 100% { transform: none; }
    25%       { transform: translateX(-3px); }
    75%       { transform: translateX(3px); }
}

/* ── Error ────────────────────────────────────────────────────────── */
.ech-esq-error[b-cc206zq6yb] {
    font-size: .78rem;
    color: #dc2626;
    padding: 6px 10px;
    background: #fef2f2;
    border-radius: 4px;
}

@media (max-width: 600px) {
    .ech-esq-activity-grid[b-cc206zq6yb] { grid-template-columns: 1fr; }
    .ech-esq-select-sm[b-cc206zq6yb], .ech-esq-num[b-cc206zq6yb] { max-width: 100%; }
}
/* /Components/Pages/Echelon/Services/EchelonServices.razor.rz.scp.css */
.ech-services-page[b-b9px365d6e] {
    width: 100%;
}

.ech-services-intro[b-b9px365d6e] {
    font-size: .85rem;
    color: #6b7280;
    margin-bottom: 1.25rem;
    line-height: 1.4;
}

.ech-services-group-label[b-b9px365d6e] {
    font-size: .72rem;
    font-weight: 700;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: .5px;
    margin-bottom: .75rem;
}

/* ── Service cards ────────────────────────────────────────────────── */
.ech-service-grid[b-b9px365d6e] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.ech-service-card[b-b9px365d6e] {
    background: white;
    border: 1.5px solid #e5e7eb;
    border-radius: 10px;
    padding: 1.25rem;
    cursor: pointer;
    transition: all .25s;
}

.ech-service-card:hover[b-b9px365d6e] {
    border-color: #11C683;
    box-shadow: 0 10px 25px rgba(0,0,0,.1);
    transform: translateY(-2px);
}

.ech-service-icon[b-b9px365d6e] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: .75rem;
}

.ech-service-title[b-b9px365d6e] {
    font-size: .88rem;
    font-weight: 600;
    color: #1a1a2e;
    margin-bottom: .25rem;
}

.ech-service-desc[b-b9px365d6e] {
    font-size: .75rem;
    color: #6b7280;
    line-height: 1.4;
}

.ech-service-eta[b-b9px365d6e] {
    font-size: .68rem;
    color: #9ca3af;
    margin-top: .5rem;
    display: flex;
    align-items: center;
    gap: .3rem;
}

@media (max-width: 640px) {
    .ech-service-grid[b-b9px365d6e] {
        grid-template-columns: 1fr;
    }
}

/* ES card action state + pending badge */
.ech-service-card--action[b-b9px365d6e] {
    border-color: #059669;
    box-shadow: 0 0 0 1px rgba(5,150,105,.2);
}

.ech-service-badge[b-b9px365d6e] {
    display: inline-flex;
    align-items: center;
    background: #059669;
    color: #fff;
    font-size: .65rem;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 10px;
    letter-spacing: .3px;
}

/* Questionnaire picker rows */
.ech-esq-picker-row[b-b9px365d6e] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: .75rem 1rem;
    border-bottom: 1px solid #f3f4f6;
    cursor: pointer;
    transition: background .15s;
}

.ech-esq-picker-row:last-child[b-b9px365d6e] { border-bottom: none; }

.ech-esq-picker-row:hover[b-b9px365d6e] { background: #f0fdf4; }
/* /Components/Pages/Echelon/Statements/EchelonStatements.razor.rz.scp.css */
.ech-statements-page[b-8wueaiemxh] {
    width: 100%;
}

.ech-tbl[b-8wueaiemxh] { width: 100%; border-collapse: collapse; }
.ech-tbl th[b-8wueaiemxh] { background: #f8f9fb; padding: .55rem .9rem; text-align: left; font-size: .67rem; font-weight: 700; color: #9ca3af; text-transform: uppercase; letter-spacing: .5px; border-bottom: 2px solid #e5e7eb; white-space: nowrap; }
.ech-tbl td[b-8wueaiemxh] { padding: .6rem .9rem; font-size: .8rem; color: #1a1a2e; border-bottom: 1px solid #f3f4f6; }
.ech-tbl tr:last-child td[b-8wueaiemxh] { border-bottom: none; }
.ech-tbl tr:hover td[b-8wueaiemxh] { background: rgba(17,198,131,.04); }

@keyframes echPulse-b-8wueaiemxh { 0%,100%{opacity:1} 50%{opacity:.4} }
/* /Components/Pages/Echelon/Trust/EchelonTrust.razor.rz.scp.css */
.ech-trust-page[b-7lpezh0v08] {
    width: 100%;
}

/* Hero shared styles live in echelon-pages.css (.ech-hero-banner*) */

.ech-trust-hero-change[b-7lpezh0v08] {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    font-size: .85rem;
    font-weight: 600;
    padding: .3rem .7rem;
    border-radius: 20px;
}

.ech-trust-hero-change.up[b-7lpezh0v08] {
    background: rgba(17,198,131,.15);
    color: #11C683;
}

.ech-trust-hero-change.down[b-7lpezh0v08] {
    background: rgba(239,68,68,.15);
    color: #ef4444;
}

.ech-trust-grid[b-7lpezh0v08] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
}

.ech-tbl[b-7lpezh0v08] { width: 100%; border-collapse: collapse; }
.ech-tbl th[b-7lpezh0v08] { background: #f8f9fb; padding: .55rem .9rem; text-align: left; font-size: .67rem; font-weight: 700; color: #9ca3af; text-transform: uppercase; letter-spacing: .5px; border-bottom: 2px solid #e5e7eb; white-space: nowrap; }
.ech-tbl td[b-7lpezh0v08] { padding: .6rem .9rem; font-size: .8rem; color: #1a1a2e; border-bottom: 1px solid #f3f4f6; }
.ech-tbl tr:last-child td[b-7lpezh0v08] { border-bottom: none; }
.ech-tbl tr:hover td[b-7lpezh0v08] { background: rgba(17,198,131,.04); }

@media (max-width: 768px) {
    .ech-trust-grid[b-7lpezh0v08] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Pages/Entities/BankAccounts/BankAccounts.razor.rz.scp.css */
[b-akkwpfr8nh] .my-tab {
	flex-grow: 1;
	flex-flow: column;
	height: 100%;
}

[b-akkwpfr8nh] .dxbl-tabs .dxbl-tabs-content-panel {
	flex-grow: 1;
	flex-flow: column;
	height: 97%;
}
/* /Components/Pages/Entities/Compliance/ChangeRiskRatingModal.razor.rz.scp.css */
/* ChangeRiskRatingModal — Brett POC §3 Stage-1 capture (LW+CL 28.04.26) */

.risk-card-row[b-bonr43vr13] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    width: 100%;
}

.risk-card[b-bonr43vr13] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 12px 8px;
    background: #fff;
    border: 1px solid #e3e6eb;
    border-radius: 8px;
    cursor: pointer;
    font-family: inherit;
    transition: border-color 120ms ease, box-shadow 120ms ease, background 120ms ease;
}

.risk-card--current[b-bonr43vr13] {
    border-color: #0a3d62;
    box-shadow: inset 0 0 0 1px #0a3d62;
}

.risk-card--current.risk-card--selected[b-bonr43vr13] {
    border-color: #00a896;
    box-shadow: inset 0 0 0 2px #00a896;
}

.risk-card__current-badge[b-bonr43vr13] {
    position: absolute;
    top: 4px;
    right: 6px;
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #0a3d62;
    background: rgba(10, 61, 98, 0.08);
    padding: 1px 5px;
    border-radius: 3px;
    line-height: 1.4;
}

.risk-card:hover[b-bonr43vr13] {
    border-color: #0a3d62;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
}

.risk-card--selected[b-bonr43vr13] {
    border-color: #00a896;
    background: rgba(0, 168, 150, 0.06);
    box-shadow: inset 0 0 0 1px #00a896;
}

.risk-card__dot[b-bonr43vr13] {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #9ca3af;
}

.risk-card__dot--low[b-bonr43vr13] { background: #16a34a; }
.risk-card__dot--medium[b-bonr43vr13] { background: #f59e0b; }
.risk-card__dot--high[b-bonr43vr13] { background: #dc2626; }

.risk-card__label[b-bonr43vr13] {
    font-size: 13px;
    font-weight: 600;
    color: #1a1d2e;
}

.crrm-actions[b-bonr43vr13] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 8px;
}

[b-bonr43vr13] .validation-errors {
    font-size: 12px;
    margin-top: 8px;
    padding-left: 20px;
}

[b-bonr43vr13] .validation-errors li {
    color: #dc2626;
}
/* /Components/Pages/Entities/Compliance/EntityRisk.razor.rz.scp.css */
/* Risk badge colours — moved from inline <style> in EntityRisk.razor (LW+CL 28.04.26) */
.high[b-8qy4ubj0o0] {
    background-color: red !important;
    color: white !important;
}

.medium[b-8qy4ubj0o0] {
    background-color: orange !important;
    color: black !important;
}

.low[b-8qy4ubj0o0] {
    background-color: green !important;
    color: white !important;
}

/* KPI strip — 3 tiles above the Compliance Details form
   Ports the header KPIs from Brett's POC §3 (features/entity-dashboard/HANDOVER.md). */
.kpi-strip[b-8qy4ubj0o0] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 4px 0 16px 0;
}

.kpi-tile[b-8qy4ubj0o0] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 14px 16px;
    background: #fff;
    border: 1px solid #e3e6eb;
    border-radius: 8px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
    border-left: 3px solid #0a3d62;
}

.kpi-tile--clickable[b-8qy4ubj0o0] {
    cursor: pointer;
    transition: box-shadow 120ms ease, transform 120ms ease;
}

.kpi-tile--clickable:hover[b-8qy4ubj0o0] {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
    transform: translateY(-1px);
}

.kpi-tile--clickable:focus-visible[b-8qy4ubj0o0] {
    outline: 2px solid #1a4b8c;
    outline-offset: 2px;
}

.kpi-tile__label[b-8qy4ubj0o0] {
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #6b7280;
}

.kpi-tile__value-row[b-8qy4ubj0o0] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.kpi-tile__value[b-8qy4ubj0o0] {
    font-size: 18px;
    font-weight: 600;
    color: #0a3d62;
}

.kpi-tile__sub[b-8qy4ubj0o0] {
    font-size: 12px;
    color: #6b7280;
}

.kpi-tile__sub--warn[b-8qy4ubj0o0] {
    color: #b45309;
}

.kpi-dot[b-8qy4ubj0o0] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex-shrink: 0;
    background: #9ca3af;
}

.kpi-dot--high[b-8qy4ubj0o0] { background: #dc2626; }
.kpi-dot--medium[b-8qy4ubj0o0] { background: #f59e0b; }
.kpi-dot--low[b-8qy4ubj0o0] { background: #16a34a; }
.kpi-dot--good[b-8qy4ubj0o0] { background: #16a34a; }
.kpi-dot--neutral[b-8qy4ubj0o0] { background: #9ca3af; }

/* Screening providers — SumSub + slot for additional providers */
.screening-row[b-8qy4ubj0o0] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
    gap: 16px;
    align-items: stretch;
}

@media (max-width: 1100px) {
    .screening-row[b-8qy4ubj0o0] {
        grid-template-columns: 1fr;
    }
}

.provider-slot[b-8qy4ubj0o0] {
    border: 2px dashed #cbd5e1;
    border-radius: 8px;
    padding: 16px;
    background: #f9fafb;
    display: flex;
    flex-direction: column;
    justify-content: center;
    color: #6b7280;
}

.provider-slot__title[b-8qy4ubj0o0] {
    font-size: 13px;
    font-weight: 600;
    color: #374151;
    margin-bottom: 6px;
}

.provider-slot__list[b-8qy4ubj0o0] {
    font-size: 12px;
    line-height: 1.5;
    color: #6b7280;
}

/* Compliance-detail panel — Brett POC §3 cd-section structure. Two-column
   panel with Risk on the left and Compliance Review + AML stacked on the
   right. Replaces the previous DxFormLayout/DxFormLayoutGroup nesting.
   (LW+CL 28.04.26) */
.cd-panel[b-8qy4ubj0o0] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-top: 8px;
}

@media (max-width: 1100px) {
    .cd-panel[b-8qy4ubj0o0] {
        grid-template-columns: 1fr;
    }
}

.cd-col-right[b-8qy4ubj0o0] {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 0;
}

.cd-col-left[b-8qy4ubj0o0] {
    min-width: 0;
}

.cd-section[b-8qy4ubj0o0] {
    padding: 12px 14px;
    border: 1px solid #e3e6eb;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
    transition: background 150ms ease, border-color 150ms ease;
}

.cd-section.section-editing[b-8qy4ubj0o0] {
    background: rgba(0, 168, 150, 0.04);
    border-color: rgba(0, 168, 150, 0.18);
}

.cd-section-hdr[b-8qy4ubj0o0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 0 8px;
    flex-wrap: wrap;
    gap: 8px;
}

.cd-section-hdr h3[b-8qy4ubj0o0] {
    font-size: 12px;
    font-weight: 700;
    color: #0a3d62;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin: 0;
}

.cd-section-actions[b-8qy4ubj0o0] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.cd-act-btn[b-8qy4ubj0o0] {
    background: transparent;
    border: 1px solid #d1dce8;
    color: #4a5568;
    font-size: 11px;
    font-weight: 500;
    padding: 4px 10px;
    border-radius: 5px;
    cursor: pointer;
    transition: all 150ms ease;
}

.cd-act-btn:hover[b-8qy4ubj0o0] {
    background: #f7f9fc;
    color: #1a1d2e;
    border-color: #0a3d62;
}

.cd-act-btn.primary[b-8qy4ubj0o0] {
    background: #00a896;
    border-color: #00a896;
    color: #fff;
}

.cd-act-btn.primary:hover[b-8qy4ubj0o0] {
    background: #00a896;
    filter: brightness(1.08);
}

.cd-rows[b-8qy4ubj0o0] {
    display: flex;
    flex-direction: column;
}

.cd-validation[b-8qy4ubj0o0] {
    margin-top: 12px;
}

/* Compliance-detail row — Brett POC inner-row markup. CSS grid gives a fixed
   label vs value proportion regardless of caption length. Brett's POC uses
   42% for the label column. (LW+CL 28.04.26) */
.cd-row[b-8qy4ubj0o0] {
    display: grid;
    grid-template-columns: minmax(120px, 42%) 1fr;
    gap: 12px;
    padding: 5px 8px;
    align-items: center;
    min-height: 28px;
    position: relative;
    border-radius: 6px;
    transition: background 150ms ease, box-shadow 150ms ease;
}

.cd-row.row-editing[b-8qy4ubj0o0] {
    background: rgba(0, 168, 150, 0.06);
    box-shadow: inset 2px 0 0 rgba(0, 168, 150, 0.5);
}

.cd-label[b-8qy4ubj0o0] {
    font-size: 12px;
    color: #94a3b8;
}

.cd-value[b-8qy4ubj0o0] {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.cd-text[b-8qy4ubj0o0] {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 14px;
    color: #111827;
    overflow-wrap: anywhere;
    white-space: pre-wrap;
}

.cd-text--muted[b-8qy4ubj0o0] {
    color: #9ca3af;
    font-style: italic;
}

.cd-pencil[b-8qy4ubj0o0] {
    background: none;
    border: none;
    cursor: pointer;
    color: #94a3b8;
    font-size: 12px;
    padding: 0 4px;
    margin-left: 4px;
    opacity: 0;
    transition: opacity 150ms ease, color 150ms ease;
    flex-shrink: 0;
}

.cd-row:hover .cd-pencil[b-8qy4ubj0o0] {
    opacity: 1;
}

.cd-pencil:hover[b-8qy4ubj0o0] {
    color: #0a3d62;
}

.cd-pencil:focus-visible[b-8qy4ubj0o0] {
    opacity: 1;
    outline: 2px solid #1a4b8c;
    outline-offset: 2px;
}

/* Hide pencil while the section is in edit mode — Brett POC §3. The inline
   editors replace the read-only spans, so the row-level pencil would just
   sit there clutter. */
.cd-section.section-editing .cd-pencil[b-8qy4ubj0o0] {
    display: none;
}

/* Action-button row inside Compliance Review (Start New / View / Revert) */
.cd-actions-row[b-8qy4ubj0o0] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    width: 100%;
    padding: 8px 0 0 0;
}
/* /Components/Pages/Entities/Dashboard/Blocks/AlertsDrawer.razor.rz.scp.css */
.ad-kpis[b-2ni4o0qo9k] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-bottom: 16px;
}

.ad-kpi[b-2ni4o0qo9k] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 10px 12px;
}

.ad-kpi-label[b-2ni4o0qo9k] {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #64748b;
}

.ad-kpi-val[b-2ni4o0qo9k] {
    font-size: 24px;
    font-weight: 800;
    margin-top: 4px;
    letter-spacing: -0.01em;
}

.ad-table[b-2ni4o0qo9k] {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

.ad-table thead th[b-2ni4o0qo9k] {
    padding: 8px 10px;
    text-align: left;
    font-weight: 700;
    color: #64748b;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    border-bottom: 2px solid #e2e8f0;
    background: #f8fafc;
    white-space: nowrap;
}

.ad-table tbody td[b-2ni4o0qo9k] {
    padding: 7px 10px;
    border-bottom: 1px solid #e2e8f0;
    vertical-align: top;
}

.ad-table tbody tr:last-child td[b-2ni4o0qo9k] {
    border-bottom: none;
}

.ad-wrap[b-2ni4o0qo9k] {
    white-space: normal;
    color: #1a1d2e;
    line-height: 1.4;
}

.ad-badge[b-2ni4o0qo9k] {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 4px;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

.ad-empty[b-2ni4o0qo9k] {
    padding: 24px;
    text-align: center;
    color: #64748b;
    font-size: 12px;
    background: #f8fafc;
    border: 1px dashed #cbd5e1;
    border-radius: 8px;
}
/* /Components/Pages/Entities/Dashboard/Blocks/ComplianceBlock.razor.rz.scp.css */
.cr-head[b-ami3x83iai] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 10px 15px 6px;
}

.cr-head-text[b-ami3x83iai] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.cr-risk-band[b-ami3x83iai] {
    font-size: 14px;
    font-weight: 800;
    letter-spacing: -0.01em;
}

.cr-risk-sub[b-ami3x83iai] {
    font-size: 11px;
    color: #64748b;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.cr-rows[b-ami3x83iai] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2px 18px;
    padding: 8px 15px 10px;
    margin-top: 2px;
    border-top: 1px dashed #e2e8f0;
    padding-top: 10px;
}

.cr-row[b-ami3x83iai] {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    padding: 4px 0;
    font-size: 11px;
    border-bottom: 1px solid #eef2f6;
}

.cr-row:last-child[b-ami3x83iai],
.cr-row:nth-last-child(2)[b-ami3x83iai] {
    border-bottom: none;
}

.cr-key[b-ami3x83iai] {
    color: #64748b;
    white-space: nowrap;
}

.cr-val[b-ami3x83iai] {
    color: #1a1d2e;
    font-weight: 500;
    text-align: right;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}
/* /Components/Pages/Entities/Dashboard/Blocks/ComplianceDetailDrawer.razor.rz.scp.css */
.cd-kpis[b-75exyd3asy] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    margin-bottom: 16px;
}

.cd-kpi[b-75exyd3asy] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 10px 12px;
}

.cd-kpi-label[b-75exyd3asy] {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #64748b;
}

.cd-kpi-val[b-75exyd3asy] {
    font-size: 20px;
    font-weight: 800;
    margin-top: 4px;
    letter-spacing: -0.01em;
}

.cd-kpi-muted[b-75exyd3asy] {
    color: #94a3b8;
}

.cd-section[b-75exyd3asy] {
    font-size: 12px;
    font-weight: 700;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin: 18px 0 8px;
}

.cd-table[b-75exyd3asy] {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

.cd-table td[b-75exyd3asy] {
    padding: 7px 10px;
    border-bottom: 1px solid #e2e8f0;
}

.cd-table tr:last-child td[b-75exyd3asy] {
    border-bottom: none;
}

.cd-table .cd-k[b-75exyd3asy] {
    width: 40%;
    color: #64748b;
}

.cd-badge[b-75exyd3asy] {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 4px;
    letter-spacing: 0.04em;
}

.cd-stub[b-75exyd3asy] {
    padding: 18px;
    background: #f8fafc;
    border: 1px dashed #cbd5e1;
    border-radius: 8px;
    font-size: 12px;
    color: #64748b;
    line-height: 1.5;
}
/* /Components/Pages/Entities/Dashboard/Blocks/DocumentsBlock.razor.rz.scp.css */
/* Styles in site.css — card-footer-bar, card-footer-link */
/* /Components/Pages/Entities/Dashboard/Blocks/EchelonInboxDrawer.razor.rz.scp.css */
.eb-kpis[b-k3yhvz5cz8] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-bottom: 16px;
}

.eb-kpi[b-k3yhvz5cz8] {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 10px 12px;
}

.eb-kpi-label[b-k3yhvz5cz8] {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #64748b;
}

.eb-kpi-val[b-k3yhvz5cz8] {
    font-size: 24px;
    font-weight: 800;
    margin-top: 4px;
    letter-spacing: -0.01em;
}

.eb-kpi-muted[b-k3yhvz5cz8] {
    color: #94a3b8;
}

.eb-table[b-k3yhvz5cz8] {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

.eb-table thead th[b-k3yhvz5cz8] {
    padding: 8px 10px;
    text-align: left;
    font-weight: 700;
    color: #64748b;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    border-bottom: 2px solid #e2e8f0;
    background: #f8fafc;
    white-space: nowrap;
}

.eb-table tbody td[b-k3yhvz5cz8] {
    padding: 7px 10px;
    border-bottom: 1px solid #e2e8f0;
    vertical-align: top;
    color: #1a1d2e;
}

.eb-table tbody tr:last-child td[b-k3yhvz5cz8] {
    border-bottom: none;
}

.eb-wrap[b-k3yhvz5cz8] {
    white-space: normal;
    line-height: 1.4;
}

.eb-preview[b-k3yhvz5cz8] {
    color: #64748b;
    max-width: 380px;
}

.eb-badge[b-k3yhvz5cz8] {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 4px;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

.eb-badge-unread[b-k3yhvz5cz8] {
    background: #e0f7f3;
    color: #0a8a80;
}

.eb-badge-read[b-k3yhvz5cz8] {
    background: #f1f5f9;
    color: #64748b;
}

.eb-empty[b-k3yhvz5cz8] {
    padding: 24px;
    text-align: center;
    color: #64748b;
    font-size: 12px;
    background: #f8fafc;
    border: 1px dashed #cbd5e1;
    border-radius: 8px;
}
/* /Components/Pages/Entities/Dashboard/Blocks/EngagementNotesBlock.razor.rz.scp.css */
/* Styles in site.css — card-footer-bar, card-footer-link */
/* /Components/Pages/Entities/Dashboard/Blocks/KeyDatesBlock.razor.rz.scp.css */
/* Styles in site.css — card-footer-bar, card-footer-link */
/* /Components/Pages/Entities/Dashboard/Blocks/NotesBlock.razor.rz.scp.css */
.nb-body[b-p88vmdiax9] {
    overflow: hidden;
}

.nb-list[b-p88vmdiax9] {
    padding: 6px 12px 10px;
    overflow-y: auto;
}

.nb-note[b-p88vmdiax9] {
    padding: 6px 0;
    border-bottom: 1px solid #eef2f6;
    cursor: pointer;
}

.nb-note:last-child[b-p88vmdiax9] {
    border-bottom: none;
}

.nb-note:hover[b-p88vmdiax9] {
    background: #f8fafc;
}

.nb-note-hdr[b-p88vmdiax9] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    margin-bottom: 3px;
}

.nb-note-type[b-p88vmdiax9] {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #0a3d62;
}

.nb-note-date[b-p88vmdiax9] {
    font-size: 10px;
    color: #64748b;
    margin-left: 6px;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.nb-note-text[b-p88vmdiax9] {
    font-size: 11px;
    color: #334155;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.nb-unread-dot[b-p88vmdiax9] {
    display: inline-block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #0a8a80;
    margin-left: 6px;
    vertical-align: middle;
}

.nb-empty[b-p88vmdiax9],
.nb-stub[b-p88vmdiax9] {
    padding: 20px 16px;
    text-align: center;
    color: #64748b;
    font-size: 12px;
    background: #f8fafc;
    border: 1px dashed #cbd5e1;
    border-radius: 8px;
    margin: 12px;
    line-height: 1.5;
}
/* /Components/Pages/Entities/Dashboard/Blocks/RelationshipsBlock.razor.rz.scp.css */
/* Styles in site.css — card-footer-bar, card-footer-link */
/* /Components/Pages/Entities/Dashboard/Blocks/TaskSummaryBlock.razor.rz.scp.css */
/* Styles in site.css — card-footer-bar, card-footer-link */
/* /Components/Pages/Entities/Dashboard/EntityDashboard.razor.rz.scp.css */
.razorpagemain[b-ouzph1zl2r] {
    overflow-y: auto;
    background: #e8eaed !important;
    box-shadow: none !important;
    border: none !important;
    min-height: 400px;
}

/* LW+CL 30.04.26 — Brett POC `hdr-avatar`. Small entity image at the start
   of the header bar; image when EntityImageBytes is loaded, initials as
   fallback. The larger 70px avatar in EntityProfile is intentional repetition
   per the POC design. */
.dash-header-avatar[b-ouzph1zl2r] {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid #cbd5e1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 700;
    color: #0a3d62;
    flex-shrink: 0;
    overflow: hidden;
    margin-right: 6px;
}

.dash-header-avatar img[b-ouzph1zl2r] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Echelon inbox bell — appears in the entity dashboard header when
   AppState.IsEchelon is true. Clicking opens EchelonInboxDrawer. */
.dash-echelon-bell[b-ouzph1zl2r] {
    position: relative;
    background: #ffffff;
    border: 1px solid #cbd5e1;
    border-radius: 999px;
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: #0a3d62;
    margin-left: 6px;
    transition: box-shadow 0.12s ease, transform 0.12s ease;
}

.dash-echelon-bell:hover[b-ouzph1zl2r] {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
    transform: translateY(-1px);
}

.dash-echelon-bell:focus-visible[b-ouzph1zl2r] {
    outline: 2px solid #0a3d62;
    outline-offset: 2px;
}

.dash-echelon-bell .dx-icon-email[b-ouzph1zl2r] {
    font-size: 16px;
}

.dash-echelon-bell-badge[b-ouzph1zl2r] {
    position: absolute;
    top: -4px;
    right: -4px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: #0a8a80;
    color: #ffffff;
    font-size: 10px;
    font-weight: 700;
    line-height: 18px;
    border-radius: 9px;
    text-align: center;
    letter-spacing: -0.02em;
}
/* /Components/Pages/Entities/Dashboard/HeaderWorkflowDropdown.razor.rz.scp.css */
/* LW+CL 28.04.26 — Workflow dropdown in entity dashboard header (Brett POC §3) */

.hdr-workflow-btn[b-3mgsp39fpy] {
    font-size: 10px;
    font-weight: 600;
    padding: 3px 10px;
    border-radius: 10px;
    border: 1px solid rgba(10, 61, 98, 0.4);
    background: rgba(10, 61, 98, 0.10);
    color: #0a3d62;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: inherit;
    transition: background 0.15s;
}

.hdr-workflow-btn:hover[b-3mgsp39fpy] {
    background: rgba(10, 61, 98, 0.20);
}

.hdr-workflow-icon[b-3mgsp39fpy] {
    font-size: 12px;
    line-height: 1;
}

.hdr-workflow-chev[b-3mgsp39fpy] {
    font-size: 8px;
}

.hdr-workflow-menu[b-3mgsp39fpy] {
    min-width: 260px;
    padding: 6px 0;
}

.hdr-workflow-menu-title[b-3mgsp39fpy] {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 8px 12px 6px;
    color: #94a3b8;
}

.hdr-workflow-menu-item[b-3mgsp39fpy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 8px 12px;
    cursor: pointer;
    transition: background 0.1s;
}

.hdr-workflow-menu-item:hover[b-3mgsp39fpy] {
    background: #f0f4f8;
}

.hdr-workflow-menu-item--soon .hdr-workflow-item-lbl[b-3mgsp39fpy] {
    color: #94a3b8;
}

.hdr-workflow-item-lbl[b-3mgsp39fpy] {
    font-size: 12px;
    font-weight: 600;
    color: #1a1d2e;
}

.hdr-workflow-item-badge[b-3mgsp39fpy] {
    font-size: 9px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #94a3b8;
    background: #e5e7eb;
    padding: 2px 6px;
    border-radius: 8px;
}
/* /Components/Pages/Entities/Dashboard/MasterEntity/FundAdminDashboard.razor.rz.scp.css */
/* LW+CL 21.04.26 — Master Entity Fund Admin dashboard variant.
   KPI tiles reuse .dash-kpi / .dash-kpi-* classes from wwwroot/css/site.css.
   Content cards reuse the .card / .card-header pattern shared with entity dashboard tiles
   (scoped globally under .grid-stack-item-content in site.css; we re-apply the same treatment
   without needing a GridStack wrapper). Keep this file scoped to layout + stub treatment only. */

.me-loading[b-f42x6jhzz2] {
    padding: 40px 24px;
    color: #64748b;
    font-size: 13px;
    text-align: center;
}

/* Hero row — 6 KPI tiles; override the 3-col default on .dash-kpi-grid */
[b-f42x6jhzz2] .me-kpi-hero-grid {
    grid-template-columns: repeat(6, 1fr);
    padding: 16px;
}

@media (max-width: 1400px) {
    [b-f42x6jhzz2] .me-kpi-hero-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

[b-f42x6jhzz2] .dash-kpi-sub {
    font-size: 11px;
    color: #64748b;
    margin-top: 4px;
}

[b-f42x6jhzz2] .me-kpi-muted { color: #94a3b8; }

[b-f42x6jhzz2] .me-kpi-nodata {
    color: #c97c00;
    font-style: italic;
}

[b-f42x6jhzz2] .me-kpi-chip {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 6px;
    font-size: 9px;
    font-weight: 600;
    background: #f0f4f8;
    color: #64748b;
    border-radius: 8px;
    letter-spacing: 0.04em;
}

/* Content cards — match the entity dashboard .card / .card-header treatment.
   site.css defines .grid-stack-item-content .card; duplicate the core rules here because
   we render outside GridStack. Stylistic parity with the rest of the dashboard is the goal. */
.me-content-grid[b-f42x6jhzz2] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    padding: 0 16px 16px;
}

@media (max-width: 1200px) {
    .me-content-grid[b-f42x6jhzz2] { grid-template-columns: 1fr; }
}

.me-content-card[b-f42x6jhzz2] {
    background: #fff;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06), 0 4px 12px rgba(0, 0, 0, 0.04);
    overflow: hidden;
    min-height: 160px;
    display: flex;
    flex-direction: column;
    transition: box-shadow 0.18s, transform 0.18s;
}

.me-content-card:hover[b-f42x6jhzz2] {
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08), 0 8px 24px rgba(0, 0, 0, 0.06);
}

.me-content-card-full[b-f42x6jhzz2] { grid-column: 1 / -1; }

[b-f42x6jhzz2] .me-content-card .card-header {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.09em;
    color: #0a3d62;
    padding: 13px 16px 11px;
    background: #fff;
    border: none;
    position: relative;
}

[b-f42x6jhzz2] .me-content-card .card-header::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: #00a896;
}

[b-f42x6jhzz2] .me-content-card .card-header.hdr-risk::before { background: #00a896; }
[b-f42x6jhzz2] .me-content-card .card-header.hdr-tasks::before { background: #c97c00; }
[b-f42x6jhzz2] .me-content-card .card-header.hdr-alerts::before { background: #d93025; }
[b-f42x6jhzz2] .me-content-card .card-header.hdr-docs::before { background: #1a6fd4; }
[b-f42x6jhzz2] .me-content-card .card-header.hdr-rels::before { background: #0a3d62; }
[b-f42x6jhzz2] .me-content-card .card-header.hdr-finance::before { background: #1a8a3a; }

.me-content-body[b-f42x6jhzz2] {
    flex: 1;
    padding: 14px 18px 16px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    gap: 4px;
}

/* Data-bearing cards reset the centring; content flows from the top. */
.me-content-body-table[b-f42x6jhzz2],
.me-content-body-chart[b-f42x6jhzz2] {
    display: block;
    padding: 0;
    text-align: left;
    justify-content: flex-start;
    align-items: stretch;
}

.me-content-stub[b-f42x6jhzz2] {
    font-size: 14px;
    color: #c8d4e0;
    font-weight: 500;
}

.me-content-stub-reason[b-f42x6jhzz2] {
    font-size: 11px;
    color: #c97c00;
    font-style: italic;
    max-width: 360px;
}

/* Table rendering inside content cards — used by Debtors Aged, Fee Income Pipeline, etc. */
.me-content-body-table[b-f42x6jhzz2] {
    display: block;
    padding: 0;
    text-align: left;
}

.me-data-table[b-f42x6jhzz2] {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

.me-data-table thead th[b-f42x6jhzz2] {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #64748b;
    padding: 8px 14px;
    border-bottom: 1px solid #e2e8f0;
    background: #f7f9fc;
    text-align: left;
}

.me-data-table tbody td[b-f42x6jhzz2] {
    padding: 8px 14px;
    border-bottom: 1px solid #f0f4f8;
    color: #1a1d2e;
}

.me-data-table tbody tr:last-child td[b-f42x6jhzz2] {
    border-bottom: none;
}

.me-data-table tbody tr:hover[b-f42x6jhzz2] {
    background: #f7f9fc;
}

.me-data-table .text-right[b-f42x6jhzz2] { text-align: right; }
.me-data-table .me-danger[b-f42x6jhzz2] { color: #d93025; font-weight: 600; }
.me-data-table .me-total[b-f42x6jhzz2] { font-weight: 700; color: #0a3d62; }

[b-f42x6jhzz2] .me-card-hdr-kpi {
    font-size: 10px;
    font-weight: 500;
    color: #94a3b8;
    text-transform: none;
    letter-spacing: 0;
    margin-left: 10px;
    font-style: normal;
}

.me-card-foot-note[b-f42x6jhzz2] {
    padding: 8px 14px 12px;
    font-size: 10px;
    color: #c97c00;
    font-style: italic;
    border-top: 1px solid #f0f4f8;
}

/* ═════════ Chart patterns ported from ws-fundadmin-dashboard-poc.html ═════════ */

/* Horizontal bar row — used by Jurisdiction, WiP, Portfolio, NAV Volume, Sub/Red */
.me-hbar-list[b-f42x6jhzz2] { padding: 4px 14px 10px; }
.me-hbar-row[b-f42x6jhzz2] { display: flex; align-items: center; gap: 10px; padding: 6px 0; border-bottom: 1px solid #f0f4f8; }
.me-hbar-row:last-child[b-f42x6jhzz2] { border-bottom: none; }
.me-hbar-label[b-f42x6jhzz2] { width: 140px; font-size: 11px; color: #4a5568; font-weight: 500; flex-shrink: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.me-hbar-track[b-f42x6jhzz2] { flex: 1; height: 16px; background: #f7f9fc; border-radius: 4px; overflow: hidden; position: relative; }
.me-hbar-fill[b-f42x6jhzz2] { height: 100%; border-radius: 4px; transition: width 0.4s ease; }
.me-hbar-actual[b-f42x6jhzz2] { width: 90px; font-size: 11px; font-weight: 600; color: #1a1d2e; text-align: right; font-family: monospace; flex-shrink: 0; }

/* Fill colours — align with existing dashboard accent system */
.me-hbar-fill.c-navy[b-f42x6jhzz2] { background: #0a3d62; }
.me-hbar-fill.c-green[b-f42x6jhzz2] { background: #1a8a3a; }
.me-hbar-fill.c-red[b-f42x6jhzz2] { background: #d93025; }
.me-hbar-fill.c-blue[b-f42x6jhzz2] { background: #1a6fd4; }
.me-hbar-fill.c-teal[b-f42x6jhzz2] { background: #00a896; }
.me-hbar-fill.c-purple[b-f42x6jhzz2] { background: #6b46c1; }
.me-hbar-fill.c-amber[b-f42x6jhzz2] { background: #c97c00; }

/* Vertical column bar chart — monthly actual vs budget */
.me-chart-bar-group[b-f42x6jhzz2] { display: flex; gap: 4px; align-items: flex-end; height: 140px; padding: 8px 14px 2px; }
.me-chart-col[b-f42x6jhzz2] { display: flex; flex-direction: column; align-items: center; flex: 1; gap: 4px; }
.me-chart-bars[b-f42x6jhzz2] { display: flex; gap: 2px; align-items: flex-end; height: 100%; width: 100%; }
.me-chart-bar[b-f42x6jhzz2] { flex: 1; border-radius: 3px 3px 0 0; min-width: 6px; transition: opacity 0.2s; cursor: default; position: relative; }
.me-chart-bar:hover[b-f42x6jhzz2] { opacity: 0.8; }
.me-chart-bar.actual[b-f42x6jhzz2] { background: #0a3d62; }
.me-chart-bar.budget[b-f42x6jhzz2] { background: #d1dce8; }
.me-chart-bar.current-month[b-f42x6jhzz2] { background: #6b46c1; }
.me-chart-col-label[b-f42x6jhzz2] { font-size: 9px; color: #94a3b8; }

.me-chart-legend[b-f42x6jhzz2] { display: flex; gap: 14px; padding: 8px 14px 10px; border-top: 1px solid #f0f4f8; margin-top: 4px; }
.me-chart-legend-item[b-f42x6jhzz2] { display: flex; align-items: center; gap: 5px; font-size: 10px; color: #94a3b8; }
.me-chart-legend-dot[b-f42x6jhzz2] { width: 8px; height: 8px; border-radius: 2px; flex-shrink: 0; }

/* Sub-KPI grid — used by NAV Performance */
.me-sub-kpi-grid[b-f42x6jhzz2] { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; padding: 10px 14px; }
.me-sub-kpi-card[b-f42x6jhzz2] { padding: 10px 12px; background: #f7f9fc; border: 1px solid #e2e8f0; border-radius: 8px; text-align: center; }
.me-sub-kpi-card.alert[b-f42x6jhzz2] { background: rgba(217, 48, 37, 0.08); border-color: rgba(217, 48, 37, 0.2); }
.me-sub-kpi-label[b-f42x6jhzz2] { font-size: 10px; font-weight: 600; text-transform: uppercase; color: #94a3b8; letter-spacing: 0.06em; }
.me-sub-kpi-val[b-f42x6jhzz2] { font-size: 20px; font-weight: 800; margin-top: 3px; line-height: 1.1; }
.me-sub-kpi-val.c-navy[b-f42x6jhzz2] { color: #0a3d62; }
.me-sub-kpi-val.c-green[b-f42x6jhzz2] { color: #1a8a3a; }
.me-sub-kpi-val.c-red[b-f42x6jhzz2] { color: #d93025; }
.me-sub-kpi-val.c-blue[b-f42x6jhzz2] { color: #1a6fd4; }
.me-sub-kpi-val.c-purple[b-f42x6jhzz2] { color: #6b46c1; }
.me-sub-kpi-val.c-teal[b-f42x6jhzz2] { color: #00a896; }
.me-sub-kpi-val.c-muted[b-f42x6jhzz2] { color: #c8d4e0; font-weight: 300; }

/* Flow cards — used by Sub/Red (3 colourful cards at top) */
.me-flow-row[b-f42x6jhzz2] { display: flex; gap: 10px; padding: 10px 14px; }
.me-flow-card[b-f42x6jhzz2] { flex: 1; padding: 12px; border-radius: 8px; text-align: center; }
.me-flow-card.flow-in[b-f42x6jhzz2] { background: rgba(26, 138, 58, 0.09); border: 1px solid rgba(26, 138, 58, 0.15); }
.me-flow-card.flow-out[b-f42x6jhzz2] { background: rgba(217, 48, 37, 0.09); border: 1px solid rgba(217, 48, 37, 0.15); }
.me-flow-card.flow-net[b-f42x6jhzz2] { background: rgba(26, 111, 212, 0.09); border: 1px solid rgba(26, 111, 212, 0.15); }
.me-flow-label[b-f42x6jhzz2] { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; }
.me-flow-val[b-f42x6jhzz2] { font-size: 20px; font-weight: 800; line-height: 1.1; margin-top: 4px; }
.me-flow-sub[b-f42x6jhzz2] { font-size: 10px; color: #94a3b8; margin-top: 2px; }
.me-flow-in .me-flow-label[b-f42x6jhzz2], .me-flow-in .me-flow-val[b-f42x6jhzz2] { color: #1a8a3a; }
.me-flow-out .me-flow-label[b-f42x6jhzz2], .me-flow-out .me-flow-val[b-f42x6jhzz2] { color: #d93025; }
.me-flow-net .me-flow-label[b-f42x6jhzz2], .me-flow-net .me-flow-val[b-f42x6jhzz2] { color: #1a6fd4; }

/* Section label inside a card body */
.me-section-label[b-f42x6jhzz2] {
    font-size: 10px; font-weight: 700; text-transform: uppercase;
    letter-spacing: 0.08em; color: #94a3b8;
    padding: 4px 14px 2px;
}

/* Fund status badge — used in Fund Portfolio table */
[b-f42x6jhzz2] .me-badge {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 12px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    white-space: nowrap;
}
[b-f42x6jhzz2] .me-badge-active      { background: rgba(26,138,58,0.10); color: #1a8a3a; }
[b-f42x6jhzz2] .me-badge-closed      { background: rgba(100,116,139,0.12); color: #64748b; }
[b-f42x6jhzz2] .me-badge-liquidating { background: rgba(201,124,0,0.10); color: #c97c00; }
[b-f42x6jhzz2] .me-badge-terminated  { background: rgba(217,48,37,0.10); color: #d93025; }
/* /Components/Pages/Entities/Dashboard/MasterEntity/HeaderViewDropdown.razor.rz.scp.css */
/* LW+CL 21.04.26 — View-type dropdown in ME dashboard header */

.me-view-btn[b-0gmtp38kyy] {
    font-size: 10px;
    font-weight: 600;
    padding: 3px 10px;
    border-radius: 10px;
    border: 1px solid rgba(107, 70, 193, 0.4);
    background: rgba(107, 70, 193, 0.15);
    color: #6b46c1;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: inherit;
    transition: background 0.15s;
}

.me-view-btn.me-view-standard[b-0gmtp38kyy] { background: rgba(148, 163, 184, 0.15); border-color: rgba(148, 163, 184, 0.4); color: #64748b; }
.me-view-btn.me-view-tcspfirm[b-0gmtp38kyy] { background: rgba(0, 168, 150, 0.15); border-color: rgba(0, 168, 150, 0.4); color: #00a896; }
.me-view-btn.me-view-investmentfirm[b-0gmtp38kyy] { background: rgba(26, 111, 212, 0.15); border-color: rgba(26, 111, 212, 0.4); color: #1a6fd4; }
.me-view-btn.me-view-fundadmin[b-0gmtp38kyy] { background: rgba(107, 70, 193, 0.15); border-color: rgba(107, 70, 193, 0.4); color: #6b46c1; }

.me-view-chev[b-0gmtp38kyy] { font-size: 8px; }

.me-view-menu[b-0gmtp38kyy] {
    min-width: 220px;
    padding: 6px 0;
}

.me-view-menu-title[b-0gmtp38kyy] {
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    padding: 8px 12px 6px;
    color: #94a3b8;
}

.me-view-menu-item[b-0gmtp38kyy] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    cursor: pointer;
    transition: background 0.1s;
}

.me-view-menu-item:hover[b-0gmtp38kyy] { background: #f0f4f8; }

.me-view-menu-item.active[b-0gmtp38kyy] { background: #f0f4f8; }

.me-view-dot[b-0gmtp38kyy] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    flex-shrink: 0;
}

.me-view-item-text[b-0gmtp38kyy] {
    display: flex;
    flex-direction: column;
    gap: 1px;
}

.me-view-item-lbl[b-0gmtp38kyy] {
    font-size: 12px;
    font-weight: 600;
    color: #1a1d2e;
}

.me-view-item-desc[b-0gmtp38kyy] {
    font-size: 10px;
    color: #94a3b8;
}
/* /Components/Pages/Entities/Dashboard/MasterEntity/PeriodBar.razor.rz.scp.css */
/* LW+CL 21.04.26 — Period bar for Master Entity dashboards */

.me-period-bar[b-kamn0095lg] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px;
    background: #fff;
    border-bottom: 1px solid #e2e8f0;
}

.me-period-lbl[b-kamn0095lg] {
    font-size: 11px;
    font-weight: 600;
    color: #64748b;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.me-period-select[b-kamn0095lg] {
    min-width: 220px;
}

.me-period-right[b-kamn0095lg] {
    margin-left: auto;
    display: flex;
    gap: 4px;
    padding: 2px;
    background: #f0f4f8;
    border-radius: 6px;
}

.me-period-btn[b-kamn0095lg] {
    font-size: 11px;
    font-weight: 600;
    padding: 5px 12px;
    border-radius: 4px;
    border: none;
    background: transparent;
    color: #64748b;
    cursor: pointer;
    transition: all 0.15s;
    font-family: inherit;
}

.me-period-btn:hover[b-kamn0095lg] { color: #1a1d2e; }

.me-period-btn.act[b-kamn0095lg] {
    background: #fff;
    color: #0a3d62;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}
/* /Components/Pages/Entities/EntityWizard/WizardSteps/EntitySecurity.razor.rz.scp.css */
.egs-container[b-jon9dc1k39] {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.egs-search[b-jon9dc1k39] {
    flex-shrink: 0;
    margin-bottom: 4px;
}

.egs-list[b-jon9dc1k39] {
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    flex: 1;
    border: 1px solid #dee2e6;
    border-radius: 4px;
}

.egs-header[b-jon9dc1k39],
.egs-row[b-jon9dc1k39] {
    display: grid;
    grid-template-columns: 32px 1fr 60px;
    align-items: center;
    padding: 3px 10px;
    gap: 4px;
}

.egs-header[b-jon9dc1k39] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    border-bottom: 2px solid #dee2e6;
    background-color: #f8f9fa;
    position: sticky;
    top: 0;
    z-index: 1;
}

.egs-row[b-jon9dc1k39] {
    border-bottom: 1px solid #f0f0f0;
}

.egs-row:last-child[b-jon9dc1k39] {
    border-bottom: none;
}

.egs-row:hover[b-jon9dc1k39] {
    background-color: #f8f9fa;
}

.egs-check[b-jon9dc1k39] {
    flex-shrink: 0;
}

.egs-col-name[b-jon9dc1k39] {
    font-size: 0.88rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.egs-col-count[b-jon9dc1k39] {
    font-size: 0.82rem;
    color: #6c757d;
    text-align: right;
}

.egs-empty[b-jon9dc1k39] {
    padding: 20px;
    text-align: center;
    color: #6c757d;
    font-style: italic;
}

.egs-validation[b-jon9dc1k39] {
    color: #dc3545;
    font-size: 0.85rem;
    padding: 4px 0;
}
/* /Components/Pages/Entities/EntityWorkFlow.razor.rz.scp.css */
/* Shared styles (theme-agnostic) */
[b-lsm9fo6r0g] .workflow-accordion {
	width: 100% !important;
}

[b-lsm9fo6r0g] .workflow-accordion .Completed {
	background-color: white;
	color: green;
}

/* ===== Bootstrap-external theme ===== */
[b-lsm9fo6r0g] .workflow-bootstrap .dxbl-group > .dxbl-group-header::before {
	background-color: #00d9c5 !important;
	color: black;
	opacity: 1 !important;
}

[b-lsm9fo6r0g] .workflow-bootstrap .dxbl-group > .dxbl-group-header::after {
	background-color: darkblue !important;
	color: black;
	opacity: 1 !important;
}

[b-lsm9fo6r0g] .workflow-bootstrap .dxbl-accordion-group .dxbl-accordion-item:not(.dxbl-accordion-group):not(.dxbl-disabled):not(:disabled).dxbl-active, .dxbl-accordion .dxbl-accordion-group .dxbl-accordion-item:not(.dxbl-accordion-group):not(.dxbl-disabled):not(:disabled):active[b-lsm9fo6r0g], .dxbl-accordion .dxbl-accordion-group .dxbl-accordion-item:not(.dxbl-accordion-group):not(.dxbl-disabled):not(:disabled):hover[b-lsm9fo6r0g] {
	background-color: #00b894 !important;
	color: white;
	opacity: 1 !important;
}

/* ===== Fluent theme ===== */
/* Same values for now — adjust here if Fluent accordion renders differently */
[b-lsm9fo6r0g] .workflow-fluent .dxbl-group > .dxbl-group-header::before {
	background-color: #00d9c5 !important;
	color: black;
	opacity: 1 !important;
}

[b-lsm9fo6r0g] .workflow-fluent .dxbl-group > .dxbl-group-header::after {
	background-color: darkblue !important;
	color: black;
	opacity: 1 !important;
}

[b-lsm9fo6r0g] .workflow-fluent .dxbl-accordion-group .dxbl-accordion-item:not(.dxbl-accordion-group):not(.dxbl-disabled):not(:disabled).dxbl-active, .dxbl-accordion .dxbl-accordion-group .dxbl-accordion-item:not(.dxbl-accordion-group):not(.dxbl-disabled):not(:disabled):active[b-lsm9fo6r0g], .dxbl-accordion .dxbl-accordion-group .dxbl-accordion-item:not(.dxbl-accordion-group):not(.dxbl-disabled):not(:disabled):hover[b-lsm9fo6r0g] {
	background-color: #00b894 !important;
	color: white;
	opacity: 1 !important;
}
/* /Components/Pages/Entities/KeyDates/EntityKeyDates.razor.rz.scp.css */
/* Drill-down KPI summary cards */
.drill-kpis[b-yh0a0cycu6] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    padding: 8px 0 4px;
    flex-shrink: 0;
    background: #fff;
}

.dk[b-yh0a0cycu6] {
    background: transparent;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 8px 10px;
}

.dk-label[b-yh0a0cycu6] {
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #94a3b8;
}

.dk-val[b-yh0a0cycu6] {
    font-size: 18px;
    font-weight: 800;
    margin-top: 2px;
}

.dk-navy[b-yh0a0cycu6]  { color: #0a3d62; }
.dk-red[b-yh0a0cycu6]   { color: #d93025; }
.dk-amber[b-yh0a0cycu6] { color: #c97c00; }
.dk-green[b-yh0a0cycu6] { color: #1a8a3a; }

/* /Components/Pages/Entities/Notes/Notes.razor.rz.scp.css */
/* Drill-down KPI styles are in site.css (scoped CSS can't reach DxPopup body) */
/* /Components/Pages/Entities/Relationships/EntityRelationships.razor.rz.scp.css */

li.right[b-l5eb8zcfbl] {
	float: right;
}

.parent-region-row[b-l5eb8zcfbl] {
	background-color: color-mix(in srgb, var(--bs-gray-300, #dee2e6), transparent 50%) !important;
}

td.loss-threshold[b-l5eb8zcfbl] {
	background-color: rgba(245, 198, 203, 0.5);
}

td.win-threshold[b-l5eb8zcfbl] {
	background-color: rgba(198, 245, 203, 0.5);
}

/* Drill-down KPI styles are in site.css (scoped CSS can't reach DxPopup body) */
/* /Components/Pages/GovernedTransactions/ComplianceReview/Components/CrActionBar.razor.rz.scp.css */
/* ── RRC Action Bar — matches GTC action bar pattern ── */
.rrc-action-bar[b-7kl9pjb763] {
    padding: .9rem 0;
    display: flex;
    gap: .6rem;
    align-items: center;
    flex-wrap: wrap;
    border-top: 1px solid var(--gtc-border-light);
    margin-top: .9rem;
}

.rrc-action-context[b-7kl9pjb763] {
    margin-left: auto;
    font-size: .68rem;
    color: var(--gtc-text-light);
    font-weight: 500;
}

.rrc-btn[b-7kl9pjb763] {
    padding: .5rem 1.1rem;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: .8rem;
    font-weight: 600;
    transition: all .2s;
    font-family: inherit;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.rrc-btn-primary[b-7kl9pjb763] { background: var(--gt-teal); color: white; }
.rrc-btn-primary:hover:not(:disabled)[b-7kl9pjb763] { background: #00c0ad; transform: translateY(-1px); }
.rrc-btn-danger[b-7kl9pjb763] { background: var(--gt-red); color: white; }
.rrc-btn-danger:hover:not(:disabled)[b-7kl9pjb763] { background: #c0392b; }
.rrc-btn-blocked[b-7kl9pjb763] { background: #f0f2f5; color: #bbb; border: 2px dashed #ddd; cursor: not-allowed; }
.rrc-btn:disabled[b-7kl9pjb763] { opacity: .5; cursor: not-allowed; }
.rrc-btn-cancel[b-7kl9pjb763] { background: #f5f5f5; color: #888; border: 1px solid #ddd; }
.rrc-btn-cancel:hover:not(:disabled)[b-7kl9pjb763] { background: #eee; color: #666; }

.rrc-action-notes[b-7kl9pjb763] {
    width: 100%;
    margin-bottom: .4rem;
}

.rrc-action-notes .rrc-form-textarea[b-7kl9pjb763] {
    width: 100%;
    min-height: 50px;
    font-size: .78rem;
}

.rrc-notes-required[b-7kl9pjb763] {
    border-color: var(--gt-red) !important;
    box-shadow: 0 0 0 2px rgba(231,76,60,.15);
}

.rrc-notes-hint[b-7kl9pjb763] {
    font-size: .72rem;
    color: var(--gt-red);
    margin-top: .25rem;
    font-weight: 500;
}
/* /Components/Pages/GovernedTransactions/ComplianceReview/Components/CrCreateForm.razor.rz.scp.css */
/* ── RRC Create Form — entity search dropdown & selection styles ── */
.rrc-entity-results[b-n4tiub0bcj] {
    position: absolute;
    left: 0;
    right: 0;
    z-index: 100;
    border: 1px solid var(--gtc-border);
    border-radius: 0 0 var(--gt-radius-sm) var(--gt-radius-sm);
    background: var(--gtc-card, #fff);
    max-height: 200px;
    overflow-y: auto;
    margin-top: -1px;
    box-shadow: var(--gt-shadow-lg, 0 4px 12px rgba(0,0,0,.15));
}

.rrc-entity-result[b-n4tiub0bcj] {
    padding: .4rem .6rem;
    cursor: pointer;
    font-size: .8rem;
    border-bottom: 1px solid #f5f5f5;
    transition: background .15s;
}

.rrc-entity-result:hover[b-n4tiub0bcj] { background: #f0fdfb; }
.rrc-entity-code[b-n4tiub0bcj] { color: #aaa; font-size: .72rem; }

.rrc-selected-entity[b-n4tiub0bcj] {
    margin-top: .25rem;
    padding: .3rem .5rem;
    background: #f0fdf4;
    border-radius: 4px;
    font-size: .78rem;
    color: var(--gt-green);
}

.rrc-current-rating-preview[b-n4tiub0bcj] {
    margin-top: .5rem;
    display: flex;
    align-items: center;
    gap: .6rem;
}
/* /Components/Pages/GovernedTransactions/ComplianceReview/Components/CrDashboard.razor.rz.scp.css */
/* ── RRC Dashboard — aligned with GTC/TM shared tokens ── */
.rrc-dashboard[b-7jkdotem79] { padding: 1rem 1.25rem; }

.rrc-header[b-7jkdotem79] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: .5rem;
}

.rrc-header h1[b-7jkdotem79] {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--gtc-text);
    margin-bottom: .25rem;
}

.rrc-header-sub[b-7jkdotem79] {
    font-size: .75rem;
    color: var(--gtc-text-light);
}

/* ── KPI Bar — matches GTC grid layout ── */
.rrc-kpi-bar[b-7jkdotem79] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: .9rem;
    margin: 1rem 0;
}

/* ── Filter Bar ── */
.rrc-filter-bar[b-7jkdotem79] {
    background: var(--gtc-card);
    padding: .65rem 1rem;
    border-radius: var(--gt-radius);
    display: flex;
    gap: .6rem;
    align-items: center;
    flex-wrap: wrap;
    font-size: .76rem;
    margin-bottom: 1rem;
    box-shadow: var(--gt-shadow);
}

.rrc-filter-bar label[b-7jkdotem79] {
    font-weight: 600;
    color: #666;
}

.rrc-filter-bar select[b-7jkdotem79] {
    padding: .28rem .5rem;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: .75rem;
    color: var(--gtc-text);
    background: #f8f9fa;
    cursor: pointer;
}

.rrc-show-completed[b-7jkdotem79] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: .35rem;
    cursor: pointer;
    user-select: none;
}

.rrc-show-completed input[type="checkbox"][b-7jkdotem79] {
    cursor: pointer;
}

/* ── Data Table ── */
.rrc-table-wrap[b-7jkdotem79] {
    background: var(--gtc-card);
    border-radius: var(--gt-radius);
    box-shadow: var(--gt-shadow);
    overflow: hidden;
}

.rrc-table[b-7jkdotem79] {
    width: 100%;
    border-collapse: collapse;
}

.rrc-table thead th[b-7jkdotem79] {
    background: #f8f9fa;
    padding: .5rem .9rem;
    text-align: left;
    font-size: .67rem;
    font-weight: 700;
    color: #888;
    text-transform: uppercase;
    letter-spacing: .5px;
    border-bottom: 2px solid #e8e8e8;
    white-space: nowrap;
}

.rrc-table tbody td[b-7jkdotem79] {
    padding: .62rem .9rem;
    font-size: .78rem;
    color: var(--gtc-text);
    border-bottom: 1px solid #f5f5f5;
    vertical-align: middle;
}

.rrc-table tr:last-child td[b-7jkdotem79] { border-bottom: none; }

.rrc-table-row[b-7jkdotem79] { cursor: pointer; transition: background .15s; }
.rrc-table-row:hover td[b-7jkdotem79] { background: #f0fdfb; }

.rrc-ref[b-7jkdotem79] { font-weight: 600; color: var(--gt-navy); }

.rrc-empty[b-7jkdotem79] {
    padding: 3rem;
    text-align: center;
    color: var(--gt-text-faint);
    font-size: .82rem;
}

/* ── Rating Pills ── */
.rrc-rating-pill[b-7jkdotem79] {
    display: inline-block;
    padding: .15rem .55rem;
    border-radius: 10px;
    font-size: .68rem;
    font-weight: 700;
    white-space: nowrap;
}

.rrc-rating-low[b-7jkdotem79] { background: #e8f5e9; color: var(--gt-green); }
.rrc-rating-medium[b-7jkdotem79] { background: #fff8e1; color: var(--gt-amber); }
.rrc-rating-high[b-7jkdotem79] { background: #ffebee; color: var(--gt-red); }
.rrc-rating-tbd[b-7jkdotem79] { color: var(--gt-text-faint); }

/* ── Stage Pill ── */
.rrc-stage-pill[b-7jkdotem79] {
    display: inline-block;
    padding: .15rem .55rem;
    border-radius: 10px;
    font-size: .68rem;
    font-weight: 700;
    background: #e8f4fd;
    color: #1565c0;
    white-space: nowrap;
}

/* ── Status ── */
.rrc-status-open[b-7jkdotem79] { color: var(--gt-navy); font-weight: 600; }
.rrc-status-completed[b-7jkdotem79] { color: var(--gt-green); font-weight: 600; }
.rrc-status-rejected[b-7jkdotem79] { color: var(--gt-red); font-weight: 600; }
.rrc-status-on-hold[b-7jkdotem79] { color: var(--gt-amber); font-weight: 600; }
.rrc-status-cancelled[b-7jkdotem79] { color: #999; font-weight: 600; }

/* ── Buttons — matches GTC shared button styles ── */
.rrc-btn[b-7jkdotem79] {
    padding: .5rem 1.1rem;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: .8rem;
    font-weight: 600;
    transition: all .2s;
    font-family: inherit;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.rrc-btn-primary[b-7jkdotem79] { background: var(--gt-teal); color: white; }
.rrc-btn-primary:hover:not(:disabled)[b-7jkdotem79] { background: #00c0ad; transform: translateY(-1px); }
.rrc-btn-secondary[b-7jkdotem79] { background: white; color: #555; border: 1px solid var(--gtc-border); }
.rrc-btn-secondary:hover:not(:disabled)[b-7jkdotem79] { background: #f8f9fa; }
.rrc-btn:disabled[b-7jkdotem79] { opacity: .5; cursor: not-allowed; }
/* /Components/Pages/GovernedTransactions/ComplianceReview/Components/CrDetailView.razor.rz.scp.css */
/* ── RRC Detail View — scoped layout styles ──
   Shared utility classes (buttons, alerts, pills, forms, evidence)
   are in /wwwroot/css/gtc.css alongside GTC/TM shared styles.
   Progress bar and action bar styles are in their own .razor.css files.
   ── */

/* ── Case Header — matches GTC detail header ── */
.rrc-case-header[b-l6bl3a6z3z] {
    background: var(--gtc-card);
    padding: 1.1rem;
    border-radius: var(--gt-radius);
    box-shadow: var(--gt-shadow);
    margin: 0 0 .9rem;
}

.rrc-case-header-top[b-l6bl3a6z3z] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1rem;
}

.rrc-case-header h2[b-l6bl3a6z3z] {
    font-size: 1rem;
    font-weight: 700;
    color: #1e3a5f;
    margin: 0 0 .15rem;
}

.rrc-case-meta[b-l6bl3a6z3z] { font-size: .76rem; color: var(--gtc-text-light); }

.rrc-status-badge[b-l6bl3a6z3z] {
    display: inline-block;
    padding: .15rem .55rem;
    border-radius: 10px;
    font-size: .68rem;
    font-weight: 700;
    white-space: nowrap;
}

.rrc-status-badge.rrc-status-open[b-l6bl3a6z3z] { background: #e8f4fd; color: #1565c0; }
.rrc-status-badge.rrc-status-completed[b-l6bl3a6z3z] { background: #e8f5e9; color: #2e7d32; }
.rrc-status-badge.rrc-status-rejected[b-l6bl3a6z3z] { background: #ffebee; color: #c62828; }
.rrc-status-badge.rrc-status-on-hold[b-l6bl3a6z3z] { background: #fff8e1; color: #f57f17; }
.rrc-status-badge.rrc-status-cancelled[b-l6bl3a6z3z] { background: #f5f5f5; color: #999; }

/* ── Tabs — matches GTC tab pattern ── */
.rrc-tabs[b-l6bl3a6z3z] {
    display: flex;
    background: var(--gtc-card);
    border-radius: var(--gt-radius) var(--gt-radius) 0 0;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0,0,0,.05);
    border-bottom: 2px solid #eee;
    position: relative;
    z-index: 2;
}

.rrc-tab[b-l6bl3a6z3z] {
    flex: 1;
    padding: .75rem .4rem;
    text-align: center;
    background: white;
    border: none;
    cursor: pointer;
    font-size: .75rem;
    font-weight: 500;
    color: #888;
    border-bottom: 3px solid transparent;
    transition: all .2s;
    font-family: inherit;
}

.rrc-tab:hover[b-l6bl3a6z3z] { background: #f8f9fa; }
.rrc-tab.active[b-l6bl3a6z3z] { color: var(--gtc-teal) !important; border-bottom-color: var(--gtc-teal) !important; background: #f8fffe !important; font-weight: 600 !important; }

.rrc-tab-content[b-l6bl3a6z3z] {
    background: var(--gtc-card);
    border-radius: 0 0 var(--gt-radius) var(--gt-radius);
    box-shadow: var(--gt-shadow);
    padding: 1.25rem;
    margin-bottom: .9rem;
    position: relative;
    z-index: 1;
}

/* ── Stage Content ── */
.rrc-stage-content[b-l6bl3a6z3z] { }

/* ── Audit Trail — matches GTC audit trail ── */
.rrc-audit-entry[b-l6bl3a6z3z] {
    display: flex;
    gap: .75rem;
    padding: .5rem 0;
    border-bottom: 1px solid #f5f5f5;
    font-size: .78rem;
}

.rrc-audit-entry:last-child[b-l6bl3a6z3z] { border-bottom: none; }
.rrc-audit-time[b-l6bl3a6z3z] { color: var(--gtc-text-light); min-width: 110px; flex-shrink: 0; font-size: .72rem; }
.rrc-audit-action[b-l6bl3a6z3z] { flex: 1; color: var(--gtc-text); }
.rrc-audit-user[b-l6bl3a6z3z] { color: var(--gtc-teal); font-weight: 600; font-size: .74rem; }

/* ── Summary Table ── */
.rrc-summary-table[b-l6bl3a6z3z] { width: 100%; border-collapse: collapse; }
.rrc-summary-table th[b-l6bl3a6z3z] {
    text-align: left;
    font-size: .67rem;
    color: #aaa;
    text-transform: uppercase;
    letter-spacing: .4px;
    padding: .5rem .9rem;
    border-bottom: 2px solid #e8e8e8;
    font-weight: 700;
}

.rrc-summary-table td[b-l6bl3a6z3z] {
    padding: .62rem .9rem;
    border-bottom: 1px solid #f5f5f5;
    font-size: .78rem;
    color: var(--gtc-text);
}

.rrc-empty[b-l6bl3a6z3z] { padding: 3rem; text-align: center; color: var(--gt-text-faint); font-size: .82rem; }

/* ── Sticky Action Bar ── */
.rrc-action-bar-sticky[b-l6bl3a6z3z] {
    position: sticky;
    bottom: 0;
    z-index: 10;
    background: var(--gtc-card);
    border-top: 2px solid #eee;
    box-shadow: 0 -2px 8px rgba(0,0,0,.08);
    padding: 0 1.1rem;
    border-radius: 0 0 var(--gt-radius) var(--gt-radius);
}

/* ── Read-only Stage Review Panel ── */
.rrc-review-panel[b-l6bl3a6z3z] {
    background: #f8fffe;
    border: 2px solid var(--gtc-teal);
    border-radius: var(--gt-radius);
    margin-bottom: .9rem;
    overflow: hidden;
}

.rrc-review-header[b-l6bl3a6z3z] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .6rem 1rem;
    background: linear-gradient(135deg, rgba(0,217,197,.08), rgba(0,217,197,.02));
    border-bottom: 1px solid rgba(0,217,197,.2);
    font-size: .78rem;
    color: var(--gtc-text);
}

.rrc-review-body[b-l6bl3a6z3z] {
    padding: 1rem;
    pointer-events: none;
    opacity: .85;
}

/* ── AML Check Animation ── */
.rrc-aml-running[b-l6bl3a6z3z] {
    color: var(--gtc-teal);
    font-weight: 600;
    animation: rrc-aml-pulse-b-l6bl3a6z3z 1s infinite alternate;
}

@keyframes rrc-aml-pulse-b-l6bl3a6z3z {
    from { opacity: .5; }
    to { opacity: 1; }
}

/* ── Saved Assessment Summary ── */
[b-l6bl3a6z3z] .rrc-saved-summary {
    background: #f8fffe;
    border: 1px solid rgba(0,217,197,.2);
    border-radius: var(--gt-radius);
    padding: .75rem 1rem;
    margin-bottom: .75rem;
}

[b-l6bl3a6z3z] .rrc-saved-row {
    display: flex;
    gap: .75rem;
    padding: .4rem 0;
    border-bottom: 1px solid #f0f0f0;
    font-size: .8rem;
}

[b-l6bl3a6z3z] .rrc-saved-row:last-child { border-bottom: none; }

[b-l6bl3a6z3z] .rrc-saved-label {
    min-width: 120px;
    font-size: .7rem;
    font-weight: 700;
    color: #999;
    text-transform: uppercase;
    letter-spacing: .3px;
    flex-shrink: 0;
}

/* ── Evidence Descriptions ── */
[b-l6bl3a6z3z] .rrc-evidence-desc {
    font-size: .72rem;
    color: #999;
    margin-top: .1rem;
    line-height: 1.3;
}

/* ── File Upload ── */
[b-l6bl3a6z3z] .rrc-file-upload {
    border: 2px dashed #ddd;
    border-radius: var(--gt-radius);
    padding: 1.25rem;
    text-align: center;
    cursor: pointer;
    transition: all .2s;
    background: #fafafa;
}

[b-l6bl3a6z3z] .rrc-file-upload:hover {
    border-color: var(--gtc-teal);
    background: #f8fffe;
}

[b-l6bl3a6z3z] .rrc-file-upload-icon { font-size: 1.5rem; margin-bottom: .25rem; }
[b-l6bl3a6z3z] .rrc-file-upload-text { font-size: .8rem; color: #888; }

[b-l6bl3a6z3z] .rrc-file-attached {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: .6rem 1rem;
    background: #e6f7f0;
    border: 1px solid #b2dfdb;
    border-radius: var(--gt-radius);
    font-size: .82rem;
    color: var(--gtc-text);
}

/* ── RM Notification Section ── */
[b-l6bl3a6z3z] .rrc-rm-notification { margin-top: .75rem; }

[b-l6bl3a6z3z] .rrc-rm-channels {
    display: flex;
    gap: .5rem;
    margin-bottom: 1rem;
}

[b-l6bl3a6z3z] .rrc-rm-channel {
    padding: .3rem .7rem;
    background: #e8f4fd;
    color: #1565c0;
    border-radius: 12px;
    font-size: .72rem;
    font-weight: 600;
}

[b-l6bl3a6z3z] .rrc-rm-preview {
    border: 1px solid #e0e0e0;
    border-radius: var(--gt-radius);
    overflow: hidden;
}

[b-l6bl3a6z3z] .rrc-rm-preview-header {
    background: #f8f9fa;
    padding: .6rem 1rem;
    font-size: .78rem;
    font-weight: 600;
    color: #555;
    border-bottom: 1px solid #e0e0e0;
}

[b-l6bl3a6z3z] .rrc-rm-preview-body {
    padding: 1rem;
    font-size: .82rem;
    line-height: 1.6;
    color: var(--gtc-text);
    background: white;
}

/* ── Notifications tab ── */
[b-l6bl3a6z3z] .rrc-tab-badge {
    display: inline-block;
    font-size: .65rem;
    font-weight: 600;
    padding: .1rem .45rem;
    border-radius: 8px;
    margin-left: .35rem;
    background: #e0e0e0;
    color: #666;
}
[b-l6bl3a6z3z] .rrc-tab-badge-pending {
    background: #fef3cd;
    color: #856404;
}

[b-l6bl3a6z3z] .rrc-notif-card {
    border: 1px solid #e0e0e0;
    border-radius: var(--gt-radius-sm, 6px);
    margin-bottom: .75rem;
    overflow: hidden;
}
[b-l6bl3a6z3z] .rrc-notif-pending { border-left: 4px solid #ffc107; }
[b-l6bl3a6z3z] .rrc-notif-acked { border-left: 4px solid var(--gt-green, #00b894); }

[b-l6bl3a6z3z] .rrc-notif-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .6rem .8rem;
    background: #f8f9fa;
    font-size: .82rem;
}
[b-l6bl3a6z3z] .rrc-notif-channel {
    display: inline-block;
    font-size: .68rem;
    font-weight: 600;
    padding: .1rem .4rem;
    border-radius: 8px;
    margin-left: .4rem;
    background: #e8f9f7;
    color: var(--gtc-teal, #00d9c5);
}
[b-l6bl3a6z3z] .rrc-notif-date { font-size: .75rem; color: #999; }

[b-l6bl3a6z3z] .rrc-notif-subject {
    padding: .5rem .8rem 0;
    font-weight: 600;
    font-size: .82rem;
    color: var(--gtc-text, #2c3e50);
}
[b-l6bl3a6z3z] .rrc-notif-body {
    padding: .4rem .8rem .6rem;
    font-size: .8rem;
    line-height: 1.5;
    color: #666;
}
[b-l6bl3a6z3z] .rrc-notif-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .5rem .8rem;
    background: #fafafa;
    border-top: 1px solid #f0f0f0;
    font-size: .78rem;
}
[b-l6bl3a6z3z] .rrc-notif-ack-status { color: var(--gt-green, #00b894); font-weight: 500; }
[b-l6bl3a6z3z] .rrc-notif-awaiting { color: #856404; }

[b-l6bl3a6z3z] .rrc-btn-sm {
    padding: .25rem .6rem;
    font-size: .75rem;
}

/* ── Form checkbox label ── */
[b-l6bl3a6z3z] .rrc-form-check {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: .85rem;
    font-weight: 500;
    cursor: pointer;
}
[b-l6bl3a6z3z] .rrc-form-check input[type="checkbox"] {
    width: 16px;
    height: 16px;
    accent-color: var(--gtc-teal, #00d9c5);
    cursor: pointer;
}
/* /Components/Pages/GovernedTransactions/ComplianceReview/Components/CrProgressBar.razor.rz.scp.css */
/* ── RRC Progress Bar — matches GTC progress bar pattern ── */
.rrc-progress[b-nox6w2nt1y] {
    background: var(--gtc-card);
    padding: 1rem 1.1rem .75rem;
    border-radius: var(--gt-radius);
    box-shadow: var(--gt-shadow);
    margin-bottom: .9rem;
    display: flex;
    align-items: flex-start;
}

.rrc-step[b-nox6w2nt1y] {
    flex: 1;
    text-align: center;
    position: relative;
    min-width: 72px;
}

.rrc-step-circle[b-nox6w2nt1y] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: white;
    border: 3px solid var(--gtc-border);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto .35rem;
    font-weight: 700;
    font-size: .72rem;
    color: #bbb;
    transition: transform .15s;
}

.rrc-step-clickable[b-nox6w2nt1y] { cursor: pointer; }
.rrc-step-clickable:hover .rrc-step-circle[b-nox6w2nt1y] { transform: scale(1.18); box-shadow: 0 0 0 4px rgba(0,217,197,.2); }
.rrc-step-clickable:hover .rrc-step-label[b-nox6w2nt1y] { color: var(--gtc-teal); }

.rrc-step-label[b-nox6w2nt1y] {
    font-size: .62rem;
    color: #aaa;
    font-weight: 500;
}

.rrc-step-line[b-nox6w2nt1y] {
    flex: 0 0 auto;
    width: 30px;
    height: 3px;
    background: var(--gtc-border);
    margin-top: 18px;
}

.rrc-step-done .rrc-step-circle[b-nox6w2nt1y] { background: var(--gtc-green); border-color: var(--gtc-green); color: white; }
.rrc-step-done .rrc-step-label[b-nox6w2nt1y] { color: var(--gtc-green); }
.rrc-step-line-done[b-nox6w2nt1y] { background: var(--gtc-green); }
.rrc-step-active .rrc-step-circle[b-nox6w2nt1y] { background: var(--gtc-teal); border-color: var(--gtc-teal); color: white; animation: rrc-pulse-b-nox6w2nt1y 2s infinite; }
.rrc-step-active .rrc-step-label[b-nox6w2nt1y] { color: var(--gtc-teal); font-weight: 700; }
.rrc-step-escalated .rrc-step-circle[b-nox6w2nt1y] { background: var(--gtc-red); border-color: var(--gtc-red); color: white; }
.rrc-step-escalated .rrc-step-label[b-nox6w2nt1y] { color: var(--gtc-red); font-weight: 700; }
.rrc-step-rejected .rrc-step-circle[b-nox6w2nt1y] { background: #c0392b; border-color: #c0392b; color: white; }
.rrc-step-rejected .rrc-step-label[b-nox6w2nt1y] { color: #c0392b; font-weight: 700; }

@keyframes rrc-pulse-b-nox6w2nt1y {
    0%, 100% { box-shadow: 0 0 0 0 rgba(0,217,197,.4); }
    50% { box-shadow: 0 0 0 8px rgba(0,217,197,0); }
}
/* /Components/Pages/GovernedTransactions/ComplianceReview/CrPage.razor.rz.scp.css */
.gov-ai-trigger-btn[b-adfs2zdyn7] {
    background: linear-gradient(135deg, #0d9488, #0f766e);
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 4px 12px 4px 6px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.15s;
    margin-right: 8px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    vertical-align: middle;
}
.gov-ai-trigger-btn:hover[b-adfs2zdyn7] { opacity: 0.9; }
.gov-ai-head-icon[b-adfs2zdyn7] { width: 22px; height: 22px; object-fit: contain; }

/* ── CR Page Layout — mirrors RrcPage.razor.css ── */
.rrc-page-scroll[b-adfs2zdyn7] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    padding-bottom: 1rem;
}

.rrc-page-header[b-adfs2zdyn7] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .75rem 1.25rem;
}

.rrc-back-link[b-adfs2zdyn7] {
    font-size: .78rem;
    color: #666;
    cursor: pointer;
    padding: .45rem .9rem;
    background: #f8f9fa;
    border: 1px solid var(--gtc-border);
    border-radius: 6px;
    text-decoration: none;
    transition: all .2s;
}

.rrc-back-link:hover[b-adfs2zdyn7] {
    background: #e8faf8;
    color: #007b70;
    border-color: var(--gtc-teal);
}

.rrc-page-role[b-adfs2zdyn7] {
    display: flex;
    align-items: center;
}

.rrc-loading[b-adfs2zdyn7] {
    padding: 3rem;
    text-align: center;
    color: var(--gt-text-muted);
    font-size: .82rem;
}

.rrc-action-message[b-adfs2zdyn7] {
    padding: .65rem 1rem;
    border-radius: 6px;
    font-size: .78rem;
    font-weight: 500;
    margin: .5rem 1.25rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.rrc-msg-success[b-adfs2zdyn7] { background: #f0fdf4; color: #15803d; border: 1px solid #86efac; }
.rrc-msg-error[b-adfs2zdyn7] { background: #fff2f2; color: #c0392b; border: 1px solid #fca5a5; }

.rrc-msg-dismiss[b-adfs2zdyn7] {
    background: none;
    border: none;
    cursor: pointer;
    font-size: .9rem;
    color: inherit;
    opacity: .6;
    padding: 0 .25rem;
    line-height: 1;
}
.rrc-msg-dismiss:hover[b-adfs2zdyn7] { opacity: 1; }
/* /Components/Pages/GovernedTransactions/EntityOnboarding/Components/EobCreateForm.razor.rz.scp.css */
.eob-create-form[b-a9ievag6uk] {
    background: #fff;
    border: 1px solid var(--gtc-border, #e2e8f0);
    border-radius: 8px;
    padding: 1.25rem 1.5rem;
    margin: .75rem 1.25rem 1rem;
    max-width: 640px;
}

.eob-create-title[b-a9ievag6uk] {
    font-size: .95rem;
    font-weight: 600;
    color: var(--gt-navy, #0a3d62);
    margin: 0 0 1.1rem;
}

.eob-form-group[b-a9ievag6uk] {
    margin-bottom: .85rem;
}

.eob-form-group-inline[b-a9ievag6uk] {
    display: flex;
    align-items: center;
    gap: .75rem;
}

.eob-form-label[b-a9ievag6uk] {
    display: block;
    font-size: .78rem;
    font-weight: 600;
    color: var(--gtc-text, #4a5568);
    margin-bottom: .3rem;
}

.eob-label-inline[b-a9ievag6uk] {
    display: flex;
    align-items: center;
    gap: .4rem;
    margin-bottom: 0;
    cursor: pointer;
    font-weight: 500;
}

.eob-form-hint[b-a9ievag6uk] {
    font-size: .72rem;
    color: var(--gt-text-muted, #718096);
}

.eob-required[b-a9ievag6uk] {
    color: #e53e3e;
    margin-left: .1rem;
}

.eob-form-input[b-a9ievag6uk],
.eob-form-select[b-a9ievag6uk] {
    width: 100%;
    padding: .4rem .65rem;
    border: 1px solid var(--gtc-border, #e2e8f0);
    border-radius: 6px;
    font-size: .82rem;
    color: var(--gtc-text, #4a5568);
    background: #fff;
    transition: border-color .15s;
    box-sizing: border-box;
}

.eob-form-input:focus[b-a9ievag6uk],
.eob-form-select:focus[b-a9ievag6uk] {
    outline: none;
    border-color: var(--gtc-teal, #00a896);
}

.eob-form-date[b-a9ievag6uk] {
    width: auto;
    min-width: 180px;
}

.eob-entity-results[b-a9ievag6uk] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff;
    border: 1px solid var(--gtc-border, #e2e8f0);
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0,0,0,.1);
    z-index: 50;
    max-height: 240px;
    overflow-y: auto;
}

.eob-entity-result[b-a9ievag6uk] {
    padding: .5rem .75rem;
    font-size: .82rem;
    cursor: pointer;
    transition: background .12s;
}

.eob-entity-result:hover[b-a9ievag6uk] {
    background: #f0fdfb;
    color: var(--gt-navy, #0a3d62);
}

.eob-selected-entity[b-a9ievag6uk] {
    margin-top: .35rem;
    font-size: .8rem;
    color: var(--gt-navy, #0a3d62);
    background: #f0fdfb;
    border: 1px solid rgba(0,168,150,.2);
    border-radius: 5px;
    padding: .35rem .65rem;
}

.eob-entity-meta[b-a9ievag6uk] {
    color: var(--gt-text-muted, #718096);
    font-size: .78rem;
    margin-left: .25rem;
}

.eob-create-error[b-a9ievag6uk] {
    background: #fff2f2;
    color: #c0392b;
    border: 1px solid #fca5a5;
    border-radius: 5px;
    padding: .45rem .75rem;
    font-size: .78rem;
    margin-bottom: .75rem;
}

.eob-create-actions[b-a9ievag6uk] {
    display: flex;
    gap: .6rem;
    margin-top: 1rem;
    padding-top: .85rem;
    border-top: 1px solid var(--gtc-border, #e2e8f0);
}
/* /Components/Pages/GovernedTransactions/EntityOnboarding/Components/EobDashboard.razor.rz.scp.css */
/* ── EOB Dashboard — aligned with GTC/RRC shared tokens ── */
.eob-dashboard[b-qxkk9pn6y8] { padding: 1rem 1.25rem; }

.eob-header[b-qxkk9pn6y8] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: .5rem;
}

.eob-header h1[b-qxkk9pn6y8] {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--gtc-text);
    margin-bottom: .25rem;
}

.eob-header-sub[b-qxkk9pn6y8] { font-size: .75rem; color: var(--gtc-text-light); }

/* ── KPI Bar ── */
.eob-kpi-bar[b-qxkk9pn6y8] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
    gap: .9rem;
    margin: 1rem 0;
}

/* ── Filter Bar ── */
.eob-filter-bar[b-qxkk9pn6y8] {
    background: var(--gtc-card);
    padding: .65rem 1rem;
    border-radius: var(--gt-radius);
    display: flex;
    gap: .6rem;
    align-items: center;
    flex-wrap: wrap;
    font-size: .76rem;
    margin-bottom: 1rem;
    box-shadow: var(--gt-shadow);
}

.eob-filter-bar label[b-qxkk9pn6y8] { font-weight: 600; color: #666; }

.eob-filter-bar select[b-qxkk9pn6y8] {
    padding: .28rem .5rem;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: .75rem;
    color: var(--gtc-text);
    background: #f8f9fa;
    cursor: pointer;
}

.eob-show-completed[b-qxkk9pn6y8] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: .35rem;
    cursor: pointer;
    user-select: none;
}

.eob-show-completed input[type="checkbox"][b-qxkk9pn6y8] { cursor: pointer; }

/* ── Data Table ── */
.eob-table-wrap[b-qxkk9pn6y8] {
    background: var(--gtc-card);
    border-radius: var(--gt-radius);
    box-shadow: var(--gt-shadow);
    overflow: hidden;
}

.eob-table[b-qxkk9pn6y8] { width: 100%; border-collapse: collapse; }

.eob-table thead th[b-qxkk9pn6y8] {
    background: #f8f9fa;
    padding: .5rem .9rem;
    text-align: left;
    font-size: .67rem;
    font-weight: 700;
    color: #888;
    text-transform: uppercase;
    letter-spacing: .5px;
    border-bottom: 2px solid #e8e8e8;
    white-space: nowrap;
}

.eob-table tbody td[b-qxkk9pn6y8] {
    padding: .62rem .9rem;
    font-size: .78rem;
    color: var(--gtc-text);
    border-bottom: 1px solid #f5f5f5;
    vertical-align: middle;
}

.eob-table tr:last-child td[b-qxkk9pn6y8] { border-bottom: none; }
.eob-table-row[b-qxkk9pn6y8] { cursor: pointer; transition: background .15s; }
.eob-table-row:hover td[b-qxkk9pn6y8] { background: #f0fdfb; }
.eob-ref[b-qxkk9pn6y8] { font-weight: 600; color: var(--gt-navy); }

.eob-empty[b-qxkk9pn6y8] {
    padding: 3rem;
    text-align: center;
    color: var(--gt-text-faint);
    font-size: .82rem;
}

/* ── Pills ── */
.eob-type-pill[b-qxkk9pn6y8] {
    display: inline-block;
    padding: .15rem .5rem;
    border-radius: 10px;
    font-size: .67rem;
    font-weight: 600;
    background: #e8f4fd;
    color: #1565c0;
    white-space: nowrap;
}

.eob-phase-pill[b-qxkk9pn6y8] {
    display: inline-block;
    padding: .15rem .5rem;
    border-radius: 10px;
    font-size: .67rem;
    font-weight: 600;
    background: #f0fdfb;
    color: var(--gtc-teal);
    white-space: nowrap;
}

/* ── Status text ── */
.eob-status-in-progress[b-qxkk9pn6y8] { color: var(--gt-navy); font-weight: 600; }
.eob-status-on-hold[b-qxkk9pn6y8] { color: var(--gt-amber); font-weight: 600; }
.eob-status-completed[b-qxkk9pn6y8] { color: var(--gt-green); font-weight: 600; }
.eob-status-rejected[b-qxkk9pn6y8] { color: var(--gt-red); font-weight: 600; }
.eob-status-cancelled[b-qxkk9pn6y8] { color: #999; font-weight: 600; }

/* ── Buttons ── */
.eob-btn[b-qxkk9pn6y8] {
    padding: .5rem 1.1rem;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: .8rem;
    font-weight: 600;
    transition: all .2s;
    font-family: inherit;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.eob-btn-primary[b-qxkk9pn6y8] { background: var(--gt-teal); color: white; }
.eob-btn-primary:hover:not(:disabled)[b-qxkk9pn6y8] { background: #00c0ad; transform: translateY(-1px); }
.eob-btn:disabled[b-qxkk9pn6y8] { opacity: .5; cursor: not-allowed; }

/* ── Risk badges ── */
.eob-risk-pill[b-qxkk9pn6y8] {
    display: inline-block;
    padding: .15rem .5rem;
    border-radius: 10px;
    font-size: .67rem;
    font-weight: 700;
    white-space: nowrap;
}
.eob-risk-low[b-qxkk9pn6y8]    { background: #e8f5e9; color: #27ae60; }
.eob-risk-medium[b-qxkk9pn6y8] { background: #fff8e1; color: #f39c12; }
.eob-risk-high[b-qxkk9pn6y8]   { background: #ffebee; color: #e74c3c; }

/* ── Age badges ── */
.eob-age-pill[b-qxkk9pn6y8] {
    display: inline-block;
    padding: .15rem .5rem;
    border-radius: 10px;
    font-size: .67rem;
    font-weight: 600;
    white-space: nowrap;
}
.eob-age-ok[b-qxkk9pn6y8]      { background: #f5f5f5; color: #888; }
.eob-age-warn[b-qxkk9pn6y8]    { background: #fff8e1; color: #f39c12; }
.eob-age-overdue[b-qxkk9pn6y8] { background: #ffebee; color: #e74c3c; }
/* /Components/Pages/GovernedTransactions/EntityOnboarding/Components/EobDetailView.razor.rz.scp.css */
/* ── EOB Detail View ── */
.eob-case-header[b-fw5aa5sc1y] {
    background: var(--gtc-card);
    border-radius: var(--gt-radius);
    padding: 1rem 1.25rem;
    margin-bottom: .9rem;
    box-shadow: var(--gt-shadow);
}

.eob-case-header-top[b-fw5aa5sc1y] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: .75rem;
}

.eob-case-header-top h2[b-fw5aa5sc1y] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--gtc-text);
    margin-bottom: .25rem;
}

.eob-case-meta[b-fw5aa5sc1y] { font-size: .75rem; color: var(--gtc-text-light); }

.eob-status-badge[b-fw5aa5sc1y] {
    display: inline-block;
    padding: .25rem .75rem;
    border-radius: 12px;
    font-size: .7rem;
    font-weight: 700;
    white-space: nowrap;
    flex-shrink: 0;
}

.eob-status-in-progress[b-fw5aa5sc1y] { background: #e8f4fd; color: #1565c0; }
.eob-status-on-hold[b-fw5aa5sc1y] { background: #fff8e1; color: var(--gt-amber); }
.eob-status-completed[b-fw5aa5sc1y] { background: #e8f5e9; color: var(--gt-green); }
.eob-status-rejected[b-fw5aa5sc1y] { background: #ffebee; color: var(--gt-red); }
.eob-status-cancelled[b-fw5aa5sc1y] { background: #f5f5f5; color: #999; }

.eob-info-grid[b-fw5aa5sc1y] {
    display: flex;
    flex-wrap: wrap;
    gap: 1.25rem;
    padding-top: .5rem;
    border-top: 1px solid var(--gtc-border);
}

.eob-info-label[b-fw5aa5sc1y] {
    font-size: .68rem;
    color: #999;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .4px;
    margin-bottom: .15rem;
}

.eob-info-value[b-fw5aa5sc1y] { font-size: .82rem; color: var(--gtc-text); font-weight: 500; }

/* ── Review Panel ── */
.eob-review-panel[b-fw5aa5sc1y] {
    background: var(--gtc-card);
    border-radius: var(--gt-radius);
    box-shadow: var(--gt-shadow);
    margin-bottom: .9rem;
    overflow: hidden;
}

.eob-review-header[b-fw5aa5sc1y] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .6rem 1rem;
    background: #f8f9fa;
    border-bottom: 1px solid var(--gtc-border);
    font-size: .78rem;
}

.eob-review-body[b-fw5aa5sc1y] { padding: .75rem 1rem; }

.eob-saved-row[b-fw5aa5sc1y] {
    display: flex;
    gap: 1rem;
    padding: .3rem 0;
    border-bottom: 1px solid #f5f5f5;
    font-size: .78rem;
}

.eob-saved-label[b-fw5aa5sc1y] { font-weight: 600; color: #888; min-width: 110px; flex-shrink: 0; }

/* ── Hold Banner ── */
.eob-hold-banner[b-fw5aa5sc1y] {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    padding: .9rem 1.1rem;
    border-radius: var(--gt-radius);
    background: #fff5f0;
    border: 1px solid #e17055;
    margin-bottom: .9rem;
    font-size: .82rem;
}

/* ── Tabs ── */
.eob-tabs[b-fw5aa5sc1y] {
    display: flex;
    border-bottom: 2px solid #e8e8e8;
}

.eob-tab[b-fw5aa5sc1y] {
    padding: .6rem 1.1rem;
    border: none;
    background: none;
    cursor: pointer;
    font-size: .78rem;
    font-weight: 500;
    color: #888;
    border-bottom: 2px solid transparent;
    margin-bottom: -2px;
    transition: all .15s;
    font-family: inherit;
}

.eob-tab.active[b-fw5aa5sc1y] { color: var(--gtc-teal); border-bottom-color: var(--gtc-teal); font-weight: 700; }
.eob-tab:hover:not(.active)[b-fw5aa5sc1y] { color: #555; background: #f8f9fa; }

.eob-tab-content[b-fw5aa5sc1y] {
    background: var(--gtc-card);
    border-radius: 0 0 var(--gt-radius) var(--gt-radius);
    padding: 1rem;
    margin-bottom: .9rem;
    box-shadow: var(--gt-shadow);
}

.eob-section-title[b-fw5aa5sc1y] { font-size: .88rem; font-weight: 700; color: var(--gtc-text); margin-bottom: .75rem; }
.eob-stage-content[b-fw5aa5sc1y] { padding: .25rem 0; }

.eob-summary-table[b-fw5aa5sc1y] { width: 100%; border-collapse: collapse; font-size: .8rem; }
.eob-summary-table th[b-fw5aa5sc1y] { background: #f8f9fa; padding: .4rem .75rem; text-align: left; font-size: .67rem; font-weight: 700; color: #888; text-transform: uppercase; letter-spacing: .4px; }
.eob-summary-table td[b-fw5aa5sc1y] { padding: .45rem .75rem; border-bottom: 1px solid #f5f5f5; color: var(--gtc-text); }
.eob-summary-table tr:last-child td[b-fw5aa5sc1y] { border-bottom: none; }
.eob-summary-table th:first-child[b-fw5aa5sc1y], .eob-summary-table td:first-child[b-fw5aa5sc1y] { font-weight: 600; color: #888; width: 160px; }

/* ── Documents ── */
.eob-doc-item[b-fw5aa5sc1y] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .6rem 0;
    border-bottom: 1px solid #f5f5f5;
    font-size: .8rem;
}

.eob-doc-type[b-fw5aa5sc1y] { font-weight: 600; color: var(--gtc-text); }

.eob-doc-badge[b-fw5aa5sc1y] {
    display: inline-block;
    padding: .15rem .5rem;
    border-radius: 10px;
    font-size: .67rem;
    font-weight: 600;
}

.eob-doc-badge-ok[b-fw5aa5sc1y] { background: #e8f5e9; color: var(--gt-green); }
.eob-doc-badge-pending[b-fw5aa5sc1y] { background: #fff8e1; color: var(--gt-amber); }

/* ── Audit ── */
.eob-audit-entry[b-fw5aa5sc1y] {
    display: flex;
    gap: 1rem;
    padding: .45rem 0;
    border-bottom: 1px solid #f5f5f5;
    font-size: .78rem;
}

.eob-audit-time[b-fw5aa5sc1y] { color: #999; min-width: 130px; flex-shrink: 0; }
.eob-audit-action[b-fw5aa5sc1y] { flex: 1; color: var(--gtc-text); }
.eob-audit-user[b-fw5aa5sc1y] { color: #888; min-width: 100px; text-align: right; }

.eob-empty-tab[b-fw5aa5sc1y] { padding: 2rem; text-align: center; color: var(--gt-text-faint); font-size: .82rem; }

/* ── Sticky Action Bar ── */
.eob-action-bar-sticky[b-fw5aa5sc1y] {
    position: sticky;
    bottom: 0;
    background: var(--gtc-card);
    border-top: 1px solid var(--gtc-border);
    padding: .75rem 1.25rem;
    display: flex;
    align-items: center;
    gap: .75rem;
    flex-wrap: wrap;
    box-shadow: 0 -2px 8px rgba(0,0,0,.06);
    z-index: 10;
}

.eob-btn-action[b-fw5aa5sc1y] {
    padding: .5rem 1.25rem;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: .8rem;
    font-weight: 600;
    transition: all .2s;
    font-family: inherit;
}

.eob-btn-primary[b-fw5aa5sc1y] { background: var(--gt-teal); color: white; }
.eob-btn-primary:hover:not(:disabled)[b-fw5aa5sc1y] { background: #00c0ad; transform: translateY(-1px); }
.eob-btn-secondary[b-fw5aa5sc1y] { background: white; color: #555; border: 1px solid var(--gtc-border); }
.eob-btn-secondary:hover:not(:disabled)[b-fw5aa5sc1y] { background: #f0fdfb; border-color: var(--gtc-teal); }
.eob-btn-danger[b-fw5aa5sc1y] { background: white; color: var(--gt-red); border: 1px solid var(--gt-red); }
.eob-btn-danger:hover:not(:disabled)[b-fw5aa5sc1y] { background: #ffebee; }
.eob-btn-blocked[b-fw5aa5sc1y] { background: #f5f5f5; color: #aaa; pointer-events: none; }
.eob-btn-cancel[b-fw5aa5sc1y] { background: white; color: #c0392b; border: 1px solid #fca5a5; }
.eob-btn-cancel:hover:not(:disabled)[b-fw5aa5sc1y] { background: #fff2f2; }
.eob-btn-action:disabled[b-fw5aa5sc1y] { opacity: .55; cursor: not-allowed; transform: none !important; }

.eob-btn-sm[b-fw5aa5sc1y] {
    padding: .3rem .7rem;
    border: 1px solid var(--gtc-border);
    border-radius: 4px;
    background: white;
    cursor: pointer;
    font-size: .73rem;
    color: #555;
    font-family: inherit;
}

.eob-action-notes[b-fw5aa5sc1y] { width: 100%; }

.eob-form-textarea[b-fw5aa5sc1y] {
    width: 100%;
    padding: .4rem .65rem;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: .78rem;
    font-family: inherit;
    resize: vertical;
    box-sizing: border-box;
}

.eob-notes-required[b-fw5aa5sc1y] { border-color: var(--gt-red); }
.eob-notes-hint[b-fw5aa5sc1y] { font-size: .72rem; color: var(--gt-red); margin-top: .2rem; }

.eob-action-context[b-fw5aa5sc1y] { margin-left: auto; font-size: .72rem; color: #aaa; }

/* ── Phase Guidance Panels (phases 1–7) ── */
.eob-phase-guide[b-fw5aa5sc1y] { padding: .1rem 0; }

.eob-phase-guide-desc[b-fw5aa5sc1y] {
    font-size: .82rem;
    color: var(--gtc-text-light, #636e72);
    line-height: 1.55;
    margin: 0 0 1rem;
}

.eob-phase-summary[b-fw5aa5sc1y] {
    background: #f8f9fa;
    border-radius: 6px;
    padding: .4rem .75rem;
    margin-bottom: 1rem;
}

.eob-phase-row[b-fw5aa5sc1y] {
    display: flex;
    gap: 1rem;
    padding: .3rem 0;
    border-bottom: 1px solid #efefef;
    font-size: .8rem;
}

.eob-phase-row:last-child[b-fw5aa5sc1y] { border-bottom: none; }

.eob-phase-row span:first-child[b-fw5aa5sc1y] {
    font-weight: 600;
    color: #888;
    min-width: 140px;
    flex-shrink: 0;
}

.eob-phase-open-btn[b-fw5aa5sc1y] {
    padding: .45rem 1.1rem;
    background: white;
    border: 1.5px solid var(--gtc-teal, #00a896);
    color: var(--gtc-teal, #00a896);
    border-radius: 6px;
    font-size: .8rem;
    font-weight: 600;
    cursor: pointer;
    font-family: inherit;
    transition: background .15s;
}

.eob-phase-open-btn:hover[b-fw5aa5sc1y] { background: #f0fdfb; }

/* ── Phase 8 Compliance Forms ── */
.eob-compliance-section[b-fw5aa5sc1y] {
    padding: .65rem 0;
    border-bottom: 1px solid #f0f0f0;
    margin-bottom: .65rem;
}

.eob-compliance-section:last-of-type[b-fw5aa5sc1y] { border-bottom: none; margin-bottom: 0; }

.eob-compliance-section-title[b-fw5aa5sc1y] {
    font-size: .72rem;
    font-weight: 700;
    color: #888;
    text-transform: uppercase;
    letter-spacing: .5px;
    margin: 0 0 .5rem;
}

.eob-compliance-saved[b-fw5aa5sc1y] {
    font-size: .8rem;
    color: var(--gtc-text);
    margin-bottom: .55rem;
}

.eob-compliance-check[b-fw5aa5sc1y] { color: #27ae60; margin-right: .3rem; }

.eob-compliance-form[b-fw5aa5sc1y] {
    display: flex;
    align-items: center;
    gap: .75rem;
    flex-wrap: wrap;
}

.eob-cf-row[b-fw5aa5sc1y] { display: flex; align-items: center; gap: .4rem; }

.eob-cf-label[b-fw5aa5sc1y] {
    font-size: .75rem;
    font-weight: 600;
    color: #888;
    white-space: nowrap;
}

.eob-cf-input[b-fw5aa5sc1y],
.eob-cf-select[b-fw5aa5sc1y] {
    padding: .35rem .6rem;
    border: 1px solid var(--gtc-border, #e2e8f0);
    border-radius: 5px;
    font-size: .8rem;
    font-family: inherit;
    color: var(--gtc-text);
    background: #fff;
    transition: border-color .15s;
}

.eob-cf-input:focus[b-fw5aa5sc1y],
.eob-cf-select:focus[b-fw5aa5sc1y] { outline: none; border-color: var(--gtc-teal, #00a896); }

.eob-aml-clear[b-fw5aa5sc1y]  { color: #27ae60; font-weight: 700; }
.eob-aml-refer[b-fw5aa5sc1y]  { color: #f39c12; font-weight: 700; }
.eob-aml-flagged[b-fw5aa5sc1y] { color: #e74c3c; font-weight: 700; }

.eob-phase8-error[b-fw5aa5sc1y] {
    background: #fff2f2;
    color: #c0392b;
    border: 1px solid #fca5a5;
    border-radius: 5px;
    padding: .4rem .7rem;
    font-size: .78rem;
    margin-top: .6rem;
}

/* ── Documents Tab ── */
.eob-doc-progress[b-fw5aa5sc1y] {
    display: flex;
    align-items: center;
    gap: .75rem;
    font-size: .78rem;
    padding-bottom: .6rem;
    margin-bottom: .6rem;
    border-bottom: 1px solid #f0f0f0;
}

.eob-doc-progress-ok[b-fw5aa5sc1y]   { color: #27ae60; font-weight: 600; }
.eob-doc-progress-warn[b-fw5aa5sc1y] { color: #f39c12; font-weight: 600; }

.eob-doc-add-form[b-fw5aa5sc1y] {
    display: flex;
    align-items: center;
    gap: .6rem;
    margin-bottom: .85rem;
}

.eob-doc-verify-btn[b-fw5aa5sc1y] {
    padding: .2rem .65rem;
    background: white;
    border: 1px solid var(--gtc-teal, #00a896);
    color: var(--gtc-teal, #00a896);
    border-radius: 4px;
    font-size: .72rem;
    font-weight: 600;
    cursor: pointer;
    font-family: inherit;
    transition: background .12s;
}

.eob-doc-verify-btn:hover:not(:disabled)[b-fw5aa5sc1y] { background: #f0fdfb; }
.eob-doc-verify-btn:disabled[b-fw5aa5sc1y] { opacity: .5; cursor: not-allowed; }

/* ── Phase 10 Final Review ── */
.eob-final-review[b-fw5aa5sc1y] {
    border: 1px solid var(--gtc-border, #e2e8f0);
    border-radius: 7px;
    overflow: hidden;
}

.eob-final-section[b-fw5aa5sc1y] {
    padding: .65rem .9rem;
    border-bottom: 1px solid #f0f0f0;
}

.eob-final-section:last-child[b-fw5aa5sc1y] { border-bottom: none; }

.eob-final-section-title[b-fw5aa5sc1y] {
    font-size: .68rem;
    font-weight: 700;
    color: #aaa;
    text-transform: uppercase;
    letter-spacing: .5px;
    margin-bottom: .4rem;
}

.eob-final-row[b-fw5aa5sc1y] {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 1rem;
    font-size: .8rem;
    padding: .2rem 0;
    color: var(--gtc-text);
}

.eob-final-row span:first-child[b-fw5aa5sc1y] { color: #888; font-weight: 500; flex-shrink: 0; }

.eob-final-meta[b-fw5aa5sc1y] { color: #aaa; font-size: .75rem; }

.eob-final-phases[b-fw5aa5sc1y] {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    padding-top: .2rem;
}

.eob-final-phase-pill[b-fw5aa5sc1y] {
    display: inline-block;
    padding: .15rem .55rem;
    background: #e8f5e9;
    color: #27ae60;
    border-radius: 10px;
    font-size: .7rem;
    font-weight: 600;
}

/* ── Risk badges (case header) ── */
.eob-risk-pill[b-fw5aa5sc1y] {
    display: inline-block;
    padding: .15rem .5rem;
    border-radius: 10px;
    font-size: .67rem;
    font-weight: 700;
    white-space: nowrap;
}
.eob-risk-low[b-fw5aa5sc1y]    { background: #e8f5e9; color: #27ae60; }
.eob-risk-medium[b-fw5aa5sc1y] { background: #fff8e1; color: #f39c12; }
.eob-risk-high[b-fw5aa5sc1y]   { background: #ffebee; color: #e74c3c; }

/* ── Age badges (case header) ── */
.eob-age-pill[b-fw5aa5sc1y] {
    display: inline-block;
    padding: .15rem .5rem;
    border-radius: 10px;
    font-size: .67rem;
    font-weight: 600;
    white-space: nowrap;
}
.eob-age-ok[b-fw5aa5sc1y]      { background: #f5f5f5; color: #888; }
.eob-age-warn[b-fw5aa5sc1y]    { background: #fff8e1; color: #f39c12; }
.eob-age-overdue[b-fw5aa5sc1y] { background: #ffebee; color: #e74c3c; }
/* /Components/Pages/GovernedTransactions/EntityOnboarding/Components/EobProgressBar.razor.rz.scp.css */
/* ── EOB Progress Bar — 10-phase, aligned with GTC/RRC tokens ── */
.eob-progress[b-4tugyc67um] {
    background: var(--gtc-card);
    padding: 1rem 1.1rem .75rem;
    border-radius: var(--gt-radius);
    box-shadow: var(--gt-shadow);
    margin-bottom: .9rem;
    display: flex;
    align-items: flex-start;
    overflow-x: auto;
}

.eob-step[b-4tugyc67um] {
    flex: 1;
    text-align: center;
    position: relative;
    min-width: 58px;
}

.eob-step-circle[b-4tugyc67um] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: white;
    border: 3px solid var(--gtc-border);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto .3rem;
    font-weight: 700;
    font-size: .68rem;
    color: #bbb;
    transition: transform .15s;
}

.eob-step-gate .eob-step-circle[b-4tugyc67um] {
    border-style: double;
    border-width: 4px;
}

.eob-step-clickable[b-4tugyc67um] { cursor: pointer; }
.eob-step-clickable:hover .eob-step-circle[b-4tugyc67um] { transform: scale(1.18); box-shadow: 0 0 0 4px rgba(0,217,197,.2); }
.eob-step-clickable:hover .eob-step-label[b-4tugyc67um] { color: var(--gtc-teal); }

.eob-step-label[b-4tugyc67um] {
    font-size: .57rem;
    color: #aaa;
    font-weight: 500;
    line-height: 1.2;
}

.eob-step-line[b-4tugyc67um] {
    flex: 0 0 auto;
    width: 16px;
    height: 3px;
    background: var(--gtc-border);
    margin-top: 16px;
}

.eob-step-done .eob-step-circle[b-4tugyc67um] { background: var(--gtc-green); border-color: var(--gtc-green); color: white; }
.eob-step-done .eob-step-label[b-4tugyc67um] { color: var(--gtc-green); }
.eob-step-line-done[b-4tugyc67um] { background: var(--gtc-green); }

.eob-step-active .eob-step-circle[b-4tugyc67um] { background: var(--gtc-teal); border-color: var(--gtc-teal); color: white; animation: eob-pulse-b-4tugyc67um 2s infinite; }
.eob-step-active .eob-step-label[b-4tugyc67um] { color: var(--gtc-teal); font-weight: 700; }

.eob-step-skipped .eob-step-circle[b-4tugyc67um] { background: #e9ecef; border-color: #ccc; color: #999; }
.eob-step-skipped .eob-step-label[b-4tugyc67um] { color: #bbb; font-style: italic; }

.eob-step-escalated .eob-step-circle[b-4tugyc67um] { background: var(--gtc-red); border-color: var(--gtc-red); color: white; }
.eob-step-escalated .eob-step-label[b-4tugyc67um] { color: var(--gtc-red); font-weight: 700; }

@keyframes eob-pulse-b-4tugyc67um {
    0%, 100% { box-shadow: 0 0 0 0 rgba(0,217,197,.4); }
    50% { box-shadow: 0 0 0 8px rgba(0,217,197,0); }
}
/* /Components/Pages/GovernedTransactions/EntityOnboarding/EobPage.razor.rz.scp.css */
/* ── EOB Page Layout — aligned with GTC/RRC shared tokens ── */
.eob-page-scroll[b-jef3xhzym2] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    padding-bottom: 1rem;
}

.eob-page-header[b-jef3xhzym2] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .75rem 1.25rem;
}

.eob-back-link[b-jef3xhzym2] {
    font-size: .78rem;
    color: #666;
    cursor: pointer;
    padding: .45rem .9rem;
    background: #f8f9fa;
    border: 1px solid var(--gtc-border);
    border-radius: 6px;
    text-decoration: none;
    transition: all .2s;
}

.eob-back-link:hover[b-jef3xhzym2] {
    background: #e8faf8;
    color: #007b70;
    border-color: var(--gtc-teal);
}

.eob-page-role[b-jef3xhzym2] {
    display: flex;
    align-items: center;
    gap: .5rem;
}

.eob-role-select[b-jef3xhzym2] {
    padding: .3rem .6rem;
    border: 1px solid var(--gtc-border);
    border-radius: 6px;
    font-size: .78rem;
    background: white;
    color: var(--gtc-text);
    cursor: pointer;
}

.eob-role-badge[b-jef3xhzym2] {
    font-size: .75rem;
    font-weight: 600;
    color: var(--gtc-teal);
    background: #f0fdfb;
    padding: .25rem .65rem;
    border-radius: 12px;
    border: 1px solid rgba(0,217,197,.2);
}

.eob-loading[b-jef3xhzym2] {
    padding: 3rem;
    text-align: center;
    color: var(--gt-text-muted);
    font-size: .82rem;
}

.eob-action-message[b-jef3xhzym2] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .65rem 1rem;
    border-radius: 6px;
    font-size: .78rem;
    font-weight: 500;
    margin: .5rem 1.25rem;
}

.eob-msg-success[b-jef3xhzym2] { background: #f0fdf4; color: #15803d; border: 1px solid #86efac; }
.eob-msg-error[b-jef3xhzym2] { background: #fff2f2; color: #c0392b; border: 1px solid #fca5a5; }

.eob-msg-dismiss[b-jef3xhzym2] {
    background: none;
    border: none;
    cursor: pointer;
    font-size: .9rem;
    color: inherit;
    opacity: .6;
    padding: 0 .25rem;
    line-height: 1;
}

.eob-msg-dismiss:hover[b-jef3xhzym2] { opacity: 1; }
/* /Components/Pages/GovernedTransactions/EntityRiskAssessment/Components/EraActionBar.razor.rz.scp.css */
/* ── ERA Action Bar ── */
.era-action-bar[b-goxbq5h5ig] { display: flex; align-items: center; gap: .5rem; padding: .75rem 0; flex-wrap: wrap; }
.era-action-notes[b-goxbq5h5ig] { width: 100%; margin-bottom: .5rem; }
.era-form-textarea[b-goxbq5h5ig] { width: 100%; padding: .45rem .7rem; border: 1px solid #ddd; border-radius: 6px; font-size: .82rem; font-family: inherit; color: var(--gtc-text); resize: vertical; }
.era-notes-required[b-goxbq5h5ig] { border-color: var(--gt-red) !important; }
.era-notes-hint[b-goxbq5h5ig] { font-size: .7rem; color: var(--gt-red); margin-top: .2rem; }
.era-btn-blocked[b-goxbq5h5ig] { background: #f0f0f0; color: #999; padding: .5rem 1.1rem; border: 1px solid #ddd; border-radius: 6px; font-size: .8rem; font-weight: 600; font-family: inherit; cursor: not-allowed; }
.era-btn-cancel[b-goxbq5h5ig] { background: none; color: #c0392b; padding: .5rem 1.1rem; border: 1px solid #fca5a5; border-radius: 6px; cursor: pointer; font-size: .78rem; font-weight: 600; font-family: inherit; transition: all .2s; margin-left: auto; }
.era-btn-cancel:hover:not(:disabled)[b-goxbq5h5ig] { background: #fff2f2; }
/* Override action button */
.era-btn-override-action[b-goxbq5h5ig] { background: #fff8e1; color: #f57f17; padding: .5rem 1.1rem; border: 1px solid #ffe082; border-radius: 6px; cursor: pointer; font-size: .78rem; font-weight: 600; font-family: inherit; transition: all .2s; }
.era-btn-override-action:hover:not(:disabled)[b-goxbq5h5ig] { background: #fff3cd; border-color: #f57f17; }
.era-btn-override-action:disabled[b-goxbq5h5ig] { opacity: .5; cursor: not-allowed; }

/* Warning button (for override review) */
.era-btn-warning[b-goxbq5h5ig] { background: #fff8e1; color: #f57f17; padding: .5rem 1.1rem; border: 1px solid #ffe082; border-radius: 6px; cursor: pointer; font-size: .8rem; font-weight: 600; font-family: inherit; transition: all .2s; }
.era-btn-warning:hover:not(:disabled)[b-goxbq5h5ig] { background: #f57f17; color: #fff; }
.era-btn-warning:disabled[b-goxbq5h5ig] { opacity: .5; cursor: not-allowed; }

/* Report button (completed stage) */
.era-btn-report[b-goxbq5h5ig] { background: #e8f5e9; color: #2e7d32; padding: .5rem 1.1rem; border: 1px solid #a5d6a7; border-radius: 6px; cursor: pointer; font-size: .8rem; font-weight: 600; font-family: inherit; transition: all .2s; }
.era-btn-report:hover[b-goxbq5h5ig] { background: #c8e6c9; border-color: #2e7d32; }

/* Sign-off modal */
.era-modal-overlay[b-goxbq5h5ig] { position: fixed; inset: 0; background: rgba(0,0,0,.4); z-index: 1000; display: flex; align-items: center; justify-content: center; }
.era-modal-panel[b-goxbq5h5ig] { background: #fff; border-radius: 12px; padding: 1.5rem; width: 520px; max-width: 95vw; box-shadow: 0 20px 60px rgba(0,0,0,.2); }
.era-modal-panel h3[b-goxbq5h5ig] { font-size: 1rem; font-weight: 700; margin: 0 0 .25rem; color: var(--gtc-text); }
.era-modal-sub[b-goxbq5h5ig] { font-size: .78rem; color: #888; margin-bottom: 1rem; }
.era-modal-label[b-goxbq5h5ig] { display: block; font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .5px; color: #666; margin-bottom: .3rem; }
.era-modal-error[b-goxbq5h5ig] { font-size: .72rem; color: var(--gt-red); margin-top: .25rem; }
.era-modal-actions[b-goxbq5h5ig] { display: flex; gap: .5rem; justify-content: flex-end; margin-top: 1rem; }
.era-btn-secondary[b-goxbq5h5ig] { background: #f0f0f0; color: #666; padding: .5rem 1.1rem; border: 1px solid #ddd; border-radius: 6px; cursor: pointer; font-size: .8rem; font-weight: 600; font-family: inherit; }
.era-btn-secondary:hover[b-goxbq5h5ig] { border-color: #aaa; color: var(--gtc-text); }

.era-action-context[b-goxbq5h5ig] { font-size: .7rem; color: #999; margin-left: auto; white-space: nowrap; }
/* /Components/Pages/GovernedTransactions/EntityRiskAssessment/Components/EraAmlScan.razor.rz.scp.css */
/* ── ERA AML Scan Panel ── */
.era-aml-panel[b-hmayvup2lw] { }

/* Role requirement banner */
.era-role-banner[b-hmayvup2lw] { font-size: .72rem; padding: .45rem .75rem; border-radius: 6px; margin-bottom: .75rem; }
.era-role-banner-ok[b-hmayvup2lw] { background: #e8f5e9; color: var(--gt-green); border-left: 3px solid var(--gt-green); }
.era-role-banner-info[b-hmayvup2lw] { background: #fff3e0; color: #e65100; border-left: 3px solid #ff9800; }

/* Restricted results (standard user) */
.era-scan-results-restricted[b-hmayvup2lw] { font-size: .75rem; color: #999; }

.era-scan-summary[b-hmayvup2lw] { font-size: .78rem; color: #666; margin-bottom: .5rem; padding: .4rem .75rem; background: #f8f9fa; border-radius: 6px; }
.era-aml-panel h4[b-hmayvup2lw] { font-size: .9rem; font-weight: 700; color: var(--gt-navy); margin-bottom: .75rem; }
.era-party-list[b-hmayvup2lw] { display: flex; flex-direction: column; gap: .5rem; }
.era-party-row[b-hmayvup2lw] { display: flex; align-items: center; gap: .75rem; padding: .65rem .9rem; background: #f8f9fa; border-radius: 6px; border: 1px solid #eee; flex-wrap: wrap; }
.era-party-scanned[b-hmayvup2lw] { background: #f0fdf4; border-color: #c8e6c9; }
.era-party-info[b-hmayvup2lw] { min-width: 160px; font-size: .82rem; }
.era-party-info strong[b-hmayvup2lw] { color: var(--gtc-text); }
.era-party-role[b-hmayvup2lw] { display: block; font-size: .68rem; color: #999; }
.era-scan-results[b-hmayvup2lw] { display: flex; gap: .35rem; flex-wrap: wrap; align-items: center; }
.era-scan-chip[b-hmayvup2lw] { display: inline-block; padding: .12rem .45rem; border-radius: 8px; font-size: .62rem; font-weight: 700; white-space: nowrap; }
.era-chip-clear[b-hmayvup2lw] { background: #e8f5e9; color: var(--gt-green); }
.era-chip-match[b-hmayvup2lw] { background: #ffebee; color: var(--gt-red); }
.era-chip-pending[b-hmayvup2lw] { background: #f5f5f5; color: #999; }
.era-scan-date[b-hmayvup2lw] { font-size: .65rem; color: #999; margin-left: .25rem; }
.era-scan-pending[b-hmayvup2lw] { font-size: .75rem; color: #bbb; font-style: italic; }
.era-btn-sm[b-hmayvup2lw] { padding: .3rem .7rem; font-size: .72rem; }
.era-aml-summary[b-hmayvup2lw] { margin-top: .75rem; padding: .5rem .75rem; background: #f8f9fa; border-radius: 6px; }
.era-aml-status[b-hmayvup2lw] { font-size: .82rem; font-weight: 700; }
.era-aml-clear[b-hmayvup2lw] { color: var(--gt-green); }
.era-aml-match[b-hmayvup2lw] { color: var(--gt-red); }
.era-aml-pending[b-hmayvup2lw] { color: #999; }

/* Scan progress animation */
.era-scan-progress[b-hmayvup2lw] { display: flex; gap: .35rem; flex-wrap: wrap; align-items: center; }
.era-scan-step[b-hmayvup2lw] { font-size: .65rem; padding: .15rem .4rem; border-radius: 6px; background: #f5f5f5; color: #bbb; transition: all .3s ease; white-space: nowrap; }
.era-scan-step-active[b-hmayvup2lw] { background: #e8f5e9; color: var(--gt-green); font-weight: 700; }

/* Re-scan button */
.era-btn-rescan[b-hmayvup2lw] { background: #f8f9fa; color: #888; border: 1px solid #ddd; border-radius: 6px; cursor: pointer; font-size: .65rem; font-weight: 600; font-family: inherit; padding: .2rem .5rem; transition: all .15s; }
.era-btn-rescan:hover:not(:disabled)[b-hmayvup2lw] { background: #eee; color: var(--gt-navy); border-color: #aaa; }
.era-btn-rescan:disabled[b-hmayvup2lw] { opacity: .5; cursor: not-allowed; }
/* /Components/Pages/GovernedTransactions/EntityRiskAssessment/Components/EraConfiguration.razor.rz.scp.css */
/* ── ERA Configuration ── */
.era-config[b-qjw3fwe7r1] { padding: 1rem 1.25rem; }
.era-config-header[b-qjw3fwe7r1] { margin-bottom: 1rem; }
.era-config-header h1[b-qjw3fwe7r1] { font-size: 1.1rem; font-weight: 600; color: var(--gtc-text); margin-bottom: .25rem; }
.era-config-sub[b-qjw3fwe7r1] { font-size: .75rem; color: var(--gtc-text-light); }
.era-config-card[b-qjw3fwe7r1] { background: var(--gtc-card); padding: 1.1rem; border-radius: var(--gt-radius); box-shadow: var(--gt-shadow); margin-bottom: 1rem; }
.era-config-card h3[b-qjw3fwe7r1] { font-size: .95rem; font-weight: 700; color: var(--gt-navy); margin-bottom: .5rem; }
.era-config-hint[b-qjw3fwe7r1] { font-size: .75rem; color: #888; margin-bottom: .75rem; }
.era-config-input[b-qjw3fwe7r1] { padding: .3rem .5rem; border: 1px solid #ddd; border-radius: 4px; font-size: .78rem; font-family: inherit; color: var(--gtc-text); background: #f8f9fa; }
.era-config-input:focus[b-qjw3fwe7r1] { outline: none; border-color: var(--gt-teal); }
.era-config-narrow[b-qjw3fwe7r1] { width: 70px; }

/* ── Risk Bands ── */
.era-band-preview[b-qjw3fwe7r1] { position: relative; height: 28px; background: #eee; border-radius: 14px; overflow: hidden; }
.era-band-preview-seg[b-qjw3fwe7r1] { position: absolute; top: 0; height: 100%; border-radius: 14px; opacity: .8; display: flex; align-items: center; justify-content: center; transition: all .3s; }
.era-band-preview-label[b-qjw3fwe7r1] { font-size: .6rem; font-weight: 700; color: #fff; text-shadow: 0 1px 2px rgba(0,0,0,.3); }
.era-band-scale[b-qjw3fwe7r1] { display: flex; justify-content: space-between; font-size: .6rem; color: #999; padding: 0 2px; margin-top: .2rem; margin-bottom: .5rem; }

.era-band-rows[b-qjw3fwe7r1] { display: flex; flex-direction: column; gap: .5rem; margin-bottom: .75rem; }
.era-band-row[b-qjw3fwe7r1] { border-left: 4px solid #ccc; border-radius: var(--gt-radius); background: #f8f9fa; padding: .65rem .85rem; display: flex; flex-direction: column; gap: .4rem; }
.era-band-row-header[b-qjw3fwe7r1] { display: flex; align-items: center; gap: .5rem; }
.era-band-label-input[b-qjw3fwe7r1] { width: 120px; }
.era-band-row-fields[b-qjw3fwe7r1] { display: flex; align-items: flex-end; gap: .75rem; flex-wrap: wrap; }
.era-band-field[b-qjw3fwe7r1] { display: flex; flex-direction: column; gap: .15rem; }
.era-band-field label[b-qjw3fwe7r1] { font-size: .6rem; font-weight: 600; color: #999; text-transform: uppercase; }
.era-band-field-range[b-qjw3fwe7r1] { flex: 1; min-width: 120px; }
.era-band-range[b-qjw3fwe7r1] { width: 100%; accent-color: var(--gt-teal); cursor: pointer; }
.era-band-review-wrap[b-qjw3fwe7r1] { display: flex; align-items: center; gap: .3rem; }
.era-band-review-suffix[b-qjw3fwe7r1] { font-size: .68rem; color: #999; }
.era-band-save-row[b-qjw3fwe7r1] { display: flex; justify-content: flex-end; margin-top: .25rem; }

/* ── Sections ── */
.era-sections-header[b-qjw3fwe7r1] { display: flex; align-items: center; justify-content: space-between; margin-bottom: .5rem; }
.era-sections-header h3[b-qjw3fwe7r1] { margin-bottom: 0; }
.era-sections-header-actions[b-qjw3fwe7r1] { display: flex; gap: .4rem; }

.era-weight-bar[b-qjw3fwe7r1] { display: flex; height: 8px; border-radius: 4px; overflow: hidden; margin-bottom: .75rem; gap: 1px; }
.era-weight-bar-seg[b-qjw3fwe7r1] { display: flex; align-items: center; justify-content: center; transition: width .3s; }
.era-weight-bar-seg span[b-qjw3fwe7r1] { font-size: .5rem; font-weight: 700; color: #fff; text-shadow: 0 1px 1px rgba(0,0,0,.3); }

.era-q-count[b-qjw3fwe7r1] { font-size: .65rem; color: #999; font-weight: 500; white-space: nowrap; background: #eee; padding: .1rem .4rem; border-radius: 8px; }

.era-config-section[b-qjw3fwe7r1] { border: 1px solid #eee; border-radius: var(--gt-radius); padding: .75rem; margin-bottom: .75rem; background: #fafafa; }
.era-config-section-header[b-qjw3fwe7r1] { display: flex; gap: .4rem; align-items: center; flex-wrap: wrap; margin-bottom: .5rem; }
.era-config-collapse-btn[b-qjw3fwe7r1] { background: none; border: none; cursor: pointer; font-size: .72rem; color: #888; padding: .1rem .3rem; line-height: 1; }
.era-config-weight-label[b-qjw3fwe7r1] { font-size: .72rem; color: #666; display: flex; align-items: center; gap: .2rem; white-space: nowrap; }
.era-config-questions[b-qjw3fwe7r1] { margin-left: .5rem; padding-left: .75rem; border-left: 2px solid #e0e0e0; }
.era-config-q-hint[b-qjw3fwe7r1] { font-size: .68rem; color: #999; margin-bottom: .4rem; }
.era-config-question[b-qjw3fwe7r1] { padding: .4rem 0; border-bottom: 1px solid #f0f0f0; }
.era-config-question:last-child[b-qjw3fwe7r1] { border-bottom: none; }
.era-config-q-row[b-qjw3fwe7r1] { display: flex; gap: .4rem; align-items: center; margin-bottom: .3rem; }
.era-config-answers[b-qjw3fwe7r1] { display: flex; flex-direction: column; gap: .2rem; margin-left: 1rem; margin-bottom: .3rem; }
.era-config-answer[b-qjw3fwe7r1] { display: flex; gap: .3rem; align-items: center; }
.era-config-btn-x[b-qjw3fwe7r1] { background: none; border: none; color: #c0392b; cursor: pointer; font-size: .8rem; padding: 0 .2rem; }
.era-weight-ok[b-qjw3fwe7r1] { color: var(--gt-green); }
.era-weight-bad[b-qjw3fwe7r1] { color: var(--gt-red); }
.era-config-msg[b-qjw3fwe7r1] { padding: .65rem 1rem; border-radius: 6px; font-size: .78rem; font-weight: 500; margin-bottom: .75rem; display: flex; align-items: center; justify-content: space-between; }

.era-loading-msg[b-qjw3fwe7r1] { padding: 2rem; text-align: center; color: #999; font-size: .82rem; }

/* Modal overlay */
.era-modal-overlay[b-qjw3fwe7r1] { position: fixed; inset: 0; background: rgba(0,0,0,.35); display: flex; align-items: center; justify-content: center; z-index: 1000; }
.era-modal[b-qjw3fwe7r1] { background: #fff; border-radius: var(--gt-radius); box-shadow: 0 8px 32px rgba(0,0,0,.18); padding: 1.25rem 1.5rem; min-width: 340px; max-width: 460px; }
.era-modal h4[b-qjw3fwe7r1] { font-size: .92rem; font-weight: 700; color: var(--gt-navy); margin-bottom: .75rem; }
.era-modal-field[b-qjw3fwe7r1] { margin-bottom: .6rem; }
.era-modal-field label[b-qjw3fwe7r1] { display: block; font-size: .7rem; font-weight: 600; color: #666; margin-bottom: .2rem; }
.era-modal-actions[b-qjw3fwe7r1] { display: flex; gap: .5rem; margin-top: .75rem; }

/* Danger button for delete actions */
.era-btn-danger[b-qjw3fwe7r1] { background: var(--gt-red, #d33); color: white; border: none; border-radius: 6px; cursor: pointer; font-weight: 600; font-family: inherit; transition: all .15s; }
.era-btn-danger:hover:not(:disabled)[b-qjw3fwe7r1] { opacity: .85; }

/* Read-only section header display */
.era-section-name[b-qjw3fwe7r1] { flex: 1; font-size: .82rem; font-weight: 600; color: var(--gtc-text); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.era-section-code[b-qjw3fwe7r1] { font-size: .7rem; color: #999; font-weight: 600; background: #eee; padding: .1rem .4rem; border-radius: 4px; }
.era-q-text[b-qjw3fwe7r1] { flex: 1; font-size: .78rem; color: var(--gtc-text); }
.era-q-weight[b-qjw3fwe7r1] { font-size: .72rem; font-weight: 600; color: var(--gt-teal); min-width: 35px; text-align: center; }

/* Edit icon button */
.era-edit-icon[b-qjw3fwe7r1] { background: none; border: none; cursor: pointer; font-size: .78rem; padding: .1rem .2rem; opacity: .4; transition: opacity .15s; line-height: 1; }
.era-edit-icon:hover[b-qjw3fwe7r1] { opacity: .9; }

/* Modal wide variant */
.era-modal-wide[b-qjw3fwe7r1] { min-width: 420px; max-width: 560px; }
.era-modal-row[b-qjw3fwe7r1] { display: flex; gap: .75rem; flex-wrap: wrap; }
.era-modal-divider[b-qjw3fwe7r1] { border-top: 1px solid #eee; margin: .75rem 0; }
.era-modal-sub-label[b-qjw3fwe7r1] { display: block; font-size: .7rem; font-weight: 600; color: #666; margin-bottom: .4rem; }
.era-modal-answers[b-qjw3fwe7r1] { display: flex; flex-direction: column; gap: .3rem; margin-bottom: .5rem; }
.era-btn-outline[b-qjw3fwe7r1] { background: #fff; border: 1px solid var(--gt-teal); color: var(--gt-teal); border-radius: 6px; cursor: pointer; font-weight: 600; font-family: inherit; transition: all .15s; }
.era-btn-outline:hover[b-qjw3fwe7r1] { background: var(--gt-teal); color: #fff; }

/* Delete icon button */
.era-delete-icon[b-qjw3fwe7r1] { background: none; border: none; cursor: pointer; font-size: .85rem; padding: .15rem .25rem; opacity: .35; transition: opacity .15s; line-height: 1; }
.era-delete-icon:hover[b-qjw3fwe7r1] { opacity: .8; }

/* Role chips */
.era-roles-panel[b-qjw3fwe7r1] { margin-bottom: .6rem; padding: .5rem .6rem; background: #f0f4ff; border-radius: 6px; }
.era-roles-row[b-qjw3fwe7r1] { display: flex; align-items: center; gap: .3rem; flex-wrap: wrap; margin-bottom: .3rem; }
.era-roles-row:last-child[b-qjw3fwe7r1] { margin-bottom: 0; }
.era-roles-label[b-qjw3fwe7r1] { font-size: .65rem; font-weight: 700; color: var(--gt-navy); min-width: 55px; text-transform: uppercase; }
.era-role-chip[b-qjw3fwe7r1] { padding: .15rem .5rem; border-radius: 12px; font-size: .62rem; font-weight: 600; border: 1px solid #ccc; background: #fff; color: #666; cursor: pointer; transition: all .15s; font-family: inherit; }
.era-role-chip:hover[b-qjw3fwe7r1] { border-color: var(--gt-teal); color: var(--gt-teal); }
.era-role-active[b-qjw3fwe7r1] { background: var(--gt-teal); color: #fff; border-color: var(--gt-teal); }
.era-role-active:hover[b-qjw3fwe7r1] { opacity: .85; }
.era-role-inherited[b-qjw3fwe7r1] { background: #e0f2f1; color: var(--gt-teal); border-color: #b2dfdb; opacity: .7; }
.era-role-inherited:hover[b-qjw3fwe7r1] { opacity: 1; }
.era-roles-inherit-notice[b-qjw3fwe7r1] { font-size: .68rem; color: #999; font-style: italic; margin-bottom: .4rem; padding: .3rem .5rem; background: #f9f9f9; border-radius: 4px; border-left: 3px solid var(--gt-teal); }
.era-roles-override-notice[b-qjw3fwe7r1] { font-size: .68rem; color: var(--gt-navy); margin-bottom: .4rem; display: flex; align-items: center; gap: .4rem; }
.era-roles-reset-btn[b-qjw3fwe7r1] { background: none; border: none; color: var(--gt-teal); cursor: pointer; font-size: .65rem; font-weight: 600; text-decoration: underline; font-family: inherit; }

/* Entity type chips */
.era-entity-type-chips[b-qjw3fwe7r1] { display: flex; gap: .3rem; flex-wrap: wrap; align-items: center; margin-bottom: .3rem; }
.era-entity-all-notice[b-qjw3fwe7r1] { font-size: .65rem; color: #999; font-style: italic; margin-right: .3rem; }
.era-entity-badge[b-qjw3fwe7r1] { font-size: .58rem; color: #666; background: #e8eaf6; padding: .1rem .4rem; border-radius: 4px; white-space: nowrap; }

/* Weight summary pills */
.era-weight-summary[b-qjw3fwe7r1] { margin-bottom: .75rem; }
.era-weight-pills[b-qjw3fwe7r1] { display: flex; gap: .3rem; flex-wrap: wrap; }
.era-weight-pill[b-qjw3fwe7r1] { font-size: .62rem; padding: .15rem .5rem; border-radius: 10px; background: #f0f0f0; color: #666; }
.era-weight-pill-ok[b-qjw3fwe7r1] { background: #e8f5e9; color: var(--gt-green); }
.era-weight-pill-bad[b-qjw3fwe7r1] { background: #ffebee; color: var(--gt-red); }

/* Notification table */
.era-notif-table[b-qjw3fwe7r1] { width: 100%; border-collapse: collapse; font-size: .75rem; }
.era-notif-table th[b-qjw3fwe7r1] { background: #f8f9fa; padding: .4rem .6rem; text-align: left; font-size: .62rem; font-weight: 700; color: #888; text-transform: uppercase; border-bottom: 2px solid #e8e8e8; }
.era-notif-table td[b-qjw3fwe7r1] { padding: .35rem .6rem; border-bottom: 1px solid #f5f5f5; vertical-align: middle; }
.era-notif-table tr:hover[b-qjw3fwe7r1] { background: #fafafa; }
.era-notif-roles[b-qjw3fwe7r1] { font-size: .68rem; color: #666; max-width: 200px; }
.era-notif-template[b-qjw3fwe7r1] { font-size: .7rem; color: var(--gtc-text); font-family: monospace; }
.era-empty-notice[b-qjw3fwe7r1] { padding: 1.5rem; text-align: center; color: #bbb; font-size: .78rem; font-style: italic; }
.era-notif-extra[b-qjw3fwe7r1] { font-size: .62rem; color: var(--gt-teal); font-weight: 600; }
.era-modal-field-check[b-qjw3fwe7r1] { display: flex; align-items: center; }
.era-modal-field-check label[b-qjw3fwe7r1] { display: flex; align-items: center; gap: .3rem; font-size: .75rem; color: #666; cursor: pointer; }

/* Inline delete confirmation */
.era-confirm-delete[b-qjw3fwe7r1] { display: inline-flex; align-items: center; gap: .3rem; font-size: .7rem; font-weight: 600; color: var(--gt-red, #d33); white-space: nowrap; }
/* /Components/Pages/GovernedTransactions/EntityRiskAssessment/Components/EraCreateForm.razor.rz.scp.css */
/* ── ERA Create Form ── */
.era-create-form[b-w6wvsmmavs] { padding: .25rem 0; }
.era-form-group[b-w6wvsmmavs] { margin-bottom: .9rem; }
.era-form-label[b-w6wvsmmavs] { display: block; font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .5px; color: #666; margin-bottom: .3rem; }
.era-required[b-w6wvsmmavs] { color: var(--gt-red); }
.era-form-input[b-w6wvsmmavs], .era-form-select[b-w6wvsmmavs], .era-form-textarea[b-w6wvsmmavs] { width: 100%; padding: .55rem .7rem; border: 1.5px solid #ddd; border-radius: 7px; font-size: .82rem; font-family: inherit; color: var(--gtc-text); background: #f8f9fa; }
.era-form-input:focus[b-w6wvsmmavs], .era-form-select:focus[b-w6wvsmmavs], .era-form-textarea:focus[b-w6wvsmmavs] { outline: none; border-color: var(--gt-teal); box-shadow: 0 0 0 2px rgba(0,217,197,.15); }
.era-form-textarea[b-w6wvsmmavs] { resize: vertical; min-height: 50px; }
.era-entity-results[b-w6wvsmmavs] { position: absolute; z-index: 20; width: 100%; background: white; border: 1px solid #ddd; border-radius: 6px; box-shadow: 0 4px 12px rgba(0,0,0,.1); max-height: 200px; overflow-y: auto; }
.era-entity-result[b-w6wvsmmavs] { padding: .5rem .7rem; font-size: .82rem; cursor: pointer; transition: background .15s; }
.era-entity-result:hover[b-w6wvsmmavs] { background: #f0fdfb; }
.era-entity-code[b-w6wvsmmavs] { color: #999; font-size: .75rem; }
.era-selected-entity[b-w6wvsmmavs] { margin-top: .5rem; padding: .45rem .7rem; background: #e6f7f0; border: 1px solid #b2dfdb; border-radius: 6px; font-size: .8rem; }
.era-risk-model-info[b-w6wvsmmavs] { padding: .55rem .7rem; background: #f8f9fa; border: 1px solid #ddd; border-radius: 7px; font-size: .78rem; color: #666; }
.era-btn-group[b-w6wvsmmavs] { display: flex; gap: .5rem; justify-content: flex-end; margin-top: 1.25rem; }
.era-btn-secondary[b-w6wvsmmavs] { background: #f8f9fa; color: #666; padding: .5rem 1.1rem; border: 1px solid #ddd; border-radius: 7px; cursor: pointer; font-size: .82rem; font-weight: 600; transition: all .15s; font-family: inherit; }
.era-btn-secondary:hover[b-w6wvsmmavs] { border-color: var(--gt-teal); color: var(--gtc-text); }
.era-alert-warning[b-w6wvsmmavs] { padding: .5rem .75rem; background: #fff8e1; color: #f57f17; border: 1px solid #fff176; border-radius: 6px; font-size: .78rem; }
/* /Components/Pages/GovernedTransactions/EntityRiskAssessment/Components/EraDashboard.razor.rz.scp.css */
/* ── ERA Dashboard — aligned with RRC/GTC shared tokens ── */
.era-dashboard[b-zl0367xrf6] { padding: 1rem 1.25rem; }
.era-header[b-zl0367xrf6] { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: .5rem; }
.era-header h1[b-zl0367xrf6] { font-size: 1.1rem; font-weight: 600; color: var(--gtc-text); margin-bottom: .25rem; }
.era-header-sub[b-zl0367xrf6] { font-size: .75rem; color: var(--gtc-text-light); }
.era-kpi-bar[b-zl0367xrf6] { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: .9rem; margin: 1rem 0; }
.era-filter-bar[b-zl0367xrf6] { background: var(--gtc-card); padding: .65rem 1rem; border-radius: var(--gt-radius); display: flex; gap: .6rem; align-items: center; flex-wrap: wrap; font-size: .76rem; margin-bottom: 1rem; box-shadow: var(--gt-shadow); }
.era-filter-bar label[b-zl0367xrf6] { font-weight: 600; color: #666; }
.era-filter-bar select[b-zl0367xrf6] { padding: .28rem .5rem; border: 1px solid #ddd; border-radius: 4px; font-size: .75rem; color: var(--gtc-text); background: #f8f9fa; cursor: pointer; }
.era-filter-input[b-zl0367xrf6] { padding: .28rem .5rem; border: 1px solid #ddd; border-radius: 4px; font-size: .75rem; color: var(--gtc-text); background: #f8f9fa; width: 140px; }
.era-show-completed[b-zl0367xrf6] { margin-left: auto; display: flex; align-items: center; gap: .35rem; cursor: pointer; user-select: none; }
.era-table-wrap[b-zl0367xrf6] { background: var(--gtc-card); border-radius: var(--gt-radius); box-shadow: var(--gt-shadow); overflow: hidden; }
.era-table[b-zl0367xrf6] { width: 100%; border-collapse: collapse; }
.era-table thead th[b-zl0367xrf6] { background: #f8f9fa; padding: .5rem .9rem; text-align: left; font-size: .67rem; font-weight: 700; color: #888; text-transform: uppercase; letter-spacing: .5px; border-bottom: 2px solid #e8e8e8; white-space: nowrap; }
.era-table tbody td[b-zl0367xrf6] { padding: .62rem .9rem; font-size: .78rem; color: var(--gtc-text); border-bottom: 1px solid #f5f5f5; vertical-align: middle; }
.era-table tr:last-child td[b-zl0367xrf6] { border-bottom: none; }
.era-table-row[b-zl0367xrf6] { cursor: pointer; transition: background .15s; }
.era-table-row:hover td[b-zl0367xrf6] { background: #f0fdfb; }
.era-ref[b-zl0367xrf6] { font-weight: 600; color: var(--gt-navy); }
.era-empty[b-zl0367xrf6] { padding: 3rem; text-align: center; color: var(--gt-text-faint); font-size: .82rem; }

/* Rating pills */
.era-rating-pill[b-zl0367xrf6] { display: inline-block; padding: .15rem .55rem; border-radius: 10px; font-size: .68rem; font-weight: 700; white-space: nowrap; }
.era-rating-low[b-zl0367xrf6] { background: #e8f5e9; color: var(--gt-green); }
.era-rating-medium[b-zl0367xrf6] { background: #fff8e1; color: var(--gt-amber); }
.era-rating-high[b-zl0367xrf6] { background: #ffebee; color: var(--gt-red); }

/* Risk Movement Summary */
.era-movement-section[b-zl0367xrf6] { margin-bottom: 1rem; }
.era-movement-title[b-zl0367xrf6] { font-size: .82rem; font-weight: 700; color: var(--gt-navy); margin-bottom: .5rem; }
.era-movement-cards[b-zl0367xrf6] { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: .6rem; }
.era-movement-card[b-zl0367xrf6] { background: var(--gtc-card); border-radius: var(--gt-radius); box-shadow: var(--gt-shadow); padding: .65rem .8rem; cursor: pointer; transition: all .15s; }
.era-movement-card:hover[b-zl0367xrf6] { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0,0,0,0.08); }
.era-movement-entity[b-zl0367xrf6] { font-size: .78rem; font-weight: 600; color: var(--gtc-text); margin-bottom: .35rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.era-movement-flow[b-zl0367xrf6] { display: flex; align-items: center; gap: .35rem; margin-bottom: .25rem; }
.era-movement-arrow[b-zl0367xrf6] { font-size: .82rem; color: #999; font-weight: 700; }
.era-movement-ref[b-zl0367xrf6] { font-size: .62rem; color: #999; }
.era-rating-none[b-zl0367xrf6] { background: #f5f5f5; color: #999; }

/* Stage status badges */
.era-status-badge[b-zl0367xrf6] { display: inline-block; padding: .15rem .55rem; border-radius: 10px; font-size: .68rem; font-weight: 700; white-space: nowrap; }
.era-status-in-progress[b-zl0367xrf6] { background: #e8f4fd; color: #1565c0; }
.era-status-aml-scan[b-zl0367xrf6] { background: #e8f4fd; color: #1565c0; }
.era-status-under-review[b-zl0367xrf6] { background: #e3f2fd; color: #1976d2; }
.era-status-write-back[b-zl0367xrf6] { background: #e8f4fd; color: #1565c0; }
.era-status-completed[b-zl0367xrf6] { background: #e8f5e9; color: #2e7d32; }
.era-status-cancelled[b-zl0367xrf6] { background: #f5f5f5; color: #999; }
.era-status-override[b-zl0367xrf6] { background: #fff8e1; color: #f57f17; border: 1px solid #ffe082; }

/* Create assessment modal */
.era-modal-overlay[b-zl0367xrf6] { position: fixed; inset: 0; background: rgba(0,0,0,.4); z-index: 1000; display: flex; align-items: center; justify-content: center; }
.era-modal-panel[b-zl0367xrf6] { background: #fff; border-radius: 12px; padding: 1.75rem; width: 560px; max-width: 95vw; box-shadow: 0 20px 60px rgba(0,0,0,.2); }
.era-modal-title[b-zl0367xrf6] { font-size: 1rem; font-weight: 700; color: var(--gtc-text); margin-bottom: .25rem; }
.era-modal-sub[b-zl0367xrf6] { font-size: .78rem; color: #888; margin-bottom: 1.25rem; }

/* % Complete bar */
.era-pct-bar[b-zl0367xrf6] { height: 6px; background: #eee; border-radius: 3px; overflow: hidden; width: 60px; display: inline-block; vertical-align: middle; }
.era-pct-fill[b-zl0367xrf6] { height: 100%; border-radius: 3px; transition: width .3s; }
.era-pct-complete[b-zl0367xrf6] { background: var(--gt-green); }
.era-pct-mid[b-zl0367xrf6] { background: var(--gt-amber); }
.era-pct-low[b-zl0367xrf6] { background: var(--gt-red); }
.era-pct-label[b-zl0367xrf6] { font-size: .68rem; font-weight: 600; margin-left: .3rem; vertical-align: middle; }

/* Buttons */
.era-btn[b-zl0367xrf6] { padding: .5rem 1.1rem; border: none; border-radius: 6px; cursor: pointer; font-size: .8rem; font-weight: 600; transition: all .2s; font-family: inherit; display: inline-flex; align-items: center; gap: .35rem; }
.era-btn-primary[b-zl0367xrf6] { background: var(--gt-teal); color: white; }
.era-btn-primary:hover:not(:disabled)[b-zl0367xrf6] { background: #00c0ad; transform: translateY(-1px); }
.era-btn:disabled[b-zl0367xrf6] { opacity: .5; cursor: not-allowed; }
/* /Components/Pages/GovernedTransactions/EntityRiskAssessment/Components/EraDetailView.razor.rz.scp.css */
/* ── ERA Detail View — scoped layout styles ── */

/* Case Header */
.era-case-header[b-m6iori6oyo] { background: var(--gtc-card); padding: 1.1rem; border-radius: var(--gt-radius); box-shadow: var(--gt-shadow); margin: 0 1.25rem .9rem; }
.era-case-header-top[b-m6iori6oyo] { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 1rem; }
.era-case-header h2[b-m6iori6oyo] { font-size: 1rem; font-weight: 700; color: var(--gt-navy); margin: 0 0 .15rem; }
.era-case-meta[b-m6iori6oyo] { font-size: .76rem; color: var(--gtc-text-light); }
.era-status-badge[b-m6iori6oyo] { display: inline-block; padding: .15rem .55rem; border-radius: 10px; font-size: .68rem; font-weight: 700; white-space: nowrap; }
.era-status-open[b-m6iori6oyo] { background: #e8f4fd; color: #1565c0; }
.era-status-completed[b-m6iori6oyo] { background: #e8f5e9; color: #2e7d32; }
.era-status-cancelled[b-m6iori6oyo] { background: #f5f5f5; color: #999; }
.era-info-grid[b-m6iori6oyo] { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: .5rem; }
.era-info-label[b-m6iori6oyo] { font-size: .65rem; font-weight: 700; color: #999; text-transform: uppercase; letter-spacing: .3px; margin-bottom: .15rem; }
.era-info-value[b-m6iori6oyo] { font-size: .82rem; color: var(--gtc-text); }
.era-aml-clear[b-m6iori6oyo] { color: var(--gt-green); font-weight: 700; }
.era-aml-match[b-m6iori6oyo] { color: var(--gt-red); font-weight: 700; }
.era-aml-pending[b-m6iori6oyo] { color: #999; }

/* AML match banner */
.era-aml-match-banner[b-m6iori6oyo] { display: flex; align-items: flex-start; gap: .6rem; padding: .75rem 1rem; margin: 0 1.25rem .75rem; background: #ffebee; border: 1px solid #ef9a9a; border-radius: var(--gt-radius); font-size: .82rem; color: #c62828; }

/* Override banners */
.era-override-banner[b-m6iori6oyo] { display: flex; align-items: flex-start; gap: .6rem; padding: .75rem 1rem; margin: 0 1.25rem .75rem; background: #fff8e1; border: 1px solid #fff176; border-radius: var(--gt-radius); font-size: .82rem; color: #f57f17; }
.era-override-icon[b-m6iori6oyo] { font-size: 1.1rem; }
.era-override-approved-banner[b-m6iori6oyo] { display: flex; align-items: center; gap: .6rem; padding: .75rem 1rem; margin: 0 1.25rem .75rem; background: #e8f5e9; border: 1px solid #a5d6a7; border-radius: var(--gt-radius); font-size: .82rem; color: #2e7d32; font-weight: 600; }
.era-override-rejected-banner[b-m6iori6oyo] { padding: .75rem 1rem; margin: 0 1.25rem .75rem; background: #ffebee; border: 1px solid #ef9a9a; border-radius: var(--gt-radius); font-size: .82rem; color: #c62828; }

/* Tabs */
.era-tabs[b-m6iori6oyo] { display: flex; background: var(--gtc-card); border-radius: var(--gt-radius) var(--gt-radius) 0 0; overflow: hidden; box-shadow: 0 2px 4px rgba(0,0,0,.05); border-bottom: 2px solid #eee; margin: 0 1.25rem; position: relative; z-index: 2; }
.era-tab[b-m6iori6oyo] { flex: 1; padding: .75rem .4rem; text-align: center; background: white; border: none; cursor: pointer; font-size: .75rem; font-weight: 500; color: #888; border-bottom: 3px solid transparent; transition: all .2s; font-family: inherit; }
.era-tab:hover[b-m6iori6oyo] { background: #f8f9fa; }
.era-tab.active[b-m6iori6oyo] { color: var(--gt-teal) !important; border-bottom-color: var(--gt-teal) !important; background: #f8fffe !important; font-weight: 600 !important; }

.era-tab-content[b-m6iori6oyo] { background: var(--gtc-card); border-radius: 0 0 var(--gt-radius) var(--gt-radius); box-shadow: var(--gt-shadow); padding: 1.25rem 1.25rem 5rem; margin: 0 1.25rem .9rem; position: relative; z-index: 1; }

/* Audit trail */
.era-audit-entry[b-m6iori6oyo] { display: flex; gap: .75rem; padding: .5rem 0; border-bottom: 1px solid #f5f5f5; font-size: .78rem; }
.era-audit-entry:last-child[b-m6iori6oyo] { border-bottom: none; }
.era-audit-time[b-m6iori6oyo] { color: var(--gtc-text-light); min-width: 110px; flex-shrink: 0; font-size: .72rem; }
.era-audit-action[b-m6iori6oyo] { flex: 1; color: var(--gtc-text); }
.era-audit-user[b-m6iori6oyo] { color: var(--gt-teal); font-weight: 600; font-size: .74rem; }
.era-audit-notes[b-m6iori6oyo] { font-size: .72rem; color: #999; flex-basis: 100%; margin-top: .15rem; }
/* Audit immutable notice */
.era-audit-immutable[b-m6iori6oyo] { text-align: center; font-size: .72rem; color: #999; font-style: italic; padding: .5rem; margin-bottom: .5rem; }

.era-empty[b-m6iori6oyo] { padding: 3rem; text-align: center; color: var(--gt-text-faint); font-size: .82rem; }

/* % Complete colours */
.era-pct-complete[b-m6iori6oyo] { color: var(--gt-green); }
.era-pct-mid[b-m6iori6oyo] { color: var(--gt-amber); }
.era-pct-low[b-m6iori6oyo] { color: var(--gt-red); }

/* Stage hint strip — sits under the progress bar, gives role-aware "what to do now" guidance */
.era-stage-hint[b-m6iori6oyo] { display: flex; align-items: center; gap: .5rem; padding: .5rem .9rem; margin: 0 1.25rem .75rem; background: #f0f7fa; border: 1px solid #d0e7ee; border-left: 3px solid var(--gt-teal); border-radius: 6px; font-size: .78rem; color: #406070; }
.era-stage-hint-icon[b-m6iori6oyo] { font-size: 1rem; flex-shrink: 0; }

/* Sticky action bar */
.era-action-bar-sticky[b-m6iori6oyo] { position: sticky; bottom: 0; z-index: 10; background: var(--gtc-card); border-top: 2px solid #eee; box-shadow: 0 -2px 8px rgba(0,0,0,.08); padding: 0 1.25rem; margin: 0 1.25rem; border-radius: 0 0 var(--gt-radius) var(--gt-radius); }
/* /Components/Pages/GovernedTransactions/EntityRiskAssessment/Components/EraOverrideModal.razor.rz.scp.css */
/* ── ERA Override Panel ── */
.era-override-panel[b-uqfwgus2ga] { background: var(--gtc-card); padding: 1.25rem; border-radius: var(--gt-radius); box-shadow: var(--gt-shadow); margin: .75rem 0; border-left: 4px solid var(--gt-amber); }
.era-override-panel h4[b-uqfwgus2ga] { font-size: .9rem; font-weight: 700; color: var(--gt-navy); margin-bottom: .75rem; }
.era-override-info[b-uqfwgus2ga] { font-size: .82rem; color: #666; margin-bottom: .75rem; }
.era-override-review[b-uqfwgus2ga] { border-left-color: var(--gt-teal); }
.era-override-summary[b-uqfwgus2ga] { background: #f8f9fa; border-radius: 6px; padding: .75rem; margin-bottom: .75rem; }
.era-override-row[b-uqfwgus2ga] { display: flex; align-items: center; gap: .75rem; padding: .35rem 0; border-bottom: 1px solid #f0f0f0; font-size: .8rem; }
.era-override-row:last-child[b-uqfwgus2ga] { border-bottom: none; }
.era-override-label[b-uqfwgus2ga] { min-width: 120px; font-size: .7rem; font-weight: 700; color: #999; text-transform: uppercase; letter-spacing: .3px; }
.era-btn-danger[b-uqfwgus2ga] { background: var(--gt-red); color: white; padding: .5rem 1.1rem; border: none; border-radius: 6px; cursor: pointer; font-size: .8rem; font-weight: 600; transition: all .2s; font-family: inherit; }
.era-btn-danger:hover:not(:disabled)[b-uqfwgus2ga] { background: #e74c3c; transform: translateY(-1px); }
/* /Components/Pages/GovernedTransactions/EntityRiskAssessment/Components/EraProgressBar.razor.rz.scp.css */
/* ── ERA Progress Bar ── */
.era-progress-wrap[b-kvedii81kc] { background: var(--gtc-card); border-radius: var(--gt-radius); box-shadow: var(--gt-shadow); margin-bottom: .9rem; padding: .5rem 1rem .75rem; }
.era-progress-hint[b-kvedii81kc] { font-size: .65rem; color: #bbb; text-align: center; font-style: italic; margin-bottom: .5rem; }
.era-progress[b-kvedii81kc] { display: flex; align-items: center; gap: 0; }
.era-step[b-kvedii81kc] { display: flex; flex-direction: column; align-items: center; gap: .25rem; min-width: 70px; }
.era-step-circle[b-kvedii81kc] { width: 28px; height: 28px; border-radius: 50%; background: #e0e0e0; color: #999; display: flex; align-items: center; justify-content: center; font-size: .72rem; font-weight: 700; transition: all .2s; }
.era-step-label[b-kvedii81kc] { font-size: .62rem; color: #999; text-align: center; white-space: nowrap; }
.era-step-line[b-kvedii81kc] { flex: 1; height: 2px; background: #e0e0e0; min-width: 16px; transition: background .2s; }
.era-step-line-done[b-kvedii81kc] { background: var(--gt-teal); }
.era-step-active .era-step-circle[b-kvedii81kc] { background: var(--gt-teal); color: white; box-shadow: 0 0 0 3px rgba(0,217,197,.25); }
.era-step-active .era-step-label[b-kvedii81kc] { color: var(--gt-teal); font-weight: 600; }
.era-step-done .era-step-circle[b-kvedii81kc] { background: var(--gt-teal); color: white; }
.era-step-done .era-step-label[b-kvedii81kc] { color: var(--gt-teal); }
.era-step-clickable[b-kvedii81kc] { cursor: pointer; }
.era-step-clickable:hover .era-step-circle[b-kvedii81kc] { transform: scale(1.1); box-shadow: 0 0 0 3px rgba(0,217,197,.3); }
/* /Components/Pages/GovernedTransactions/EntityRiskAssessment/Components/EraQuestionnaire.razor.rz.scp.css */
/* ── ERA Questionnaire ── */
.era-questionnaire[b-fbfckymkes] { }
.era-lock-banner[b-fbfckymkes] { padding: .6rem 1rem; background: #f5f5f5; border: 1px solid #e0e0e0; border-radius: var(--gt-radius); font-size: .78rem; color: #666; margin-bottom: .75rem; }
.era-loading-msg[b-fbfckymkes] { padding: 2rem; text-align: center; color: #999; font-size: .82rem; }

/* Score bar — lighter than a card so it reads as a header strip, not a footer */
.era-score-bar[b-fbfckymkes] { display: flex; align-items: center; gap: .75rem; padding: .6rem 1rem; background: #f8fafb; border: 1px solid #e8e8e8; border-radius: var(--gt-radius); margin-bottom: .55rem; }
.era-score-bar.era-score-bar-attached[b-fbfckymkes] { border-radius: var(--gt-radius) var(--gt-radius) 0 0; border-bottom: none; margin-bottom: 0; }

/* Jump-to-first-unanswered banner — sits flush under the score bar */
.era-jump-banner[b-fbfckymkes] { display: flex; align-items: center; gap: .6rem; padding: .55rem 1rem; background: #fff8e1; border: 1px solid #ffe082; border-radius: 0 0 var(--gt-radius) var(--gt-radius); font-size: .78rem; color: #8a6d3b; margin-bottom: .9rem; }
.era-jump-banner span[b-fbfckymkes] { flex: 1; }
.era-jump-btn[b-fbfckymkes] { background: var(--gt-teal); color: #fff; padding: .35rem .75rem; border: none; border-radius: 6px; cursor: pointer; font-size: .75rem; font-weight: 600; font-family: inherit; }
.era-jump-btn:hover[b-fbfckymkes] { opacity: .9; }
.era-score-value[b-fbfckymkes] { font-size: 1.5rem; font-weight: 800; }
.era-score-label[b-fbfckymkes] { font-size: .75rem; color: #999; margin-left: .25rem; }
.era-score-not-calculated[b-fbfckymkes] { font-size: .72rem; color: #bbb; font-style: italic; }
/* Score track bar */
.era-score-track[b-fbfckymkes] { flex: 1; height: 10px; background: #e8e8e8; border-radius: 5px; overflow: hidden; min-width: 80px; }
.era-score-track-fill[b-fbfckymkes] { height: 100%; border-radius: 5px; transition: width .4s ease; }
.era-answered-counter[b-fbfckymkes] { font-size: .72rem; font-weight: 700; color: #999; background: #f0f0f0; padding: .15rem .5rem; border-radius: 10px; }
.era-counter-complete[b-fbfckymkes] { color: var(--gt-green); background: #e8f5e9; }
.era-btn-sm[b-fbfckymkes] { padding: .3rem .7rem; font-size: .72rem; }
.era-btn-override[b-fbfckymkes] { background: #fff8e1; color: var(--gt-amber); border: 1px solid var(--gt-amber); border-radius: 6px; cursor: pointer; font-weight: 600; font-family: inherit; margin-left: auto; }
.era-btn-override:hover[b-fbfckymkes] { background: #fff3cd; }

/* Override banner */
.era-override-banner[b-fbfckymkes] { display: flex; align-items: center; gap: .5rem; padding: .6rem 1rem; background: #fff8e1; border: 1px solid #fff176; border-radius: var(--gt-radius); font-size: .8rem; color: #f57f17; margin-bottom: .75rem; flex-wrap: wrap; }

/* Section cards */
.era-section-card[b-fbfckymkes] { background: var(--gtc-card); border-radius: var(--gt-radius); box-shadow: var(--gt-shadow); margin-bottom: .75rem; overflow: hidden; }
.era-section-header[b-fbfckymkes] { display: flex; align-items: center; gap: .75rem; padding: .75rem 1rem; background: #f8f9fa; border-bottom: 2px solid #e8e8e8; }
.era-section-header h4[b-fbfckymkes] { font-size: .85rem; font-weight: 700; color: var(--gt-navy); margin: 0; flex: 1; }
.era-section-weight[b-fbfckymkes] { font-size: .68rem; font-weight: 600; color: #999; background: #eee; padding: .15rem .45rem; border-radius: 8px; }
.era-section-score[b-fbfckymkes] { font-size: .82rem; font-weight: 800; color: var(--gt-teal); }

/* Questions */
.era-question[b-fbfckymkes] { padding: .75rem 1rem; border-bottom: 1px solid #f5f5f5; }
.era-question:last-child[b-fbfckymkes] { border-bottom: none; }
.era-question-answered[b-fbfckymkes] { background: #f8fffe; }
.era-question-text[b-fbfckymkes] { font-size: .82rem; color: var(--gtc-text); margin-bottom: .5rem; }
.era-question-weight[b-fbfckymkes] { font-size: .65rem; color: #bbb; margin-left: .3rem; }

/* Answer buttons */
.era-answer-options[b-fbfckymkes] { display: flex; gap: .4rem; flex-wrap: wrap; }
.era-answer-btn[b-fbfckymkes] { padding: .3rem .65rem; border: 1px solid #ddd; border-radius: 6px; background: #f8f9fa; font-size: .72rem; font-family: inherit; cursor: pointer; transition: all .15s; color: var(--gtc-text); display: inline-flex; align-items: center; gap: .3rem; }
.era-answer-btn:hover:not(:disabled)[b-fbfckymkes] { border-color: #aaa; }
.era-answer-btn:disabled[b-fbfckymkes] { opacity: .6; cursor: not-allowed; }

/* Score-based answer colouring */
.era-answer-low[b-fbfckymkes] { border-color: #c8e6c9; background: #f1f8e9; }
.era-answer-low:hover:not(:disabled)[b-fbfckymkes] { background: #e8f5e9; border-color: var(--gt-green); }
.era-answer-medium[b-fbfckymkes] { border-color: #ffe082; background: #fffde7; }
.era-answer-medium:hover:not(:disabled)[b-fbfckymkes] { background: #fff8e1; border-color: var(--gt-amber); }
.era-answer-high[b-fbfckymkes] { border-color: #ef9a9a; background: #fff3e0; }
.era-answer-high:hover:not(:disabled)[b-fbfckymkes] { background: #ffebee; border-color: var(--gt-red); }

/* Selected state overrides */
.era-answer-selected.era-answer-low[b-fbfckymkes] { background: var(--gt-green); color: white; border-color: var(--gt-green); }
.era-answer-selected.era-answer-medium[b-fbfckymkes] { background: var(--gt-amber); color: white; border-color: var(--gt-amber); }
.era-answer-selected.era-answer-high[b-fbfckymkes] { background: var(--gt-red); color: white; border-color: var(--gt-red); }
.era-answer-score[b-fbfckymkes] { font-size: .6rem; opacity: .7; }
/* /Components/Pages/GovernedTransactions/EntityRiskAssessment/Components/EraReportPanel.razor.rz.scp.css */
/* ── ERA Report Panel — printable ── */
.era-report[b-2ygqiq0bk7] { }
.era-report-actions[b-2ygqiq0bk7] { display: flex; gap: .5rem; }
.era-report-header[b-2ygqiq0bk7] { margin-bottom: 1rem; padding-bottom: .75rem; border-bottom: 2px solid var(--gt-navy); }
.era-report-header h3[b-2ygqiq0bk7] { font-size: 1rem; font-weight: 700; color: var(--gt-navy); margin: 0 0 .25rem; }
.era-report-meta[b-2ygqiq0bk7] { font-size: .72rem; color: #999; display: flex; align-items: center; flex-wrap: wrap; gap: .25rem; }
.era-report-section[b-2ygqiq0bk7] { margin-bottom: 1rem; }
.era-report-section h4[b-2ygqiq0bk7] { font-size: .85rem; font-weight: 700; color: var(--gt-navy); margin-bottom: .5rem; padding-bottom: .25rem; border-bottom: 1px solid #e8e8e8; }
.era-report-table[b-2ygqiq0bk7] { width: 100%; border-collapse: collapse; }
.era-report-table td[b-2ygqiq0bk7], .era-report-table th[b-2ygqiq0bk7] { padding: .4rem .75rem; font-size: .78rem; border-bottom: 1px solid #f5f5f5; text-align: left; }
.era-report-table th[b-2ygqiq0bk7] { background: #f8f9fa; font-size: .65rem; font-weight: 700; color: #888; text-transform: uppercase; letter-spacing: .4px; border-bottom: 2px solid #e8e8e8; }
.era-report-label[b-2ygqiq0bk7] { font-size: .68rem; font-weight: 700; color: #999; text-transform: uppercase; letter-spacing: .3px; min-width: 120px; }
.era-report-table-full[b-2ygqiq0bk7] { border: 1px solid #eee; border-radius: 6px; overflow: hidden; }
.era-report-empty[b-2ygqiq0bk7] { font-size: .78rem; color: #999; font-style: italic; }
.era-report-footer[b-2ygqiq0bk7] { margin-top: 1.5rem; padding-top: .75rem; border-top: 1px solid #e0e0e0; font-size: .68rem; color: #999; text-align: center; }

/* Score bar visual */
.era-score-bar-bg[b-2ygqiq0bk7] { width: 100%; height: 8px; background: #eee; border-radius: 4px; overflow: hidden; }
.era-score-bar-fill[b-2ygqiq0bk7] { height: 100%; border-radius: 4px; transition: width .3s; }

/* Elevated risk factors */
.era-report-elevated td[b-2ygqiq0bk7] { background: #fff8e1 !important; }
.era-report-elevated-section[b-2ygqiq0bk7] { border-left: 4px solid var(--gt-red); padding-left: .75rem; }
.era-report-elevated-note[b-2ygqiq0bk7] { font-size: .75rem; color: #c62828; margin-bottom: .5rem; }

@media print {
    @page { size: A4 portrait; margin: 18mm 16mm; }
    .era-report-actions[b-2ygqiq0bk7] { display: none !important; }
    .era-report-printable[b-2ygqiq0bk7] {
        position: fixed; inset: 0; padding: 20px 24px;
        background: #fff; border: none; box-shadow: none;
        font-family: Arial, sans-serif;
    }
    .era-report-printable *[b-2ygqiq0bk7] { visibility: visible; font-family: Arial, sans-serif; }
    .era-report-section[b-2ygqiq0bk7] { page-break-inside: avoid; }
    .era-report-header h3[b-2ygqiq0bk7] { font-size: 18px; }
    .era-score-bar-fill[b-2ygqiq0bk7] { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
    .era-rating-pill[b-2ygqiq0bk7] { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
    .era-report-elevated td[b-2ygqiq0bk7] { print-color-adjust: exact; -webkit-print-color-adjust: exact; }
}
/* /Components/Pages/GovernedTransactions/EntityRiskAssessment/Components/EraReviewPanel.razor.rz.scp.css */
/* ── ERA Review Panel ── */
.era-review-panel[b-2gis6jupz9] { }
.era-review-panel h4[b-2gis6jupz9] { font-size: .9rem; font-weight: 700; color: var(--gt-navy); margin-bottom: .75rem; }
.era-review-grid[b-2gis6jupz9] { display: grid; grid-template-columns: 1fr 1fr; gap: .1rem; margin-bottom: 1rem; }
.era-review-item[b-2gis6jupz9] { display: flex; align-items: center; gap: .75rem; padding: .45rem .75rem; border-bottom: 1px solid #f5f5f5; font-size: .82rem; }
.era-review-label[b-2gis6jupz9] { min-width: 120px; font-size: .68rem; font-weight: 700; color: #999; text-transform: uppercase; letter-spacing: .3px; flex-shrink: 0; }
.era-review-highlight[b-2gis6jupz9] { background: #fff8e1; }
.era-review-pending[b-2gis6jupz9] { background: #fff8e1; border-left: 3px solid #f57f17; }
.era-override-tag[b-2gis6jupz9] { display: inline-block; padding: .1rem .4rem; border-radius: 6px; font-size: .62rem; font-weight: 700; background: #fff8e1; color: var(--gt-amber); margin-left: .3rem; }
.era-review-sub[b-2gis6jupz9] { font-size: .82rem; font-weight: 600; color: #666; margin: .75rem 0 .5rem; }
.era-review-table[b-2gis6jupz9] { width: 100%; border-collapse: collapse; }
.era-review-table thead th[b-2gis6jupz9] { background: #f8f9fa; padding: .4rem .75rem; text-align: left; font-size: .65rem; font-weight: 700; color: #888; text-transform: uppercase; letter-spacing: .4px; border-bottom: 2px solid #e8e8e8; }
.era-review-table tbody td[b-2gis6jupz9] { padding: .4rem .75rem; font-size: .78rem; color: var(--gtc-text); border-bottom: 1px solid #f5f5f5; }
/* /Components/Pages/GovernedTransactions/EntityRiskAssessment/EraPage.razor.rz.scp.css */
/* ── ERA Page Layout — aligned with RRC/GTC shared tokens ── */
.era-page-scroll[b-l1vcimy4ud] { flex: 1; min-height: 0; overflow-y: auto; padding-bottom: 1rem; }
.era-page-header[b-l1vcimy4ud] { display: flex; justify-content: space-between; align-items: center; padding: .75rem 1.25rem; }
.era-back-link[b-l1vcimy4ud] { font-size: .78rem; color: #666; cursor: pointer; padding: .45rem .9rem; background: #f8f9fa; border: 1px solid var(--gtc-border); border-radius: 6px; text-decoration: none; transition: all .2s; }
.era-back-link:hover[b-l1vcimy4ud] { background: #e8faf8; color: #007b70; border-color: var(--gtc-teal); }
.era-page-role[b-l1vcimy4ud] { display: flex; align-items: center; }
.era-loading[b-l1vcimy4ud] { padding: 3rem; text-align: center; color: var(--gt-text-muted); font-size: .82rem; }
.era-action-message[b-l1vcimy4ud] { padding: .65rem 1rem; border-radius: 6px; font-size: .78rem; font-weight: 500; margin: .5rem 1.25rem; display: flex; align-items: center; justify-content: space-between; }
.era-msg-success[b-l1vcimy4ud] { background: #f0fdf4; color: #15803d; border: 1px solid #86efac; }
.era-msg-error[b-l1vcimy4ud] { background: #fff2f2; color: #c0392b; border: 1px solid #fca5a5; }
.era-msg-dismiss[b-l1vcimy4ud] { background: none; border: none; cursor: pointer; font-size: .9rem; color: inherit; opacity: .6; padding: 0 .25rem; line-height: 1; }
.era-msg-dismiss:hover[b-l1vcimy4ud] { opacity: 1; }
.era-msg-fading[b-l1vcimy4ud] { animation: eraFadeOut-b-l1vcimy4ud 2s ease-out forwards; }
@keyframes eraFadeOut-b-l1vcimy4ud { from { opacity: 1; } to { opacity: 0; } }

/* Role-required empty state */
.era-role-required[b-l1vcimy4ud] { background: var(--gtc-card); border-radius: var(--gt-radius); box-shadow: var(--gt-shadow); padding: 2.5rem 2rem; margin: .5rem 1.25rem; text-align: center; max-width: 640px; margin-left: auto; margin-right: auto; }
.era-role-required-icon[b-l1vcimy4ud] { font-size: 2.5rem; margin-bottom: .75rem; }
.era-role-required h3[b-l1vcimy4ud] { font-size: 1.1rem; font-weight: 700; color: var(--gt-navy); margin: 0 0 .75rem; }
.era-role-required p[b-l1vcimy4ud] { font-size: .82rem; color: var(--gtc-text); margin: 0 0 .75rem; line-height: 1.5; }
.era-role-required-msg[b-l1vcimy4ud] { color: var(--gtc-text-light) !important; }
.era-role-required-hint[b-l1vcimy4ud] { font-size: .76rem !important; color: #999 !important; padding: .75rem 1rem; background: #f8f9fa; border-radius: 6px; border-left: 3px solid var(--gt-amber); text-align: left; }
.era-role-required-hint em[b-l1vcimy4ud] { font-style: italic; color: var(--gt-navy); font-weight: 600; }
/* /Components/Pages/GovernedTransactions/RiskRatingChange/Components/RrcActionBar.razor.rz.scp.css */
/* ── RRC Action Bar — matches GTC action bar pattern ── */
.rrc-action-bar[b-uy80k43mzh] {
    padding: .9rem 0;
    display: flex;
    gap: .6rem;
    align-items: center;
    flex-wrap: wrap;
    border-top: 1px solid var(--gtc-border-light);
    margin-top: .9rem;
}

.rrc-action-context[b-uy80k43mzh] {
    margin-left: auto;
    font-size: .68rem;
    color: var(--gtc-text-light);
    font-weight: 500;
}

.rrc-btn[b-uy80k43mzh] {
    padding: .5rem 1.1rem;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: .8rem;
    font-weight: 600;
    transition: all .2s;
    font-family: inherit;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.rrc-btn-primary[b-uy80k43mzh] { background: var(--gt-teal); color: white; }
.rrc-btn-primary:hover:not(:disabled)[b-uy80k43mzh] { background: #00c0ad; transform: translateY(-1px); }
.rrc-btn-danger[b-uy80k43mzh] { background: var(--gt-red); color: white; }
.rrc-btn-danger:hover:not(:disabled)[b-uy80k43mzh] { background: #c0392b; }
.rrc-btn-blocked[b-uy80k43mzh] { background: #f0f2f5; color: #bbb; border: 2px dashed #ddd; cursor: not-allowed; }
.rrc-btn:disabled[b-uy80k43mzh] { opacity: .5; cursor: not-allowed; }
.rrc-btn-cancel[b-uy80k43mzh] { background: #f5f5f5; color: #888; border: 1px solid #ddd; }
.rrc-btn-cancel:hover:not(:disabled)[b-uy80k43mzh] { background: #eee; color: #666; }

.rrc-action-notes[b-uy80k43mzh] {
    width: 100%;
    margin-bottom: .4rem;
}

.rrc-action-notes .rrc-form-textarea[b-uy80k43mzh] {
    width: 100%;
    min-height: 50px;
    font-size: .78rem;
}

.rrc-notes-required[b-uy80k43mzh] {
    border-color: var(--gt-red) !important;
    box-shadow: 0 0 0 2px rgba(231,76,60,.15);
}

.rrc-notes-hint[b-uy80k43mzh] {
    font-size: .72rem;
    color: var(--gt-red);
    margin-top: .25rem;
    font-weight: 500;
}
/* /Components/Pages/GovernedTransactions/RiskRatingChange/Components/RrcCreateForm.razor.rz.scp.css */
/* ── RRC Create Form — entity search dropdown & selection styles ── */
.rrc-entity-results[b-b5doqwm4db] {
    position: absolute;
    left: 0;
    right: 0;
    z-index: 100;
    border: 1px solid var(--gtc-border);
    border-radius: 0 0 var(--gt-radius-sm) var(--gt-radius-sm);
    background: var(--gtc-card, #fff);
    max-height: 200px;
    overflow-y: auto;
    margin-top: -1px;
    box-shadow: var(--gt-shadow-lg, 0 4px 12px rgba(0,0,0,.15));
}

.rrc-entity-result[b-b5doqwm4db] {
    padding: .4rem .6rem;
    cursor: pointer;
    font-size: .8rem;
    border-bottom: 1px solid #f5f5f5;
    transition: background .15s;
}

.rrc-entity-result:hover[b-b5doqwm4db] { background: #f0fdfb; }
.rrc-entity-code[b-b5doqwm4db] { color: #aaa; font-size: .72rem; }

.rrc-selected-entity[b-b5doqwm4db] {
    margin-top: .25rem;
    padding: .3rem .5rem;
    background: #f0fdf4;
    border-radius: 4px;
    font-size: .78rem;
    color: var(--gt-green);
}

.rrc-current-rating-preview[b-b5doqwm4db] {
    margin-top: .5rem;
    display: flex;
    align-items: center;
    gap: .6rem;
}
/* /Components/Pages/GovernedTransactions/RiskRatingChange/Components/RrcDashboard.razor.rz.scp.css */
/* ── RRC Dashboard — aligned with GTC/TM shared tokens ── */
.rrc-dashboard[b-kl38v8cdhg] { padding: 1rem 1.25rem; }

.rrc-header[b-kl38v8cdhg] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: .5rem;
}

.rrc-header h1[b-kl38v8cdhg] {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--gtc-text);
    margin-bottom: .25rem;
}

.rrc-header-sub[b-kl38v8cdhg] {
    font-size: .75rem;
    color: var(--gtc-text-light);
}

/* ── KPI Bar — matches GTC grid layout ── */
.rrc-kpi-bar[b-kl38v8cdhg] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: .9rem;
    margin: 1rem 0;
}

/* ── Filter Bar ── */
.rrc-filter-bar[b-kl38v8cdhg] {
    background: var(--gtc-card);
    padding: .65rem 1rem;
    border-radius: var(--gt-radius);
    display: flex;
    gap: .6rem;
    align-items: center;
    flex-wrap: wrap;
    font-size: .76rem;
    margin-bottom: 1rem;
    box-shadow: var(--gt-shadow);
}

.rrc-filter-bar label[b-kl38v8cdhg] {
    font-weight: 600;
    color: #666;
}

.rrc-filter-bar select[b-kl38v8cdhg] {
    padding: .28rem .5rem;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: .75rem;
    color: var(--gtc-text);
    background: #f8f9fa;
    cursor: pointer;
}

.rrc-show-completed[b-kl38v8cdhg] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: .35rem;
    cursor: pointer;
    user-select: none;
}

.rrc-show-completed input[type="checkbox"][b-kl38v8cdhg] {
    cursor: pointer;
}

/* ── Data Table ── */
.rrc-table-wrap[b-kl38v8cdhg] {
    background: var(--gtc-card);
    border-radius: var(--gt-radius);
    box-shadow: var(--gt-shadow);
    overflow: hidden;
}

.rrc-table[b-kl38v8cdhg] {
    width: 100%;
    border-collapse: collapse;
}

.rrc-table thead th[b-kl38v8cdhg] {
    background: #f8f9fa;
    padding: .5rem .9rem;
    text-align: left;
    font-size: .67rem;
    font-weight: 700;
    color: #888;
    text-transform: uppercase;
    letter-spacing: .5px;
    border-bottom: 2px solid #e8e8e8;
    white-space: nowrap;
}

.rrc-table tbody td[b-kl38v8cdhg] {
    padding: .62rem .9rem;
    font-size: .78rem;
    color: var(--gtc-text);
    border-bottom: 1px solid #f5f5f5;
    vertical-align: middle;
}

.rrc-table tr:last-child td[b-kl38v8cdhg] { border-bottom: none; }

.rrc-table-row[b-kl38v8cdhg] { cursor: pointer; transition: background .15s; }
.rrc-table-row:hover td[b-kl38v8cdhg] { background: #f0fdfb; }

.rrc-ref[b-kl38v8cdhg] { font-weight: 600; color: var(--gt-navy); }

.rrc-empty[b-kl38v8cdhg] {
    padding: 3rem;
    text-align: center;
    color: var(--gt-text-faint);
    font-size: .82rem;
}

/* ── Rating Pills ── */
.rrc-rating-pill[b-kl38v8cdhg] {
    display: inline-block;
    padding: .15rem .55rem;
    border-radius: 10px;
    font-size: .68rem;
    font-weight: 700;
    white-space: nowrap;
}

.rrc-rating-low[b-kl38v8cdhg] { background: #e8f5e9; color: var(--gt-green); }
.rrc-rating-medium[b-kl38v8cdhg] { background: #fff8e1; color: var(--gt-amber); }
.rrc-rating-high[b-kl38v8cdhg] { background: #ffebee; color: var(--gt-red); }
.rrc-rating-tbd[b-kl38v8cdhg] { color: var(--gt-text-faint); }

/* ── Stage Pill ── */
.rrc-stage-pill[b-kl38v8cdhg] {
    display: inline-block;
    padding: .15rem .55rem;
    border-radius: 10px;
    font-size: .68rem;
    font-weight: 700;
    background: #e8f4fd;
    color: #1565c0;
    white-space: nowrap;
}

/* ── Status ── */
.rrc-status-open[b-kl38v8cdhg] { color: var(--gt-navy); font-weight: 600; }
.rrc-status-completed[b-kl38v8cdhg] { color: var(--gt-green); font-weight: 600; }
.rrc-status-rejected[b-kl38v8cdhg] { color: var(--gt-red); font-weight: 600; }
.rrc-status-on-hold[b-kl38v8cdhg] { color: var(--gt-amber); font-weight: 600; }
.rrc-status-cancelled[b-kl38v8cdhg] { color: #999; font-weight: 600; }

/* ── Buttons — matches GTC shared button styles ── */
.rrc-btn[b-kl38v8cdhg] {
    padding: .5rem 1.1rem;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-size: .8rem;
    font-weight: 600;
    transition: all .2s;
    font-family: inherit;
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.rrc-btn-primary[b-kl38v8cdhg] { background: var(--gt-teal); color: white; }
.rrc-btn-primary:hover:not(:disabled)[b-kl38v8cdhg] { background: #00c0ad; transform: translateY(-1px); }
.rrc-btn-secondary[b-kl38v8cdhg] { background: white; color: #555; border: 1px solid var(--gtc-border); }
.rrc-btn-secondary:hover:not(:disabled)[b-kl38v8cdhg] { background: #f8f9fa; }
.rrc-btn:disabled[b-kl38v8cdhg] { opacity: .5; cursor: not-allowed; }
/* /Components/Pages/GovernedTransactions/RiskRatingChange/Components/RrcDetailView.razor.rz.scp.css */
/* ── RRC Detail View — scoped layout styles ──
   Shared utility classes (buttons, alerts, pills, forms, evidence)
   are in /wwwroot/css/gtc.css alongside GTC/TM shared styles.
   Progress bar and action bar styles are in their own .razor.css files.
   ── */

/* ── Case Header — matches GTC detail header ── */
.rrc-case-header[b-poz3jdg4ft] {
    background: var(--gtc-card);
    padding: 1.1rem;
    border-radius: var(--gt-radius);
    box-shadow: var(--gt-shadow);
    margin: 0 0 .9rem;
}

.rrc-case-header-top[b-poz3jdg4ft] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1rem;
}

.rrc-case-header h2[b-poz3jdg4ft] {
    font-size: 1rem;
    font-weight: 700;
    color: #1e3a5f;
    margin: 0 0 .15rem;
}

.rrc-case-meta[b-poz3jdg4ft] { font-size: .76rem; color: var(--gtc-text-light); }

.rrc-status-badge[b-poz3jdg4ft] {
    display: inline-block;
    padding: .15rem .55rem;
    border-radius: 10px;
    font-size: .68rem;
    font-weight: 700;
    white-space: nowrap;
}

.rrc-status-badge.rrc-status-open[b-poz3jdg4ft] { background: #e8f4fd; color: #1565c0; }
.rrc-status-badge.rrc-status-completed[b-poz3jdg4ft] { background: #e8f5e9; color: #2e7d32; }
.rrc-status-badge.rrc-status-rejected[b-poz3jdg4ft] { background: #ffebee; color: #c62828; }
.rrc-status-badge.rrc-status-on-hold[b-poz3jdg4ft] { background: #fff8e1; color: #f57f17; }
.rrc-status-badge.rrc-status-cancelled[b-poz3jdg4ft] { background: #f5f5f5; color: #999; }

/* ── Tabs — matches GTC tab pattern ── */
.rrc-tabs[b-poz3jdg4ft] {
    display: flex;
    background: var(--gtc-card);
    border-radius: var(--gt-radius) var(--gt-radius) 0 0;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0,0,0,.05);
    border-bottom: 2px solid #eee;
    position: relative;
    z-index: 2;
}

.rrc-tab[b-poz3jdg4ft] {
    flex: 1;
    padding: .75rem .4rem;
    text-align: center;
    background: white;
    border: none;
    cursor: pointer;
    font-size: .75rem;
    font-weight: 500;
    color: #888;
    border-bottom: 3px solid transparent;
    transition: all .2s;
    font-family: inherit;
}

.rrc-tab:hover[b-poz3jdg4ft] { background: #f8f9fa; }
.rrc-tab.active[b-poz3jdg4ft] { color: var(--gtc-teal) !important; border-bottom-color: var(--gtc-teal) !important; background: #f8fffe !important; font-weight: 600 !important; }

.rrc-tab-content[b-poz3jdg4ft] {
    background: var(--gtc-card);
    border-radius: 0 0 var(--gt-radius) var(--gt-radius);
    box-shadow: var(--gt-shadow);
    padding: 1.25rem;
    margin-bottom: .9rem;
    position: relative;
    z-index: 1;
}

/* ── Stage Content ── */
.rrc-stage-content[b-poz3jdg4ft] { }

/* ── Audit Trail — matches GTC audit trail ── */
.rrc-audit-entry[b-poz3jdg4ft] {
    display: flex;
    gap: .75rem;
    padding: .5rem 0;
    border-bottom: 1px solid #f5f5f5;
    font-size: .78rem;
}

.rrc-audit-entry:last-child[b-poz3jdg4ft] { border-bottom: none; }
.rrc-audit-time[b-poz3jdg4ft] { color: var(--gtc-text-light); min-width: 110px; flex-shrink: 0; font-size: .72rem; }
.rrc-audit-action[b-poz3jdg4ft] { flex: 1; color: var(--gtc-text); }
.rrc-audit-user[b-poz3jdg4ft] { color: var(--gtc-teal); font-weight: 600; font-size: .74rem; }

/* ── Summary Table ── */
.rrc-summary-table[b-poz3jdg4ft] { width: 100%; border-collapse: collapse; }
.rrc-summary-table th[b-poz3jdg4ft] {
    text-align: left;
    font-size: .67rem;
    color: #aaa;
    text-transform: uppercase;
    letter-spacing: .4px;
    padding: .5rem .9rem;
    border-bottom: 2px solid #e8e8e8;
    font-weight: 700;
}

.rrc-summary-table td[b-poz3jdg4ft] {
    padding: .62rem .9rem;
    border-bottom: 1px solid #f5f5f5;
    font-size: .78rem;
    color: var(--gtc-text);
}

.rrc-empty[b-poz3jdg4ft] { padding: 3rem; text-align: center; color: var(--gt-text-faint); font-size: .82rem; }

/* ── Sticky Action Bar ── */
.rrc-action-bar-sticky[b-poz3jdg4ft] {
    position: sticky;
    bottom: 0;
    z-index: 10;
    background: var(--gtc-card);
    border-top: 2px solid #eee;
    box-shadow: 0 -2px 8px rgba(0,0,0,.08);
    padding: 0 1.1rem;
    border-radius: 0 0 var(--gt-radius) var(--gt-radius);
}

/* ── Read-only Stage Review Panel ── */
.rrc-review-panel[b-poz3jdg4ft] {
    background: #f8fffe;
    border: 2px solid var(--gtc-teal);
    border-radius: var(--gt-radius);
    margin-bottom: .9rem;
    overflow: hidden;
}

.rrc-review-header[b-poz3jdg4ft] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .6rem 1rem;
    background: linear-gradient(135deg, rgba(0,217,197,.08), rgba(0,217,197,.02));
    border-bottom: 1px solid rgba(0,217,197,.2);
    font-size: .78rem;
    color: var(--gtc-text);
}

.rrc-review-body[b-poz3jdg4ft] {
    padding: 1rem;
    pointer-events: none;
    opacity: .85;
}

/* ── AML Check Animation ── */
.rrc-aml-running[b-poz3jdg4ft] {
    color: var(--gtc-teal);
    font-weight: 600;
    animation: rrc-aml-pulse-b-poz3jdg4ft 1s infinite alternate;
}

@keyframes rrc-aml-pulse-b-poz3jdg4ft {
    from { opacity: .5; }
    to { opacity: 1; }
}

/* ── Saved Assessment Summary ── */
[b-poz3jdg4ft] .rrc-saved-summary {
    background: #f8fffe;
    border: 1px solid rgba(0,217,197,.2);
    border-radius: var(--gt-radius);
    padding: .75rem 1rem;
    margin-bottom: .75rem;
}

[b-poz3jdg4ft] .rrc-saved-row {
    display: flex;
    gap: .75rem;
    padding: .4rem 0;
    border-bottom: 1px solid #f0f0f0;
    font-size: .8rem;
}

[b-poz3jdg4ft] .rrc-saved-row:last-child { border-bottom: none; }

[b-poz3jdg4ft] .rrc-saved-label {
    min-width: 120px;
    font-size: .7rem;
    font-weight: 700;
    color: #999;
    text-transform: uppercase;
    letter-spacing: .3px;
    flex-shrink: 0;
}

/* ── Evidence Descriptions ── */
[b-poz3jdg4ft] .rrc-evidence-desc {
    font-size: .72rem;
    color: #999;
    margin-top: .1rem;
    line-height: 1.3;
}

/* ── File Upload ── */
[b-poz3jdg4ft] .rrc-file-upload {
    border: 2px dashed #ddd;
    border-radius: var(--gt-radius);
    padding: 1.25rem;
    text-align: center;
    cursor: pointer;
    transition: all .2s;
    background: #fafafa;
}

[b-poz3jdg4ft] .rrc-file-upload:hover {
    border-color: var(--gtc-teal);
    background: #f8fffe;
}

[b-poz3jdg4ft] .rrc-file-upload-icon { font-size: 1.5rem; margin-bottom: .25rem; }
[b-poz3jdg4ft] .rrc-file-upload-text { font-size: .8rem; color: #888; }

[b-poz3jdg4ft] .rrc-file-attached {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: .6rem 1rem;
    background: #e6f7f0;
    border: 1px solid #b2dfdb;
    border-radius: var(--gt-radius);
    font-size: .82rem;
    color: var(--gtc-text);
}

/* ── RM Notification Section ── */
[b-poz3jdg4ft] .rrc-rm-notification { margin-top: .75rem; }

[b-poz3jdg4ft] .rrc-rm-channels {
    display: flex;
    gap: .5rem;
    margin-bottom: 1rem;
}

[b-poz3jdg4ft] .rrc-rm-channel {
    padding: .3rem .7rem;
    background: #e8f4fd;
    color: #1565c0;
    border-radius: 12px;
    font-size: .72rem;
    font-weight: 600;
}

[b-poz3jdg4ft] .rrc-rm-preview {
    border: 1px solid #e0e0e0;
    border-radius: var(--gt-radius);
    overflow: hidden;
}

[b-poz3jdg4ft] .rrc-rm-preview-header {
    background: #f8f9fa;
    padding: .6rem 1rem;
    font-size: .78rem;
    font-weight: 600;
    color: #555;
    border-bottom: 1px solid #e0e0e0;
}

[b-poz3jdg4ft] .rrc-rm-preview-body {
    padding: 1rem;
    font-size: .82rem;
    line-height: 1.6;
    color: var(--gtc-text);
    background: white;
}

/* ── Notifications tab ── */
[b-poz3jdg4ft] .rrc-tab-badge {
    display: inline-block;
    font-size: .65rem;
    font-weight: 600;
    padding: .1rem .45rem;
    border-radius: 8px;
    margin-left: .35rem;
    background: #e0e0e0;
    color: #666;
}
[b-poz3jdg4ft] .rrc-tab-badge-pending {
    background: #fef3cd;
    color: #856404;
}

[b-poz3jdg4ft] .rrc-notif-card {
    border: 1px solid #e0e0e0;
    border-radius: var(--gt-radius-sm, 6px);
    margin-bottom: .75rem;
    overflow: hidden;
}
[b-poz3jdg4ft] .rrc-notif-pending { border-left: 4px solid #ffc107; }
[b-poz3jdg4ft] .rrc-notif-acked { border-left: 4px solid var(--gt-green, #00b894); }

[b-poz3jdg4ft] .rrc-notif-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .6rem .8rem;
    background: #f8f9fa;
    font-size: .82rem;
}
[b-poz3jdg4ft] .rrc-notif-channel {
    display: inline-block;
    font-size: .68rem;
    font-weight: 600;
    padding: .1rem .4rem;
    border-radius: 8px;
    margin-left: .4rem;
    background: #e8f9f7;
    color: var(--gtc-teal, #00d9c5);
}
[b-poz3jdg4ft] .rrc-notif-date { font-size: .75rem; color: #999; }

[b-poz3jdg4ft] .rrc-notif-subject {
    padding: .5rem .8rem 0;
    font-weight: 600;
    font-size: .82rem;
    color: var(--gtc-text, #2c3e50);
}
[b-poz3jdg4ft] .rrc-notif-body {
    padding: .4rem .8rem .6rem;
    font-size: .8rem;
    line-height: 1.5;
    color: #666;
}
[b-poz3jdg4ft] .rrc-notif-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .5rem .8rem;
    background: #fafafa;
    border-top: 1px solid #f0f0f0;
    font-size: .78rem;
}
[b-poz3jdg4ft] .rrc-notif-ack-status { color: var(--gt-green, #00b894); font-weight: 500; }
[b-poz3jdg4ft] .rrc-notif-awaiting { color: #856404; }

[b-poz3jdg4ft] .rrc-btn-sm {
    padding: .25rem .6rem;
    font-size: .75rem;
}

/* ── Form checkbox label ── */
[b-poz3jdg4ft] .rrc-form-check {
    display: flex;
    align-items: center;
    gap: .5rem;
    font-size: .85rem;
    font-weight: 500;
    cursor: pointer;
}
[b-poz3jdg4ft] .rrc-form-check input[type="checkbox"] {
    width: 16px;
    height: 16px;
    accent-color: var(--gtc-teal, #00d9c5);
    cursor: pointer;
}
/* /Components/Pages/GovernedTransactions/RiskRatingChange/Components/RrcProgressBar.razor.rz.scp.css */
/* ── RRC Progress Bar — matches GTC progress bar pattern ── */
.rrc-progress[b-zgokez421e] {
    background: var(--gtc-card);
    padding: 1rem 1.1rem .75rem;
    border-radius: var(--gt-radius);
    box-shadow: var(--gt-shadow);
    margin-bottom: .9rem;
    display: flex;
    align-items: flex-start;
}

.rrc-step[b-zgokez421e] {
    flex: 1;
    text-align: center;
    position: relative;
    min-width: 72px;
}

.rrc-step-circle[b-zgokez421e] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: white;
    border: 3px solid var(--gtc-border);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto .35rem;
    font-weight: 700;
    font-size: .72rem;
    color: #bbb;
    transition: transform .15s;
}

.rrc-step-clickable[b-zgokez421e] { cursor: pointer; }
.rrc-step-clickable:hover .rrc-step-circle[b-zgokez421e] { transform: scale(1.18); box-shadow: 0 0 0 4px rgba(0,217,197,.2); }
.rrc-step-clickable:hover .rrc-step-label[b-zgokez421e] { color: var(--gtc-teal); }

.rrc-step-label[b-zgokez421e] {
    font-size: .62rem;
    color: #aaa;
    font-weight: 500;
}

.rrc-step-line[b-zgokez421e] {
    flex: 0 0 auto;
    width: 30px;
    height: 3px;
    background: var(--gtc-border);
    margin-top: 18px;
}

.rrc-step-done .rrc-step-circle[b-zgokez421e] { background: var(--gtc-green); border-color: var(--gtc-green); color: white; }
.rrc-step-done .rrc-step-label[b-zgokez421e] { color: var(--gtc-green); }
.rrc-step-line-done[b-zgokez421e] { background: var(--gtc-green); }
.rrc-step-active .rrc-step-circle[b-zgokez421e] { background: var(--gtc-teal); border-color: var(--gtc-teal); color: white; animation: rrc-pulse-b-zgokez421e 2s infinite; }
.rrc-step-active .rrc-step-label[b-zgokez421e] { color: var(--gtc-teal); font-weight: 700; }
.rrc-step-escalated .rrc-step-circle[b-zgokez421e] { background: var(--gtc-red); border-color: var(--gtc-red); color: white; }
.rrc-step-escalated .rrc-step-label[b-zgokez421e] { color: var(--gtc-red); font-weight: 700; }
.rrc-step-rejected .rrc-step-circle[b-zgokez421e] { background: #c0392b; border-color: #c0392b; color: white; }
.rrc-step-rejected .rrc-step-label[b-zgokez421e] { color: #c0392b; font-weight: 700; }

@keyframes rrc-pulse-b-zgokez421e {
    0%, 100% { box-shadow: 0 0 0 0 rgba(0,217,197,.4); }
    50% { box-shadow: 0 0 0 8px rgba(0,217,197,0); }
}
/* /Components/Pages/GovernedTransactions/RiskRatingChange/RrcPage.razor.rz.scp.css */
/* ── RRC Page Layout — aligned with GTC/TM shared tokens ── */

/* Ensure the page scrolls vertically on small screens.
   The parent .razorpage has height:100% + min-height:0 which constrains
   height to viewport. We need overflow-y on our content area. */
.rrc-page-scroll[b-afewjo5lws] {
    flex: 1;
    min-height: 0;
    overflow-y: auto;
    padding-bottom: 1rem;
}
.rrc-page-header[b-afewjo5lws] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .75rem 1.25rem;
}

.rrc-back-link[b-afewjo5lws] {
    font-size: .78rem;
    color: #666;
    cursor: pointer;
    padding: .45rem .9rem;
    background: #f8f9fa;
    border: 1px solid var(--gtc-border);
    border-radius: 6px;
    text-decoration: none;
    transition: all .2s;
}

.rrc-back-link:hover[b-afewjo5lws] {
    background: #e8faf8;
    color: #007b70;
    border-color: var(--gtc-teal);
}

.rrc-page-role[b-afewjo5lws] {
    display: flex;
    align-items: center;
}

.rrc-loading[b-afewjo5lws] {
    padding: 3rem;
    text-align: center;
    color: var(--gt-text-muted);
    font-size: .82rem;
}

.rrc-action-message[b-afewjo5lws] {
    padding: .65rem 1rem;
    border-radius: 6px;
    font-size: .78rem;
    font-weight: 500;
    margin: .5rem 1.25rem;
}

.rrc-action-message[b-afewjo5lws] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.rrc-msg-success[b-afewjo5lws] { background: #f0fdf4; color: #15803d; border: 1px solid #86efac; }
.rrc-msg-error[b-afewjo5lws] { background: #fff2f2; color: #c0392b; border: 1px solid #fca5a5; }

.rrc-msg-dismiss[b-afewjo5lws] {
    background: none;
    border: none;
    cursor: pointer;
    font-size: .9rem;
    color: inherit;
    opacity: .6;
    padding: 0 .25rem;
    line-height: 1;
}
.rrc-msg-dismiss:hover[b-afewjo5lws] { opacity: 1; }
/* /Components/Pages/GovernedTransactions/TransactionMonitoring/TransactionMonitoring.razor.rz.scp.css */
.fillscreen[b-27toubiou7] {
    height: calc(100% - 52px);
}

[b-27toubiou7] .dxbl-tabs .dxbl-tabs-content-panel {
    height: 100% !important;
}

.tm-kpi-row[b-27toubiou7] {
    display: flex;
    gap: 12px;
    padding: 8px 12px;
    background: var(--gt-bg);
    border-bottom: 1px solid var(--gt-border);
}

.tm-kpi-tile[b-27toubiou7] {
    flex: 1;
    padding: 10px 14px;
    background: var(--gt-card);
    border-radius: 8px;
    border: 1px solid var(--gt-border);
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    transition: box-shadow 0.15s;
}

.tm-kpi-tile:hover[b-27toubiou7] {
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.tm-kpi-tile.active[b-27toubiou7] {
    border-color: var(--gt-navy);
    box-shadow: 0 0 0 1px var(--gt-navy);
}

.tm-kpi-value[b-27toubiou7] {
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
}

.tm-kpi-label[b-27toubiou7] {
    font-size: 11px;
    color: var(--gt-text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.tm-kpi-stripe[b-27toubiou7] {
    width: 4px;
    height: 36px;
    border-radius: 2px;
}
/* /Components/Pages/LiveWealth/Nodes/AssetNodeComponent.razor.rz.scp.css */
.relation-box[b-p9c1gu9aai] {
    font-size: 14px;
    line-height: 1.5; /* 21px per line */
    padding: 12px;
    box-sizing: border-box;
}

.relation-group[b-p9c1gu9aai] {
    margin-bottom: 12px; /* Space between groups */
}

    .relation-group:last-child[b-p9c1gu9aai] {
        margin-bottom: 0; /* No margin on last group */
    }

.relation-type[b-p9c1gu9aai] {
    font-weight: 600; /* Bold for category */
    margin-bottom: 4px;
}

.relation-member[b-p9c1gu9aai] {
    padding-left: 16px; /* Indent members */
    margin: 2px 0;
}

    /* Optional: Add bullet or dash */
    .relation-member[b-p9c1gu9aai]::before {
        content: "• "; /* or "– " for dash */
        margin-left: -12px;
    }
/* /Components/Pages/LiveWealth/Nodes/RelationGroupNodeComponent.razor.rz.scp.css */
.relation-box[b-ube3r2tisj] {
    font-size: 14px;
    line-height: 1.5; /* 21px per line */
    padding: 12px;
    box-sizing: border-box;
}

.relation-group[b-ube3r2tisj] {
    margin-bottom: 12px; /* Space between groups */
}

    .relation-group:last-child[b-ube3r2tisj] {
        margin-bottom: 0; /* No margin on last group */
    }

.relation-type[b-ube3r2tisj] {
    font-weight: 600; /* Bold for category */
    margin-bottom: 4px;
}

.relation-member[b-ube3r2tisj] {
    padding-left: 16px; /* Indent members */
    margin: 2px 0;
}

    /* Optional: Add bullet or dash */
    .relation-member[b-ube3r2tisj]::before {
        content: "• "; /* or "– " for dash */
        margin-left: -12px;
    }
/* /Components/Pages/LiveWealth/Nodes/TrustNodeComponent.razor.rz.scp.css */
/* relation-box styling moved to global livewealth.css */
/* /Components/Pages/RegSphere/CaseDetail.razor.rz.scp.css */
/* CaseDetail.razor scoped styles. ::deep pierces into DevExpress tab internals
   since those elements don't carry this component's scope attribute. */

.regsphere-detail[b-na2lwsun1b] { display: flex; flex-direction: column; height: 100%; min-height: 0; padding: 0; }

.rs-page-header[b-na2lwsun1b] {
    display: flex; align-items: center; gap: 1rem;
    padding: 10px 20px;
    border-bottom: 1px solid #e4e8ed;
    background: #fff;
}
.rs-title[b-na2lwsun1b] { margin: 0; font-size: 1.1rem; font-weight: 600; color: #0a3d62; }
.rs-title-error[b-na2lwsun1b] { color: #991b1b; }
/* Status and regime pills live in wwwroot/css/regsphere.css — they're used outside
   this component (grid cells, header) so they can't be scoped here. */

/* Flex chain so grids inside tabs fill the viewport.
   rs-tabs-wrap is a CaseDetail-owned div (gets the scope attribute). MyDxTabs's
   root (dxbl-tabs.rs-tabs) doesn't carry our scope since it's rendered by the
   MyDxTabs component, so we anchor ::deep selectors on the wrapper instead. */
.rs-tabs-wrap[b-na2lwsun1b] { flex: 1; min-height: 0; display: flex; flex-direction: column; }
.rs-tabs-wrap[b-na2lwsun1b]  .rs-tabs { flex: 1; min-height: 0; display: flex; flex-direction: column; }
.rs-tabs-wrap[b-na2lwsun1b]  dxbl-tab-list { flex: none; }
.rs-tabs-wrap[b-na2lwsun1b]  .dxbl-tabs-content-panel { flex: 1; min-height: 0; display: flex; flex-direction: column; }
.rs-tabs-wrap[b-na2lwsun1b]  .dxbl-tabs-content.dxbl-active { flex: 1; min-height: 0; display: flex; flex-direction: column; }

.rs-tab-body[b-na2lwsun1b] {
    flex: 1; min-height: 0;
    padding: 1rem;
    display: flex; flex-direction: column;
    gap: 0.75rem;
    overflow: auto;
}
.rs-tab-toolbar[b-na2lwsun1b] { flex: none; display: flex; gap: 0.5rem; }

.rs-overview-grid[b-na2lwsun1b] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 0.6rem;
    padding: 1rem;
    background: #f9fafb;
    border-radius: 6px;
    flex: none;
}
.rs-overview-grid label[b-na2lwsun1b] {
    display: inline-block; min-width: 95px;
    font-weight: 600; color: #4b5563; font-size: 12px;
}
.rs-audit-row[b-na2lwsun1b] { grid-column: 1 / -1; font-size: 11px; color: #6b7280; }

.rs-section[b-na2lwsun1b] { padding: 1rem; background: #fff; border: 1px solid #e5e7eb; border-radius: 6px; flex: none; }
.rs-section h4[b-na2lwsun1b] { margin-top: 0; font-size: 0.95rem; color: #0a3d62; }
.rs-status-buttons[b-na2lwsun1b] { display: flex; flex-wrap: wrap; gap: 0.4rem; align-items: center; }
.rs-transition-comment[b-na2lwsun1b] { margin-bottom: 0.5rem; }
.rs-notes[b-na2lwsun1b] { margin: 0; color: #374151; white-space: pre-wrap; }

.rs-message[b-na2lwsun1b] { font-size: 12px; padding: 4px 10px; border-radius: 12px; font-weight: 500; margin-left: 0.5rem; }
.rs-msg-success[b-na2lwsun1b] { background: #d1fae5; color: #065f46; }
.rs-msg-error[b-na2lwsun1b]   { background: #fee2e2; color: #991b1b; }

.rs-flag-row[b-na2lwsun1b] { display: flex; gap: 1.25rem; align-items: center; flex-wrap: wrap; }
.rs-dialog-error[b-na2lwsun1b] { background: #fee2e2; color: #991b1b; padding: 8px 12px; border-radius: 4px; font-size: 13px; }

/* Page-level load failure banner — rendered at the top of the page when an
   exception bubbled out of OnLoadData / LoadAllAsync. Keeps the UI legible
   instead of going blank. */
.rs-page-error[b-na2lwsun1b] {
    background: #fee2e2; color: #991b1b;
    padding: 10px 16px; margin: 8px 20px;
    border-radius: 4px; font-size: 13px;
    border-left: 4px solid #b91c1c;
}

.rs-es-form[b-na2lwsun1b] { padding-top: 0.25rem; }
.rs-es-declaration[b-na2lwsun1b] {
    margin-top: 0.75rem; padding-top: 0.5rem;
    border-top: 1px dashed #e5e7eb;
    display: flex; flex-direction: column; gap: 6px;
}
.rs-es-decl-hint[b-na2lwsun1b] { font-size: 12px; color: #9a3412; }
.rs-es-save-row[b-na2lwsun1b] { display: flex; gap: 0.75rem; align-items: center; flex: none; }

/* FISC Transmission tab — Submit row + Fiscal Receipt panel.
   Visual language matches the build-52 POC's per-row Fiscal Receipt panel. */
.rs-fisc-submit-row[b-na2lwsun1b] {
    display: flex; gap: 0.75rem; align-items: center; flex-wrap: wrap;
    margin: 0.75rem 0 1rem 0;
}

.rs-fisc-receipt[b-na2lwsun1b] {
    margin-top: 0.75rem; padding: 14px 16px;
    border: 1px solid #c7e9d5;
    background: #f4fbf7;
    border-radius: 6px;
    border-left: 4px solid #11C683;     /* WS green — same accent the POC uses */
}
.rs-fisc-receipt__header[b-na2lwsun1b] {
    font-weight: 700; color: #0a3d62;
    margin-bottom: 8px;
    display: flex; align-items: center; gap: 6px;
}
.rs-fisc-receipt__hint[b-na2lwsun1b] { font-weight: 500; color: #6b7280; font-size: 11px; }
.rs-fisc-receipt__body[b-na2lwsun1b] { display: flex; gap: 16px; align-items: flex-start; flex-wrap: wrap; }
.rs-fisc-receipt__qr[b-na2lwsun1b] {
    width: 100px; height: 100px;
    background: #fff;
    border: 1px solid #d1d5db; border-radius: 4px;
    padding: 4px;
    flex: none;
}
.rs-fisc-receipt__details[b-na2lwsun1b] { flex: 1 1 auto; min-width: 240px; font-size: 13px; line-height: 1.6; }
.rs-fisc-receipt__label[b-na2lwsun1b]   { color: #6b7280; min-width: 60px; display: inline-block; }
.rs-fisc-receipt__footnote[b-na2lwsun1b] { margin-top: 6px; font-size: 12px; color: #9a3412; font-style: italic; }

/* Filing Output tab — on-screen report + download action */
.rs-filing-report[b-na2lwsun1b] { display: flex; flex-direction: column; gap: 1rem; max-width: 1100px; }

.rs-filing-section[b-na2lwsun1b] {
    padding: 0.75rem 1rem;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
}
.rs-filing-section h4[b-na2lwsun1b] { margin: 0 0 0.5rem 0; font-size: 0.9rem; color: #0a3d62; }

.rs-filing-meta[b-na2lwsun1b] { display: flex; flex-direction: column; gap: 0.3rem; font-size: 13px; }
.rs-filing-label[b-na2lwsun1b] { display: inline-block; min-width: 140px; font-weight: 600; color: #4b5563; }

.rs-filing-table[b-na2lwsun1b] { width: 100%; border-collapse: collapse; font-size: 12px; }
.rs-filing-table th[b-na2lwsun1b] {
    background: #f3f4f6; color: #374151; font-weight: 600;
    padding: 5px 8px; text-align: left; border-bottom: 2px solid #d1d5db;
    white-space: nowrap;
}
.rs-filing-table td[b-na2lwsun1b] { padding: 5px 8px; border-bottom: 1px solid #f0f0f0; vertical-align: top; }
.rs-filing-table tr:last-child td[b-na2lwsun1b] { border-bottom: none; }
.rs-filing-num[b-na2lwsun1b] { text-align: right !important; font-variant-numeric: tabular-nums; }

.rs-filing-actions[b-na2lwsun1b] { display: flex; gap: 0.5rem; flex: none; }

/* Transmission tab — Echelon push */
.rs-ech-banner[b-na2lwsun1b] {
    padding: 0.6rem 0.9rem;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    border-radius: 6px;
    font-size: 13px;
    color: #1e40af;
    margin-bottom: 1rem;
}

.rs-ech-status-panel[b-na2lwsun1b] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    padding: 0.75rem 1rem;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 6px;
    max-width: 600px;
    margin-bottom: 1rem;
}

.rs-ech-status-row[b-na2lwsun1b] {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
    font-size: 13px;
}

.rs-ech-label[b-na2lwsun1b] {
    display: inline-block;
    min-width: 100px;
    font-weight: 600;
    color: #4b5563;
    flex-shrink: 0;
}

.rs-ech-email[b-na2lwsun1b] { color: #6b7280; font-size: 12px; }

.rs-ech-no-push[b-na2lwsun1b] {
    color: #6b7280;
    font-size: 13px;
    font-style: italic;
    margin-bottom: 1rem;
}

.rs-ech-msg[b-na2lwsun1b] { margin-bottom: 0.75rem; }

.rs-ech-actions[b-na2lwsun1b] { display: flex; gap: 0.5rem; flex-wrap: wrap; }

/* Echelon submission summary panel — shown when questionnaire status = COMPLETED */
.rs-ech-submission-panel[b-na2lwsun1b] {
    padding: 0.75rem 1rem;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: 6px;
    margin-bottom: 1rem;
}
.rs-ech-submission-header[b-na2lwsun1b] {
    font-weight: 700;
    color: #0a3d62;
    font-size: 13px;
    margin-bottom: 0.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.rs-ech-submission-date[b-na2lwsun1b] {
    font-weight: 400;
    color: #6b7280;
    font-size: 12px;
}
.rs-ech-submission-grid[b-na2lwsun1b] {
    display: grid;
    grid-template-columns: 130px 1fr;
    gap: 0.25rem 0.75rem;
    font-size: 13px;
    align-items: baseline;
}

/* Echelon push modal info banner */
.rs-ech-info-banner[b-na2lwsun1b] {
    padding: 0.5rem 0.75rem;
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    border-radius: 5px;
    font-size: 12px;
    color: #1e40af;
    margin-bottom: 0.75rem;
}
/* /Components/Pages/RegSphere/ESActivityTypeSettings.razor.rz.scp.css */
.rs-es-act-subtitle[b-6f77jd5d8z] {
    color: var(--rs-text-muted, #6c757d);
    margin-bottom: 1.5rem;
    max-width: 700px;
}

.rs-es-act-banner[b-6f77jd5d8z] {
    margin-bottom: 1rem;
}

.rs-es-act-jurisdiction[b-6f77jd5d8z] {
    margin-bottom: 2rem;
}

.rs-es-act-jurisdiction__name[b-6f77jd5d8z] {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
    padding-bottom: 0.25rem;
    border-bottom: 1px solid var(--rs-border, #dee2e6);
}

.rs-es-act-table[b-6f77jd5d8z] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

    .rs-es-act-table th[b-6f77jd5d8z] {
        text-align: left;
        padding: 0.375rem 0.75rem;
        font-weight: 600;
        border-bottom: 2px solid var(--rs-border, #dee2e6);
        white-space: nowrap;
    }

    .rs-es-act-table td[b-6f77jd5d8z] {
        padding: 0.375rem 0.75rem;
        border-bottom: 1px solid var(--rs-border-light, #f0f0f0);
        vertical-align: middle;
    }

    .rs-es-act-table tr:last-child td[b-6f77jd5d8z] {
        border-bottom: none;
    }

.rs-es-act-action[b-6f77jd5d8z] {
    width: 110px;
    text-align: right;
}

.rs-es-act-pill[b-6f77jd5d8z] {
    display: inline-block;
    padding: 0.15rem 0.6rem;
    border-radius: 0.75rem;
    font-size: 0.75rem;
    font-weight: 500;
}

.rs-es-act-pill--enabled[b-6f77jd5d8z] {
    background-color: var(--rs-pill-enabled-bg, #e8f5e9);
    color: var(--rs-pill-enabled-text, #2e7d32);
}

.rs-es-act-pill--disabled[b-6f77jd5d8z] {
    background-color: var(--rs-pill-disabled-bg, #fdecea);
    color: var(--rs-pill-disabled-text, #c62828);
}
/* /Components/Pages/RegSphere/FiscReceiptPrint.razor.rz.scp.css */
/* FiscReceiptPrint — standalone fiscal-receipt page. The card sized to A5-ish
   so it prints centred on A4 with comfortable margins. */

.rs-frp__toolbar[b-zeh16oktoq] {
    margin: 16px;
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

.rs-frp__hint[b-zeh16oktoq] {
    margin: 24px;
    color: #6b7280;
    font-style: italic;
}

.rs-frp__sheet[b-zeh16oktoq] {
    max-width: 520px;
    margin: 0 auto 32px;
    padding: 28px 32px;
    background: #fff;
    border: 2px solid #1e3a8a;
    border-radius: 6px;
    color: #1f2937;
    font-family: -apple-system, "Segoe UI", sans-serif;
}

.rs-frp__header[b-zeh16oktoq] {
    margin-bottom: 22px;
}

.rs-frp__header h1[b-zeh16oktoq] {
    margin: 0 0 4px;
    font-size: 20px;
    color: #1e3a8a;
    letter-spacing: 0.5px;
}

.rs-frp__sub[b-zeh16oktoq] {
    font-size: 11px;
    color: #6b7280;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.rs-frp__meta[b-zeh16oktoq] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 14px;
    row-gap: 6px;
    margin: 0 0 22px;
    font-size: 13px;
}

.rs-frp__meta dt[b-zeh16oktoq] {
    color: #6b7280;
    font-weight: normal;
}

.rs-frp__meta dd[b-zeh16oktoq] {
    margin: 0;
    text-align: right;
}

.rs-frp__qr-block[b-zeh16oktoq] {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 14px 0;
    border-top: 1px solid #e5e7eb;
    border-bottom: 1px solid #e5e7eb;
}

.rs-frp__qr[b-zeh16oktoq] {
    width: 180px;
    height: 180px;
    flex: 0 0 180px;
}

.rs-frp__refs[b-zeh16oktoq] {
    flex: 1;
    font-size: 12px;
    line-height: 1.7;
}

.rs-frp__refs code[b-zeh16oktoq] {
    font-family: "SF Mono", Monaco, Consolas, monospace;
    font-size: 11px;
    background: #f3f4f6;
    padding: 1px 5px;
    border-radius: 3px;
    word-break: break-all;  /* IRNs are UUID-suffixed and won't break on hyphens alone */
}

.rs-frp__label[b-zeh16oktoq] {
    color: #6b7280;
    margin-right: 4px;
}

.rs-frp__verify[b-zeh16oktoq] {
    margin-top: 6px;
    word-break: break-all;
}

.rs-frp__confirmed[b-zeh16oktoq] {
    margin-top: 14px;
    padding: 8px 12px;
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    border-radius: 4px;
    color: #047857;
    font-size: 12px;
    font-weight: 600;
}

.rs-frp__footer[b-zeh16oktoq] {
    margin-top: 16px;
    font-size: 10px;
    color: #94a3b8;
    text-align: center;
}

/* Print-only — hide toolbar, lose body padding so the sheet fills the page. */
@media print {
    .rs-frp__toolbar[b-zeh16oktoq] {
        display: none;
    }
    .rs-frp__sheet[b-zeh16oktoq] {
        border: 1px solid #000;
        margin: 0;
        max-width: none;
    }
}
/* /Components/Pages/RegSphere/InvoiceDetailDrawer.razor.rz.scp.css */
/* InvoiceDetailDrawer scoped styles. Three-section layout (Lines /
   Transmission Details / Fiscal Receipt) mirroring POC build 52's
   .fq-drill-card markup. The Fiscal Receipt block reuses the WS green
   (#11C683) accent introduced in CaseDetail's per-case Receipt panel
   so operators get a consistent visual signal across both surfaces. */

/* Drawer joins the popup flex chain (.razorpage.in-popup is flex column with
   overflow:hidden). The grid wrapper is the only flex:1 child — header,
   transmission details, and receipt panel keep their natural height, so they
   stay glued to top/bottom. The grid absorbs the slack and shrinks/grows on
   viewport resize. overflow-y:auto is a safety net for very small viewports
   where the trim's min-content already exceeds the popup body — the drawer
   scrolls instead of clipping the receipt. */
.rs-iqd[b-we2znmb8qx] {
    padding: 4px 0;
    font-size: 13px;
    color: #1a1a2e;
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    overflow-y: auto;
}

.rs-iqd__hint[b-we2znmb8qx] { font-size: 12px; color: #6b7280; font-style: italic; }

.rs-iqd__header[b-we2znmb8qx]   { margin-bottom: 12px; padding-bottom: 8px; border-bottom: 1px solid #e4e8ed; }
.rs-iqd__title[b-we2znmb8qx]    { font-size: 14px; color: #0a3d62; }
.rs-iqd__subtitle[b-we2znmb8qx] { font-size: 12px; color: #6b7280; margin-top: 2px; }

.rs-iqd__section-heading[b-we2znmb8qx] {
    font-size: 12px; text-transform: uppercase; letter-spacing: 0.05em;
    color: #6b7280; margin: 14px 0 6px 0; font-weight: 600;
}

/* Lines grid is the only flex:1 child of .rs-iqd. It absorbs whatever space
   the header + transmission + receipt panels leave, and shrinks/grows on
   viewport resize — same behaviour as every other WS list page where the
   grid fills space and trim sticks above/below. min-height:0 lets it shrink
   below content height; display:flex propagates the flex chain to MyDxGrid's
   .grid-flex-root child so the grid can fill the wrapper. */
.rs-iqd__lines-grid[b-we2znmb8qx] {
    flex: 1;
    min-height: 120px;
    margin-bottom: 12px;
    display: flex;
    flex-direction: column;
}

.rs-iqd__tx[b-we2znmb8qx] { display: grid; grid-template-columns: max-content 1fr; gap: 6px 16px; margin: 0; }
.rs-iqd__tx dt[b-we2znmb8qx] { font-weight: 500; color: #6b7280; }
.rs-iqd__tx dd[b-we2znmb8qx] { margin: 0; color: #1a1a2e; }
.rs-iqd__error[b-we2znmb8qx] { color: #991b1b; }

.rs-iqd__receipt[b-we2znmb8qx] {
    margin-top: 14px; padding: 12px 14px;
    border: 1px solid #c7e9d5;
    background: #f4fbf7;
    border-radius: 6px;
    border-left: 4px solid #11C683;
}
.rs-iqd__receipt-header[b-we2znmb8qx]  { font-weight: 700; color: #0a3d62; margin-bottom: 8px; display: flex; align-items: center; gap: 6px; }
.rs-iqd__receipt-hint[b-we2znmb8qx]    { font-weight: 500; color: #6b7280; font-size: 11px; }
.rs-iqd__receipt-body[b-we2znmb8qx]    { display: flex; gap: 14px; align-items: flex-start; flex-wrap: wrap; }
.rs-iqd__qr[b-we2znmb8qx]              {
    width: 100px; height: 100px;
    background: #fff;
    border: 1px solid #d1d5db; border-radius: 4px;
    padding: 4px; flex: none;
}
.rs-iqd__receipt-details[b-we2znmb8qx] { flex: 1 1 auto; min-width: 220px; line-height: 1.6; font-size: 12px; }
.rs-iqd__label[b-we2znmb8qx]           { color: #6b7280; }
.rs-iqd__receipt-footnote[b-we2znmb8qx] { margin-top: 6px; color: #9a3412; font-style: italic; font-size: 11px; }
/* /Components/Pages/RegSphere/InvoiceQueue.razor.rz.scp.css */
/* InvoiceQueue.razor scoped styles. Visual language matches POC build 52's
   fq-* / fq-status-* classes — KPI tiles + status filter pills + toolbar
   above the grid. */

.rs-iq[b-zrsn4t3pcf] {
    display: flex; flex-direction: column;
    height: 100%; min-height: 0;
    padding: 0;
}

.rs-iq__header[b-zrsn4t3pcf] {
    padding: 10px 20px;
    border-bottom: 1px solid #e4e8ed;
    background: #fff;
}
.rs-iq__title h2[b-zrsn4t3pcf] { margin: 0; font-size: 18px; color: #0a3d62; }
.rs-iq__subtitle[b-zrsn4t3pcf] { font-size: 13px; color: #6b7280; }

/* KPI tile strip — clickable; the active tile gets a teal underline. */
.rs-iq__kpis[b-zrsn4t3pcf] {
    display: flex; gap: 12px; flex-wrap: wrap;
    padding: 12px 20px;
    background: #fff;
    border-bottom: 1px solid #e4e8ed;
}
.rs-iq__kpi[b-zrsn4t3pcf] {
    appearance: none;
    border: 1px solid #e4e8ed;
    background: #fff;
    border-radius: 6px;
    padding: 8px 16px;
    min-width: 90px;
    text-align: center;
    cursor: pointer;
    transition: border-color 120ms ease, transform 80ms ease;
}
.rs-iq__kpi:hover[b-zrsn4t3pcf]  { border-color: #11C683; transform: translateY(-1px); }
.rs-iq__kpi--active[b-zrsn4t3pcf] {
    border-color: #11C683;
    box-shadow: 0 0 0 2px rgba(17, 198, 131, 0.15);
}
.rs-iq__kpi-value[b-zrsn4t3pcf] { font-size: 20px; font-weight: 700; color: #0a3d62; }
.rs-iq__kpi-label[b-zrsn4t3pcf] { font-size: 11px; text-transform: uppercase; letter-spacing: 0.05em; color: #6b7280; }

/* Status-tinted KPI accents — match the FISCStatePillClass colours. */
.rs-iq__kpi--queued       .rs-iq__kpi-value[b-zrsn4t3pcf] { color: #6b7280; }
.rs-iq__kpi--submitted    .rs-iq__kpi-value[b-zrsn4t3pcf] { color: #d97706; }
.rs-iq__kpi--acknowledged .rs-iq__kpi-value[b-zrsn4t3pcf] { color: #059669; }
.rs-iq__kpi--rejected     .rs-iq__kpi-value[b-zrsn4t3pcf] { color: #dc2626; }
.rs-iq__kpi--cancelled    .rs-iq__kpi-value[b-zrsn4t3pcf] { color: #94a3b8; }

.rs-iq__toolbar[b-zrsn4t3pcf] {
    display: flex; gap: 12px; align-items: center; flex-wrap: wrap;
    padding: 12px 20px;
    background: #fff;
    border-bottom: 1px solid #e4e8ed;
}
.rs-iq__hint[b-zrsn4t3pcf] { font-size: 12px; color: #6b7280; }

/* Reuse the Case Detail message classes — defined in CaseDetail.razor.css
   but for completeness here in case this page is hit standalone. */
.rs-msg-success[b-zrsn4t3pcf] {
    background: #ecfdf5; color: #065f46;
    padding: 8px 12px; margin: 8px 20px;
    border-radius: 4px; border-left: 4px solid #059669;
    font-size: 13px;
}
.rs-msg-error[b-zrsn4t3pcf] {
    background: #fee2e2; color: #991b1b;
    padding: 8px 12px; margin: 8px 20px;
    border-radius: 4px; border-left: 4px solid #b91c1c;
    font-size: 13px;
}
.rs-page-error[b-zrsn4t3pcf] {
    background: #fee2e2; color: #991b1b;
    padding: 10px 16px; margin: 8px 20px;
    border-radius: 4px; font-size: 13px;
    border-left: 4px solid #b91c1c;
}
/* /Components/Pages/RegSphere/RegSphereSettings.razor.rz.scp.css */
/* RegSphere Settings page — Verify FISC Setup + Set Next Ref toolbar. */

.rs-settings-toolbar[b-y3fvr2ijt0] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 6px 12px;
    margin-bottom: 6px;
    border-bottom: 1px solid #e4e8ed;
    font-size: 12px;
    flex-wrap: wrap;
}

.rs-settings-toolbar__sep[b-y3fvr2ijt0] {
    width: 1px;
    height: 24px;
    background: #e4e8ed;
    flex-shrink: 0;
    align-self: center;
}

.rs-settings-toolbar__ref-input[b-y3fvr2ijt0] {
    width: 160px;
    flex-shrink: 0;
}

.rs-settings-toolbar__ok[b-y3fvr2ijt0]    { color: #166534; font-weight: 500; }
.rs-settings-toolbar__error[b-y3fvr2ijt0] { color: #991b1b; font-weight: 500; }
/* /Components/Pages/RegSphere/RegulatoryCases.razor.rz.scp.css */
/* RegulatoryCases.razor scoped styles. */

.regsphere-list[b-20i2hbhrkp] { display: flex; flex-direction: column; height: 100%; min-height: 0; padding: 0; }

.rs-page-header[b-20i2hbhrkp] {
    display: flex; justify-content: space-between; align-items: center;
    padding: 12px 20px 8px;
    background: #fff;
}

.rs-title[b-20i2hbhrkp] { margin: 0; font-size: 1.15rem; font-weight: 600; color: #0a3d62; }
.rs-toolbar[b-20i2hbhrkp] { display: flex; gap: 0.75rem; align-items: center; }

.rs-message[b-20i2hbhrkp] { font-size: 12px; padding: 4px 10px; border-radius: 12px; font-weight: 500; }
.rs-msg-success[b-20i2hbhrkp] { background: #d1fae5; color: #065f46; }
.rs-msg-error[b-20i2hbhrkp]   { background: #fee2e2; color: #991b1b; }

.rs-loading[b-20i2hbhrkp] { padding: 1rem; color: #6b7280; }
.rs-form[b-20i2hbhrkp] { padding: 8px 4px; }
.rs-dialog-error[b-20i2hbhrkp] { background: #fee2e2; color: #991b1b; padding: 8px 12px; border-radius: 4px; font-size: 13px; }

/* Page-level load failure banner — rendered at the top when an exception
   bubbled out of LoadAsync. Keeps the UI legible instead of going blank. */
.rs-page-error[b-20i2hbhrkp] {
    background: #fee2e2; color: #991b1b;
    padding: 10px 16px; margin: 8px 20px;
    border-radius: 4px; font-size: 13px;
    border-left: 4px solid #b91c1c;
}
/* /Components/Pages/Reports/NativeReportViewer.razor.rz.scp.css */
[b-mjcujeigpt] .dxbrv-wrapper .dxrbv-viewbox .dxrbv-gridlayout-side-bar {
	background-color: white !important;
}
/* /Components/Pages/Settings/Communications/EmailTemplateEditor.razor.rz.scp.css */
.email-template-editor__subject-row[b-7tbehm0j37] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.email-template-editor__subject-row[b-7tbehm0j37]  .btn {
    white-space: nowrap;
    flex-shrink: 0;
}

.email-template-editor__subject-input[b-7tbehm0j37] {
    flex: 1;
    min-width: 0;
}

.email-template-editor__body-toolbar[b-7tbehm0j37] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.5rem;
}

.email-template-editor__body-toolbar[b-7tbehm0j37]  .btn {
    white-space: nowrap;
    flex-shrink: 0;
}
/* /Components/Pages/Settings/Documents/CheckedOutFiles.razor.rz.scp.css */
.co-days-warn[b-hjaznhory0]   { color: #856404; font-weight: 600; } /* 7-29 days */
.co-days-danger[b-hjaznhory0] { color: #842029; font-weight: 600; } /* 30+   days */
/* /Components/Pages/Settings/Documents/OfficeIntegrationSetup.razor.rz.scp.css */
.ois-page[b-1aqw7zga5v] {
    max-width: 760px;
    padding: 1.5rem;
    font-size: 0.9rem;
    color: #374151;
}

.ois-header[b-1aqw7zga5v] {
    margin-bottom: 2rem;
}

.ois-title[b-1aqw7zga5v] {
    font-size: 1.25rem;
    font-weight: 600;
    margin: 0 0 0.5rem;
    color: #111827;
}

.ois-subtitle[b-1aqw7zga5v] {
    color: #6b7280;
    margin: 0;
}

.ois-section[b-1aqw7zga5v] {
    margin-bottom: 2rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid #e5e7eb;
}

.ois-section:last-child[b-1aqw7zga5v] {
    border-bottom: none;
}

.ois-section-title[b-1aqw7zga5v] {
    font-size: 1rem;
    font-weight: 600;
    margin: 0 0 0.75rem;
    color: #111827;
}

.ois-subsection-title[b-1aqw7zga5v] {
    font-size: 0.875rem;
    font-weight: 600;
    margin: 1.25rem 0 0.5rem;
    color: #374151;
}

.ois-step-list[b-1aqw7zga5v] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin: 0.75rem 0;
}

.ois-step[b-1aqw7zga5v] {
    display: flex;
    gap: 0.75rem;
    align-items: flex-start;
}

.ois-step-num[b-1aqw7zga5v] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    min-width: 1.5rem;
    border-radius: 50%;
    background: #2563eb;
    color: #fff;
    font-size: 0.75rem;
    font-weight: 600;
    margin-top: 1px;
}

.ois-code-block[b-1aqw7zga5v] {
    background: #f3f4f6;
    border: 1px solid #d1d5db;
    border-radius: 4px;
    padding: 0.5rem 0.75rem;
    font-family: monospace;
    font-size: 0.8rem;
    margin: 0.4rem 0;
    line-height: 1.6;
}

.ois-note[b-1aqw7zga5v] {
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    border-radius: 4px;
    padding: 0.6rem 0.75rem;
    font-size: 0.8rem;
    color: #1e40af;
    margin-top: 0.75rem;
    line-height: 1.5;
}

.ois-note--warn[b-1aqw7zga5v] {
    background: #fff3cd;
    border-color: #ffe69c;
    color: #664d03;
}

.ois-checklist[b-1aqw7zga5v] {
    padding-left: 1.25rem;
    margin: 0.5rem 0;
    line-height: 1.8;
}

.ois-limitation-list[b-1aqw7zga5v] {
    padding-left: 1.25rem;
    margin: 0.5rem 0;
    line-height: 1.8;
}

.ois-launch-note[b-1aqw7zga5v] {
    background: #f9fafb;
    border: 1px solid #e5e7eb;
    border-radius: 4px;
    padding: 0.6rem 0.75rem;
    font-size: 0.8rem;
    color: #6b7280;
    margin-top: 0.5rem;
}

kbd[b-1aqw7zga5v] {
    display: inline-block;
    padding: 0.1em 0.4em;
    font-size: 0.8em;
    font-family: monospace;
    background: #f3f4f6;
    border: 1px solid #d1d5db;
    border-radius: 3px;
    box-shadow: 0 1px 0 #9ca3af;
}
/* /Components/Pages/Settings/LiveWealth/LiveWealthConfig.razor.rz.scp.css */
/* Help-text block under the masking-toggle group caption. CSS-isolated so it can't
   leak Bootstrap utility-class overrides to other settings pages. */
.lw-masking-help[b-f76c17808r] {
    color: var(--bs-secondary, #6c757d);
    font-size: 0.85rem;
    line-height: 1.4;
    margin-bottom: 0.5rem;
}
/* /Components/Pages/Settings/Security/Roles/BulkAssignRolePopup.razor.rz.scp.css */
/* Layout is provided by the global editform-layout / razorpagemain / razorpagefooter
   rules in site.css — same pattern used by TaskEditor, SubMattersEdit, ShareTransferEditor.
   This file only carries bulk-assign-specific styling. */

.bulk-assign-summary[b-ftwz76wdys] {
    font-size: 1rem;
    margin-bottom: 0.4rem;
}

.bulk-assign-alert[b-ftwz76wdys] {
    font-size: 0.85rem;
    margin-top: 0.4rem;
    margin-bottom: 0.4rem;
    padding: 0.4rem 0.6rem;
}

.bulk-assign-user-grid[b-ftwz76wdys] {
    min-height: 200px;
}

.bulk-assign-empty[b-ftwz76wdys] {
    border: 1px dashed #d0d0d0;
    background: #fafafa;
    padding: 0.8rem 1rem;
    border-radius: 4px;
    font-size: 0.9rem;
    color: #555;
}

.bulk-assign-empty strong[b-ftwz76wdys] {
    display: block;
    margin-bottom: 0.25rem;
    color: #333;
}

.bulk-assign-groups[b-ftwz76wdys] {
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    padding: 0.5rem 0.6rem;
    background: #fafafa;
}

.bulk-assign-groups-head[b-ftwz76wdys] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.bulk-assign-groups-list[b-ftwz76wdys] {
    margin-top: 0.4rem;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.2rem 1rem;
    /* Cap height so a role with many defaults doesn't push the footer offscreen. */
    max-height: 140px;
    overflow-y: auto;
    padding: 0.2rem 0.4rem;
    border-top: 1px dashed #d0d0d0;
}

.bulk-assign-group-row[b-ftwz76wdys] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.88rem;
    margin: 0;
    cursor: pointer;
}

.bulk-assign-group-name[b-ftwz76wdys] {
    user-select: none;
}
/* /Components/Pages/Settings/Security/Roles/RoleDefaultGroupsPrompt.razor.rz.scp.css */
/* Layout is provided by the global editform-layout / razorpagemain / razorpagefooter
   rules in site.css. This file only carries the suggestion-list styling. */

.rdgp-intro[b-rsgv3z37sk] {
    font-size: 0.9rem;
    color: #495057;
    margin: 0 0 0.6rem 0;
}

.rdgp-list[b-rsgv3z37sk] {
    border: 1px solid #dee2e6;
    border-radius: 4px;
    max-height: 320px;
    overflow-y: auto;
}

.rdgp-row[b-rsgv3z37sk] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 6px 12px;
    border-bottom: 1px solid #f0f0f0;
    cursor: pointer;
}

.rdgp-row:last-child[b-rsgv3z37sk] {
    border-bottom: none;
}

.rdgp-row:hover[b-rsgv3z37sk] {
    background-color: #f8f9fa;
}

.rdgp-row-name[b-rsgv3z37sk] {
    font-size: 0.9rem;
    color: #212529;
}

.rdgp-empty[b-rsgv3z37sk] {
    padding: 20px;
    text-align: center;
    color: #6c757d;
    font-style: italic;
}
/* /Components/Pages/Settings/Security/Roles/RoleDefaultGroupsTab.razor.rz.scp.css */
.rdgt-container[b-1qxbn97kq6] {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    height: 100%;
}

/* Toolbar mirrors .rmp-toolbar so the chrome reads as one family across
   the Permissions and Default Groups tabs. */
.rdgt-toolbar[b-1qxbn97kq6] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.5rem;
    background: var(--bs-light, #f8f9fa);
    border-radius: 4px;
    flex-wrap: wrap;
    flex-shrink: 0;
    margin-bottom: 0.5rem;
}

.rdgt-search[b-1qxbn97kq6] {
    width: 280px;
    min-width: 200px;
}

.rdgt-list[b-1qxbn97kq6] {
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    flex: 1;
    border: 1px solid #dee2e6;
    border-radius: 4px;
}

.rdgt-header[b-1qxbn97kq6],
.rdgt-row[b-1qxbn97kq6] {
    display: grid;
    grid-template-columns: 32px 1fr auto 60px;
    align-items: center;
    padding: 0.35rem 0.75rem;
    gap: 4px;
}

.rdgt-header[b-1qxbn97kq6] {
    background: #e9ecef;
    font-weight: 600;
    font-size: 0.82rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: #495057;
    position: sticky;
    top: 0;
    z-index: 1;
    border-bottom: 2px solid #dee2e6;
}

.rdgt-row[b-1qxbn97kq6] {
    border-bottom: 1px solid #f0f0f0;
}

.rdgt-row:last-child[b-1qxbn97kq6] {
    border-bottom: none;
}

.rdgt-row:hover[b-1qxbn97kq6] {
    background-color: #f8f9fa;
}

.rdgt-check[b-1qxbn97kq6] {
    flex-shrink: 0;
}

.rdgt-col-name[b-1qxbn97kq6] {
    font-size: 0.88rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.rdgt-col-count[b-1qxbn97kq6] {
    font-size: 0.82rem;
    color: #6c757d;
    text-align: right;
}

.rdgt-col-status[b-1qxbn97kq6] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.rdgt-badge[b-1qxbn97kq6] {
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    padding: 2px 8px;
    border-radius: 10px;
    text-transform: uppercase;
    white-space: nowrap;
}

.rdgt-badge-add[b-1qxbn97kq6] {
    background-color: #d1f4e0;
    color: #0a6b3a;
    border: 1px solid #8ed6ad;
}

.rdgt-badge-remove[b-1qxbn97kq6] {
    background-color: #fde2e2;
    color: #8a1f1f;
    border: 1px solid #f0a8a8;
}

.rdgt-row-pending-add[b-1qxbn97kq6] {
    background-color: #f4fbf6;
}

.rdgt-row-pending-remove .rdgt-col-name[b-1qxbn97kq6] {
    text-decoration: line-through;
    color: #8a1f1f;
}

.rdgt-row-pending-remove[b-1qxbn97kq6] {
    background-color: #fdf6f6;
}

.rdgt-empty[b-1qxbn97kq6] {
    padding: 20px;
    text-align: center;
    color: #6c757d;
    font-style: italic;
}
/* /Components/Pages/Settings/Security/Roles/RoleEditor.razor.rz.scp.css */
/* Layout is provided by the global editform-layout / razorpagemain / razorpagefooter
   rules in site.css. This file only carries role-editor-specific styling. */

/* Shared chrome for every tab pane. The `grid` modifier is added on
   the panes that host a scrolling list (Permissions, Default Groups)
   so the inner panel can take the remaining height. */
.role-tab-pane[b-80yyvekcil] {
    padding: 0.5rem 0.25rem;
}

.role-tab-pane-grid[b-80yyvekcil] {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    height: 100%;
    overflow: hidden;
}

/* One-line descriptive note shown at the top of a tab (e.g. the
   Default Groups suggestion explanation). Tab labels carry the
   heading, so we don't repeat with <h6>. */
.role-tab-note[b-80yyvekcil] {
    font-size: 0.82rem;
    color: #6c757d;
    margin: 0 0 0.5rem 0;
    flex-shrink: 0;
}

/* Read-only view (e.g. from User Access Viewer's "View Role" modal).
   `::deep` punches through Blazor CSS isolation so the rule reaches child
   components (EditForm, RoleModulePanel, RoleDefaultGroupsTab) — without it
   only elements rendered directly by RoleEditor get the scope attribute and
   the form/checkboxes don't match. pointer-events: none stops clicks reaching
   any inner control; the Save row itself is hidden in markup. */
.role-editor-readonly[b-80yyvekcil]  form,
.role-editor-readonly[b-80yyvekcil]  .role-tab-pane {
    pointer-events: none;
    opacity: 0.92;
}

/* Template usage callout shown on the Details tab once a template has been
   cloned at least once. Conveys "this is in real use — be careful editing"
   without being alarming. */
.role-template-usage[b-80yyvekcil] {
    background: #eef6ff;
    border: 1px solid #b6daff;
    color: #0b5394;
    border-radius: 6px;
    padding: 0.4rem 0.65rem;
    font-size: 0.85rem;
}
/* /Components/Pages/Settings/Security/Roles/RoleModulePanel.razor.rz.scp.css */
/* ── RoleModulePanel ── */

.role-module-panel[b-1k5qy1g8ty] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    height: 100%;
}

/* ── Toolbar (search + summary) ── */

.rmp-toolbar[b-1k5qy1g8ty] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.5rem;
    background: var(--bs-light, #f8f9fa);
    border-radius: 4px;
    flex-wrap: wrap;
}

.rmp-search[b-1k5qy1g8ty] {
    width: 280px;
    min-width: 200px;
}

.rmp-summary[b-1k5qy1g8ty] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.85rem;
    margin-left: auto;
}

.rmp-badge[b-1k5qy1g8ty] {
    padding: 2px 8px;
    border-radius: 10px;
    font-size: 0.78rem;
    font-weight: 500;
    cursor: pointer;
    user-select: none;
    transition: box-shadow 0.15s;
}

.rmp-badge:hover[b-1k5qy1g8ty] {
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.15);
}

.rmp-badge-active[b-1k5qy1g8ty] {
    box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.4);
    font-weight: 700;
}

.rmp-badge-direct[b-1k5qy1g8ty] {
    background: #d1e7dd;
    color: #0f5132;
}

.rmp-badge-inherited[b-1k5qy1g8ty] {
    background: #cfe2ff;
    color: #084298;
}

.rmp-badge-denied[b-1k5qy1g8ty] {
    background: #f8d7da;
    color: #842029;
}

.rmp-sep[b-1k5qy1g8ty] {
    color: #aaa;
}

/* ── Checkbox-state legend ── */

.rmp-legend[b-1k5qy1g8ty] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.85rem;
    padding: 0.35rem 0.6rem;
    font-size: 0.78rem;
    color: #495057;
    background: #fbfbfb;
    border: 1px solid #ececec;
    border-radius: 4px;
}

.rmp-legend-item[b-1k5qy1g8ty] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    white-space: nowrap;
}

.rmp-legend-cb[b-1k5qy1g8ty] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 14px;
    height: 14px;
    border-radius: 2px;
    border: 1px solid #6c757d;
    background: #fff;
    color: #fff;
    font-size: 0.7rem;
    line-height: 1;
}

.rmp-legend-cb-direct[b-1k5qy1g8ty] {
    background: #198754;
    border-color: #198754;
}

.rmp-legend-cb-inherited[b-1k5qy1g8ty] {
    background: #198754;
    border-color: #198754;
    opacity: 0.55;
}

.rmp-legend-cb-denied[b-1k5qy1g8ty] {
    background: #dc3545;
    border-color: #dc3545;
    text-decoration: line-through;
}

.rmp-legend-cb-none[b-1k5qy1g8ty] {
    background: #fff;
    border-color: #adb5bd;
}

.rmp-legend-note[b-1k5qy1g8ty] {
    margin-left: auto;
    font-style: italic;
    color: #6c757d;
}

/* ── Grid layout ── */

.rmp-grid[b-1k5qy1g8ty] {
    overflow-y: auto;
    flex: 1;
    border: 1px solid #dee2e6;
    border-radius: 4px;
}

.rmp-header-row[b-1k5qy1g8ty],
.rmp-feature-row[b-1k5qy1g8ty] {
    display: grid;
    grid-template-columns: minmax(220px, 1.5fr) repeat(var(--action-col-count, 8), 60px) minmax(180px, auto);
    align-items: center;
    padding: 0.35rem 0.75rem;
    gap: 0;
}

.rmp-header-row[b-1k5qy1g8ty] {
    background: #e9ecef;
    font-weight: 600;
    font-size: 0.82rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: #495057;
    position: sticky;
    top: 0;
    z-index: 1;
    border-bottom: 2px solid #dee2e6;
}

.rmp-feature-row[b-1k5qy1g8ty] {
    border-bottom: 1px solid #f0f0f0;
    font-size: 0.88rem;
}

.rmp-feature-row:hover[b-1k5qy1g8ty] {
    background: #f8f9fa;
}

.rmp-feature-row:last-child[b-1k5qy1g8ty] {
    border-bottom: none;
}

/* ── Category rows ── */

.rmp-category-row[b-1k5qy1g8ty] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.4rem 0.75rem;
    background: #dee2e6;
    font-weight: 600;
    font-size: 0.85rem;
    cursor: pointer;
    user-select: none;
    border-bottom: 1px solid #ced4da;
    position: sticky;
    top: 30px;
    z-index: 1;
}

.rmp-category-row:hover[b-1k5qy1g8ty] {
    background: #d3d7db;
}

.rmp-category-toggle[b-1k5qy1g8ty] {
    font-size: 0.7rem;
    width: 14px;
    text-align: center;
}

.rmp-category-name[b-1k5qy1g8ty] {
    flex: 1;
}

.rmp-category-count[b-1k5qy1g8ty] {
    font-weight: 400;
    font-size: 0.78rem;
    color: #6c757d;
}

/* Category status dot — scannable indicator of assignment state.
   Sized to read at a glance without crowding the category name. */
.rmp-category-status[b-1k5qy1g8ty] {
    display: inline-block;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    flex-shrink: 0;
}

.rmp-cat-state-all .rmp-category-status[b-1k5qy1g8ty],
.rmp-category-status.rmp-cat-state-all[b-1k5qy1g8ty],
span.rmp-category-status.rmp-cat-state-all[b-1k5qy1g8ty] {
    background: #198754;
}

.rmp-category-status.rmp-cat-state-partial[b-1k5qy1g8ty] {
    background: #ffc107;
}

.rmp-category-status.rmp-cat-state-none[b-1k5qy1g8ty] {
    background: transparent;
    border: 1px solid #adb5bd;
}

/* Fraction colour echoes the dot so the row reads as one signal even
   when the dot is out of foveal view (e.g. when scrolling fast). */
.rmp-category-count.rmp-cat-state-all[b-1k5qy1g8ty] {
    color: #198754;
    font-weight: 600;
}

.rmp-category-count.rmp-cat-state-partial[b-1k5qy1g8ty] {
    color: #b35900;
    font-weight: 600;
}

.rmp-category-count.rmp-cat-state-none[b-1k5qy1g8ty] {
    color: #6c757d;
}

/* ── Sensitivity row highlights ── */

.rmp-sensitive[b-1k5qy1g8ty] {
    border-left: 3px solid #ffc107;
}

.rmp-critical[b-1k5qy1g8ty] {
    border-left: 3px solid #dc3545;
}

/* ── Columns ── */

.rmp-feature-col[b-1k5qy1g8ty] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    overflow: hidden;
}

.rmp-feature-name[b-1k5qy1g8ty] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.rmp-action-col[b-1k5qy1g8ty] {
    text-align: center;
    justify-self: center;
}

.rmp-preset-col[b-1k5qy1g8ty] {
    display: flex;
    gap: 0.25rem;
    justify-content: flex-end;
}

/* ── Sensitivity badges ── */

.rmp-sensitivity-badge[b-1k5qy1g8ty] {
    font-size: 0.65rem;
    font-weight: 700;
    padding: 1px 5px;
    border-radius: 3px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    flex-shrink: 0;
}

.rmp-sensitivity-critical[b-1k5qy1g8ty] {
    background: #f8d7da;
    color: #842029;
}

/* SENSITIVE features get a small amber dot next to the name instead of a
   full pill — the row's left-border tint (.rmp-sensitive) carries the
   structural signal, so the dot is just confirmation without noise. */
.rmp-sensitivity-dot[b-1k5qy1g8ty] {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #ffc107;
    flex-shrink: 0;
}

/* ── Checkbox states ── */

[b-1k5qy1g8ty] .rmp-check-direct {
    --dx-checkbox-check-bg: #198754;
    --dx-checkbox-check-border-color: #198754;
}

[b-1k5qy1g8ty] .rmp-check-inherited {
    opacity: 0.55;
}

[b-1k5qy1g8ty] .rmp-check-denied {
    --dx-checkbox-check-bg: #dc3545;
    --dx-checkbox-check-border-color: #dc3545;
    text-decoration: line-through;
}

[b-1k5qy1g8ty] .rmp-check-none {
    opacity: 0.85;
}

/* ── Preset buttons ──
   Both the category-level and feature-row preset buttons hover-reveal:
   visible only when their containing row is hovered. Keeps the panel
   visually quiet at rest while keeping the affordance one mouse-move away.
   Opacity + pointer-events (rather than display/visibility) means the
   row layout doesn't shift and accidental clicks on the hidden state
   are blocked. */

.rmp-preset-btn[b-1k5qy1g8ty] {
    font-size: 0.72rem;
    padding: 1px 8px;
    line-height: 1.4;
}

.rmp-preset-col[b-1k5qy1g8ty],
.rmp-category-presets[b-1k5qy1g8ty] {
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.12s ease-out;
}

.rmp-feature-row:hover .rmp-preset-col[b-1k5qy1g8ty],
.rmp-category-row:hover .rmp-category-presets[b-1k5qy1g8ty] {
    opacity: 1;
    pointer-events: auto;
}

.rmp-category-presets[b-1k5qy1g8ty] {
    margin-left: 0.75rem;
    display: inline-flex;
    gap: 0.25rem;
    flex-shrink: 0;
    /* Reserve a constant slot. Categories without a View action render two
       buttons (All / Clear); categories with one render three. Without a
       fixed slot, the absent button would let the surrounding flex layout
       reflow and the "N features" count would land at different positions
       per row. */
    justify-content: flex-end;
    min-width: 170px;
}

/* ── Unmapped indicators ── */

.rmp-badge-unmapped[b-1k5qy1g8ty] {
    background: #e2e3e5;
    color: #41464b;
    border: 1px dashed #6c757d;
}

.rmp-unmapped-row[b-1k5qy1g8ty] {
    border-left: 3px dashed #6c757d;
}

[b-1k5qy1g8ty] .rmp-unmapped-check {
    border-style: dashed;
}

/* Inline notice shown when unmapped codes exist. The fix lives in Role
   Analytics → Feature Mappings (it's a global change) so this is a
   navigational pointer, not an inline editor. */
.rmp-unmapped-note[b-1k5qy1g8ty] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.4rem 0.6rem;
    background: #fff8e6;
    border: 1px solid #ffe69c;
    border-radius: 4px;
    font-size: 0.82rem;
    color: #66512c;
}

.rmp-unmapped-note-icon[b-1k5qy1g8ty] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #ffc107;
    color: #fff;
    font-weight: 700;
    font-size: 0.72rem;
    flex-shrink: 0;
}

.rmp-unmapped-note a[b-1k5qy1g8ty] {
    color: #66512c;
    text-decoration: underline;
}

/* ── Status indicators ── */

.rmp-loading[b-1k5qy1g8ty],
.rmp-empty[b-1k5qy1g8ty] {
    padding: 2rem;
    text-align: center;
    color: #6c757d;
    font-style: italic;
}
/* /Components/Pages/Settings/Security/Roles/RolesEnquiry.razor.rz.scp.css */
/* ── Template picker popup ──
   Click "Use Template" on the Roles toolbar to open this. Cards click to
   route into the existing clone flow with the template as the source. */

.role-template-list[b-cu412henll] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 0 1rem 1rem;
}

.role-template-card[b-cu412henll] {
    text-align: left;
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 6px;
    padding: 0.65rem 0.85rem;
    cursor: pointer;
    transition: border-color 0.12s, box-shadow 0.12s, background 0.12s;
}

.role-template-card:hover[b-cu412henll] {
    border-color: #198754;
    background: #f4fbf6;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

.role-template-card:focus-visible[b-cu412henll] {
    outline: 2px solid #198754;
    outline-offset: 2px;
}

.role-template-card-head[b-cu412henll] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.2rem;
}

.role-template-card-cat[b-cu412henll] {
    margin-left: auto;
}

.role-template-card-meta[b-cu412henll] {
    margin-left: 1.1rem;
}

.role-template-card-desc[b-cu412henll] {
    margin-left: 1.1rem;
    margin-top: 0.1rem;
    margin-bottom: 0.25rem;
    font-size: 0.82rem;
    color: #495057;
    line-height: 1.35;
}

.role-template-card-usage[b-cu412henll] {
    color: #6c757d;
    font-style: italic;
}

/* /Components/Pages/Settings/Security/UserAccessViewer.razor.rz.scp.css */
/* Flex chain so the active tab grid fills the remaining viewport.
   Pattern lifted from regsphere CaseDetail.razor.css — Blazor CSS-isolation
   strips bare ::deep selectors; they must be anchored on a class declared in
   our own markup so the scope attribute lands on a real element. */
.uav-tabs-wrap[b-ppqa68e6xr] {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.uav-tabs-wrap[b-ppqa68e6xr]  .dxbl-tabs {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.uav-tabs-wrap[b-ppqa68e6xr]  .dxbl-tabs-content-panel {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
    height: auto !important;
}

.uav-tabs-wrap[b-ppqa68e6xr]  .dxbl-tabs-content.dxbl-active {
    flex: 1 1 auto;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.uav-tab-body[b-ppqa68e6xr] {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-height: 0;
    padding: 1rem;
}

.uav-summary[b-ppqa68e6xr] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.uav-summary__chip[b-ppqa68e6xr] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.6rem;
    background: #f0f4f8;
    border: 1px solid #d6dee5;
    border-radius: 9999px;
    font-size: 0.875rem;
    color: #1a4b8c;
}

.uav-summary__chip strong[b-ppqa68e6xr] {
    margin-right: 0.3rem;
    color: #0a3d62;
}

.uav-summary__chip--privileged[b-ppqa68e6xr] {
    background: #fdecec;
    border-color: #f0b4b4;
    color: #8a1f1f;
}

/* Clickable chip variant — used by the "Last permission change" chip to jump
   to the Audit history tab. Resets <button> defaults so it looks identical to
   the static chip neighbours, then adds an accent on hover/focus. */
.uav-summary__chip--clickable[b-ppqa68e6xr] {
    cursor: pointer;
    font: inherit;
    line-height: inherit;
    transition: background 0.15s, border-color 0.15s;
}

.uav-summary__chip--clickable:hover[b-ppqa68e6xr],
.uav-summary__chip--clickable:focus-visible[b-ppqa68e6xr] {
    background: #d9e7f5;
    border-color: #8aacd3;
    outline: none;
}

/* Refresh button + last-refreshed stamp on the same row. */
.uav-refresh-row[b-ppqa68e6xr] {
    display: flex;
    align-items: center;
}

.uav-row-toolbar[b-ppqa68e6xr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* Sensitivity badge tiers — applied via MyGridColumn.CellCssClassFunc.
   The shared .grid-badge class supplies the pill shape; these modifiers
   colour each tier so admins can scan high-risk codes at a glance. */
.uav-sens-badge[b-ppqa68e6xr] {
    text-transform: uppercase;
    font-size: 0.72rem;
    letter-spacing: 0.04em;
}

.uav-sens-standard[b-ppqa68e6xr] {
    background: #e8f4ea;
    border: 1px solid #b7d9bd;
    color: #1f6b34;
}

.uav-sens-sensitive[b-ppqa68e6xr] {
    background: #fff4d6;
    border: 1px solid #e6c870;
    color: #8a5a00;
}

.uav-sens-critical[b-ppqa68e6xr] {
    background: #fdecec;
    border: 1px solid #f0b4b4;
    color: #8a1f1f;
}

/* ── Explain-access popup ──
   Each user-held role anchors one chain; the chain walks upward to the
   ancestor that owns the grant or deny. Rendered as inline pills so the
   eye reads "ROOT → … → TERMINAL ✓ grants" left to right. */
.uav-explain-chain[b-ppqa68e6xr] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem;
    padding: 0.45rem 0;
    border-bottom: 1px solid #f0f0f0;
    font-size: 0.88rem;
}

.uav-explain-chain:last-child[b-ppqa68e6xr] {
    border-bottom: none;
}

.uav-explain-root[b-ppqa68e6xr],
.uav-explain-step[b-ppqa68e6xr] {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 4px;
    background: #f1f3f5;
    color: #212529;
}

.uav-explain-root[b-ppqa68e6xr] {
    background: #e2e3e5;
    font-weight: 600;
}

.uav-explain-arrow[b-ppqa68e6xr] {
    color: #6c757d;
}

.uav-explain-grants[b-ppqa68e6xr] {
    background: #d1e7dd;
    color: #0f5132;
    font-weight: 600;
}

.uav-explain-denies[b-ppqa68e6xr] {
    background: #f8d7da;
    color: #842029;
    font-weight: 600;
    text-decoration: line-through;
}

.uav-explain-verdict[b-ppqa68e6xr] {
    margin-left: 0.5rem;
    font-size: 0.82rem;
    font-weight: 600;
}

.uav-explain-verdict-grants[b-ppqa68e6xr] {
    color: #0f5132;
}

.uav-explain-verdict-denies[b-ppqa68e6xr] {
    color: #842029;
}

.uav-explain-empty[b-ppqa68e6xr] {
    margin-left: 0.5rem;
    font-style: italic;
    color: #6c757d;
}
/* /Components/Pages/Settings/Security/Users/GroupAnalytics.razor.rz.scp.css */
.ga-summary[b-haez89d1bh] {
    padding: 10px 14px;
    border-radius: 4px;
    font-size: 0.9rem;
    margin-bottom: 8px;
}

.ga-summary--pass[b-haez89d1bh] {
    background-color: #d1e7dd;
    color: #0f5132;
    border: 1px solid #badbcc;
}

.ga-summary--fail[b-haez89d1bh] {
    background-color: #f8d7da;
    color: #842029;
    border: 1px solid #f5c2c7;
}

.ga-summary--warn[b-haez89d1bh] {
    background-color: #fff3cd;
    color: #664d03;
    border: 1px solid #ffecb5;
}
/* /Components/Pages/Settings/Security/Users/UserGroupsTab.razor.rz.scp.css */
.ugt-container[b-8fpld4pfqe] {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.ugt-search[b-8fpld4pfqe] {
    flex-shrink: 0;
    margin-bottom: 4px;
}

.ugt-list[b-8fpld4pfqe] {
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    flex: 1;
    border: 1px solid #dee2e6;
    border-radius: 4px;
}

.ugt-header[b-8fpld4pfqe],
.ugt-row[b-8fpld4pfqe] {
    display: grid;
    grid-template-columns: 32px 1fr auto 60px;
    align-items: center;
    padding: 3px 10px;
    gap: 4px;
}

.ugt-header[b-8fpld4pfqe] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    border-bottom: 2px solid #dee2e6;
    background-color: #f8f9fa;
    position: sticky;
    top: 0;
    z-index: 1;
}

.ugt-row[b-8fpld4pfqe] {
    border-bottom: 1px solid #f0f0f0;
}

.ugt-row:last-child[b-8fpld4pfqe] {
    border-bottom: none;
}

.ugt-row:hover[b-8fpld4pfqe] {
    background-color: #f8f9fa;
}

.ugt-check[b-8fpld4pfqe] {
    flex-shrink: 0;
}

.ugt-col-name[b-8fpld4pfqe] {
    font-size: 0.88rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.ugt-col-count[b-8fpld4pfqe] {
    font-size: 0.82rem;
    color: #6c757d;
    text-align: right;
}

.ugt-col-status[b-8fpld4pfqe] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.ugt-badge[b-8fpld4pfqe] {
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    padding: 2px 8px;
    border-radius: 10px;
    text-transform: uppercase;
    white-space: nowrap;
}

.ugt-badge-add[b-8fpld4pfqe] {
    background-color: #d1f4e0;
    color: #0a6b3a;
    border: 1px solid #8ed6ad;
}

.ugt-badge-remove[b-8fpld4pfqe] {
    background-color: #fde2e2;
    color: #8a1f1f;
    border: 1px solid #f0a8a8;
}

.ugt-row-pending-add[b-8fpld4pfqe] {
    background-color: #f4fbf6;
}

.ugt-row-pending-remove .ugt-col-name[b-8fpld4pfqe] {
    text-decoration: line-through;
    color: #8a1f1f;
}

.ugt-row-pending-remove[b-8fpld4pfqe] {
    background-color: #fdf6f6;
}

.ugt-empty[b-8fpld4pfqe] {
    padding: 20px;
    text-align: center;
    color: #6c757d;
    font-style: italic;
}
/* /Components/Pages/Settings/Security/Users/UserRolesTab.razor.rz.scp.css */
.urt-container[b-z7ohcojss6] {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.urt-search[b-z7ohcojss6] {
    flex-shrink: 0;
    margin-bottom: 4px;
}

.urt-list[b-z7ohcojss6] {
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    flex: 1;
    border: 1px solid #dee2e6;
    border-radius: 4px;
}

/* Shared grid layout for header + rows */
.urt-header[b-z7ohcojss6],
.urt-row[b-z7ohcojss6] {
    display: grid;
    grid-template-columns: 32px 1fr 110px 140px auto;
    align-items: center;
    padding: 3px 10px;
    gap: 4px;
}

.urt-header[b-z7ohcojss6] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    border-bottom: 2px solid #dee2e6;
    background-color: #f8f9fa;
    position: sticky;
    top: 0;
    z-index: 1;
}

.urt-row[b-z7ohcojss6] {
    border-bottom: 1px solid #f0f0f0;
    cursor: pointer;
}

.urt-row:last-child[b-z7ohcojss6] {
    border-bottom: none;
}

.urt-row:hover[b-z7ohcojss6] {
    background-color: #f8f9fa;
}

.urt-row-pending[b-z7ohcojss6] {
    background-color: #fff8e1;
}

.urt-row-pending:hover[b-z7ohcojss6] {
    background-color: #fff3cd;
}

.urt-row-pending-add[b-z7ohcojss6] {
    background-color: #f4fbf6;
}

.urt-row-pending-add:hover[b-z7ohcojss6] {
    background-color: #e6f5ec;
}

.urt-row-pending-remove[b-z7ohcojss6] {
    background-color: #fdf6f6;
}

.urt-row-pending-remove:hover[b-z7ohcojss6] {
    background-color: #fbeaea;
}

.urt-row-pending-remove .urt-col-name[b-z7ohcojss6],
.urt-row-pending-remove .urt-col-category[b-z7ohcojss6] {
    text-decoration: line-through;
    color: #8a1f1f;
}

.urt-check[b-z7ohcojss6] {
    flex-shrink: 0;
}

.urt-col-name[b-z7ohcojss6] {
    font-size: 0.88rem;
    font-weight: 400;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.urt-col-category[b-z7ohcojss6] {
    font-size: 0.82rem;
    color: #6c757d;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.urt-col-status[b-z7ohcojss6] {
    display: flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}

.urt-col-actions[b-z7ohcojss6] {
    display: flex;
    gap: 2px;
    justify-content: flex-end;
    min-width: 0;
}

.urt-status[b-z7ohcojss6] {
    font-size: 0.7rem;
    font-weight: 600;
    padding: 1px 5px;
    border-radius: 3px;
    white-space: nowrap;
}

.urt-status-active[b-z7ohcojss6] {
    background-color: #d1e7dd;
    color: #0f5132;
}

.urt-status-pending[b-z7ohcojss6] {
    background-color: #fff3cd;
    color: #664d03;
}

.urt-status-pending-save[b-z7ohcojss6] {
    background-color: #e2e3e5;
    color: #41464b;
}

.urt-status-pending-add[b-z7ohcojss6] {
    background-color: #d1f4e0;
    color: #0a6b3a;
    border: 1px solid #8ed6ad;
}

.urt-status-pending-remove[b-z7ohcojss6] {
    background-color: #fde2e2;
    color: #8a1f1f;
    border: 1px solid #f0a8a8;
}

.urt-status-privileged[b-z7ohcojss6] {
    background-color: #fff3cd;
    color: #664d03;
}

.urt-status-rejected[b-z7ohcojss6] {
    background-color: #f8d7da;
    color: #842029;
}

.urt-empty[b-z7ohcojss6] {
    padding: 20px;
    text-align: center;
    color: #6c757d;
    font-style: italic;
}
/* /Components/Pages/Tasks/Tasks.razor.rz.scp.css */
/* Drill-down KPI styles are in site.css (scoped CSS can't reach DxPopup body) */
/* /Components/Pages/User/Dashboard/Blocks/UserEntitiesBlock.razor.rz.scp.css */
.myListboxClass[b-r8m2g2mqts] {
	height: 100% !important;
}

.myListboxClass2[b-r8m2g2mqts] {
	height: fit-content !important;
}

.listbox-height[b-r8m2g2mqts] {
	height: 300px !important;
}

.listbox-item-template[b-r8m2g2mqts] {
	display: flex;
	align-items: center;
}

	.listbox-item-template > img[b-r8m2g2mqts] {
		border-radius: 50%;
		width: 2rem;
		height: 2rem;
	}

.listbox-item-template-initials[b-r8m2g2mqts] {
	border-radius: 50%;
	width: 2rem;
	height: 2rem;
}

img + .listbox-item-template-text[b-r8m2g2mqts] {
	margin-left: 0.5rem;
}

.dxbl-sm img + .listbox-item-template-text[b-r8m2g2mqts] {
	margin-left: 0.375rem;
}

.key-rel-initials2 + .listbox-item-template-text[b-r8m2g2mqts] {
	margin-left: 0.375rem;
}

.dxbl-lg img + .listbox-item-template-text[b-r8m2g2mqts] {
	margin-left: 0.625rem;
}

.listbox-item-template-text[b-r8m2g2mqts] {
	display: flex;
	flex-flow: column;
}

.listbox-item-template-text-phone[b-r8m2g2mqts] {
	opacity: 0.65;
}

.key-rel-initials2[b-r8m2g2mqts] {
	display: inline-block;
	width: 30px; /* Adjust as needed */
	height: 30px; /* Adjust as needed */
	background-color: #007bff; /* Example background color */
	color: white; /* Text color */
	text-align: center;
	line-height: 30px; /* Vertically center the text */
}

.key-rel-image[b-r8m2g2mqts] {
	width: 30px; /* Adjust as needed */
	height: 30px; /* Adjust as needed */
}
/* /Components/Pages/User/Dashboard/Blocks/UserSARSummaryBlock.razor.rz.scp.css */
/* Click-through badges (decision + status). `text-decoration-none` on an
   anchor with `.badge` strips the underline that would usually signal
   "this is a link" — add a subtle visual cue so MLROs know they can click. */
.sar-badge-link[b-riq1tgvozg] {
    cursor: pointer;
    transition: filter 120ms ease-in-out, transform 120ms ease-in-out;
}

.sar-badge-link:hover[b-riq1tgvozg],
.sar-badge-link:focus[b-riq1tgvozg] {
    filter: brightness(0.9);
    transform: translateY(-1px);
    text-decoration: none;
}
/* /Components/Pages/User/Dashboard/UserDashboard.razor.rz.scp.css */
.razorpagemain[b-q3nbvi6bh4] {
    overflow-y: auto;
    background: #e8eaed !important;
    box-shadow: none !important;
    border: none !important;
    min-height: 400px;
}
