:root {
    --crm-font-sans: "Inter", "SF Pro Text", "SF Pro Display", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
    --crm-bg: #09111f;
    --crm-bg-secondary: #11192b;
    --crm-surface: rgba(13, 18, 30, 0.72);
    --crm-surface-elevated: rgba(17, 23, 38, 0.82);
    --crm-surface-soft: rgba(255, 255, 255, 0.05);
    --crm-border: rgba(255, 255, 255, 0.12);
    --crm-border-strong: rgba(255, 255, 255, 0.24);
    --crm-text: #f6f8fc;
    --crm-text-muted: #a9b6ca;
    --crm-text-soft: #74839b;
    --crm-accent: #8ab4ff;
    --crm-accent-strong: #c7d8ff;
    --crm-accent-soft: rgba(138, 180, 255, 0.16);
    --crm-highlight: rgba(255, 255, 255, 0.32);
    --crm-success: #59d7b1;
    --crm-danger: #ff8ca1;
    --crm-info: #7fd4ff;
    --crm-warning: #ffd683;
    --crm-shadow: 0 28px 90px rgba(2, 6, 23, 0.34);
    --crm-shadow-soft: 0 20px 55px rgba(2, 6, 23, 0.24);
    --crm-blur: blur(22px);
    --crm-radius-xl: 1.9rem;
    --crm-radius-lg: 1.5rem;
    --crm-radius-md: 1.15rem;
    --crm-control-compact-height: 2.62rem;
    --crm-sidebar-width: 300px;
    --crm-child-sidebar-width: 220px;
    --crm-child-sidebar-compact-width: 154px;
}

.crm-theme,
.sendportal-shell {
    min-height: 100%;
    background:
        radial-gradient(circle at top left, rgba(127, 168, 255, 0.18), transparent 24%),
        radial-gradient(circle at top right, rgba(255, 255, 255, 0.1), transparent 22%),
        radial-gradient(circle at bottom, rgba(80, 138, 255, 0.12), transparent 30%),
        linear-gradient(180deg, var(--crm-bg) 0%, var(--crm-bg-secondary) 100%);
    color: var(--crm-text);
}

html:not(.dark) .sendportal-shell {
    --crm-bg: #f5f7fb;
    --crm-bg-secondary: #eef3fb;
    --crm-surface: rgba(255, 255, 255, 0.84);
    --crm-surface-elevated: rgba(255, 255, 255, 0.94);
    --crm-surface-soft: rgba(15, 23, 42, 0.04);
    --crm-border: rgba(15, 23, 42, 0.1);
    --crm-border-strong: rgba(15, 23, 42, 0.16);
    --crm-text: #0f172a;
    --crm-text-muted: #475569;
    --crm-text-soft: #64748b;
    --crm-accent: #2563eb;
    --crm-accent-strong: #1d4ed8;
    --crm-accent-soft: rgba(37, 99, 235, 0.12);
    --crm-highlight: rgba(15, 23, 42, 0.14);
    background:
        radial-gradient(circle at top left, rgba(59, 130, 246, 0.12), transparent 24%),
        radial-gradient(circle at top right, rgba(148, 163, 184, 0.12), transparent 24%),
        linear-gradient(180deg, #f8fbff 0%, #eef4fb 100%);
    color: var(--crm-text);
}

html,
body,
.fi-body,
.fi-layout,
.sendportal-shell {
    font-family: var(--crm-font-sans);
}

.fi-sidebar,
.fi-topbar,
.fi-page,
.sendportal-sidebar,
.sendportal-main,
.sendportal-topbar,
.sendportal-content,
.sendportal-shell .card,
.sendportal-shell .table,
.sendportal-shell .btn,
.sendportal-shell .form-control,
.sendportal-shell .custom-select {
    font-family: var(--crm-font-sans) !important;
}

html,
body {
    min-height: 100%;
    background:
        radial-gradient(circle at top left, rgba(138, 180, 255, 0.18), transparent 24%),
        radial-gradient(circle at top right, rgba(255, 255, 255, 0.08), transparent 20%),
        radial-gradient(circle at bottom right, rgba(127, 212, 255, 0.08), transparent 26%),
        linear-gradient(180deg, #07101c 0%, #0b1524 48%, #111c2e 100%);
    background-attachment: fixed;
    color: var(--crm-text);
}

html,
body,
.fi-body,
.fi-layout,
.fi-main,
.fi-page,
.sendportal-shell,
.api-shell {
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    font-kerning: normal;
}

h1,
h2,
h3,
h4,
h5,
h6,
.crm-title,
.crm-section-title,
.crm-widget-title,
.crm-card__title,
.crm-broadcast-status__title,
.fi-header-heading,
.sendportal-topbar__title,
.sendportal-brand__title,
.fi-wi-stats-overview-stat-value,
.sendportal-page-header .fi-header-heading {
    text-wrap: balance;
}

p,
li,
td,
dd,
.crm-copy,
.crm-widget-copy,
.crm-card__subtitle,
.crm-card__aside,
.crm-stat-card__description,
.crm-alert__body,
.crm-key-value__label,
.crm-key-value__value,
.crm-broadcast-status__body,
.sendportal-brand__copy,
.sendportal-topbar__meta,
.sendportal-page-header__breadcrumbs,
.fi-ta-cell,
.fi-ta-text,
.fi-dropdown-panel,
.fi-section {
    overflow-wrap: anywhere;
    word-break: break-word;
    hyphens: auto;
}

:where(.fi-body, .sendportal-shell, .api-shell, .crm-theme) :is(
    a[href],
    button,
    input,
    select,
    textarea,
    [role="button"],
    [tabindex]:not([tabindex="-1"])
):focus-visible {
    outline: 2px solid rgba(37, 99, 235, 0.78);
    outline-offset: 3px;
}

html.dark :where(.fi-body, .sendportal-shell, .api-shell, .crm-theme) :is(
    a[href],
    button,
    input,
    select,
    textarea,
    [role="button"],
    [tabindex]:not([tabindex="-1"])
):focus-visible {
    outline-color: rgba(138, 180, 255, 0.82);
}

.donation-suite-header {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    border-bottom: 1px solid #e5e7eb;
    background: #ffffff;
    padding: 0.6rem 2rem;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
}

.donation-suite-header__copy {
    min-width: 0;
}

.donation-suite-header__title {
    margin: 0;
    color: #023E8A;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 2rem;
}

.donation-suite-header__subtitle {
    margin: 0.25rem 0 0;
    color: #6b7280;
    font-size: 0.9375rem;
    font-weight: 500;
    line-height: 1.35rem;
}

.donation-suite-header__actions {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 1rem;
}

.donation-suite-header__page-actions {
    display: flex;
    align-items: center;
}

.donation-suite-header__primary-action {
    display: inline-flex;
    height: 2.5rem;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    border-radius: 0.7rem;
    background: #023E8A;
    color: #ffffff;
    font-size: 0.875rem;
    font-weight: 650;
    line-height: 1rem;
    padding: 0 1rem;
    text-decoration: none;
    box-shadow: 0 10px 24px rgba(2, 62, 138, 0.18);
    transition: background-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.donation-suite-header__primary-action:hover,
.donation-suite-header__primary-action:focus-visible {
    background: #002f6c;
    box-shadow: 0 12px 30px rgba(2, 62, 138, 0.24);
    color: #ffffff;
    transform: translateY(-1px);
}

.donation-suite-header__primary-action-icon {
    height: 1rem;
    width: 1rem;
}

.donation-suite-header__icon-button {
    position: relative;
    display: grid;
    height: 2.5rem;
    width: 2.5rem;
    place-items: center;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #374151;
    cursor: pointer;
    transition: background-color 160ms ease;
}

.donation-suite-header__icon-button:hover {
    background: #f3f4f6;
}

.donation-suite-header__icon-button.is-disabled,
.donation-suite-header__icon-button:disabled {
    cursor: not-allowed;
    opacity: 0.38;
}

.donation-suite-header__icon-button.is-disabled:hover,
.donation-suite-header__icon-button:disabled:hover {
    background: transparent;
}

.donation-suite-header__icon {
    height: 1.5rem;
    width: 1.5rem;
}

.donation-suite-header__notification-dot {
    position: absolute;
    right: 0.55rem;
    top: 0.35rem;
    height: 0.625rem;
    width: 0.625rem;
    border: 2px solid #ffffff;
    border-radius: 999px;
    background: #ef4444;
}

.donation-suite-notifications {
    position: relative;
}

.donation-suite-notifications__panel {
    position: absolute;
    right: 0;
    top: calc(100% + 0.75rem);
    z-index: 50;
    width: min(22rem, calc(100vw - 2rem));
    overflow: hidden;
    border: 1px solid #e5e7eb;
    border-radius: 1rem;
    background: #ffffff;
    box-shadow: 0 24px 70px rgba(15, 23, 42, 0.18);
}

.donation-suite-notifications__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #e5e7eb;
    padding: 0.875rem 1rem;
}

.donation-suite-notifications__header p {
    margin: 0;
    color: #0f172a;
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.25rem;
}

.donation-suite-notifications__header span {
    display: grid;
    min-width: 1.5rem;
    height: 1.5rem;
    place-items: center;
    border-radius: 999px;
    background: rgba(2, 62, 138, 0.1);
    color: #023E8A;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1;
}

.donation-suite-notifications__item {
    display: grid;
    gap: 0.125rem;
    padding: 0.875rem 1rem;
    text-decoration: none;
    transition: background-color 160ms ease;
}

.donation-suite-notifications__item + .donation-suite-notifications__item {
    border-top: 1px solid #f1f5f9;
}

.donation-suite-notifications__item:hover {
    background: #f8fafc;
}

.donation-suite-notifications__amount {
    color: #111827;
    font-size: 0.9375rem;
    font-weight: 700;
    line-height: 1.25rem;
}

.donation-suite-notifications__donor {
    color: #334155;
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1.15rem;
}

.donation-suite-notifications__meta,
.donation-suite-notifications__empty {
    color: #64748b;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1rem;
}

.donation-suite-notifications__empty {
    padding: 1rem;
}

.donation-suite-date-picker {
    position: relative;
}

.donation-suite-date-picker__panel {
    position: absolute;
    right: 0;
    top: calc(100% + 0.75rem);
    z-index: 50;
    display: grid;
    width: min(43rem, calc(100vw - 2rem));
    grid-template-columns: 11rem minmax(0, 1fr);
    overflow: hidden;
    border: 1px solid #e5e7eb;
    border-radius: 1rem;
    background: #ffffff;
    box-shadow: 0 24px 70px rgba(15, 23, 42, 0.18);
}

.donation-suite-date-picker__sidebar {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    border-right: 1px solid #e5e7eb;
    background: #f8fafc;
    padding: 0.875rem;
}

.donation-suite-date-picker__eyebrow {
    margin: 0 0 0.375rem;
    color: #64748b;
    font-size: 0.7rem;
    font-weight: 600;
    line-height: 1rem;
    text-transform: uppercase;
}

.donation-suite-date-picker__preset {
    display: flex;
    width: 100%;
    border: 1px solid transparent;
    border-radius: 0.65rem;
    background: transparent;
    padding: 0.55rem 0.65rem;
    text-align: left;
    transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.donation-suite-date-picker__preset:hover,
.donation-suite-date-picker__preset.is-active {
    border-color: rgba(2, 62, 138, 0.24);
    background: rgba(2, 62, 138, 0.08);
}

.donation-suite-date-picker__preset-label {
    color: #0f172a;
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1rem;
}

.donation-suite-date-picker__preset.is-active .donation-suite-date-picker__preset-label {
    color: #023E8A;
}

.donation-suite-date-picker__body {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 0.875rem;
    padding: 1rem;
}

.donation-suite-date-picker__summary {
    display: flex;
    min-height: 2rem;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    color: #0f172a;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.25rem;
}

.donation-suite-date-picker__summary-range {
    color: #64748b;
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1rem;
}

.donation-suite-date-picker__toolbar {
    display: grid;
    align-items: center;
    gap: 0.375rem;
    grid-template-columns: 2rem 2rem minmax(4rem, 1fr) 2rem 2rem;
}

.donation-suite-date-picker__nav,
.donation-suite-date-picker__today {
    display: inline-grid;
    min-height: 2rem;
    place-items: center;
    border: 1px solid #dbe3ef;
    border-radius: 0.65rem;
    background: #ffffff;
    color: #334155;
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1rem;
    transition: background-color 140ms ease, border-color 140ms ease, color 140ms ease;
}

.donation-suite-date-picker__nav:hover,
.donation-suite-date-picker__today:hover {
    border-color: rgba(2, 62, 138, 0.28);
    background: rgba(2, 62, 138, 0.08);
    color: #023E8A;
}

.donation-suite-date-picker__nav-icon {
    width: 1rem;
    height: 1rem;
}

.donation-suite-date-picker__calendars {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.donation-suite-date-picker__calendar {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.donation-suite-date-picker__month {
    margin: 0;
    color: #111827;
    font-size: 0.8125rem;
    font-weight: 600;
    line-height: 1.25rem;
    text-align: center;
}

.donation-suite-date-picker__weekdays,
.donation-suite-date-picker__days {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 0.25rem;
}

.donation-suite-date-picker__weekdays span {
    color: #94a3b8;
    font-size: 0.6875rem;
    font-weight: 600;
    line-height: 1rem;
    text-align: center;
}

.donation-suite-date-picker__day {
    display: grid;
    height: 2rem;
    min-width: 2rem;
    place-items: center;
    border: 1px solid transparent;
    border-radius: 999px;
    background: transparent;
    color: #334155;
    cursor: pointer;
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1;
    transition: background-color 140ms ease, border-color 140ms ease, color 140ms ease;
}

.donation-suite-date-picker__day:hover {
    background: rgba(2, 62, 138, 0.08);
    color: #023E8A;
}

.donation-suite-date-picker__day.is-muted {
    color: #cbd5e1;
}

.donation-suite-date-picker__day.is-in-range {
    border-radius: 0.5rem;
    background: rgba(2, 62, 138, 0.12);
    color: #023E8A;
}

.donation-suite-date-picker__day.is-selected {
    background: #023E8A;
    color: #ffffff;
}

.donation-suite-date-picker__footer {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    border-top: 1px solid #e5e7eb;
    padding-top: 0.875rem;
}

.donation-suite-date-picker__clear,
.donation-suite-date-picker__apply {
    min-height: 2.25rem;
    border-radius: 0.65rem;
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1rem;
    padding: 0.5rem 0.875rem;
}

.donation-suite-date-picker__clear {
    border: 1px solid #d1d5db;
    background: #ffffff;
    color: #374151;
}

.donation-suite-date-picker__apply {
    border: 1px solid #023E8A;
    background: #023E8A;
    color: #ffffff;
}

.donation-suite-date-picker__apply:disabled {
    cursor: wait;
    opacity: 0.72;
}

.donation-report-card {
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, 0.28);
    border-radius: 1.5rem;
    background:
        radial-gradient(circle at top left, rgba(59, 130, 246, 0.12), transparent 34rem),
        linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    box-shadow: 0 20px 60px rgba(15, 23, 42, 0.09);
}

.donation-report-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1.25rem 1.5rem;
}

.donation-report-card__eyebrow {
    margin: 0;
    color: #2563eb;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1rem;
    text-transform: uppercase;
}

.donation-report-card__title {
    margin: 0.125rem 0 0;
    color: #0f172a;
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.5rem;
}

.donation-report-card__pills {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.5rem;
}

.donation-report-card__pills span {
    border: 1px solid #dbeafe;
    border-radius: 999px;
    background: #eff6ff;
    color: #1d4ed8;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1rem;
    padding: 0.375rem 0.625rem;
}

.donation-report-panel {
    min-width: 0;
    border: 1px solid rgba(148, 163, 184, 0.26);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.72);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

.donation-report-panel--wide {
    margin: 0 1.5rem 1.5rem;
}

.donation-report-panel__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border-bottom: 1px solid rgba(148, 163, 184, 0.22);
    padding: 0.875rem 1rem;
}

.donation-report-panel__header h3 {
    margin: 0;
    color: #111827;
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.25rem;
}

.donation-report-panel__header span {
    color: #64748b;
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1rem;
}

.donation-report-table-wrap {
    overflow-x: auto;
}

.donation-report-table {
    width: 100%;
    min-width: 30rem;
    border-collapse: collapse;
}

.donation-report-table th {
    color: #64748b;
    font-size: 0.6875rem;
    font-weight: 600;
    line-height: 1rem;
    padding: 0.75rem 1rem;
    text-align: left;
    text-transform: uppercase;
}

.donation-report-table th:not(:first-child),
.donation-report-table td:not(:first-child) {
    text-align: right;
}

.donation-report-table td {
    border-top: 1px solid rgba(148, 163, 184, 0.18);
    color: #0f172a;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.25rem;
    padding: 0.875rem 1rem;
    vertical-align: middle;
}

.donation-report-table td strong,
.donation-report-table td span {
    display: block;
}

.donation-report-table td span {
    margin-top: 0.125rem;
    max-width: 18rem;
    overflow: hidden;
    color: #64748b;
    font-size: 0.75rem;
    font-weight: 650;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.donation-report-table--donors {
    min-width: 48rem;
}

.donation-attention-card {
    overflow: hidden;
    border: 1px solid rgba(245, 158, 11, 0.2);
    border-radius: 1.5rem;
    background:
        radial-gradient(circle at top right, rgba(245, 158, 11, 0.08), transparent 28rem),
        linear-gradient(180deg, #ffffff 0%, #fffaf3 100%);
    box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
}

.donation-attention-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
    border-bottom: 1px solid rgba(226, 232, 240, 0.78);
    padding: 1.25rem 1.5rem;
}

.donation-attention-card__eyebrow {
    margin: 0;
    color: #d97706;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1rem;
    text-transform: uppercase;
}

.donation-attention-card__title {
    margin: 0.125rem 0 0;
    color: #0f172a;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.55rem;
}

.donation-attention-card__header span {
    color: #64748b;
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.1rem;
}

.donation-attention-card__pills {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.5rem;
}

.donation-attention-card__pills span {
    border: 1px solid #fed7aa;
    border-radius: 999px;
    background: #fff7ed;
    color: #c2410c;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1rem;
    padding: 0.375rem 0.625rem;
}

.donation-attention-panel {
    display: grid;
    gap: 1rem;
    padding: 1.25rem 1.5rem 1.5rem;
}

.donation-attention-panel__summary {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
    align-items: stretch;
}

.donation-attention-panel__summary div,
.donation-attention-panel__summary a {
    border: 1px solid rgba(251, 146, 60, 0.2);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.78);
    padding: 0.85rem 1rem;
}

.donation-attention-panel__summary strong,
.donation-attention-panel__summary span {
    display: block;
}

.donation-attention-panel__summary strong {
    color: #0f172a;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.55rem;
}

.donation-attention-panel__summary span {
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 500;
    line-height: 1rem;
}

.donation-attention-panel__summary a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #2563eb;
    font-size: 0.82rem;
    font-weight: 600;
    text-decoration: none;
}

.donation-attention-table-wrap {
    overflow-x: auto;
    border: 1px solid rgba(251, 146, 60, 0.2);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.78);
}

.donation-attention-table {
    width: 100%;
    min-width: 58rem;
    border-collapse: collapse;
}

.donation-attention-table th {
    color: #64748b;
    font-size: 0.6875rem;
    font-weight: 600;
    line-height: 1rem;
    padding: 0.75rem 1rem;
    text-align: left;
    text-transform: uppercase;
}

.donation-attention-table td {
    border-top: 1px solid rgba(251, 146, 60, 0.16);
    color: #0f172a;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.25rem;
    padding: 0.875rem 1rem;
    vertical-align: top;
}

.donation-attention-table td strong,
.donation-attention-table td span,
.donation-attention-table td small {
    display: block;
}

.donation-attention-table td strong {
    font-weight: 600;
}

.donation-attention-table td span,
.donation-attention-table td small {
    margin-top: 0.15rem;
    color: #64748b;
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1rem;
}

.donation-attention-table__amount {
    color: #0f172a !important;
    font-weight: 700 !important;
    white-space: nowrap;
}

.donation-attention-table__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2rem;
    border: 1px solid #bfdbfe;
    border-radius: 999px;
    background: #eff6ff;
    color: #2563eb;
    font-size: 0.78rem;
    font-weight: 600;
    line-height: 1rem;
    padding: 0.4rem 0.75rem;
    text-decoration: none;
}

.donation-attention-badge {
    display: inline-flex !important;
    width: fit-content;
    align-items: center;
    border-radius: 999px;
    font-size: 0.72rem !important;
    font-weight: 600 !important;
    line-height: 1rem !important;
    margin: 0 0 0.35rem !important;
    padding: 0.2rem 0.55rem;
}

.donation-attention-badge--danger {
    background: #fee2e2;
    color: #b91c1c !important;
}

.donation-attention-badge--warning {
    background: #fef3c7;
    color: #b45309 !important;
}

.donation-attention-badge--neutral {
    background: #f1f5f9;
    color: #475569 !important;
}

.donation-trends-section {
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(0, 2fr) minmax(20rem, 0.95fr);
}

.donation-trends-panel {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(37, 99, 235, 0.14);
    border-radius: 1.5rem;
    background:
        radial-gradient(circle at top right, rgba(37, 99, 235, 0.08), transparent 28rem),
        linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
}

.donation-trends-panel__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.25rem 1.5rem 0.5rem;
}

.donation-trends-panel__header--compact {
    align-items: center;
    padding-bottom: 1rem;
}

.donation-trends-panel__header h2 {
    margin: 0.125rem 0 0;
    color: #0f172a;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.55rem;
}

.donation-trends-panel__header span,
.donation-trends-panel__metric span {
    color: #64748b;
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1.1rem;
}

.donation-trends-panel__header a {
    display: inline-flex;
    align-items: center;
    border: 1px solid #bfdbfe;
    border-radius: 999px;
    background: #eff6ff;
    color: #2563eb;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1rem;
    padding: 0.4rem 0.7rem;
    text-decoration: none;
}

.donation-trends-panel__eyebrow {
    margin: 0;
    color: #2563eb;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1rem;
    text-transform: uppercase;
}

.donation-trends-panel__metric {
    display: grid;
    gap: 0.15rem;
    min-width: 11rem;
    text-align: right;
}

.donation-trends-panel__metric strong {
    color: #0f172a;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.35rem;
}

.donation-trends-chart {
    padding: 0 1rem;
}

.donation-trends-chart svg {
    display: block;
    width: 100%;
    min-height: 18rem;
}

.donation-trends-chart__grid {
    stroke: #dbeafe;
    stroke-dasharray: 4 6;
    stroke-width: 1;
}

.donation-trends-chart__grid--vertical {
    opacity: 0.62;
}

.donation-trends-chart__label {
    fill: #64748b;
    font-size: 0.78rem;
    font-weight: 500;
}

.donation-trends-chart__area {
    fill: url("#donationTrendArea");
}

.donation-trends-chart__line {
    fill: none;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 4;
}

.donation-trends-chart__line--revenue {
    stroke: #2563eb;
}

.donation-trends-chart__line--donors {
    stroke: #8b5cf6;
    stroke-width: 3;
}

.donation-trends-chart__dot {
    stroke: #ffffff;
    stroke-width: 3;
}

.donation-trends-chart__dot--revenue {
    fill: #2563eb;
}

.donation-trends-chart__dot--donors {
    fill: #8b5cf6;
}

.donation-trends-legend {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.25rem;
    padding: 0 1.5rem 1.25rem;
}

.donation-trends-legend span {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    color: #475569;
    font-size: 0.8125rem;
    font-weight: 500;
}

.donation-trends-legend i {
    display: inline-block;
    height: 0.55rem;
    width: 1.3rem;
    border-radius: 999px;
}

.donation-trends-legend .is-revenue {
    background: #2563eb;
}

.donation-trends-legend .is-donors {
    background: #8b5cf6;
}

.donation-recent-donors {
    display: grid;
    gap: 0.7rem;
    padding: 0 1rem 1rem;
}

.donation-recent-donor {
    display: grid;
    grid-template-columns: 2.55rem minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.75rem;
    border: 1px solid rgba(191, 219, 254, 0.78);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.82);
    color: inherit;
    padding: 0.75rem;
    text-decoration: none;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.donation-recent-donor:hover {
    border-color: #93c5fd;
    box-shadow: 0 12px 28px rgba(37, 99, 235, 0.12);
    transform: translateY(-1px);
}

.donation-recent-donor__avatar {
    display: grid;
    height: 2.55rem;
    width: 2.55rem;
    place-items: center;
    border-radius: 999px;
    background: linear-gradient(135deg, #dbeafe 0%, #ede9fe 100%);
    color: #1d4ed8;
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1;
}

.donation-recent-donor__main {
    min-width: 0;
}

.donation-recent-donor__main strong,
.donation-recent-donor__main small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.donation-recent-donor__main strong {
    color: #0f172a;
    font-size: 0.875rem;
    font-weight: 600;
    line-height: 1.2rem;
}

.donation-recent-donor__main small {
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 500;
    line-height: 1rem;
}

.donation-recent-donor__amount {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    color: #2563eb;
    font-size: 0.8125rem;
    font-weight: 700;
    line-height: 1rem;
    white-space: nowrap;
}

.donation-recent-donors__empty {
    border: 1px dashed #bfdbfe;
    border-radius: 1rem;
    color: #64748b;
    font-size: 0.875rem;
    font-weight: 500;
    padding: 1rem;
}

.donation-campaign-performance {
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(0, 1fr) minmax(22rem, 1fr);
}

.donation-campaign-panel {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(37, 99, 235, 0.14);
    border-radius: 1.5rem;
    background:
        radial-gradient(circle at top right, rgba(139, 92, 246, 0.08), transparent 28rem),
        linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
}

.donation-campaign-panel__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    border-bottom: 1px solid rgba(226, 232, 240, 0.78);
    padding: 1.25rem 1.5rem;
}

.donation-campaign-panel__eyebrow {
    margin: 0;
    color: #2563eb;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1rem;
    text-transform: uppercase;
}

.donation-campaign-panel__header h2 {
    margin: 0.125rem 0 0;
    color: #0f172a;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.55rem;
}

.donation-campaign-panel__header span {
    color: #64748b;
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.1rem;
}

.donation-campaign-chart {
    padding: 1rem 1rem 1.15rem;
}

.donation-campaign-chart svg {
    display: block;
    width: 100%;
    min-height: 19rem;
}

.donation-campaign-chart__grid {
    stroke: #e2e8f0;
    stroke-dasharray: 4 6;
    stroke-width: 1;
}

.donation-campaign-chart__axis,
.donation-campaign-chart__label {
    fill: #94a3b8;
    font-size: 0.76rem;
    font-weight: 500;
}

.donation-campaign-chart__axis-line {
    stroke: #94a3b8;
    stroke-width: 1.15;
}

.donation-campaign-chart__bar {
    fill: url("#donationCampaignBar");
}

.donation-campaign-chart__empty {
    fill: #64748b;
    font-size: 0.875rem;
    font-weight: 500;
}

.donation-campaign-progress-column {
    display: grid;
    min-width: 8rem;
    grid-template-columns: minmax(5.5rem, 1fr) auto;
    align-items: center;
    gap: 0.65rem;
}

.donation-campaign-progress-column__track {
    height: 0.42rem;
    overflow: hidden;
    border-radius: 999px;
    background: #eef2f7;
}

.donation-campaign-progress-column__track span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #2f5597 0%, #7c3aed 100%);
}

.donation-campaign-progress-column__label {
    color: #475569;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1rem;
}

.donation-active-campaigns {
    display: grid;
    gap: 1.05rem;
    padding: 1.25rem 1.5rem 1.35rem;
}

.donation-active-campaign {
    display: grid;
    gap: 0.72rem;
}

.donation-active-campaign__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.donation-active-campaign h3 {
    margin: 0;
    color: #0f172a;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.35rem;
}

.donation-active-campaign p {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin: 0.35rem 0 0;
    color: #64748b;
    font-size: 0.82rem;
    font-weight: 500;
    line-height: 1rem;
}

.donation-active-campaign__amount {
    min-width: 8.5rem;
    text-align: right;
}

.donation-active-campaign__amount strong,
.donation-active-campaign__amount span {
    display: block;
}

.donation-active-campaign__amount strong {
    color: #0f172a;
    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.25rem;
}

.donation-active-campaign__amount span {
    color: #64748b;
    font-size: 0.82rem;
    font-weight: 500;
    line-height: 1.05rem;
}

.donation-active-campaign__track {
    height: 0.48rem;
    overflow: hidden;
    border-radius: 999px;
    background: #eef2f7;
}

.donation-active-campaign__track span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #2563eb 0%, #a855f7 100%);
}

.donation-active-campaign__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    color: #475569;
    font-size: 0.82rem;
    font-weight: 500;
    line-height: 1rem;
}

.donation-active-campaign__bottom strong {
    color: #2563eb;
    font-weight: 700;
}

.donation-active-campaigns__empty {
    border: 1px dashed #bfdbfe;
    border-radius: 1rem;
    color: #64748b;
    font-size: 0.875rem;
    font-weight: 500;
    padding: 1rem;
}

.donation-campaign-deep-dive {
    display: grid;
    gap: 1.1rem;
}

.donation-campaign-deep-dive__heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
}

.donation-campaign-deep-dive__heading p {
    margin: 0;
    color: #2f5597;
    font-size: 0.72rem;
    font-weight: 700;
    line-height: 1rem;
    text-transform: uppercase;
}

.donation-campaign-deep-dive__heading h2 {
    margin: 0.2rem 0 0;
    color: #0f172a;
    font-size: 1.25rem;
    font-weight: 650;
    line-height: 1.5rem;
}

.donation-campaign-deep-dive__heading span {
    color: #64748b;
    font-size: 0.82rem;
    font-weight: 450;
    line-height: 1.2rem;
}

.donation-campaign-deep-dive__stats {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.donation-campaign-metric {
    position: relative;
    display: flex;
    min-height: 7rem;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, 0.2);
    border-radius: 0.85rem;
    background: #ffffff;
    padding: 1.1rem 1.15rem;
    box-shadow: 0 12px 34px rgba(15, 23, 42, 0.06);
}

.donation-campaign-metric::before {
    position: absolute;
    inset: auto -2rem -3rem auto;
    width: 8rem;
    height: 8rem;
    border-radius: 999px;
    background: rgba(47, 85, 151, 0.08);
    content: "";
}

.donation-campaign-metric span,
.donation-campaign-metric strong,
.donation-campaign-metric small {
    display: block;
}

.donation-campaign-metric span {
    color: #64748b;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1rem;
    text-transform: uppercase;
}

.donation-campaign-metric strong {
    margin-top: 0.65rem;
    color: #0f172a;
    font-size: 1.55rem;
    font-weight: 650;
    line-height: 1.9rem;
}

.donation-campaign-metric small {
    margin-top: 0.35rem;
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 500;
    line-height: 1rem;
}

.donation-campaign-metric i {
    position: relative;
    display: inline-flex;
    width: 2.1rem;
    height: 2.1rem;
    flex: none;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: #eff6ff;
    color: #2f5597;
}

.donation-campaign-metric i svg {
    width: 1.05rem;
    height: 1.05rem;
}

.donation-campaign-metric--green i {
    background: #ecfdf5;
    color: #059669;
}

.donation-campaign-metric--amber i {
    background: #fffbeb;
    color: #d97706;
}

.donation-campaign-metric--violet i {
    background: #f5f3ff;
    color: #7c3aed;
}

.donation-campaign-deep-dive__grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(0, 2fr) minmax(18rem, 1fr);
}

.donation-campaign-detail-panel {
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, 0.2);
    border-radius: 0.95rem;
    background: #ffffff;
    box-shadow: 0 14px 42px rgba(15, 23, 42, 0.065);
}

.donation-campaign-detail-panel__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.15rem 1.25rem 0.4rem;
}

.donation-campaign-detail-panel__header h3 {
    margin: 0;
    color: #0f172a;
    font-size: 1rem;
    font-weight: 650;
    line-height: 1.3rem;
}

.donation-campaign-detail-panel__header span {
    display: block;
    margin-top: 0.2rem;
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 450;
    line-height: 1.1rem;
}

.donation-campaign-trend-chart {
    padding: 0 0.9rem 0.95rem;
}

.donation-campaign-trend-chart svg {
    display: block;
    width: 100%;
    min-height: 17rem;
}

.donation-campaign-trend-chart__grid {
    stroke: #e5e7eb;
    stroke-dasharray: 4 6;
    stroke-width: 1;
}

.donation-campaign-trend-chart__axis,
.donation-campaign-trend-chart__label {
    fill: #94a3b8;
    font-size: 0.74rem;
    font-weight: 500;
}

.donation-campaign-trend-chart__axis-line {
    stroke: #94a3b8;
    stroke-width: 1;
}

.donation-campaign-trend-chart__area {
    fill: url("#campaignTrendFill");
}

.donation-campaign-trend-chart__line {
    fill: none;
    stroke: #2f5597;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 3;
}

.donation-campaign-trend-chart__dot {
    fill: #ffffff;
    stroke: #2f5597;
    stroke-width: 3;
}

.donation-campaign-channel-chart {
    display: grid;
    gap: 1.15rem;
    justify-items: center;
    padding: 1rem 1.25rem 1.35rem;
}

.donation-campaign-channel-chart__donut {
    position: relative;
    width: min(13rem, 72%);
    aspect-ratio: 1;
    border-radius: 999px;
    box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.14);
}

.donation-campaign-channel-chart__donut span {
    position: absolute;
    inset: 24%;
    border-radius: inherit;
    background: #ffffff;
    box-shadow: inset 0 0 0 1px rgba(148, 163, 184, 0.1);
}

.donation-campaign-channel-chart__legend {
    display: grid;
    width: 100%;
    gap: 0.55rem;
}

.donation-campaign-channel-chart__legend div {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.55rem;
    color: #475569;
    font-size: 0.8rem;
    font-weight: 500;
}

.donation-campaign-channel-chart__legend span {
    width: 0.6rem;
    height: 0.6rem;
    border-radius: 999px;
}

.donation-campaign-channel-chart__legend strong {
    color: #334155;
    font-weight: 600;
}

.donation-campaign-channel-chart__legend em,
.donation-campaign-channel-chart__legend p {
    color: #64748b;
    font-style: normal;
    font-weight: 500;
}

.donation-campaign-deep-dive__empty {
    border: 1px dashed #bfdbfe;
    border-radius: 1rem;
    color: #64748b;
    font-size: 0.875rem;
    font-weight: 500;
    padding: 1rem;
}

.donation-country-chart-card {
    overflow: hidden;
    border: 1px solid rgba(37, 99, 235, 0.14);
    border-radius: 1.5rem;
    background:
        radial-gradient(circle at top right, rgba(37, 99, 235, 0.08), transparent 28rem),
        linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    box-shadow: 0 18px 48px rgba(15, 23, 42, 0.08);
}

.donation-country-chart-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    border-bottom: 1px solid rgba(226, 232, 240, 0.78);
    padding: 1.25rem 1.5rem;
}

.donation-country-chart-card__eyebrow {
    margin: 0;
    color: #2563eb;
    font-size: 0.7rem;
    font-weight: 700;
    line-height: 1rem;
    text-transform: uppercase;
}

.donation-country-chart-card__header h2 {
    margin: 0.125rem 0 0;
    color: #0f172a;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.55rem;
}

.donation-country-chart-card__header span {
    color: #64748b;
    font-size: 0.8125rem;
    font-weight: 500;
    line-height: 1.1rem;
}

.donation-country-chart-card__metric {
    min-width: 8rem;
    text-align: right;
}

.donation-country-chart-card__metric strong,
.donation-country-chart-card__metric span {
    display: block;
}

.donation-country-chart-card__metric strong {
    color: #0f172a;
    font-size: 1.35rem;
    font-weight: 700;
    line-height: 1.65rem;
}

.donation-country-chart-card__metric span {
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 500;
    line-height: 1rem;
}

.donation-country-chart {
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(0, 1.65fr) minmax(17rem, 0.75fr);
    padding: 1.25rem;
}

.donation-country-chart__bars {
    display: grid;
    align-content: start;
    gap: 0.65rem;
    min-width: 0;
}

.donation-country-chart__row {
    display: grid;
    grid-template-columns: 2rem minmax(0, 1fr) 4.5rem;
    align-items: center;
    gap: 0.75rem;
    border: 1px solid rgba(191, 219, 254, 0.78);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.84);
    padding: 0.75rem;
}

.donation-country-chart__rank {
    display: grid;
    height: 2rem;
    width: 2rem;
    place-items: center;
    border-radius: 999px;
    background: #eff6ff;
    color: #2563eb;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1;
}

.donation-country-chart__body {
    min-width: 0;
}

.donation-country-chart__label {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.5rem;
}

.donation-country-chart__label strong,
.donation-country-chart__label span,
.donation-country-chart__value strong,
.donation-country-chart__value span {
    display: block;
}

.donation-country-chart__label strong {
    overflow: hidden;
    color: #0f172a;
    font-size: 0.9rem;
    font-weight: 600;
    line-height: 1.2rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.donation-country-chart__label span {
    flex: 0 0 auto;
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 500;
    line-height: 1rem;
}

.donation-country-chart__track {
    overflow: hidden;
    height: 0.55rem;
    border-radius: 999px;
    background: #eaf2ff;
}

.donation-country-chart__bar {
    height: 100%;
    min-width: 0.4rem;
    border-radius: inherit;
    background: linear-gradient(90deg, #2563eb 0%, #60a5fa 52%, #8b5cf6 100%);
    box-shadow: 0 5px 18px rgba(37, 99, 235, 0.2);
}

.donation-country-chart__value {
    text-align: right;
}

.donation-country-chart__value strong {
    color: #0f172a;
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.2rem;
}

.donation-country-chart__value span {
    color: #2563eb;
    font-size: 0.72rem;
    font-weight: 600;
    line-height: 1rem;
}

.donation-country-chart__summary {
    display: grid;
    align-content: start;
    gap: 0.75rem;
}

.donation-country-chart__summary > div {
    border: 1px solid rgba(191, 219, 254, 0.78);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.84);
    padding: 1rem;
}

.donation-country-chart__summary span,
.donation-country-chart__summary strong,
.donation-country-chart__summary p {
    display: block;
}

.donation-country-chart__summary span {
    color: #64748b;
    font-size: 0.7rem;
    font-weight: 600;
    line-height: 1rem;
    text-transform: uppercase;
}

.donation-country-chart__summary strong {
    margin-top: 0.35rem;
    color: #0f172a;
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.55rem;
}

.donation-country-chart__summary p {
    margin: 0.2rem 0 0;
    color: #64748b;
    font-size: 0.8rem;
    font-weight: 500;
    line-height: 1.2rem;
}

.donation-country-chart__empty {
    border: 1px dashed #bfdbfe;
    border-radius: 1rem;
    color: #64748b;
    font-size: 0.875rem;
    font-weight: 500;
    padding: 1rem;
}

.donation-suite-main .fi-page > section > .fi-header {
    display: none;
}

html.dark .donation-report-card {
    border-color: rgba(148, 163, 184, 0.22);
    background:
        radial-gradient(circle at top left, rgba(59, 130, 246, 0.18), transparent 34rem),
        linear-gradient(180deg, rgba(31, 41, 55, 0.94) 0%, rgba(17, 24, 39, 0.94) 100%);
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34);
}

html.dark .donation-attention-card {
    border-color: rgba(251, 146, 60, 0.22);
    background:
        radial-gradient(circle at top right, rgba(245, 158, 11, 0.16), transparent 28rem),
        linear-gradient(180deg, rgba(30, 41, 59, 0.96) 0%, rgba(15, 23, 42, 0.96) 100%);
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34);
}

html.dark .donation-report-card__title,
html.dark .donation-attention-card__title,
html.dark .donation-report-panel__header h3,
html.dark .donation-report-table td,
html.dark .donation-attention-panel__summary strong,
html.dark .donation-attention-table td,
html.dark .donation-trends-panel__header h2,
html.dark .donation-trends-panel__metric strong,
html.dark .donation-recent-donor__main strong,
html.dark .donation-campaign-panel__header h2,
html.dark .donation-active-campaign h3,
html.dark .donation-active-campaign__amount strong {
    color: #f8fafc;
}

html.dark .donation-report-card__pills span {
    border-color: rgba(96, 165, 250, 0.26);
    background: rgba(37, 99, 235, 0.14);
    color: #bfdbfe;
}

html.dark .donation-attention-card__pills span {
    border-color: rgba(251, 146, 60, 0.24);
    background: rgba(245, 158, 11, 0.12);
    color: #fed7aa;
}

html.dark .donation-report-panel {
    border-color: rgba(148, 163, 184, 0.2);
    background: rgba(15, 23, 42, 0.42);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

html.dark .donation-attention-panel__summary div,
html.dark .donation-attention-panel__summary a,
html.dark .donation-attention-table-wrap {
    border-color: rgba(251, 146, 60, 0.18);
    background: rgba(15, 23, 42, 0.48);
}

html.dark .donation-report-panel__header,
html.dark .donation-report-table td,
html.dark .donation-attention-card__header,
html.dark .donation-attention-table td {
    border-color: rgba(148, 163, 184, 0.16);
}

html.dark .donation-report-panel__header span,
html.dark .donation-report-table th,
html.dark .donation-report-table td span,
html.dark .donation-attention-card__header span,
html.dark .donation-attention-panel__summary span,
html.dark .donation-attention-table th,
html.dark .donation-attention-table td span,
html.dark .donation-attention-table td small,
html.dark .donation-trends-panel__header span,
html.dark .donation-trends-panel__metric span,
html.dark .donation-trends-legend span,
html.dark .donation-recent-donor__main small {
    color: #94a3b8;
}

html.dark .donation-trends-panel {
    border-color: rgba(96, 165, 250, 0.22);
    background:
        radial-gradient(circle at top right, rgba(37, 99, 235, 0.16), transparent 28rem),
        linear-gradient(180deg, rgba(30, 41, 59, 0.96) 0%, rgba(15, 23, 42, 0.96) 100%);
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34);
}

html.dark .donation-recent-donor {
    border-color: rgba(96, 165, 250, 0.18);
    background: rgba(15, 23, 42, 0.48);
}

html.dark .donation-campaign-panel {
    border-color: rgba(96, 165, 250, 0.22);
    background:
        radial-gradient(circle at top right, rgba(139, 92, 246, 0.16), transparent 28rem),
        linear-gradient(180deg, rgba(30, 41, 59, 0.96) 0%, rgba(15, 23, 42, 0.96) 100%);
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34);
}

html.dark .donation-country-chart-card {
    border-color: rgba(96, 165, 250, 0.22);
    background:
        radial-gradient(circle at top right, rgba(37, 99, 235, 0.16), transparent 28rem),
        linear-gradient(180deg, rgba(30, 41, 59, 0.96) 0%, rgba(15, 23, 42, 0.96) 100%);
    box-shadow: 0 24px 70px rgba(0, 0, 0, 0.34);
}

html.dark .donation-campaign-panel__header {
    border-color: rgba(148, 163, 184, 0.16);
}

html.dark .donation-country-chart-card__header {
    border-color: rgba(148, 163, 184, 0.16);
}

html.dark .donation-campaign-panel__header span,
html.dark .donation-active-campaign p,
html.dark .donation-active-campaign__amount span,
html.dark .donation-active-campaign__bottom,
html.dark .donation-country-chart-card__header span,
html.dark .donation-country-chart-card__metric span,
html.dark .donation-country-chart__label span,
html.dark .donation-country-chart__summary span,
html.dark .donation-country-chart__summary p {
    color: #94a3b8;
}

html.dark .donation-country-chart-card__header h2,
html.dark .donation-country-chart-card__metric strong,
html.dark .donation-country-chart__label strong,
html.dark .donation-country-chart__value strong,
html.dark .donation-country-chart__summary strong {
    color: #f8fafc;
}

html.dark .donation-active-campaign__track {
    background: rgba(148, 163, 184, 0.16);
}

html.dark .donation-country-chart__row,
html.dark .donation-country-chart__summary > div {
    border-color: rgba(96, 165, 250, 0.18);
    background: rgba(15, 23, 42, 0.48);
}

html.dark .donation-country-chart__rank {
    background: rgba(37, 99, 235, 0.18);
    color: #bfdbfe;
}

html.dark .donation-country-chart__track {
    background: rgba(148, 163, 184, 0.16);
}

html.dark .donation-campaign-progress-column__track {
    background: rgba(148, 163, 184, 0.16);
}

html.dark .donation-campaign-deep-dive__heading h2,
html.dark .donation-campaign-metric strong,
html.dark .donation-campaign-detail-panel__header h3,
html.dark .donation-campaign-channel-chart__legend strong {
    color: #f8fafc;
}

html.dark .donation-campaign-metric,
html.dark .donation-campaign-detail-panel {
    border-color: rgba(96, 165, 250, 0.18);
    background: rgba(15, 23, 42, 0.48);
    box-shadow: 0 18px 56px rgba(0, 0, 0, 0.3);
}

html.dark .donation-campaign-channel-chart__donut span {
    background: #0f172a;
}

@media (min-width: 1024px) {
    .donation-suite-header {
        padding: 0.6rem 2rem;
    }
}

@media (max-width: 767px) {
    .donation-suite-header {
        align-items: flex-start;
        flex-direction: column;
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .donation-suite-header__actions {
        width: 100%;
        flex-wrap: wrap;
    }

    .donation-suite-header__primary-action {
        width: 100%;
    }

    .donation-suite-date-picker {
        position: static;
    }

    .donation-suite-notifications {
        position: static;
    }

    .donation-suite-notifications__panel {
        left: 1rem;
        right: 1rem;
        top: 10.5rem;
        width: auto;
    }

    .donation-suite-date-picker__panel {
        left: 1rem;
        right: 1rem;
        top: 10.5rem;
        width: auto;
        grid-template-columns: 1fr;
    }

    .donation-suite-date-picker__sidebar {
        border-bottom: 1px solid #e5e7eb;
        border-right: 0;
    }

    .donation-suite-date-picker__calendars {
        grid-template-columns: 1fr;
    }

    .donation-report-card__header {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .donation-report-card__header {
        align-items: flex-start;
        flex-direction: column;
    }

    .donation-attention-card__header {
        align-items: flex-start;
        flex-direction: column;
    }

    .donation-report-card__pills {
        justify-content: flex-start;
    }

    .donation-attention-card__pills {
        justify-content: flex-start;
    }

    .donation-attention-panel {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .donation-attention-panel__summary {
        grid-template-columns: 1fr;
    }

    .donation-report-panel--wide {
        margin-left: 1rem;
        margin-right: 1rem;
    }

    .donation-trends-section {
        grid-template-columns: 1fr;
    }

    .donation-trends-panel__header {
        flex-direction: column;
    }

    .donation-trends-panel__metric {
        text-align: left;
    }

    .donation-recent-donor {
        grid-template-columns: 2.55rem minmax(0, 1fr);
    }

    .donation-recent-donor__amount {
        grid-column: 2;
    }

    .donation-campaign-performance {
        grid-template-columns: 1fr;
    }

    .donation-campaign-deep-dive__stats,
    .donation-campaign-deep-dive__grid {
        grid-template-columns: 1fr;
    }

    .donation-country-chart-card__header {
        flex-direction: column;
    }

    .donation-country-chart-card__metric {
        text-align: left;
    }

    .donation-country-chart {
        grid-template-columns: 1fr;
    }

    .donation-active-campaign__top,
    .donation-active-campaign__bottom {
        align-items: flex-start;
        flex-direction: column;
    }

    .donation-active-campaign__amount {
        text-align: left;
    }
}

.crm-page-stack {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.crm-panel {
    border: 1px solid var(--crm-border);
    border-radius: var(--crm-radius-xl);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.1), rgba(255, 255, 255, 0.02)),
        linear-gradient(180deg, rgba(13, 18, 30, 0.82) 0%, rgba(9, 14, 24, 0.72) 100%);
    backdrop-filter: var(--crm-blur);
    -webkit-backdrop-filter: var(--crm-blur);
    box-shadow: var(--crm-shadow);
}

.crm-panel--soft {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02)),
        linear-gradient(180deg, rgba(17, 23, 38, 0.76) 0%, rgba(11, 17, 28, 0.72) 100%);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    box-shadow: var(--crm-shadow-soft);
}

.crm-panel__body {
    padding: 1.5rem;
}

.crm-panel__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.crm-kicker {
    margin: 0;
    color: var(--crm-accent-strong);
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
}

.crm-title {
    margin: 0.35rem 0 0;
    color: var(--crm-text);
    font-size: 1.65rem;
    font-weight: 700;
    line-height: 1.15;
}

.crm-section-title {
    margin: 0;
    color: var(--crm-text);
    font-size: 1rem;
    font-weight: 650;
}

.crm-copy {
    margin: 0.75rem 0 0;
    max-width: 64rem;
    color: var(--crm-text-muted);
    font-size: 0.95rem;
    line-height: 1.6;
}

.crm-muted {
    color: var(--crm-text-muted);
}

.crm-meta-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    border: 1px solid var(--crm-border);
    border-radius: 9999px;
    background: var(--crm-surface-soft);
    padding: 0.3rem 0.5rem;
    color: var(--crm-text);
    font-size: 0.65rem;
    font-weight: 500;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.crm-link {
    color: var(--crm-accent-strong);
    font-weight: 600;
    transition: color 180ms ease, opacity 180ms ease;
}

.crm-link:hover {
    color: #ffffff;
}

.crm-grid {
    display: grid;
    gap: 1rem;
}

.crm-grid--stats {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.crm-stat-card {
    border: 1px solid var(--crm-border);
    border-radius: var(--crm-radius-xl);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.11), rgba(255, 255, 255, 0.025)),
        linear-gradient(180deg, rgba(14, 20, 32, 0.84) 0%, rgba(10, 15, 26, 0.74) 100%);
    padding: 1.25rem;
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    box-shadow: var(--crm-shadow-soft);
}

.crm-stat-card--floating {
    position: relative;
    overflow: hidden;
}

.crm-stat-card__content {
    min-width: 0;
    padding-right: 4rem;
}

.crm-stat-card__badge {
    position: absolute;
    top: 1rem;
    right: 1rem;
}

.crm-stat-card__label {
    margin: 0;
    color: var(--crm-text-soft);
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
}

.crm-stat-card__value {
    margin: 0.85rem 0 0;
    color: var(--crm-text);
    font-size: 2rem;
    font-weight: 700;
}

.crm-stat-card__description {
    margin: 0.55rem 0 0;
    color: var(--crm-text-muted);
    font-size: 0.92rem;
    line-height: 1.5;
}

.crm-stat-card--compact {
    padding: 1rem;
}

.crm-stat-card--compact .crm-stat-card__value {
    margin-top: 0.55rem;
    font-size: 1.55rem;
}

.crm-stat-card--compact .crm-stat-card__description {
    font-size: 0.84rem;
}

.crm-stat-card--compact.crm-stat-card--floating .crm-stat-card__content {
    padding-right: 3.75rem;
}

.crm-tone-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--crm-border);
    border-radius: 9999px;
    padding: 0.35rem 0.7rem;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
}

.crm-tone-badge--info {
    border-color: rgba(56, 189, 248, 0.3);
    background: rgba(56, 189, 248, 0.12);
    color: #bae6fd;
}

.crm-tone-badge--primary {
    border-color: rgba(139, 92, 246, 0.3);
    background: rgba(139, 92, 246, 0.12);
    color: #e9d5ff;
}

.crm-tone-badge--success {
    border-color: rgba(52, 211, 153, 0.28);
    background: rgba(52, 211, 153, 0.12);
    color: #bbf7d0;
}

.crm-tone-badge--warning {
    border-color: rgba(251, 191, 36, 0.28);
    background: rgba(251, 191, 36, 0.12);
    color: #fde68a;
}

.crm-tone-badge--danger {
    border-color: rgba(251, 113, 133, 0.3);
    background: rgba(251, 113, 133, 0.12);
    color: #fecdd3;
}

.crm-alert-list {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.crm-alert {
    border: 1px solid var(--crm-border);
    border-radius: 1.25rem;
    padding: 1rem 1.05rem;
}

.crm-alert--success {
    border-color: rgba(52, 211, 153, 0.22);
    background: rgba(52, 211, 153, 0.1);
    color: #d1fae5;
}

.crm-alert--warning {
    border-color: rgba(251, 191, 36, 0.24);
    background: rgba(251, 191, 36, 0.1);
    color: #fde68a;
}

.crm-alert--danger {
    border-color: rgba(251, 113, 133, 0.24);
    background: rgba(251, 113, 133, 0.1);
    color: #fecdd3;
}

.crm-alert__title {
    margin: 0;
    color: inherit;
    font-size: 0.98rem;
    font-weight: 700;
}

.crm-alert__body {
    margin: 0.4rem 0 0;
    color: inherit;
    font-size: 0.94rem;
    line-height: 1.6;
    opacity: 0.98;
}

.crm-card {
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--crm-radius-lg);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.09) 0%, rgba(255, 255, 255, 0.025) 100%),
        linear-gradient(180deg, rgba(15, 20, 33, 0.8), rgba(10, 14, 24, 0.72));
    padding: 1rem;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.crm-ticket-card {
    display: block;
    position: relative;
    overflow: hidden;
    padding: 1.1rem 1.15rem;
    color: inherit;
    text-decoration: none;
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.crm-ticket-overview {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.crm-ticket-overview__header {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    border-bottom: solid 1px #f2f2f2;
    padding-bottom: 10px;
}

.crm-ticket-overview__status-stack {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: flex-end;
    gap: 0.5rem;
}

.crm-ticket-overview__people-grid {
    display: grid;
    gap: 0.75rem;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.crm-ticket-overview__person-card {
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
}

.crm-ticket-overview__identity {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    min-width: 0;
}

.crm-ticket-overview__avatar-image,
.crm-ticket-overview__avatar-fallback {
    width: 3rem;
    height: 3rem;
    flex: none;
    border: 1px solid var(--crm-border);
    border-radius: 50%;
}

.crm-ticket-overview__avatar-image {
    object-fit: cover;
    background: var(--crm-surface-soft);
}

.crm-ticket-overview__avatar-fallback {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 0.85rem;
    font-weight: 700;
}

.crm-ticket-overview__identity-copy {
    min-width: 0;
}

.crm-ticket-overview__identity-name {
    margin: 0;
    color: var(--crm-text);
    font-size: 0.96rem;
    font-weight: 650;
    line-height: 1.35;
}

.crm-ticket-overview__identity-subtext {
    margin: 0.25rem 0 0;
    color: var(--crm-text-muted);
    font-size: 0.84rem;
    line-height: 1.5;
}

.crm-ticket-overview__empty-person {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.crm-ticket-overview__empty-person-title {
    margin: 0;
    color: var(--crm-text);
    font-size: 0.95rem;
    font-weight: 650;
}

.crm-ticket-overview__empty-person-copy {
    margin: 0;
    color: var(--crm-text-muted);
    font-size: 0.84rem;
    line-height: 1.5;
}

.crm-ticket-overview__flag-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.crm-ticket-card:hover {
    transform: translateY(-2px);
    border-color: var(--crm-border-strong);
    box-shadow: var(--crm-shadow-soft);
}

.crm-ticket-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.crm-ticket-card__lead {
    min-width: 0;
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;
    flex: 1 1 auto;
}

.crm-ticket-card__avatar {
    width: 3rem;
    height: 3rem;
    flex: none;
    border: 1px solid var(--crm-border);
    border-radius: 1rem;
    object-fit: cover;
    background: var(--crm-surface-soft);
}

.crm-ticket-card__content {
    min-width: 0;
}

.crm-ticket-card__title {
    margin: 0;
    color: var(--crm-text);
    font-size: 0.98rem;
    font-weight: 650;
    line-height: 1.35;
}

.crm-ticket-card__subtitle {
    margin: 0.32rem 0 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.35rem;
    color: var(--crm-text-muted);
    font-size: 0.82rem;
    line-height: 1.5;
}

.crm-ticket-card__dot {
    color: var(--crm-text-soft);
}

.crm-ticket-card__summary {
    /* margin: 0.95rem 0 0; */
    color: var(--crm-text-muted);
    font-size: 0.9rem;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.crm-message-card__summary {
    -webkit-line-clamp: 3;
}

.crm-ticket-card__meta {
    /* margin-top: 0.95rem; */
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.crm-ticket-card__tags {
    margin-top: 0.8rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.crm-ticket-card__tag {
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--crm-border);
    border-radius: 9999px;
    background: var(--crm-surface-soft);
    padding: 0.35rem 0.7rem;
    color: var(--crm-text-muted);
    font-size: 0.72rem;
    font-weight: 600;
}

.crm-route-card__method {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    border: 1px solid var(--crm-border);
    border-radius: 9999px;
    background: var(--crm-surface-soft);
    padding: 0.38rem 0.75rem;
    color: var(--crm-text-muted);
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
}

.crm-route-card__path {
    margin: 0.75rem 0 0;
    color: var(--crm-text);
    font-size: 0.98rem;
    font-weight: 650;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.crm-route-card__description {
    margin: 0.85rem 0 0;
    color: var(--crm-text-muted);
    font-size: 0.84rem;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.crm-mini-stat-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.crm-details {
    overflow: hidden;
    padding: 0;
}

.crm-details > summary {
    list-style: none;
}

.crm-details > summary::-webkit-details-marker {
    display: none;
}

.crm-details__summary {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.5rem;
    cursor: pointer;
}

.crm-details[open] .crm-details__summary {
    border-bottom: 1px solid var(--crm-border);
}

.crm-details__summary-text {
    min-width: 0;
}

.crm-details__title {
    margin: 0.35rem 0 0;
    color: var(--crm-text);
    font-size: 1.05rem;
    font-weight: 700;
    line-height: 1.2;
}

.crm-details__copy {
    margin: 0.45rem 0 0;
    color: var(--crm-text-muted);
    font-size: 0.92rem;
    line-height: 1.55;
}

.crm-details__toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    flex: none;
}

.crm-details__toggle-label {
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
}

.crm-details__chevron {
    width: 1rem;
    height: 1rem;
    transition: transform 180ms ease;
}

.crm-details[open] .crm-details__chevron {
    transform: rotate(180deg);
}

.crm-details__body {
    padding: 1.5rem;
}

.crm-meta-stack {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.6rem;
}

.crm-overview-note {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    align-items: center;
}

.crm-ops-text-strong {
    color: var(--crm-text);
}

.crm-ops-text-muted {
    color: var(--crm-text-muted);
}

.crm-ops-text-soft {
    color: var(--crm-text-soft);
}

.crm-card--spotlight {
    padding: 1.15rem;
    box-shadow: var(--crm-shadow-soft);
}

.crm-card--inline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.crm-card__lead {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 0.9rem;
    flex: 1 1 auto;
}

.crm-card__content {
    min-width: 0;
}

.crm-card__title {
    margin: 0;
    color: var(--crm-text);
    font-size: 0.96rem;
    font-weight: 650;
    line-height: 1.3;
}

.crm-card__subtitle {
    margin: 0.28rem 0 0;
    color: var(--crm-text-muted);
    font-size: 0.84rem;
    line-height: 1.5;
}

.crm-card__meta-line {
    margin-top: 0.42rem;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.55rem;
    color: var(--crm-text-soft);
    font-size: 0.75rem;
}

.crm-card__dot {
    width: 0.24rem;
    height: 0.24rem;
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.26);
}

.crm-card__tail {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    flex-shrink: 0;
}

.crm-card__eyebrow,
.crm-pill__label {
    margin: 0;
    color: var(--crm-text-soft);
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
}

.crm-card__aside {
    text-align: right;
    color: var(--crm-text-soft);
    font-size: 0.72rem;
    line-height: 1.5;
}

.crm-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    padding: 0.48rem 0.8rem;
    border-radius: 9999px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.05);
    white-space: nowrap;
}

.crm-pill__value {
    color: var(--crm-text);
    font-size: 0.79rem;
    font-weight: 600;
}

.crm-empty-state {
    border: 1px dashed var(--crm-border);
    border-radius: 1.25rem;
    background: rgba(255, 255, 255, 0.02);
    padding: 1.2rem 1rem;
    color: #64748b;
    font-size: 0.92rem;
}

.crm-table-wrap {
    overflow-x: auto;
}

.crm-table {
    min-width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.crm-table th {
    padding: 0 1rem 0.8rem 0;
    color: var(--crm-text-soft);
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    text-align: left;
}

.crm-table td {
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    padding: 0.9rem 1rem 0.9rem 0;
    color: #cbd5e1;
    vertical-align: top;
}

.crm-table--compact td {
    padding-top: 0.8rem;
    padding-bottom: 0.8rem;
}

.crm-table__numeric {
    text-align: right;
}

.crm-table__primary {
    color: var(--crm-text);
    font-weight: 600;
}

.crm-table__secondary {
    color: var(--crm-text-muted);
}

.crm-table__soft {
    color: var(--crm-text-soft);
}

.crm-table__empty {
    color: var(--crm-text-soft);
}

.crm-status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    border: 1px solid var(--crm-border);
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.06);
    padding: 0.45rem 0.78rem;
    color: #dbe5f4;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.crm-status-pill--warning {
    border-color: rgba(251, 191, 36, 0.28);
    background: rgba(251, 191, 36, 0.12);
    color: #fde68a;
}

.crm-status-pill--success {
    border-color: rgba(52, 211, 153, 0.28);
    background: rgba(52, 211, 153, 0.12);
    color: #bbf7d0;
}

.crm-status-pill--danger {
    border-color: rgba(255, 140, 161, 0.28);
    background: rgba(255, 140, 161, 0.12);
    color: #ffd5de;
}

.crm-header-links {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.25rem;
    border: 1px solid var(--crm-border);
    border-radius: 9999px;
    background: rgba(10, 15, 24, 0.6);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    box-shadow: var(--crm-shadow-soft);
}

.crm-header-links__item {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.2rem;
    padding: 0 0.95rem;
    border-radius: 9999px;
    color: #cbd5e1;
    font-size: 0.88rem;
    font-weight: 600;
    transition: background 180ms ease, color 180ms ease;
}

.crm-header-links__item:hover {
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
}

.crm-control {
    width: 100%;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: var(--crm-radius-md);
    background: rgba(255, 255, 255, 0.06);
    padding: 0.78rem 0.95rem;
    color: var(--crm-text);
    font-size: 0.92rem;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.crm-control:focus {
    outline: none;
    border-color: rgba(251, 191, 36, 0.42);
    box-shadow: 0 0 0 3px rgba(251, 191, 36, 0.14);
}

.crm-control-label {
    display: block;
    margin-bottom: 0.55rem;
    color: #cbd5e1;
    font-size: 0.85rem;
    font-weight: 600;
}

.crm-widget-title {
    margin: 0;
    color: var(--crm-text);
    font-size: 1rem;
    font-weight: 650;
}

.crm-widget-copy {
    margin: 0.3rem 0 0;
    color: var(--crm-text-muted);
    font-size: 0.9rem;
}

.crm-split-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.crm-key-value {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border: 1px solid var(--crm-border);
    border-radius: var(--crm-radius-md);
    background: rgba(255, 255, 255, 0.045);
    padding: 0.9rem 1rem;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.crm-key-value__label {
    color: var(--crm-text-muted);
    font-size: 0.92rem;
}

.crm-key-value__value {
    color: var(--crm-text);
    font-size: 1rem;
    font-weight: 650;
}

.crm-broadcast-status {
    border: 1px solid var(--crm-border);
    border-radius: var(--crm-radius-lg);
    padding: 1rem 1.05rem;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.crm-broadcast-status--success {
    border-color: rgba(52, 211, 153, 0.24);
    background: linear-gradient(180deg, rgba(52, 211, 153, 0.14), rgba(52, 211, 153, 0.06));
    color: #d1fae5;
}

.crm-broadcast-status--warning {
    border-color: rgba(251, 191, 36, 0.24);
    background: linear-gradient(180deg, rgba(251, 191, 36, 0.14), rgba(251, 191, 36, 0.06));
    color: #fde68a;
}

.crm-broadcast-status--danger {
    border-color: rgba(251, 113, 133, 0.24);
    background: linear-gradient(180deg, rgba(251, 113, 133, 0.16), rgba(251, 113, 133, 0.06));
    color: #fecdd3;
}

.crm-broadcast-status__row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.crm-broadcast-status__label {
    margin: 0;
    color: inherit;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    opacity: 0.9;
}

.crm-broadcast-status__title {
    margin: 0.38rem 0 0;
    color: inherit;
    font-size: 1.08rem;
    font-weight: 750;
}

.crm-broadcast-status__body {
    margin: 0.6rem 0 0;
    max-width: 42rem;
    color: inherit;
    font-size: 0.95rem;
    line-height: 1.65;
    opacity: 0.98;
}

.crm-broadcast-status__count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border: 1px solid currentColor;
    border-radius: 9999px;
    padding: 0.42rem 0.7rem;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    opacity: 0.92;
}

.crm-user-table--cards .fi-ta-table {
  display: block;
}

.crm-user-table--cards .fi-ta-table thead {
  display: none;
}

.crm-user-table--cards .fi-ta-table tbody {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
  padding: 1rem;
}

.crm-user-table--cards .fi-ta-table tbody tr.crm-user-row {
  display: block;
  flex: 0 0 calc(33.333% - 0.84rem);
  width: calc(33.333% - 0.84rem);
  margin: 0;
  border: none;
}

.crm-user-table--cards .fi-ta-table tbody td.crm-user-cell {
  display: block;
  width: 100%;
  padding: 0 !important;
}

.crm-user-table--cards .fi-ta-col-wrp,
.crm-user-table--cards .fi-ta-col-wrp > .flex,
.crm-user-table--cards .crm-user-card {
  width: 100%;
  height: 100%;
}

@media (max-width: 767px) {
  .crm-user-table--cards .fi-ta-table tbody tr.crm-user-row {
    flex-basis: 100%;
    width: 100%;
  }
}

@media (min-width: 768px) and (max-width: 1279px) {
  .crm-user-table--cards .fi-ta-table tbody tr.crm-user-row {
    flex-basis: calc(50% - 0.625rem);
    width: calc(50% - 0.625rem);
  }
}

.crm-user-cell {
    padding: 0.75rem !important;
}

.crm-user-row {
    background: transparent !important;
}

.crm-user-card {
    display: flex;
    flex-direction: column;
    /* gap: 1rem; */
    min-height: 100%;
    padding: 1.25rem;
    border: 1px solid var(--crm-border);
    border-radius: 1.5rem;
    background:
        radial-gradient(circle at top right, rgba(251, 191, 36, 0.1), transparent 32%),
        linear-gradient(180deg, rgba(17, 19, 24, 0.98) 0%, rgba(13, 16, 20, 0.98) 100%);
    box-shadow: var(--crm-shadow-soft);
    transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.fi-body,
.fi-layout,
.fi-main {
    background: transparent;
}

.fi-layout {
    position: relative;
}

.fi-layout::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    background:
        radial-gradient(circle at 12% 8%, rgba(199, 216, 255, 0.08), transparent 16%),
        radial-gradient(circle at 86% 14%, rgba(138, 180, 255, 0.1), transparent 18%),
        radial-gradient(circle at 52% 100%, rgba(255, 255, 255, 0.04), transparent 22%);
}

.fi-main,
.fi-page {
    position: relative;
    z-index: 1;
}

.fi-sidebar,
.fi-topbar {
    z-index: 20;
}

.fi-simple-layout,
.fi-page,
.fi-ta-ctn {
    background: transparent;
}

.fi-sidebar {
    width: var(--crm-sidebar-width) !important;
    max-width: var(--crm-sidebar-width) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.025)),
        linear-gradient(180deg, rgba(10, 15, 25, 0.92), rgba(9, 14, 23, 0.86)) !important;
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
    border-inline-end: 1px solid rgba(255, 255, 255, 0.08);
}

.fi-sidebar-header,
.fi-topbar
/* .fi-header */
 {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.025)),
        rgba(10, 15, 24, 0.52) !important;
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.fi-topbar {
    display: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.fi-topbar nav,
nav.fi-topbar,
.fi-topbar > nav {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.025)),
        rgba(10, 15, 24, 0.58) !important;
    box-shadow: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    ring-color: transparent !important;
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.fi-topbar .bg-white,
.fi-topbar .dark\:bg-gray-900 {
    background: transparent !important;
}

.fi-topbar .shadow-sm,
.fi-topbar .ring-1,
.fi-topbar .ring-gray-950\/5,
.fi-topbar .dark\:ring-white\/10 {
    box-shadow: none !important;
}

.fi-topbar .fi-user-avatar {
    box-shadow:
        0 10px 24px rgba(8, 12, 20, 0.28),
        0 0 0 1px rgba(255, 255, 255, 0.12) !important;
}

.fi-dropdown-header {
    color: var(--crm-text-muted) !important;
}

.fi-dropdown-header-label,
.fi-dropdown-header-icon {
    color: inherit !important;
}

.fi-theme-switcher {
    padding: 0.2rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.03);
}

.fi-theme-switcher-btn {
    border-radius: 0.85rem !important;
}

.fi-theme-switcher-btn.fi-active,
.fi-theme-switcher-btn[class*="bg-gray-50"][class*="text-primary-500"] {
    background: rgba(138, 180, 255, 0.16) !important;
    color: #e8f0ff !important;
}

.fi-sidebar-item-button,
.fi-sidebar-group-button,
.fi-sidebar-item-label,
.fi-sidebar-group-label {
    color: var(--crm-text-muted) !important;
}

.fi-sidebar-item-icon,
.fi-sidebar-group-icon {
    color: #9ebaf6 !important;
}

.fi-sidebar-item-button {
    border-radius: 1rem !important;
    transition: background 180ms ease, color 180ms ease, transform 180ms ease !important;
}

.fi-sidebar-item-button:hover,
.fi-sidebar-group-button:hover {
    background: rgba(255, 255, 255, 0.05) !important;
    color: var(--crm-text) !important;
    transform: translateX(2px);
}

.fi-sidebar-item-active .fi-sidebar-item-button,
.fi-sidebar-item-button[aria-current="page"] {
    background: rgba(138, 180, 255, 0.14) !important;
    color: var(--crm-text) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.fi-sidebar-item-active .fi-sidebar-item-icon,
.fi-sidebar-item-button[aria-current="page"] .fi-sidebar-item-icon {
    color: #dbe7ff !important;
}

.fi-breadcrumbs-item-label,
.fi-header-heading,
.fi-header-subheading,
.fi-topbar-item-label {
    color: var(--crm-text) !important;
}

.fi-header-subheading,
.fi-breadcrumbs-item-label {
    color: var(--crm-text-muted) !important;
}

.fi-btn,
.fi-icon-btn {
    border-radius: 1rem !important;
    box-shadow: none !important;
    transition: transform 180ms ease, background 180ms ease, color 180ms ease, border-color 180ms ease, box-shadow 180ms ease !important;
}

.fi-btn:hover,
.fi-icon-btn:hover {
    transform: translateY(-1px);
}

.fi-btn-color-primary {
    background:
        linear-gradient(180deg, rgba(120, 164, 255, 0.28), rgba(92, 139, 240, 0.18)),
        rgba(17, 34, 67, 0.88) !important;
    color: #f7faff !important;
    border: 1px solid rgba(138, 180, 255, 0.26) !important;
    box-shadow:
        0 12px 24px rgba(34, 72, 150, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
}

.fi-btn-color-gray,
.fi-btn-color-primary:is(.fi-color-custom) {
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.fi-btn-color-gray {
    background: rgba(255, 255, 255, 0.08) !important;
    color: var(--crm-text) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
}

.fi-btn-color-primary:hover,
.fi-btn-color-primary:focus,
.fi-btn-color-primary:is(.fi-color-custom):hover,
.fi-btn-color-primary:is(.fi-color-custom):focus {
    background:
        linear-gradient(180deg, rgba(141, 184, 255, 0.32), rgba(103, 151, 248, 0.22)),
        rgba(20, 39, 75, 0.92) !important;
    border-color: rgba(167, 202, 255, 0.34) !important;
    box-shadow:
        0 16px 28px rgba(41, 84, 170, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}

.fi-btn-color-gray:hover,
.fi-btn-color-gray:focus {
    background: rgba(255, 255, 255, 0.12) !important;
    color: #fff !important;
}

.fi-section,
.fi-ta,
.fi-in-entry,
.fi-fo-field-wrp,
.fi-wi-widget {
    border-radius: var(--crm-radius-xl);
}

.fi-wi-stats-overview-stat {
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: var(--crm-radius-xl) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.11), rgba(255, 255, 255, 0.025)),
        linear-gradient(180deg, rgba(14, 20, 32, 0.84) 0%, rgba(10, 15, 26, 0.74) 100%) !important;
    box-shadow: var(--crm-shadow-soft) !important;
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.fi-wi-stats-overview-stat-label {
    color: var(--crm-text-soft) !important;
    font-size: 0.74rem !important;
    font-weight: 700 !important;
    text-transform: uppercase;
}

.fi-wi-stats-overview-stat-value {
    color: var(--crm-text) !important;
}

.fi-wi-stats-overview-stat-description {
    color: var(--crm-accent-strong) !important;
}

.fi-wi-stats-overview-stat-description-icon {
    color: var(--crm-accent) !important;
}

.fi-ta {
    border: 1px solid rgba(255, 255, 255, 0.08);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.02)),
        linear-gradient(180deg, rgba(13, 18, 30, 0.76), rgba(9, 13, 23, 0.68));
    box-shadow: var(--crm-shadow-soft);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    overflow: hidden;
}

.fi-ta:has(.choices__list--dropdown.is-active),
.fi-ta:has(.choices.is-open),
.fi-section:has(.choices__list--dropdown.is-active),
.fi-section:has(.choices.is-open),
.fi-section:has(.fi-fo-color-picker:focus-within),
.fi-section:has(.fi-fo-color-picker-panel),
.fi-in-entry:has(.choices__list--dropdown.is-active),
.fi-in-entry:has(.choices.is-open),
.fi-fo-component-ctn:has(.choices__list--dropdown.is-active),
.fi-fo-component-ctn:has(.choices.is-open),
.fi-fo-component-ctn:has(.fi-fo-color-picker:focus-within),
.fi-fo-component-ctn:has(.fi-fo-color-picker-panel),
.fi-section-content-ctn:has(.fi-fo-color-picker:focus-within),
.fi-section-content-ctn:has(.fi-fo-color-picker-panel),
.fi-modal-window:has(.choices__list--dropdown.is-active),
.fi-modal-window:has(.choices.is-open),
.fi-modal-window:has(.fi-fo-color-picker:focus-within),
.fi-modal-window:has(.fi-fo-color-picker-panel) {
    position: relative !important;
    z-index: 180 !important;
    overflow: visible !important;
}

.fi-ta-header-ctn,
.fi-ta-content,
.fi-ta-ctn {
    background: transparent;
}

.fi-ta-content {
    border-top-width: 0 !important;
    border-top-color: rgba(255, 255, 255, 0.06) !important;
}

.fi-ta-ctn {
    border-radius: calc(var(--crm-radius-xl) - 0.2rem) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.01)),
        rgba(9, 13, 23, 0.46) !important;
}

.fi-ta-header-toolbar {
    padding: 1rem 1.15rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.015)),
        rgba(12, 18, 30, 0.52);
}

.fi-ta-header-toolbar,
.fi-header-actions,
.fi-ac {
    gap: 0.75rem !important;
}

.fi-header-actions .fi-btn,
.fi-ac .fi-btn,
.fi-ac .fi-icon-btn {
    min-height: 2.85rem !important;
}

.fi-ta-header-toolbar .fi-input-wrp,
.fi-ta-header-toolbar .fi-select-input,
.fi-ta-header-toolbar .fi-input,
.fi-ta-header-toolbar .fi-btn {
    min-height: 2.85rem !important;
}

.fi-ta-search-field input,
.fi-input-wrp,
.fi-select-input,
.fi-input {
    border-color: rgba(255, 255, 255, 0.12) !important;
    border-radius: var(--crm-radius-md) !important;
    background: rgba(255, 255, 255, 0.06) !important;
    color: var(--crm-text) !important;
    box-shadow: none !important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.fi-ta-search-field .fi-input-wrp {
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.015)),
        rgba(9, 13, 23, 0.42) !important;
    box-shadow: none !important;
}

.fi-ta-search-field .fi-input,
.fi-ta-search-field input,
.fi-ta-search-field .fi-input-wrp-input,
.fi-ta-search-field .fi-input-wrp-prefix {
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.fi-input-wrp:focus-within,
.fi-ta-search-field input:focus,
.fi-select-input:focus,
.fi-input:focus {
    border-color: rgba(138, 180, 255, 0.35) !important;
    box-shadow: 0 0 0 3px rgba(138, 180, 255, 0.14) !important;
}

.fi-ta-search-field input:focus,
.fi-ta-search-field .fi-input:focus {
    box-shadow: none !important;
    border-color: transparent !important;
}

.fi-input-wrp-prefix,
.fi-input-wrp-suffix {
    border: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-inline-start: 0 !important;
    border-inline-end: 0 !important;
    box-shadow: none !important;
    color: var(--crm-text-soft) !important;
}

.fi-ta-table {
    border-collapse: separate;
    border-spacing: 0;
}

.fi-ta-table thead {
    background: rgba(255, 255, 255, 0.025) !important;
}

.fi-ta-table thead tr {
    background: transparent !important;
}

.fi-ta-table thead th {
    background: transparent !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    color: var(--crm-text-soft) !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
}

.fi-ta-header-cell-label,
.fi-ta-header-cell button,
.fi-ta-header-cell button span {
    color: var(--crm-text-soft) !important;
}

.fi-ta-header-cell button {
    transition: color 180ms ease, opacity 180ms ease !important;
}

.fi-ta-header-cell button:hover,
.fi-ta-header-cell button:hover span,
.fi-ta-header-cell button:hover .fi-icon {
    color: var(--crm-text) !important;
}

.fi-ta-record {
    background: transparent;
    transition: background 180ms ease, transform 180ms ease;
}

.fi-ta-record:hover {
    background: rgba(255, 255, 255, 0.035);
    transform: translateY(-1px);
}

.fi-ta-record:has(input[type="checkbox"]:checked) {
    background: rgba(138, 180, 255, 0.08) !important;
}

.fi-ta-row {
    position: relative;
    transition: transform 180ms ease, background 180ms ease, box-shadow 180ms ease;
}

.fi-ta-row::after {
    content: "";
    position: absolute;
    inset-inline: 0.85rem;
    bottom: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.07), transparent);
    pointer-events: none;
}

.fi-ta-row:hover {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.035), rgba(255, 255, 255, 0.015)),
        rgba(138, 180, 255, 0.03) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
}

.crm-user-table--cards .crm-user-row:hover,
.crm-user-table--cards .fi-ta-row.crm-user-row:hover {
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
}

.crm-user-table--cards .crm-user-row:hover::after,
.crm-user-table--cards .fi-ta-row.crm-user-row:hover::after {
    opacity: 0 !important;
}

.fi-ta-row,
.fi-ta-row.bg-gray-50,
.fi-ta-row.dark\:bg-white\/5 {
    background: transparent;
}

.fi-ta-row:has(.fi-ta-record-checkbox:checked),
.fi-ta-row:has(.fi-ta-page-checkbox:checked) {
    background:
        linear-gradient(180deg, rgba(138, 180, 255, 0.12), rgba(138, 180, 255, 0.04)),
        rgba(255, 255, 255, 0.02) !important;
}

.fi-ta-record > td,
.fi-ta-cell {
    border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
    color: #d8e1f0 !important;
}

.fi-ta-table tbody td {
    background: transparent !important;
}

.fi-ta-table tbody tr:first-child td {
    border-top-color: transparent !important;
}

.fi-ta-text {
    gap: 0.2rem !important;
}

.fi-ta-text-item-label {
    color: #e6edf8 !important;
}

.fi-ta-row:hover .fi-ta-text-item-label,
.fi-ta-row:hover .fi-link,
.fi-ta-row:hover .fi-link-icon {
    color: #ffffff !important;
}

.fi-ta .text-gray-950,
.fi-ta .dark\:text-white,
.fi-section .text-gray-950,
.fi-section .dark\:text-white,
.fi-modal-window .text-gray-950,
.fi-modal-window .dark\:text-white,
.fi-dropdown-panel .text-gray-950,
.fi-dropdown-panel .dark\:text-white,
.fi-in-card .text-gray-950,
.fi-in-card .dark\:text-white {
    color: #e6edf8 !important;
}

.fi-ta .text-gray-700,
.fi-ta .text-gray-600,
.fi-section .text-gray-700,
.fi-section .text-gray-600,
.fi-modal-window .text-gray-700,
.fi-modal-window .text-gray-600,
.fi-dropdown-panel .text-gray-700,
.fi-dropdown-panel .text-gray-600 {
    color: var(--crm-text-muted) !important;
}

.fi-ta .text-gray-500,
.fi-ta .text-gray-400,
.fi-section .text-gray-500,
.fi-section .text-gray-400,
.fi-modal-window .text-gray-500,
.fi-modal-window .text-gray-400,
.fi-dropdown-panel .text-gray-500,
.fi-dropdown-panel .text-gray-400 {
    color: var(--crm-text-soft) !important;
}

.fi-ta-actions {
    gap: 0.45rem;
}

.fi-ta-actions .fi-btn,
.fi-ta-actions .fi-icon-btn {
    min-height: 2.35rem !important;
}

.fi-ta-cell a,
.fi-link,
.fi-btn-link {
    color: var(--crm-text) !important;
}

.fi-ta-cell a:hover,
.fi-link:hover,
.fi-btn-link:hover {
    color: var(--crm-accent-strong) !important;
    text-decoration: none;
}

.fi-link-icon,
.fi-ta-header-cell-sort-icon,
.fi-input-wrp-icon {
    color: #8ea9d8 !important;
}

.fi-link:hover .fi-link-icon,
.fi-ta-header-cell button:hover .fi-ta-header-cell-sort-icon {
    color: #dbe7ff !important;
}

.fi-badge,
.fi-status-badge {
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 9999px !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    padding-inline: 0.7rem !important;
}

.fi-color-primary {
    color: #dbe7ff !important;
}

.fi-badge-color-success,
.fi-status-badge-color-success {
    border-color: rgba(89, 215, 177, 0.22) !important;
    background: rgba(89, 215, 177, 0.14) !important;
    color: #d6fff2 !important;
}

.fi-badge-color-warning,
.fi-status-badge-color-warning {
    border-color: rgba(255, 214, 131, 0.24) !important;
    background: rgba(255, 214, 131, 0.14) !important;
    color: #ffefc8 !important;
}

.fi-badge-color-danger,
.fi-status-badge-color-danger {
    border-color: rgba(255, 140, 161, 0.24) !important;
    background: rgba(255, 140, 161, 0.14) !important;
    color: #ffd5de !important;
}

.fi-badge-color-gray,
.fi-status-badge-color-gray {
    border-color: rgba(255, 255, 255, 0.1) !important;
    background: rgba(255, 255, 255, 0.06) !important;
    color: #dbe5f4 !important;
}

.fi-icon-btn-badge-ctn {
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 9999px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02)),
        rgba(9, 13, 23, 0.88) !important;
    box-shadow: 0 10px 24px rgba(2, 6, 23, 0.28) !important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    padding: 0.12rem !important;
}

.fi-icon-btn-badge-ctn .fi-badge {
    min-width: 1.15rem !important;
    min-height: 1.15rem !important;
    padding-inline: 0.38rem !important;
    padding-block: 0.1rem !important;
    font-size: 0.66rem !important;
    line-height: 1 !important;
}

.fi-icon-btn-badge-ctn .fi-badge.fi-color-primary,
.fi-icon-btn-badge-ctn .fi-badge.fi-color-custom {
    background: rgba(138, 180, 255, 0.22) !important;
    border-color: rgba(138, 180, 255, 0.26) !important;
    color: #eaf1ff !important;
}

.fi-ta-filters-summary,
.fi-ta-grouping-settings,
.fi-ta-selection-indicator {
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 1rem !important;
    background: rgba(255, 255, 255, 0.04) !important;
    color: var(--crm-text-muted) !important;
}

.fi-ta-filter-indicators {
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.01)),
        rgba(9, 13, 23, 0.28) !important;
}

.fi-ta-filter-indicators > div:first-child > span {
    color: var(--crm-text-soft) !important;
}

.fi-ta-filter-indicators .fi-badge-delete-button {
    color: rgba(219, 231, 255, 0.58) !important;
}

.fi-ta-filter-indicators .fi-badge-delete-button:hover,
.fi-ta-filter-indicators .fi-badge-delete-button:focus-visible {
    color: rgba(238, 244, 255, 0.9) !important;
}

.fi-ta-filter-indicators .fi-icon-btn {
    color: var(--crm-text-soft) !important;
}

.fi-ta-filter-indicators .fi-icon-btn:hover,
.fi-ta-filter-indicators .fi-icon-btn:focus-visible {
    color: var(--crm-text) !important;
}

.fi-ta-filter-indicators .fi-badge.fi-color-primary,
.fi-ta-filter-indicators .fi-badge.fi-color-custom {
    border-color: rgba(138, 180, 255, 0.24) !important;
    background: rgba(138, 180, 255, 0.16) !important;
    color: #eaf1ff !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
}

.fi-ta-filter-indicators .fi-badge.fi-color-primary .fi-badge-delete-button,
.fi-ta-filter-indicators .fi-badge.fi-color-custom .fi-badge-delete-button {
    color: rgba(234, 241, 255, 0.66) !important;
}

.fi-ta-filter-indicators .fi-badge.fi-color-primary .fi-badge-delete-button:hover,
.fi-ta-filter-indicators .fi-badge.fi-color-primary .fi-badge-delete-button:focus-visible,
.fi-ta-filter-indicators .fi-badge.fi-color-custom .fi-badge-delete-button:hover,
.fi-ta-filter-indicators .fi-badge.fi-color-custom .fi-badge-delete-button:focus-visible {
    color: #ffffff !important;
}

.fi-tabs {
    gap: 0.55rem !important;
    padding: 0.55rem !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: var(--crm-radius-lg) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.015)),
        rgba(10, 15, 24, 0.42) !important;
    box-shadow: var(--crm-shadow-soft) !important;
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.fi-tabs-item {
    min-height: 2.85rem;
    padding-inline: 1rem !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    border-radius: 9999px !important;
    background: rgba(255, 255, 255, 0.03) !important;
    color: var(--crm-text-muted) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.03);
    transition: background 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease, box-shadow 180ms ease !important;
}

.fi-tabs-item:hover {
    transform: translateY(-1px);
    background: rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
}

.fi-tabs-item[aria-selected="true"],
.fi-tabs-item.fi-active {
    background:
        linear-gradient(180deg, rgba(138, 180, 255, 0.18), rgba(138, 180, 255, 0.08)),
        rgba(255, 255, 255, 0.03) !important;
    border-color: rgba(138, 180, 255, 0.28) !important;
    color: var(--crm-text) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.08),
        0 10px 24px rgba(45, 92, 189, 0.12) !important;
}

.fi-tabs-item-label,
.fi-tabs-item-badge {
    color: inherit !important;
}

.fi-tabs-item-badge {
    border-radius: 9999px !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: #dbe7ff !important;
    min-width: 2rem;
    justify-content: center;
}

.fi-tabs .bg-white,
.fi-tabs .dark\:bg-gray-900,
.fi-tabs .bg-gray-50,
.fi-tabs .dark\:bg-white\/5 {
    background: transparent !important;
}

.fi-tabs .shadow-sm,
.fi-tabs .ring-1,
.fi-tabs .ring-gray-950\/5,
.fi-tabs .dark\:ring-white\/10 {
    box-shadow: none !important;
}

.fi-tabs-item .fi-badge {
    padding-inline: 0.55rem !important;
    padding-block: 0.2rem !important;
    font-size: 0.72rem !important;
    line-height: 1 !important;
}

.fi-tabs-item .fi-badge.fi-color-primary,
.fi-tabs-item .fi-badge.fi-color-custom {
    border-color: rgba(138, 180, 255, 0.24) !important;
    background:
        linear-gradient(180deg, rgba(138, 180, 255, 0.2), rgba(138, 180, 255, 0.1)),
        rgba(255, 255, 255, 0.04) !important;
    color: #eef4ff !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.fi-tabs-item.fi-active .fi-badge.fi-color-primary,
.fi-tabs-item.fi-active .fi-badge.fi-color-custom,
.fi-tabs-item[aria-selected="true"] .fi-badge.fi-color-primary,
.fi-tabs-item[aria-selected="true"] .fi-badge.fi-color-custom {
    background:
        linear-gradient(180deg, rgba(199, 216, 255, 0.24), rgba(138, 180, 255, 0.14)),
        rgba(255, 255, 255, 0.06) !important;
    border-color: rgba(199, 216, 255, 0.28) !important;
    color: #ffffff !important;
}

.fi-section {
    border: 1px solid rgba(255, 255, 255, 0.08);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.02)),
        linear-gradient(180deg, rgba(13, 18, 30, 0.76), rgba(9, 13, 23, 0.68));
    box-shadow: var(--crm-shadow-soft);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

.fi-section-header {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.03);
}

.fi-section-header-heading,
.fi-section-header-description {
    color: var(--crm-text) !important;
}

.fi-section-header-description {
    color: var(--crm-text-muted) !important;
}

.fi-dropdown-panel,
.fi-modal-window,
.fi-fo-repeater-item,
.fi-in-card,
.fi-section-content-ctn {
    border-color: rgba(255, 255, 255, 0.08) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02)),
        rgba(10, 15, 24, 0.86) !important;
    box-shadow: var(--crm-shadow-soft) !important;
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

html:not(.dark) .fi-section-content-ctn {
    border-color: rgba(15, 23, 42, 0.08) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94)),
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(241, 245, 249, 0.86)) !important;
    box-shadow: 0 16px 45px rgba(148, 163, 184, 0.12) !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

html:not(.dark) .fi-section-content {
    background: transparent !important;
}

html:not(.dark) .fi-fo-field-wrp {
    border-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
}

html:not(.dark) .fi-fo-component-ctn {
    background: transparent !important;
}

html:not(.dark) .fi-fo-field-wrp-label,
html:not(.dark) .fi-fo-field-wrp-helper-text,
html:not(.dark) .fi-fo-placeholder-label {
    color: var(--crm-text-muted) !important;
}

html:not(.dark) .fi-input-wrp,
html:not(.dark) .fi-select-input,
html:not(.dark) .fi-input,
html:not(.dark) .choices__inner {
    border-color: rgba(148, 163, 184, 0.26) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.995), rgba(248, 250, 252, 0.96)),
        rgba(255, 255, 255, 0.98) !important;
    color: var(--crm-text) !important;
    box-shadow:
        inset 0 0 0 1px rgba(148, 163, 184, 0.16),
        0 1px 2px rgba(15, 23, 42, 0.05),
        0 8px 18px rgba(15, 23, 42, 0.03) !important;
}

html:not(.dark) .fi-input-wrp:focus-within,
html:not(.dark) .fi-select-input:focus,
html:not(.dark) .fi-input:focus {
    border-color: rgba(37, 99, 235, 0.28) !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12) !important;
}

html:not(.dark) .fi-input-wrp-prefix,
html:not(.dark) .fi-input-wrp-suffix,
html:not(.dark) .fi-input-wrp-icon {
    color: var(--crm-text-soft) !important;
}

html:not(.dark) .choices__list--dropdown,
html:not(.dark) .choices__list[aria-expanded] {
    border-color: rgba(15, 23, 42, 0.08) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94)),
        rgba(255, 255, 255, 0.96) !important;
    box-shadow: 0 22px 50px rgba(148, 163, 184, 0.14) !important;
}

html:not(.dark) .choices__item--choice {
    color: var(--crm-text-muted) !important;
}

html:not(.dark) .choices__item--choice:hover,
html:not(.dark) .choices__item--choice.is-highlighted {
    background: rgba(37, 99, 235, 0.08) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .choices__item--choice.is-selected {
    background: rgba(37, 99, 235, 0.12) !important;
    color: var(--crm-accent-strong) !important;
}

html:not(.dark) .filepond--panel-root {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94)),
        rgba(255, 255, 255, 0.96) !important;
    border-color: rgba(15, 23, 42, 0.08) !important;
}

html:not(.dark) .filepond--drop-label,
html:not(.dark) .filepond--assistant {
    color: var(--crm-text-muted) !important;
}

html:not(.dark) .filepond--panel-center,
html:not(.dark) .filepond--panel-bottom,
html:not(.dark) .filepond--panel-top {
    background: transparent !important;
}

.fi-fo-color-picker {
    position: relative;
    overflow: visible !important;
}

.fi-fo-field-wrp:has(.fi-fo-color-picker:focus-within),
.fi-fo-field-wrp:has(.fi-fo-color-picker-panel),
.fi-input-wrp:has(.fi-fo-color-picker:focus-within),
.fi-input-wrp:has(.fi-fo-color-picker-panel),
.fi-fo-color-picker:focus-within,
.fi-fo-color-picker:has(.fi-fo-color-picker-panel:not(.hidden)) {
    position: relative !important;
    z-index: 220 !important;
    overflow: visible !important;
}

.fi-fo-color-picker-panel {
    z-index: 260 !important;
}

.fi-dropdown-list {
    background: transparent !important;
}

.fi-dropdown-list-item {
    border-radius: 0.9rem !important;
    color: var(--crm-text-muted) !important;
}

.fi-dropdown-list-item:hover,
.fi-dropdown-list-item:focus-visible {
    background: rgba(255, 255, 255, 0.06) !important;
    color: var(--crm-text) !important;
}

.fi-dropdown-list-item-label,
.fi-dropdown-list-item-icon {
    color: inherit !important;
}

.fi-modal-window {
    border-radius: var(--crm-radius-xl) !important;
}

html:not(.dark) .fi-modal-window {
    border-color: rgba(15, 23, 42, 0.08) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95)),
        rgba(255, 255, 255, 0.96) !important;
    box-shadow: 0 24px 60px rgba(148, 163, 184, 0.18) !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

.fi-modal-slide-over-window {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    border-radius: 0 !important;
    border-left: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-right: none !important;
    box-shadow: -28px 0 60px rgba(2, 6, 23, 0.34) !important;
    margin: 0 0 0 auto !important;
    justify-self: auto !important;
    align-self: stretch !important;
    width: min(100vw, 42rem) !important;
    max-width: min(100vw, 42rem) !important;
}

html:not(.dark) .fi-modal-slide-over-window {
    border-left-color: rgba(15, 23, 42, 0.08) !important;
    box-shadow: -24px 0 54px rgba(148, 163, 184, 0.18) !important;
}

.fi-modal-slide-over-window.fi-modal-window {
    max-height: 100dvh !important;
    height: 100dvh !important;
}

.fi-modal-header,
.fi-modal-footer {
    border-color: rgba(255, 255, 255, 0.08) !important;
    background: rgba(255, 255, 255, 0.03) !important;
}

html:not(.dark) .fi-modal-header,
html:not(.dark) .fi-modal-footer {
    border-color: rgba(15, 23, 42, 0.08) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95)),
        rgba(255, 255, 255, 0.96) !important;
}

html:not(.dark) .fi-modal-content {
    background: transparent !important;
}

.fi-fo-field-wrp-label,
.fi-fo-field-wrp-helper-text,
.fi-fo-placeholder-label {
    color: var(--crm-text-muted) !important;
}

.fi-input-wrp,
.fi-select-input,
.fi-input,
.choices__inner {
    min-height: var(--crm-control-compact-height) !important;
}

.fi-input-wrp {
    min-height: var(--crm-control-compact-height) !important;
}

.fi-input,
.fi-select-input {
    min-height: calc(var(--crm-control-compact-height) - 2px) !important;
    padding-top: 0.6rem !important;
    padding-bottom: 0.6rem !important;
    border-radius: var(--crm-radius-md) !important;
    line-height: 1.25 !important;
}

.choices__inner {
    min-height: var(--crm-control-compact-height) !important;
    padding-top: 0.35rem !important;
    padding-bottom: 0.35rem !important;
    border-radius: var(--crm-radius-md) !important;
    display: flex !important;
    align-items: center !important;
    overflow: hidden !important;
}

.choices {
    color: var(--crm-text) !important;
    position: relative !important;
    z-index: 1;
}

.choices.is-open,
.choices.is-focused {
    z-index: 60 !important;
}

.choices__list--dropdown,
.choices__list[aria-expanded] {
    margin-top: 0.5rem !important;
    z-index: 80 !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 1rem !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02)),
        rgba(9, 13, 23, 0.96) !important;
    box-shadow: 0 22px 50px rgba(2, 6, 23, 0.34) !important;
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    overflow: hidden !important;
}

.choices__list--dropdown .choices__list,
.choices__list[aria-expanded] .choices__list {
    padding: 0.4rem !important;
}

.choices__inner .choices__list {
    width: 100% !important;
}

.choices__list--single,
.choices__list--multiple {
    display: flex !important;
    align-items: center !important;
    min-height: calc(var(--crm-control-compact-height) - 0.7rem) !important;
}

.choices__list--single .choices__item,
.choices__list--multiple .choices__item {
    border-radius: 0.85rem !important;
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    min-height: calc(var(--crm-control-compact-height) - 0.7rem) !important;
    line-height: 1.25 !important;
}

.choices__list--single .choices__button,
.choices__list--multiple .choices__button {
    align-self: center !important;
    margin-left: auto !important;
}

.fi-fo-field-wrp:has(.choices__list--dropdown.is-active),
.fi-fo-field-wrp:has(.choices.is-open),
.fi-input-wrp:has(.choices__list--dropdown.is-active),
.fi-input-wrp:has(.choices.is-open) {
    position: relative !important;
    z-index: 50 !important;
    overflow: visible !important;
}

.choices__item--choice {
    border-radius: 0.8rem !important;
    padding: 0.7rem 0.85rem !important;
    color: var(--crm-text-muted) !important;
    font-size: 0.92rem !important;
    transition: background 180ms ease, color 180ms ease, transform 180ms ease;
}

.choices__item--choice:hover,
.choices__item--choice.is-highlighted {
    background: rgba(138, 180, 255, 0.14) !important;
    color: #f8fbff !important;
    border-radius: 0.8rem !important;
}

.choices__item--choice.is-selected {
    background: rgba(138, 180, 255, 0.18) !important;
    color: #ffffff !important;
    border-radius: 0.8rem !important;
}

.fi-fo-key-value td[class~="w-1/2"][class~="p-0"] {
    padding: 0.25rem !important;
}

.donation-campaign-preview-drawer-host {
    display: contents;
}

.donation-campaign-preview-drawer-host[x-cloak] {
    display: none !important;
}

.donation-campaign-preview-toggle {
    position: fixed;
    top: 50%;
    right: 0;
    z-index: 88;
    min-height: 2.75rem;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-right: 0;
    border-radius: 999px 0 0 999px;
    background: var(--crm-accent);
    color: #07111f;
    padding: 0 0.9rem 0 1rem;
    font-size: 0.78rem;
    font-weight: 700;
    box-shadow: 0 14px 34px rgba(2, 6, 23, 0.22);
    transform: translateY(-50%);
}

.donation-campaign-preview-drawer {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 90;
    width: min(31rem, calc(100vw - 1rem));
    overflow-y: auto;
    border-left: 1px solid rgba(255, 255, 255, 0.1);
    background:
        linear-gradient(180deg, rgba(12, 17, 28, 0.98), rgba(9, 13, 23, 0.96)),
        var(--crm-bg);
    padding: 1.1rem;
    box-shadow: -28px 0 70px rgba(2, 6, 23, 0.34);
    transform: translateX(105%);
    transition: transform 220ms ease;
}

.donation-campaign-preview-drawer.is-open {
    transform: translateX(0);
}

@media (min-width: 1280px) {
    body.donation-campaign-preview-is-open .fi-main {
        padding-right: min(32rem, calc(100vw - 1rem)) !important;
    }
}

.donation-campaign-preview-close {
    position: sticky;
    top: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    margin-left: auto;
    margin-bottom: 0.75rem;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: var(--crm-text);
    font-size: 1.4rem;
    line-height: 1;
}

.donation-campaign-preview {
    display: grid;
    gap: 1rem;
    width: 100%;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--crm-radius-lg);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.07), rgba(255, 255, 255, 0.02)),
        rgba(9, 13, 23, 0.62);
    padding: 1rem;
    box-shadow: var(--crm-shadow-soft);
}

.donation-campaign-preview__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
}

.donation-campaign-preview__eyebrow {
    margin: 0;
    color: var(--crm-accent-strong);
    font-size: 0.68rem;
    font-weight: 600;
    text-transform: uppercase;
}

.donation-campaign-preview__title {
    margin: 0.18rem 0 0;
    color: var(--crm-text);
    font-size: 1rem;
    font-weight: 700;
}

.donation-campaign-preview__status {
    display: inline-flex;
    align-items: center;
    min-height: 1.75rem;
    border-radius: 999px;
    padding: 0 0.65rem;
    background: color-mix(in srgb, var(--campaign-primary) 16%, transparent);
    color: var(--crm-accent-strong);
    font-size: 0.72rem;
    font-weight: 600;
}

.donation-campaign-preview__phone {
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 1.35rem;
    background: #f8fafc;
    color: #121212;
}

.donation-campaign-preview__hero {
    position: relative;
    aspect-ratio: 16 / 9;
    background:
        linear-gradient(135deg, color-mix(in srgb, var(--campaign-primary) 72%, #ffffff), color-mix(in srgb, var(--campaign-secondary) 76%, #ffffff));
}

.donation-campaign-preview__image,
.donation-campaign-preview__image-placeholder {
    width: 100%;
    height: 100%;
}

.donation-campaign-preview__image {
    display: block;
    object-fit: cover;
}

.donation-campaign-preview__image-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
}

.donation-campaign-preview__image-placeholder span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
    height: 4rem;
    border-radius: 1.2rem;
    background: rgba(255, 255, 255, 0.22);
    color: #ffffff;
    font-size: 2rem;
    font-weight: 700;
}

.donation-campaign-preview__body {
    display: grid;
    gap: 0.85rem;
    padding: 1rem;
}

.donation-campaign-preview__campaign-title {
    margin: 0;
    color: var(--campaign-primary);
    font-size: clamp(1.35rem, 2.4vw, 1.85rem);
    font-weight: 700;
    line-height: 1.08;
}

.donation-campaign-preview__summary {
    margin: 0;
    color: #334155;
    font-size: 0.86rem;
    line-height: 1.55;
}

.donation-campaign-preview__goal {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border: 1px solid rgba(2, 62, 138, 0.1);
    border-radius: 1rem;
    background: #ffffff;
    padding: 0.85rem;
    box-shadow: 0 12px 26px rgba(15, 23, 42, 0.06);
}

.donation-campaign-preview__goal span {
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 600;
}

.donation-campaign-preview__goal strong {
    color: var(--campaign-primary);
    font-size: 0.98rem;
    font-weight: 700;
    white-space: nowrap;
}

.donation-campaign-preview__progress {
    height: 0.55rem;
    overflow: hidden;
    border-radius: 999px;
    background: #e2e8f0;
}

.donation-campaign-preview__progress span {
    display: block;
    width: 36%;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, var(--campaign-primary), var(--campaign-secondary));
}

.donation-campaign-preview__actions {
    display: flex;
    flex-direction: column;
    gap: 0.7rem;
}

.donation-campaign-preview__button {
    min-height: 2.9rem;
    border: 1px solid transparent;
    border-radius: 0.85rem;
    font-size: 0.78rem;
    font-weight: 600;
    text-transform: uppercase;
}

.donation-campaign-preview__button--secondary {
    border-color: color-mix(in srgb, var(--campaign-primary) 24%, transparent);
    background: #ffffff;
    color: var(--campaign-primary);
}

.donation-campaign-preview__button--primary {
    background: var(--campaign-primary);
    color: #ffffff;
    box-shadow: 0 14px 28px color-mix(in srgb, var(--campaign-primary) 24%, transparent);
}

html:not(.dark) .donation-campaign-preview {
    border-color: rgba(15, 23, 42, 0.08);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95)),
        rgba(255, 255, 255, 0.98);
    box-shadow: 0 20px 48px rgba(148, 163, 184, 0.16);
}

html:not(.dark) .donation-campaign-preview-toggle {
    border-color: rgba(37, 99, 235, 0.2);
    background: #023E8A;
    color: #ffffff;
}

html:not(.dark) .donation-campaign-preview-drawer {
    border-left-color: rgba(15, 23, 42, 0.08);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.96)),
        rgba(255, 255, 255, 0.98);
    box-shadow: -24px 0 60px rgba(148, 163, 184, 0.2);
}

html:not(.dark) .donation-campaign-preview-close {
    border-color: rgba(15, 23, 42, 0.08);
    background: rgba(248, 250, 252, 0.96);
    color: var(--crm-text);
}

html:not(.dark) .donation-campaign-preview__title {
    color: var(--crm-text);
}

.fi-tabs {
    gap: 0.55rem;
}

.fi-tabs-item {
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.04);
    color: var(--crm-text-muted) !important;
}

.fi-tabs-item[aria-selected="true"],
.fi-tabs-item:hover {
    background: rgba(138, 180, 255, 0.14);
    border-color: rgba(138, 180, 255, 0.24);
    color: var(--crm-text) !important;
}

.fi-pagination {
    margin-top: 1rem;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    padding-top: 1rem;
}

.fi-ta-pagination {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.01)),
        rgba(9, 13, 23, 0.28);
}

.fi-pagination-overview {
    color: var(--crm-text-muted) !important;
}

.fi-pagination-records-per-page-select .fi-input-wrp-prefix {
    border-inline-end: none !important;
}

.fi-pagination-items {
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 9999px !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.015)),
        rgba(9, 13, 23, 0.42) !important;
    box-shadow: 0 14px 28px rgba(2, 6, 23, 0.18) !important;
    overflow: hidden;
    padding: 0.2rem !important;
}

.fi-pagination-item {
    border-inline-width: 0 !important;
    border-color: transparent !important;
}

.fi-pagination-item-button {
    background: transparent !important;
}

.fi-pagination-item-button:hover,
.fi-pagination-item-button:focus-visible {
    background: rgba(255, 255, 255, 0.06) !important;
}

.fi-pagination-item.fi-active .fi-pagination-item-button,
.fi-pagination-item[aria-current="page"] .fi-pagination-item-button {
    background: rgba(138, 180, 255, 0.16) !important;
}

.fi-pagination-item-icon {
    color: var(--crm-text-soft) !important;
}

.fi-pagination-item-label {
    color: var(--crm-text) !important;
}

.fi-pagination-item.fi-active .fi-pagination-item-label {
    color: #eef4ff !important;
}

.fi-pagination-item.fi-disabled .fi-pagination-item-label,
.fi-pagination-item.fi-disabled .fi-pagination-item-icon {
    color: var(--crm-text-soft) !important;
    opacity: 0.65;
}

.fi-pagination .fi-btn,
.fi-pagination button,
.fi-pagination a {
    border-color: rgba(255, 255, 255, 0.08) !important;
    border-radius: 9999px !important;
    background: rgba(255, 255, 255, 0.04) !important;
    color: var(--crm-text) !important;
}

.fi-pagination .fi-btn:hover,
.fi-pagination button:hover,
.fi-pagination a:hover {
    background: rgba(255, 255, 255, 0.08) !important;
}

.fi-pagination [aria-current="page"] {
    border-color: rgba(138, 180, 255, 0.3) !important;
    background: rgba(138, 180, 255, 0.16) !important;
    color: #fff !important;
}

.fi-empty-state,
.fi-ta-empty-state {
    border: 1px dashed rgba(255, 255, 255, 0.12);
    border-radius: var(--crm-radius-lg);
    background: rgba(255, 255, 255, 0.03);
    color: var(--crm-text-muted);
}

.sendportal-shell {
    color: var(--crm-text);
}

.sendportal-shell .main-header {
    padding: 2.3rem 2.3rem 0 !important;
}

.sendportal-shell .sidebar .sidebar-inner {
    margin: 0 !important;
}

.sendportal-shell body,
body.sendportal-shell {
    color: var(--crm-text);
}

.sendportal-shell a {
    transition: color 180ms ease, opacity 180ms ease, background 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.sendportal-layout {
    min-height: 100vh;
}

.sendportal-sidebar {
    width: calc(5.5rem + var(--crm-sidebar-width));
    min-width: calc(5.5rem + var(--crm-sidebar-width));
    max-width: calc(5.5rem + var(--crm-sidebar-width));
    padding: 0;
    border-right: 0;
    background: transparent;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    overflow: hidden;
}

.sendportal-sidebar__inner {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    min-height: 100%;
}

.sendportal-brand {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    padding: 1rem 1.05rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--crm-radius-lg);
    background: rgba(255, 255, 255, 0.05);
    text-decoration: none;
    box-shadow: var(--crm-shadow-soft);
}

.sendportal-brand:hover {
    text-decoration: none;
    transform: translateY(-1px);
}

.sendportal-brand__eyebrow {
    color: var(--crm-accent-strong);
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
}

.sendportal-brand__title {
    color: var(--crm-text);
    font-size: 1.3rem;
    font-weight: 700;
}

.sendportal-brand__copy {
    color: var(--crm-text-muted);
    font-size: 0.84rem;
    line-height: 1.55;
}

.sendportal-suite-sidebar {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 100vh;
    height: 100%;
    display: flex;
    flex-direction: column;
    border-inline-end: 1px solid rgba(255, 255, 255, 0.08);
    transform: none !important;
    box-shadow: none !important;
    ring-color: transparent !important;
}

.sendportal-suite-sidebar .fi-sidebar-header {
    display: flex;
    align-items: center;
    position: sticky;
    top: 0;
    z-index: 2;
    height: 4rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

.sendportal-suite-sidebar .fi-logo {
    color: var(--crm-text) !important;
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

.sendportal-suite-sidebar .fi-sidebar-nav,
.sendportal-suite-sidebar .fi-sidebar-nav-groups,
.sendportal-suite-sidebar .fi-sidebar-group-items {
    display: flex;
    flex-direction: column;
}

.sendportal-suite-sidebar .fi-sidebar-nav {
    flex: 1 1 auto;
    gap: 1.75rem;
    padding: 2rem 1.5rem 2rem;
}

.sendportal-suite-sidebar .fi-sidebar-nav-groups {
    gap: 1.75rem;
    margin-left: -0.5rem;
    margin-right: -0.5rem;
}

.sendportal-suite-sidebar .fi-sidebar-group {
    gap: 0.25rem;
}

.sendportal-suite-sidebar .fi-sidebar-group-items {
    gap: 0.25rem;
}

.sendportal-suite-sidebar .fi-sidebar-group-button {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.75rem;
    padding: 0.5rem;
    min-height: auto;
}

.sendportal-suite-sidebar .fi-sidebar-group-collapse-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: -0.5rem;
    margin-right: -0.5rem;
    margin-bottom: -0.5rem;
    margin-left: auto;
    height: 2.25rem;
    width: 2.25rem;
    min-height: 2.25rem;
    min-width: 2.25rem;
    padding: 0;
    border: 0 !important;
    border-radius: 0.5rem !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--crm-text-soft) !important;
}

.sendportal-suite-sidebar .fi-sidebar-group-collapse-button .fi-icon-btn-icon {
    width: 1.25rem !important;
    height: 1.25rem !important;
    color: inherit !important;
}

.sendportal-suite-sidebar .fi-sidebar-group:hover .fi-sidebar-group-collapse-button,
.sendportal-suite-sidebar .fi-sidebar-group.fi-active .fi-sidebar-group-collapse-button {
    color: var(--crm-text-muted) !important;
}

.sendportal-suite-sidebar .fi-sidebar-group-collapse-button:hover,
.sendportal-suite-sidebar .fi-sidebar-group-collapse-button:focus-visible {
    color: var(--crm-text-muted) !important;
    background: transparent !important;
}

.sendportal-suite-sidebar .fi-sidebar-group-collapse-button:hover {
    transform: none;
}

.sendportal-suite-sidebar .fi-sidebar-item-button {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.75rem;
    padding: 0.5rem;
    text-decoration: none !important;
}

.sendportal-suite-sidebar .fi-sidebar-item-label,
.sendportal-suite-sidebar .fi-sidebar-group-label {
}

.sendportal-suite-sidebar .fi-sidebar-item-icon {
    width: 1.5rem !important;
    height: 1.5rem !important;
    min-width: 1.5rem;
    min-height: 1.5rem;
    flex: none;
}

.sendportal-suite-sidebar .fi-sidebar-group-button:hover,
.sendportal-suite-sidebar .fi-sidebar-item-button:hover {
    background: rgba(255, 255, 255, 0.05) !important;
    color: var(--crm-text) !important;
    transform: translateX(2px);
    text-decoration: none !important;
}

.sendportal-suite-sidebar .fi-sidebar-group-button:hover .fi-sidebar-group-label,
.sendportal-suite-sidebar .fi-sidebar-item-button:hover .fi-sidebar-item-label {
    color: var(--crm-text) !important;
}

.sendportal-suite-sidebar .fi-sidebar-item-button:hover .fi-sidebar-item-icon,
.sendportal-suite-sidebar .fi-sidebar-group-button:hover .fi-sidebar-group-collapse-button {
    color: var(--crm-text-muted) !important;
}

.sendportal-sidebar-group + .sendportal-sidebar-group {
    margin-top: 1rem;
}

.fi-sidebar-footer,
.sendportal-suite-sidebar .fi-sidebar-footer {
    margin-top: auto;
    padding: 1rem 1.5rem 1.5rem;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.015)),
        rgba(10, 15, 24, 0.18);
}

.crm-sidebar-account {
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
}

.crm-sidebar-account--compact {
    position: relative;
    width: fit-content;
    gap: 0;
}

.crm-sidebar-account__trigger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 0;
    background: transparent;
    border-radius: 9999px;
    cursor: pointer;
}

.crm-sidebar-account__trigger:focus-visible {
    outline: 2px solid rgba(138, 180, 255, 0.75);
    outline-offset: 4px;
}

.crm-sidebar-account--compact .crm-sidebar-account__avatar {
    width: 2.8rem;
    height: 2.8rem;
    border: 1px solid rgba(255, 255, 255, 0.16);
}

.crm-sidebar-account__popover {
    position: absolute;
    inset-inline-start: calc(100% + 0.75rem);
    bottom: 0;
    width: 18rem;
    max-width: min(18rem, calc(100vw - 7rem));
    padding: 1rem;
    border: 1px solid var(--crm-border);
    border-radius: 1.35rem;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.025)),
        linear-gradient(180deg, rgba(10, 15, 24, 0.98), rgba(13, 18, 30, 0.98));
    backdrop-filter: blur(22px);
    -webkit-backdrop-filter: blur(22px);
    box-shadow: var(--crm-shadow);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateX(-0.35rem) translateY(0.25rem);
    transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease;
    z-index: 60;
}

.crm-sidebar-account--compact:hover .crm-sidebar-account__popover,
.crm-sidebar-account--compact:focus-within .crm-sidebar-account__popover,
.crm-sidebar-account--compact.is-open .crm-sidebar-account__popover {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(0) translateY(0);
}

.crm-sidebar-account__popover-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.9rem;
}

.crm-sidebar-account__profile-link {
    color: var(--crm-accent-strong);
    font-size: 0.78rem;
    font-weight: 700;
    text-decoration: none;
    transition: color 180ms ease, opacity 180ms ease;
}

.crm-sidebar-account__profile-link:hover,
.crm-sidebar-account__profile-link:focus-visible {
    color: #ffffff;
}

.crm-sidebar-account__actions--popover {
    gap: 0.85rem;
}

.crm-sidebar-account__logout-btn--compact {
    width: 100%;
}

.crm-sidebar-account__identity {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    min-width: 0;
}

.crm-sidebar-account__avatar {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 9999px;
    object-fit: cover;
    flex: none;
    box-shadow:
        0 10px 24px rgba(8, 12, 20, 0.28),
        0 0 0 1px rgba(255, 255, 255, 0.12);
}

.crm-sidebar-account__name {
    margin: 0;
    color: var(--crm-text);
    font-size: 0.92rem;
    font-weight: 650;
    line-height: 1.3;
}

.crm-sidebar-account__email {
    margin: 0.15rem 0 0;
    color: var(--crm-text-muted);
    font-size: 0.78rem;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.crm-sidebar-account__actions {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.crm-sidebar-account__theme {
    width: fit-content;
    padding: 0.2rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.03);
}

.crm-sidebar-account__logout {
    margin: 0;
}

.crm-sidebar-account__logout-btn {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0.65rem;
    width: 100%;
    padding: 0.72rem 0.9rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.06);
    color: var(--crm-text);
    font-size: 0.88rem;
    font-weight: 600;
    transition: background 180ms ease, color 180ms ease, border-color 180ms ease, transform 180ms ease;
}

.crm-sidebar-account__logout-btn:hover,
.crm-sidebar-account__logout-btn:focus-visible {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.14);
    color: #fff;
    transform: translateX(2px);
    text-decoration: none;
}

.crm-sidebar-account__logout-btn svg {
    width: 1.1rem;
    height: 1.1rem;
    flex: none;
}

.sendportal-sidebar-group-title {
    margin: 0 0 0.55rem;
    padding: 0 0.35rem;
    color: var(--crm-accent-strong);
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
}

.sendportal-sidebar-nav {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.sendportal-sidebar-link {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    padding: 0.9rem 1rem;
    border: 1px solid transparent;
    border-radius: 1.15rem;
    color: var(--crm-text-muted);
    font-size: 0.95rem;
    font-weight: 600;
    text-decoration: none;
}

.sendportal-sidebar-link:hover,
.sendportal-sidebar-link:focus {
    color: var(--crm-text);
    text-decoration: none;
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(255, 255, 255, 0.08);
}

.sendportal-sidebar-link.is-active {
    color: var(--crm-text);
    border-color: rgba(138, 180, 255, 0.24);
    background:
        linear-gradient(180deg, rgba(138, 180, 255, 0.14), rgba(255, 255, 255, 0.03)),
        rgba(255, 255, 255, 0.03);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.sendportal-sidebar-link i {
    width: 1.1rem;
    color: #c6d3ea;
}

.sendportal-main {
    padding: 1.1rem;
    background:
        radial-gradient(circle at top, rgba(255, 255, 255, 0.04), transparent 26%),
        linear-gradient(180deg, rgba(9, 14, 24, 0.58), rgba(9, 14, 24, 0.32));
}

.sendportal-shell .main-wrapper.sendportal-main {
    background:
        radial-gradient(circle at top, rgba(255, 255, 255, 0.04), transparent 26%),
        linear-gradient(180deg, rgba(9, 14, 24, 0.58), rgba(9, 14, 24, 0.32)) !important;
}

html:not(.dark) .sendportal-main,
html:not(.dark) .sendportal-shell .main-wrapper.sendportal-main {
    background:
        radial-gradient(circle at top, rgba(37, 99, 235, 0.03), transparent 24%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 247, 252, 0.94)) !important;
    background-color: #ffffff !important;
}

.sendportal-main > .main-header,
.sendportal-main > .sendportal-content {
    width: 100%;
    max-width: 80rem;
    margin-inline: auto;
    padding-inline: 1rem;
}

.sendportal-sidebar .close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    z-index: 30;
    color: rgba(255, 255, 255, 0.72);
    text-shadow: none;
    opacity: 1;
}

.sendportal-sidebar .close:hover,
.sendportal-sidebar .close:focus {
    color: #ffffff;
}

.sendportal-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
    padding: 1rem 1.15rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--crm-radius-lg);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.025)),
        rgba(10, 15, 24, 0.48);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    box-shadow: var(--crm-shadow-soft);
}

.sendportal-page-header {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-bottom: 2rem;
}

.sendportal-page-header__content {
    min-width: 0;
}

.sendportal-page-header__breadcrumbs {
    display: none;
    margin-bottom: 0.5rem;
}

.sendportal-page-header__breadcrumbs .fi-breadcrumbs-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

.sendportal-page-header__breadcrumbs .fi-breadcrumbs-item {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
}

.sendportal-page-header__heading {
    margin: 0;
}

.sendportal-page-header__actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.sendportal-page-header__actions > * {
    margin: 0 !important;
}

.sendportal-page-header__actions > form,
.sendportal-page-header__actions > div,
.sendportal-page-header__actions > a,
.sendportal-page-header__actions > button {
    flex-shrink: 0;
}

.sendportal-page-header .fi-breadcrumbs-item-separator {
    width: 1.25rem;
    height: 1.25rem;
    color: #9ca3af;
}

.sendportal-page-header .fi-breadcrumbs-item-separator.ltr\:hidden {
    display: none;
}

[dir="rtl"] .sendportal-page-header .fi-breadcrumbs-item-separator.rtl\:hidden {
    display: none;
}

[dir="rtl"] .sendportal-page-header .fi-breadcrumbs-item-separator.ltr\:hidden {
    display: inline-flex;
}

.sendportal-page-header .fi-breadcrumbs-item-label {
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.25rem;
}

.sendportal-page-header .fi-header-heading {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 2rem;
}

html:not(.dark) .sendportal-topbar {
    border-color: rgba(15, 23, 42, 0.08);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(255, 255, 255, 0.82)),
        rgba(255, 255, 255, 0.78);
    box-shadow: 0 20px 55px rgba(148, 163, 184, 0.18);
}

.sendportal-topbar__title {
    margin: 0;
    color: var(--crm-text);
    font-size: clamp(1.4rem, 2vw, 2rem);
    font-weight: 700;
}

.sendportal-topbar__meta {
    color: var(--crm-text-muted);
    font-size: 0.88rem;
}

.sendportal-mobile-toggle {
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.06);
    color: var(--crm-text);
    box-shadow: none;
}

.sendportal-content {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    padding-bottom: 1.125rem;
}

html:not(.dark) .sendportal-sidebar {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(250, 252, 255, 0.96)) !important;
    border-inline-end: 1px solid rgba(15, 23, 42, 0.06);
}

html:not(.dark) .sendportal-suite-sidebar .fi-sidebar-header {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.92)) !important;
}

html:not(.dark) .sendportal-sidebar .modal-content.bg-transparent,
html:not(.dark) .sendportal-sidebar .modal-body {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(250, 252, 255, 0.96)) !important;
}

html:not(.dark) .modal-backdrop.show {
    opacity: 1;
    background: rgba(15, 23, 42, 0.08);
}

html:not(.dark) .sendportal-shell .card,
html:not(.dark) .sendportal-shell .dropdown-menu,
html:not(.dark) .sendportal-shell .note-editor.note-frame,
html:not(.dark) .sendportal-shell .bootstrap-select > .dropdown-toggle {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.9)) !important;
    border-color: rgba(15, 23, 42, 0.08) !important;
    box-shadow: 0 16px 40px rgba(148, 163, 184, 0.14) !important;
}

html:not(.dark) .sendportal-shell .card-header,
html:not(.dark) .sendportal-shell .card-header.card-header-accent {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95)) !important;
    border-bottom: 1px solid rgba(15, 23, 42, 0.08) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .sendportal-shell .card-body,
html:not(.dark) .sendportal-shell .card.sendportal-card .card-body,
html:not(.dark) .sendportal-shell .sendportal-card .card-body {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95)) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .sendportal-shell .template-preview-drawer.modal-right .modal-content {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.96)) !important;
}

html:not(.dark) .sendportal-shell .sendportal-template-preview-drawer__header {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.96)) !important;
}

html:not(.dark) .sendportal-shell .sendportal-template-preview-drawer__frame-wrap {
    background:
        linear-gradient(180deg, rgba(248, 250, 252, 0.98), rgba(241, 245, 249, 0.95)) !important;
}

html:not(.dark) .sendportal-shell .table {
    color: var(--crm-text);
}

html:not(.dark) .sendportal-shell .table thead th {
    background: rgba(248, 250, 252, 0.92);
    color: var(--crm-text-soft);
}

html:not(.dark) .sendportal-shell .table td {
    border-color: rgba(15, 23, 42, 0.08);
}

html:not(.dark) .sendportal-shell .table tbody tr:hover {
    background: rgba(37, 99, 235, 0.04);
}

html:not(.dark) .sendportal-shell .form-control,
html:not(.dark) .sendportal-shell .custom-select,
html:not(.dark) .sendportal-shell .btn-light,
html:not(.dark) .sendportal-shell .dropdown-toggle.btn-light {
    background: rgba(255, 255, 255, 0.92);
    border-color: rgba(15, 23, 42, 0.1);
    color: var(--crm-text);
}

html:not(.dark) .sendportal-shell select.form-control,
html:not(.dark) .sendportal-shell select.custom-select,
html:not(.dark) .sendportal-shell .bootstrap-select > .dropdown-toggle {
    border-radius: var(--crm-radius-md) !important;
    line-height: 1.25 !important;
}

html:not(.dark) .sendportal-shell .form-control::placeholder {
    color: #94a3b8;
}

html:not(.dark) .sendportal-shell .btn-secondary,
html:not(.dark) .sendportal-shell .btn-default {
    background: rgba(241, 245, 249, 0.95);
    border-color: rgba(15, 23, 42, 0.08);
    color: var(--crm-text);
}

html:not(.dark) .sendportal-mobile-toggle,
html:not(.dark) .crm-sidebar-account__logout-btn,
html:not(.dark) .crm-sidebar-account__theme {
    background: rgba(255, 255, 255, 0.92);
    border-color: rgba(15, 23, 42, 0.08);
    color: var(--crm-text);
}

.sendportal-actions {
    display: flex;
    flex-direction: column;
    gap: 0.9rem;
}

.sendportal-shell .sendportal-nav-pills {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    padding: 0.35rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.04) !important;
    list-style: none;
}

html:not(.dark) .sendportal-shell .sendportal-nav-pills {
    padding: 0.45rem;
    border-color: rgba(15, 23, 42, 0.08) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95)),
        rgba(255, 255, 255, 0.96) !important;
    box-shadow: 0 12px 28px rgba(148, 163, 184, 0.14);
}

.sendportal-shell .sendportal-nav-pills .nav-item {
    margin: 0 !important;
}

.sendportal-shell .sendportal-nav-pills .nav-link,
.sendportal-shell .nav-pills.sendportal-nav-pills .nav-link,
.sendportal-shell .nav-pills a.nav-link {
    margin-right: 0 !important;
    border: 1px solid transparent !important;
    border-bottom: 0 !important;
    border-radius: 9999px !important;
    background: transparent !important;
    color: var(--crm-text-muted) !important;
    font-size: 0.88rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    padding: 0.72rem 1rem !important;
    text-decoration: none !important;
    box-shadow: none !important;
}

.sendportal-shell .sendportal-nav-pills .nav-link.active,
.sendportal-shell .sendportal-nav-pills .nav-link:hover,
.sendportal-shell .sendportal-nav-pills .nav-link:focus,
.sendportal-shell .nav-pills.sendportal-nav-pills .nav-link.active,
.sendportal-shell .nav-pills.sendportal-nav-pills .nav-link:hover {
    border-color: rgba(138, 180, 255, 0.24) !important;
    background: rgba(138, 180, 255, 0.14) !important;
    color: var(--crm-text) !important;
}

.sendportal-shell .card,
.sendportal-card {
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--crm-radius-xl);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.09), rgba(255, 255, 255, 0.02)),
        linear-gradient(180deg, rgba(13, 18, 30, 0.76), rgba(9, 13, 23, 0.68));
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    box-shadow: var(--crm-shadow-soft);
    overflow: visible;
}

.sendportal-shell .card-header {
    padding: 1rem 1.15rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.03);
}

.sendportal-shell .card-body,
.sendportal-shell .card-table {
    /* padding: 1rem 1.15rem; */
}

.sendportal-shell .card-body,
.sendportal-shell .card.sendportal-card .card-body,
.sendportal-shell .sendportal-card .card-body {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.015)),
        rgba(10, 15, 24, 0.38) !important;
    color: var(--crm-text) !important;
}

.sendportal-shell .card-table {
    padding-top: 0.35rem;
}

.sendportal-shell .dropdown,
.sendportal-shell .btn-group {
    position: relative;
}

.sendportal-shell .table {
    width: 100%;
    margin-bottom: 0 !important;
    color: var(--crm-text) !important;
    background: transparent !important;
}

.sendportal-shell .table thead th {
    border-top: 0 !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    background: rgba(255, 255, 255, 0.02) !important;
    color: var(--crm-text-soft) !important;
    font-size: 0.72rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
}

.sendportal-shell .table td,
.sendportal-shell .table th {
    padding: 0.5rem 1rem !important;
    border-color: rgba(255, 255, 255, 0.06) !important;
}

.sendportal-shell .table td {
    background: transparent !important;
    color: var(--crm-text) !important;
    vertical-align: middle !important;
}

.sendportal-shell .table a {
    color: var(--crm-text) !important;
}

.sendportal-shell .table a:hover {
    color: var(--crm-accent-strong) !important;
    text-decoration: none !important;
}

.sendportal-shell .table tbody tr:hover {
    background: rgba(255, 255, 255, 0.03) !important;
}

.sendportal-shell .card-table.table-responsive,
.sendportal-shell .sendportal-table-wrap.table-responsive {
    padding-top: 0.35rem;
    border-radius: 0 0 var(--crm-radius-xl) var(--crm-radius-xl);
}

.sendportal-shell .empty-table-text {
    margin: 0;
    color: var(--crm-text-muted);
}

.sendportal-shell .btn,
.sendportal-shell button.btn,
.sendportal-shell a.btn,
.sendportal-shell .btn-group > .btn,
.sendportal-shell .btn-group > .dropdown-toggle {
    border: 1px solid transparent !important;
    border-radius: 1rem !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    box-shadow: none !important;
    transition: transform 180ms ease, background 180ms ease, color 180ms ease, border-color 180ms ease !important;
}

.sendportal-shell .btn:hover,
.sendportal-shell button.btn:hover,
.sendportal-shell a.btn:hover,
.sendportal-shell .btn-group > .btn:hover,
.sendportal-shell .btn-group > .dropdown-toggle:hover {
    transform: translateY(-1px);
}

.sendportal-shell .btn-sm {
    padding: 0.48rem 0.85rem !important;
    font-size: 0.78rem !important;
    /* min-height: 2.35rem; */
}

.sendportal-shell .btn-md,
.sendportal-shell .btn:not(.btn-sm):not(.btn-lg) {
    padding: 0.72rem 1.05rem !important;
    font-size: 0.88rem !important;
    /* min-height: 3.1rem; */
}

.sendportal-shell .btn-wide {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
}

.sendportal-shell .btn-flat {
    min-height: 2.85rem;
    padding-left: 1.15rem !important;
    padding-right: 1.15rem !important;
}

.sendportal-shell .btn-primary.btn-flat {
    border-color: rgba(138, 180, 255, 0.26) !important;
    background:
        linear-gradient(180deg, rgba(120, 164, 255, 0.28), rgba(92, 139, 240, 0.18)),
        rgba(17, 34, 67, 0.88) !important;
    color: #f7faff !important;
    box-shadow:
        0 12px 24px rgba(34, 72, 150, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
}

.sendportal-shell .btn-primary.btn-flat:hover,
.sendportal-shell .btn-primary.btn-flat:focus {
    border-color: rgba(167, 202, 255, 0.34) !important;
    background:
        linear-gradient(180deg, rgba(141, 184, 255, 0.32), rgba(103, 151, 248, 0.22)),
        rgba(20, 39, 75, 0.92) !important;
    color: #ffffff !important;
    box-shadow:
        0 16px 28px rgba(41, 84, 170, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}

.sendportal-shell .btn-light.btn-flat,
.sendportal-shell .btn-secondary.btn-flat {
    background: rgba(255, 255, 255, 0.1) !important;
}

.sendportal-shell .btn-default {
    border-color: rgba(255, 255, 255, 0.1) !important;
    background: rgba(255, 255, 255, 0.06) !important;
    color: var(--crm-text) !important;
}

.sendportal-shell .btn-primary {
    border-color: rgba(138, 180, 255, 0.26) !important;
    background:
        linear-gradient(180deg, rgba(120, 164, 255, 0.28), rgba(92, 139, 240, 0.18)),
        rgba(17, 34, 67, 0.88) !important;
    color: #f7faff !important;
    box-shadow:
        0 12px 24px rgba(34, 72, 150, 0.22),
        inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
}

.sendportal-shell .btn-primary:hover,
.sendportal-shell .btn-primary:focus {
    border-color: rgba(167, 202, 255, 0.34) !important;
    background:
        linear-gradient(180deg, rgba(141, 184, 255, 0.32), rgba(103, 151, 248, 0.22)),
        rgba(20, 39, 75, 0.92) !important;
    color: #ffffff !important;
    box-shadow:
        0 16px 28px rgba(41, 84, 170, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}

.sendportal-shell .btn-secondary {
    border-color: rgba(255, 255, 255, 0.12) !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: var(--crm-text) !important;
}

.sendportal-shell .btn-secondary:hover,
.sendportal-shell .btn-secondary:focus {
    background: rgba(255, 255, 255, 0.14) !important;
    color: #fff !important;
}

.sendportal-shell .btn-light,
.sendportal-shell .dropdown-toggle.btn-light {
    border-color: rgba(255, 255, 255, 0.1) !important;
    background: rgba(255, 255, 255, 0.06) !important;
    color: var(--crm-text) !important;
}

.sendportal-shell .btn-light:hover,
.sendportal-shell .dropdown-toggle.btn-light:hover {
    background: rgba(255, 255, 255, 0.1) !important;
    color: #fff !important;
}

.sendportal-shell .btn-danger {
    border-color: rgba(255, 140, 161, 0.28) !important;
    background: rgba(255, 140, 161, 0.14) !important;
    color: #fff1f4 !important;
}

.sendportal-shell .btn-danger:hover,
.sendportal-shell .btn-danger:focus {
    background: rgba(255, 140, 161, 0.22) !important;
    color: #fff !important;
}

.sendportal-shell .form-control,
.sendportal-shell .custom-select {
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: var(--crm-radius-md);
    background: rgba(255, 255, 255, 0.06);
    color: var(--crm-text);
    line-height: 1.25;
    /* min-height: 3.35rem; */
    /* padding: 0.9rem 1rem; */
}

.sendportal-shell select.form-control,
.sendportal-shell select.custom-select {
    min-height: var(--crm-control-compact-height);
    padding-top: 0.6rem;
    padding-bottom: 0.6rem;
    border-radius: var(--crm-radius-md);
    line-height: 1.25;
}

.sendportal-shell .form-control::placeholder {
    color: var(--crm-text-soft);
}

.sendportal-shell textarea.form-control {
    min-height: 11rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.sendportal-form {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.sendportal-form-group {
    display: grid;
    grid-template-columns: minmax(0, 80px) minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
    margin: 0;
}
.sendportal-form-group.form-group-transactional_email_service_id{
    grid-template-columns: minmax(0, 0.5fr) minmax(0, 1fr);
}

.automation-step-card .automation-step-stack {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.automation-step-card .sendportal-form-group {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.automation-step-card .sendportal-form-group > label {
    margin: 0;
    padding-top: 0;
}

.sendportal-form-label {
    display: block;
    padding-top: 0.85rem;
    color: var(--crm-text-muted);
    /* font-size: 0.86rem; */
    /* font-weight: 700; */
    /* text-transform: uppercase; */
}

.sendportal-form-label-with-tooltip {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    min-width: 0;
}

.sendportal-form-tooltip {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background: transparent;
    padding: 0;
    color: var(--crm-text-soft);
    font-size: 0.9rem;
    line-height: 1;
    cursor: help;
    transition: color 180ms ease, transform 180ms ease;
}

.sendportal-form-tooltip:hover,
.sendportal-form-tooltip:focus {
    color: var(--crm-accent-strong);
    transform: translateY(-1px);
}

.sendportal-form-field {
    min-width: 0;
}

.sendportal-form-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.75rem;
    padding-top: 0.5rem;
}

.sendportal-template-editor-modal {
    position: fixed;
    inset: 0;
    z-index: 1035;
    display: flex;
    align-items: stretch;
    justify-content: stretch;
    overflow: hidden;
}

.sendportal-template-editor-modal__backdrop {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at top, rgba(255, 255, 255, 0.92), rgba(247, 250, 252, 0.86) 42%, rgba(226, 232, 240, 0.9)),
        rgba(248, 250, 252, 0.88);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}

html.dark .sendportal-template-editor-modal__backdrop {
    background:
        radial-gradient(circle at top, rgba(15, 23, 42, 0.96), rgba(15, 23, 42, 0.9) 38%, rgba(2, 6, 23, 0.96)),
        rgba(2, 6, 23, 0.92);
}

.sendportal-template-editor-modal__dialog {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    width: 100vw;
    height: 100vh;
    min-height: 100dvh;
    overflow: hidden;
    background: var(--crm-surface-soft);
    box-shadow: 0 24px 70px rgba(15, 23, 42, 0.16);
}

.sendportal-template-editor-modal__header,
.sendportal-template-editor-modal__footer {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.1rem 1.5rem;
    background: var(--crm-surface-elevated);
}

.sendportal-template-editor-modal__header {
    align-items: flex-start;
    border-bottom: 1px solid var(--crm-border);
}

.sendportal-template-editor-modal__footer {
    border-top: 1px solid var(--crm-border);
}

.sendportal-template-editor-modal__footer-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-left: auto;
}

.sendportal-template-editor-modal__eyebrow {
    margin: 0;
    color: var(--crm-accent-strong);
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
}

.sendportal-template-editor-modal__title {
    margin: 0.2rem 0 0;
    color: var(--crm-text);
    font-size: 1.3rem;
    font-weight: 800;
}

.sendportal-template-editor-modal__subtitle {
    margin: 0.35rem 0 0;
    color: var(--crm-text-muted);
    font-size: 0.92rem;
    line-height: 1.55;
}

.sendportal-template-editor-modal__body {
    flex: 1 1 auto;
    min-height: 0;
    overflow: hidden;
    padding: 1rem 1.5rem 1.25rem;
}

.sendportal-template-editor-modal__form {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    height: 100%;
    min-height: 0;
}

.sendportal-template-editor-modal__form .sendportal-form-group.form-group-name {
    margin-bottom: 0;
}

.sendportal-template-editor-modal__footer {
    align-items: flex-end;
    flex-wrap: wrap;
}

.sendportal-template-editor-modal__footer-test-send {
    display: grid;
    gap: 0.45rem;
    flex: 1 1 26rem;
    min-width: 0;
    max-width: 44rem;
}

.sendportal-template-editor-modal__footer-test-send-label {
    margin: 0;
    color: var(--crm-text-muted);
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
}

.sendportal-template-editor-modal__footer-test-send-row {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.sendportal-template-editor-modal__footer-test-send-field {
    flex: 1 1 15rem;
    min-width: 0;
}

.sendportal-template-editor-modal__footer-test-send-field .form-control {
    min-height: var(--crm-control-compact-height);
}

.sendportal-template-editor-modal__footer .btn {
    flex: 0 0 auto;
}

.sendportal-template-editor-workspace {
    display: grid;
    grid-template-columns: minmax(0, 20rem) minmax(0, 1fr);
    gap: 1rem;
    flex: 1 1 auto;
    min-height: 0;
    height: 100%;
}

.sendportal-template-editor-workspace__sidebar {
    min-width: 0;
    min-height: 0;
    border: 1px solid var(--crm-border);
    border-radius: var(--crm-radius-lg);
    background: var(--crm-surface-elevated);
    box-shadow: var(--crm-shadow-soft);
    overflow: hidden;
    transition: opacity 180ms ease, transform 180ms ease, max-width 180ms ease;
}

.sendportal-template-editor-workspace__main {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    min-width: 0;
    min-height: 0;
}

.sendportal-template-editor-workspace.is-sidebar-collapsed {
    grid-template-columns: minmax(0, 0px) minmax(0, 1fr);
    gap: 0;
}

.sendportal-template-editor-workspace.is-sidebar-collapsed .sendportal-template-editor-workspace__sidebar {
    max-width: 0;
    opacity: 0;
    pointer-events: none;
    transform: translateX(-0.5rem);
}

.sendportal-template-starters {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
}

.sendportal-template-starters__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.1rem;
    border-bottom: 1px solid var(--crm-border);
    background: var(--crm-surface);
}

.sendportal-template-starters__eyebrow {
    margin: 0;
    color: var(--crm-accent-strong);
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
}

.sendportal-template-starters__title {
    margin: 0.2rem 0 0;
    color: var(--crm-text);
    font-size: 0.98rem;
    font-weight: 800;
}

.sendportal-template-starters__list {
    display: grid;
    gap: 0.75rem;
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    padding: 1rem 1.1rem 0;
}

.sendportal-template-starters__card {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
    width: 100%;
    /* padding: 0.8rem; */
    border: 1px solid var(--crm-border);
    border-radius: 1rem;
    background: var(--crm-surface);
    color: inherit;
    text-align: left;
    overflow: hidden;
    box-shadow: none;
    cursor: pointer;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.sendportal-template-starters__card:hover {
    border-color: var(--crm-accent);
    box-shadow: 0 0 0 1px rgba(37, 99, 235, 0.16);
    transform: translateY(-1px);
}

.sendportal-template-starters__card:focus-visible {
    outline: none;
    border-color: var(--crm-accent);
    box-shadow: inset 0 0 0 2px var(--crm-accent);
}

.sendportal-template-starters__thumb {
    position: relative;
    height: 100%;
    border: 0;
    border-radius: 0.85rem;
    background: transparent;
    overflow: hidden;
}

.sendportal-template-starters__thumb-frame {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    background: #ffffff;
    pointer-events: none;
    scrollbar-width: none;
}

.sendportal-template-starters__thumb-frame::-webkit-scrollbar {
    display: none;
}

.sendportal-template-starters__card-body {
    display: grid;
    gap: 0.35rem;
    min-width: 0;
}

.sendportal-template-starters__card-title {
    color: var(--crm-text);
    font-size: 0.85rem;
    font-weight: 400;
    line-height: 1.3;
    text-align: center;
}

.sendportal-template-starters__meta {
    margin: 0;
}

.sendportal-filter-bar {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.sendportal-filter-bar .form-control,
.sendportal-filter-bar .bootstrap-select > .dropdown-toggle,
.sendportal-filter-bar .btn {
    margin-right: 0 !important;
    height: var(--crm-control-compact-height) !important;
    min-height: var(--crm-control-compact-height) !important;
    max-height: var(--crm-control-compact-height) !important;
}

.sendportal-filter-bar > .form-control,
.sendportal-filter-bar__item,
.sendportal-filter-bar > .btn,
.sendportal-filter-bar > a.btn {
    flex: 0 0 auto;
}

.sendportal-filter-bar > .form-control {
    min-width: 14rem;
    padding-top: 0.55rem !important;
    padding-bottom: 0.55rem !important;
}

.sendportal-filter-bar__item .form-control,
.sendportal-filter-bar__item .bootstrap-select,
.sendportal-filter-bar__item .bootstrap-select > .dropdown-toggle {
    min-width: 10.5rem;
}

.sendportal-filter-bar .form-control-sm,
.sendportal-filter-bar .bootstrap-select.form-control-sm > .dropdown-toggle,
.sendportal-filter-bar .btn.btn-md,
.sendportal-filter-bar .btn.btn-light,
.sendportal-filter-bar .btn.btn-primary {
    height: var(--crm-control-compact-height) !important;
    min-height: var(--crm-control-compact-height) !important;
    max-height: var(--crm-control-compact-height) !important;
}

.sendportal-filter-bar .btn {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.sendportal-filter-bar .bootstrap-select > .dropdown-toggle {
    padding-top: 0.55rem !important;
    padding-bottom: 0.55rem !important;
}

.sendportal-form-helper {
    margin: 0 0 0.4rem;
    color: var(--crm-text-muted);
    font-size: 0.9rem;
    line-height: 1.6;
}

.sendportal-form-note {
    margin: 0;
    color: var(--crm-text-soft);
    font-size: 0.82rem;
    line-height: 1.55;
}

.sendportal-shell input[type="checkbox"] {
    width: 1.1rem;
    height: 1.1rem;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 0.35rem;
    background: rgba(255, 255, 255, 0.06);
}

.sendportal-shell input[type="checkbox"]:checked {
    background-color: rgba(138, 180, 255, 0.95);
    border-color: rgba(138, 180, 255, 0.95);
}

.sendportal-checkbox {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    min-height: 3.35rem;
    padding: 0.9rem 1rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--crm-radius-md);
    background: rgba(255, 255, 255, 0.04);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

.sendportal-checkbox__copy {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.sendportal-checkbox__title {
    color: var(--crm-text);
    font-size: 0.94rem;
    font-weight: 600;
}

.sendportal-checkbox__meta {
    color: var(--crm-text-soft);
    font-size: 0.8rem;
}

.sendportal-callout {
    border: 1px solid rgba(255, 140, 161, 0.24);
    border-radius: var(--crm-radius-lg);
    background: rgba(255, 140, 161, 0.12);
    padding: 1.1rem 1.15rem;
    color: #ffd5de;
    box-shadow: var(--crm-shadow-soft);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.sendportal-callout__title {
    margin: 0;
    color: #fff1f4;
    font-size: 1.05rem;
    font-weight: 700;
}

.sendportal-callout__copy {
    margin: 0.45rem 0 0;
    color: #ffd5de;
    line-height: 1.65;
}

.sendportal-shell .form-control:focus,
.sendportal-shell .custom-select:focus {
    border-color: rgba(138, 180, 255, 0.35);
    box-shadow: 0 0 0 3px rgba(138, 180, 255, 0.14);
    background: rgba(255, 255, 255, 0.08);
    color: var(--crm-text);
}

.sendportal-shell .alert {
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--crm-radius-md);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.sendportal-shell .alert-danger {
    border-color: rgba(255, 140, 161, 0.26);
    background: rgba(255, 140, 161, 0.12);
    color: #ffd5de;
}

.sendportal-shell .alert-success {
    border-color: rgba(89, 215, 177, 0.24);
    background: rgba(89, 215, 177, 0.12);
    color: #d2fff2;
}

.sendportal-shell .alert-warning {
    border-color: rgba(255, 214, 131, 0.24);
    background: rgba(255, 214, 131, 0.12);
    color: #ffefc8;
}

html:not(.dark) .sendportal-shell .alert {
    border-color: rgba(15, 23, 42, 0.08) !important;
    background: rgba(255, 255, 255, 0.98) !important;
    color: var(--crm-text) !important;
    box-shadow: 0 14px 34px rgba(148, 163, 184, 0.14) !important;
}

html:not(.dark) .sendportal-shell .alert-success {
    border-color: rgba(187, 247, 208, 0.95) !important;
    background: #f0fdf4 !important;
    color: #14532d !important;
}

html:not(.dark) .sendportal-shell .alert-danger {
    border-color: rgba(254, 202, 202, 0.95) !important;
    background: #fef2f2 !important;
    color: #991b1b !important;
}

html:not(.dark) .sendportal-shell .alert-warning {
    border-color: rgba(253, 230, 138, 0.95) !important;
    background: #fffbeb !important;
    color: #92400e !important;
}

html:not(.dark) .sendportal-shell .alert-info {
    border-color: rgba(191, 219, 254, 0.95) !important;
    background: #eff6ff !important;
    color: #1d4ed8 !important;
}

.sendportal-shell .dropdown-menu {
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 1rem;
    background: rgba(12, 17, 28, 0.92);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    box-shadow: var(--crm-shadow-soft);
}

.sendportal-shell .note-editor.note-frame {
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--crm-radius-lg);
    background: rgba(10, 15, 24, 0.5);
    overflow: hidden;
}

.sendportal-shell .note-toolbar,
.sendportal-shell .note-statusbar {
    border-color: rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
}

.sendportal-shell .note-toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.35rem;
    padding: 0.55rem !important;
}

.sendportal-shell .note-toolbar .note-btn-group {
    display: inline-flex;
    align-items: center;
    gap: 0;
    margin: 0 !important;
}

.sendportal-shell .note-toolbar .note-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 2.25rem !important;
    min-width: 2.25rem !important;
    height: 2.25rem !important;
    min-height: 2.25rem !important;
    padding: 0 !important;
    border-radius: 0 !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    background: rgba(255, 255, 255, 0.05) !important;
    color: var(--crm-text) !important;
    line-height: 1 !important;
    box-shadow: none !important;
}

.sendportal-shell .note-toolbar .note-btn:hover,
.sendportal-shell .note-toolbar .note-btn:focus,
.sendportal-shell .note-toolbar .note-btn.active {
    border-color: rgba(138, 180, 255, 0.34) !important;
    background: rgba(138, 180, 255, 0.14) !important;
    color: #ffffff !important;
}

.sendportal-shell .note-toolbar .dropdown-toggle::after {
    margin-left: 0.25rem;
}

.sendportal-shell .note-current-fontsize {
    min-width: 1.15rem;
    font-size: 0.85rem;
    font-weight: 700;
}

.sendportal-shell .note-editing-area .note-editable {
    background: rgba(255, 255, 255, 0.03);
    color: var(--crm-text);
}

.sendportal-shell .dropdown-item {
    color: #dbe5f4;
}

.sendportal-shell .note-dropdown-menu,
.sendportal-shell .note-dropdown-menu .dropdown-item,
.sendportal-shell .note-dropdown-menu .note-icon-menu-check {
    color: #e5edf9 !important;
}

.sendportal-shell .note-dropdown-menu {
    min-width: 11rem;
    padding: 0.35rem !important;
    border-radius: 0.35rem !important;
    background: #121a2a !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
    box-shadow: 0 18px 42px rgba(2, 6, 23, 0.34) !important;
}

.note-popover {
    z-index: 1055 !important;
    max-width: none !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0.95rem !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
}

.note-popover .popover-content.note-children-container {
    position: relative;
    display: flex;
    max-width: min(26rem, calc(100vw - 1rem));
    flex-wrap: wrap;
    align-items: center;
    gap: 0.4rem;
    padding: 0.45rem !important;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 0.9rem;
    background: rgba(15, 23, 42, 0.96);
    box-shadow: 0 18px 48px rgba(2, 6, 23, 0.34), 0 1px 0 rgba(255, 255, 255, 0.08) inset;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.note-popover .note-btn-group {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    margin: 0 !important;
}

.note-popover .note-btn-group + .note-btn-group {
    border-left: 1px solid rgba(148, 163, 184, 0.22);
    padding-left: 0.4rem;
}

.note-popover .note-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 2.05rem !important;
    min-width: 2.05rem !important;
    height: 2.05rem !important;
    min-height: 2.05rem !important;
    padding: 0 !important;
    border: 1px solid rgba(148, 163, 184, 0.2) !important;
    border-radius: 0.6rem !important;
    background: rgba(255, 255, 255, 0.06) !important;
    color: #dbeafe !important;
    box-shadow: none !important;
    line-height: 1 !important;
}

.note-popover .note-btn:hover,
.note-popover .note-btn:focus {
    border-color: rgba(138, 180, 255, 0.5) !important;
    background: rgba(138, 180, 255, 0.18) !important;
    color: #ffffff !important;
}

.note-popover .note-delete .note-btn:hover,
.note-popover .note-delete .note-btn:focus,
.note-popover .note-remove .note-btn:hover,
.note-popover .note-remove .note-btn:focus,
.note-popover .note-link .note-btn[aria-label="Unlink"]:hover,
.note-popover .note-link .note-btn[aria-label="Unlink"]:focus {
    border-color: rgba(248, 113, 113, 0.45) !important;
    background: rgba(248, 113, 113, 0.16) !important;
    color: #fecaca !important;
}

.note-popover > .arrow {
    position: static !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.note-popover > .arrow::before,
.note-popover > .arrow::after {
    display: none !important;
}

.note-popover .popover-content.note-children-container::before,
.note-popover .popover-content.note-children-container::after {
    content: "";
    position: absolute;
    display: block;
    width: 0.85rem;
    height: 0.85rem;
    border: 0;
    background: rgba(15, 23, 42, 0.96);
    transform: rotate(45deg);
}

.note-popover .popover-content.note-children-container::before {
    border: 1px solid rgba(148, 163, 184, 0.22);
}

.note-popover.bottom .popover-content.note-children-container::before,
.note-popover.bottom .popover-content.note-children-container::after,
.note-popover.bs-popover-bottom .popover-content.note-children-container::before,
.note-popover.bs-popover-bottom .popover-content.note-children-container::after {
    top: -0.36rem;
    left: 50%;
    margin-left: -0.425rem;
}

.note-popover.bottom .popover-content.note-children-container::before,
.note-popover.bs-popover-bottom .popover-content.note-children-container::before {
    border-right: 0;
    border-bottom: 0;
}

.note-popover.top .popover-content.note-children-container::before,
.note-popover.top .popover-content.note-children-container::after,
.note-popover.bs-popover-top .popover-content.note-children-container::before,
.note-popover.bs-popover-top .popover-content.note-children-container::after {
    bottom: -0.36rem;
    left: 50%;
    margin-left: -0.425rem;
}

.note-popover.top .popover-content.note-children-container::before,
.note-popover.bs-popover-top .popover-content.note-children-container::before {
    border-left: 0;
    border-top: 0;
}

.note-popover.left .popover-content.note-children-container::before,
.note-popover.left .popover-content.note-children-container::after,
.note-popover.bs-popover-left .popover-content.note-children-container::before,
.note-popover.bs-popover-left .popover-content.note-children-container::after {
    right: -0.36rem;
    top: 50%;
    margin-top: -0.425rem;
}

.note-popover.left .popover-content.note-children-container::before,
.note-popover.bs-popover-left .popover-content.note-children-container::before {
    border-left: 0;
    border-bottom: 0;
}

.note-popover.right .popover-content.note-children-container::before,
.note-popover.right .popover-content.note-children-container::after,
.note-popover.bs-popover-right .popover-content.note-children-container::before,
.note-popover.bs-popover-right .popover-content.note-children-container::after {
    left: -0.36rem;
    top: 50%;
    margin-top: -0.425rem;
}

.note-popover.right .popover-content.note-children-container::before,
.note-popover.bs-popover-right .popover-content.note-children-container::before {
    border-right: 0;
    border-top: 0;
}

html:not(.dark) .note-popover .popover-content.note-children-container {
    border-color: rgba(15, 23, 42, 0.12);
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 18px 48px rgba(15, 23, 42, 0.14), 0 1px 0 rgba(255, 255, 255, 0.8) inset;
}

html:not(.dark) .note-popover .note-btn {
    border-color: rgba(15, 23, 42, 0.1) !important;
    background: #f8fafc !important;
    color: #334155 !important;
}

html:not(.dark) .note-popover .note-btn:hover,
html:not(.dark) .note-popover .note-btn:focus {
    border-color: rgba(2, 62, 138, 0.28) !important;
    background: #eef6ff !important;
    color: #023E8A !important;
}

html:not(.dark) .note-popover .note-delete .note-btn:hover,
html:not(.dark) .note-popover .note-delete .note-btn:focus,
html:not(.dark) .note-popover .note-remove .note-btn:hover,
html:not(.dark) .note-popover .note-remove .note-btn:focus,
html:not(.dark) .note-popover .note-link .note-btn[aria-label="Unlink"]:hover,
html:not(.dark) .note-popover .note-link .note-btn[aria-label="Unlink"]:focus {
    border-color: rgba(220, 38, 38, 0.24) !important;
    background: #fef2f2 !important;
    color: #b91c1c !important;
}

html:not(.dark) .note-popover .popover-content.note-children-container::before,
html:not(.dark) .note-popover .popover-content.note-children-container::after {
    background: rgba(255, 255, 255, 0.98);
}

html:not(.dark) .note-popover .popover-content.note-children-container::before {
    border-color: rgba(15, 23, 42, 0.12);
}

.sendportal-shell .note-dropdown-menu .dropdown-item {
    display: block;
    min-height: 2rem;
    padding: 0.45rem 0.65rem;
    border-radius: 0 !important;
    font-size: 0.9rem;
    line-height: 1.2;
}

.sendportal-shell .note-dropdown-menu.dropdown-style .dropdown-item :is(p, blockquote, pre, h1, h2, h3, h4, h5, h6) {
    margin: 0 !important;
    color: inherit !important;
    font-size: 0.92rem !important;
    line-height: 1.25 !important;
}

.sendportal-shell .note-dropdown-menu.dropdown-fontsize > .note-icon-menu-check {
    display: contents;
}

.sendportal-shell .note-dropdown-menu.dropdown-fontsize .note-icon-menu-check {
    font-style: normal;
}

.sendportal-shell .note-dropdown-menu.dropdown-fontsize > .note-icon-menu-check,
.sendportal-shell .note-dropdown-menu.dropdown-fontsize .note-icon-menu-check::before {
    display: none !important;
    content: "" !important;
}

.sendportal-shell .sendportal-summernote-fontsize-option {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    width: 100%;
}

.sendportal-shell .sendportal-summernote-fontsize-check {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 1rem;
    min-width: 1rem;
    height: 1rem;
    line-height: 1;
    color: inherit !important;
}

.sendportal-shell .dropdown-fontsize .dropdown-item.active .sendportal-summernote-fontsize-check::before,
.sendportal-shell .dropdown-fontsize .dropdown-item[aria-selected="true"] .sendportal-summernote-fontsize-check::before {
    content: "✓";
    font-size: 0.95rem;
    font-weight: 800;
}

.sendportal-shell .sendportal-summernote-fontsize-value {
    display: inline-flex;
    align-items: center;
    color: #e5edf9 !important;
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1.2;
}

.sendportal-shell .note-dropdown-menu .note-palette-title,
.sendportal-shell .note-dropdown-menu .note-form-label {
    color: #cbd5e1 !important;
    font-size: 0.75rem;
    font-weight: 700;
}

.sendportal-shell .note-dropdown-menu .note-palette {
    display: inline-block;
    margin: 0.25rem 0.45rem 0.45rem 0;
    vertical-align: top;
}

.sendportal-shell .note-color .note-dropdown-menu {
    position: relative;
    width: auto !important;
    max-width: calc(100vw - 2rem) !important;
    gap: 0.65rem;
    align-items: flex-start;
    padding: 0.85rem 0.65rem 0.65rem !important;
    overflow: auto;
}

.sendportal-shell .note-color .note-dropdown-menu.show {
    display: inline-flex !important;
}

.sendportal-shell .note-color .note-dropdown-menu > .note-palette,
.sendportal-shell .note-color .note-dropdown-menu > .note-color-palette {
    flex: 0 0 auto;
    width: 13.4rem;
    min-width: 13.4rem;
}

.sendportal-shell .note-color .note-palette {
    display: flex !important;
    flex-direction: column;
    gap: 0.45rem;
    margin: 0 !important;
}

.sendportal-shell .note-color .note-palette-title {
    padding: 0 2rem 0.25rem 0;
    border-bottom: 1px solid rgba(148, 163, 184, 0.22);
    text-align: left;
}

.sendportal-shell .sendportal-summernote-color-close {
    position: absolute;
    top: 0.35rem;
    right: 0.4rem;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.65rem;
    height: 1.65rem;
    padding: 0 !important;
    border: 1px solid rgba(148, 163, 184, 0.24);
    border-radius: 0.25rem;
    background: rgba(255, 255, 255, 0.08);
    color: var(--crm-text);
    font-size: 1.15rem;
    font-weight: 400;
    line-height: 1;
    cursor: pointer;
}

.sendportal-shell .sendportal-summernote-color-close:hover,
.sendportal-shell .sendportal-summernote-color-close:focus {
    background: rgba(138, 180, 255, 0.16);
}

.sendportal-shell .note-color .note-holder {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
}

.sendportal-shell .note-color .note-holder > div:first-child {
    display: flex;
    align-items: center;
    gap: 0.45rem;
}

.sendportal-shell .note-dropdown-menu .note-color-palette {
    display: grid !important;
    gap: 0.16rem;
}

.sendportal-shell .note-dropdown-menu .note-color-row {
    display: grid !important;
    grid-template-columns: repeat(8, 1rem);
    gap: 0.14rem;
    height: auto !important;
}

.sendportal-shell .note-dropdown-menu .note-color-btn {
    width: 1rem !important;
    height: 1rem !important;
    min-width: 1rem !important;
    min-height: 1rem !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(15, 23, 42, 0.2) !important;
    border-radius: 0.18rem !important;
}

.sendportal-shell .note-dropdown-menu .note-color-reset,
.sendportal-shell .note-dropdown-menu .note-color-select {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 4.9rem !important;
    height: 1.8rem !important;
    min-height: 1.8rem !important;
    padding: 0 0.55rem !important;
    border-radius: 0.25rem !important;
    border-color: rgba(148, 163, 184, 0.28) !important;
    background: rgba(255, 255, 255, 0.06) !important;
    color: var(--crm-text) !important;
    font-size: 0.8rem !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-align: center !important;
    box-shadow: none !important;
}

.sendportal-shell .note-dropdown-menu .note-color-select-btn {
    width: 2rem !important;
    height: 2rem !important;
    min-width: 2rem !important;
    min-height: 2rem !important;
    padding: 0.15rem !important;
    border-radius: 0.25rem !important;
    border: 1px solid rgba(148, 163, 184, 0.36) !important;
    background: transparent !important;
}

@media (max-width: 720px) {
    .sendportal-shell .note-color .note-dropdown-menu {
        width: min(21rem, calc(100vw - 2rem)) !important;
        grid-template-columns: 1fr;
    }

    .sendportal-shell .note-color .note-dropdown-menu.show {
        display: grid !important;
    }
}

.sendportal-shell .note-dropdown-menu .dropdown-item:hover,
.sendportal-shell .note-dropdown-menu .dropdown-item:focus {
    background: rgba(138, 180, 255, 0.14) !important;
    color: #ffffff !important;
}

.sendportal-shell .dropdown-item:hover,
.sendportal-shell .dropdown-item:focus {
    background: rgba(255, 255, 255, 0.06);
    color: #fff;
}

.sendportal-shell .bootstrap-select > .dropdown-toggle {
    border-color: rgba(255, 255, 255, 0.12) !important;
    border-radius: var(--crm-radius-md) !important;
    background: rgba(255, 255, 255, 0.06) !important;
    color: var(--crm-text) !important;
    min-height: var(--crm-control-compact-height) !important;
    padding: 0.6rem 1rem !important;
    line-height: 1.25 !important;
}

.sendportal-shell .bootstrap-select .filter-option {
    color: var(--crm-text);
}

.sendportal-shell .bootstrap-select .dropdown-toggle .filter-option,
.sendportal-shell .bootstrap-select .dropdown-toggle .filter-option-inner,
.sendportal-shell .bootstrap-select .dropdown-toggle .filter-option-inner-inner {
    display: flex;
    align-items: center;
    min-height: 1.2rem;
}

.sendportal-shell .bootstrap-select.form-control,
.sendportal-shell .bootstrap-select > .dropdown-toggle.bs-placeholder,
.sendportal-shell .bootstrap-select > .dropdown-toggle.btn-light {
    height: auto !important;
}

.sendportal-shell .badge-primary {
    border: 1px solid rgba(138, 180, 255, 0.3);
    background: rgba(138, 180, 255, 0.14);
    color: #d8e4ff;
}

.sendportal-shell .dabible-pagination {
    margin-top: 0.5rem;
}

.sendportal-shell .dabible-pagination > div {
    color: var(--crm-text-muted);
}

.sendportal-pagination-shell {
    display: grid;
    gap: 0.85rem;
    width: 100%;
}

.sendportal-pagination-shell__mobile,
.sendportal-pagination-shell__desktop {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    flex-wrap: wrap;
}

.sendportal-pagination-shell__desktop {
    display: none;
}

.sendportal-page-chip,
.sendportal-page-ellipsis {
    min-width: 2.6rem;
    height: 2.6rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 0.9rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.04);
    color: var(--crm-text);
    text-decoration: none;
    box-shadow: none;
    transition: transform 180ms ease, background 180ms ease, color 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.sendportal-page-chip:hover,
.sendportal-page-chip:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(138, 180, 255, 0.24);
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
}

.sendportal-page-chip.is-active {
    border-color: rgba(138, 180, 255, 0.32);
    background: rgba(138, 180, 255, 0.16);
    color: #fff;
    font-weight: 700;
}

.sendportal-page-chip.is-disabled,
.sendportal-page-ellipsis {
    cursor: default;
    opacity: 0.72;
}

.sendportal-page-ellipsis {
    min-width: 1.8rem;
    padding: 0;
    background: transparent;
    border-color: transparent;
    box-shadow: none;
    color: var(--crm-text-soft);
}

.sendportal-shell .pagination {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.35rem;
    margin-bottom: 0 !important;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.04);
}

.sendportal-shell .page-item {
    display: inline-flex;
}

.sendportal-shell .page-link,
.sendportal-shell .pagination .page-link {
    min-width: 2.6rem;
    height: 2.6rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 0.9rem !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 9999px !important;
    background: rgba(255, 255, 255, 0.04) !important;
    color: var(--crm-text) !important;
    box-shadow: none !important;
}

.sendportal-shell .page-link:hover {
    background: rgba(255, 255, 255, 0.08) !important;
    color: #fff !important;
}

.sendportal-shell .page-item.active .page-link {
    border-color: rgba(138, 180, 255, 0.32) !important;
    background: rgba(138, 180, 255, 0.16) !important;
    color: #fff !important;
}

.sendportal-shell .page-item.disabled .page-link {
    opacity: 0.45;
    background: rgba(255, 255, 255, 0.03) !important;
    color: var(--crm-text-soft) !important;
}

.sendportal-shell .CodeMirror {
    height: 600px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--crm-radius-lg);
    background: rgba(8, 12, 20, 0.88);
    box-shadow: var(--crm-shadow-soft);
}

.sendportal-shell .CodeMirror-gutters {
    border-right-color: rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.03);
}

.sendportal-shell .template-preview {
    height: 600px;
}

.sendportal-shell .template-card {
    overflow: hidden;
}

.sendportal-shell .template-card .card-body {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.sendportal-shell .template-card .card-header {
    gap: 0.75rem;
}

.sendportal-shell .template-card__title-wrap {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 0.4rem;
    min-width: 0;
}

.sendportal-shell .template-card__title {
    min-width: 0;
    font-weight: 700;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.sendportal-shell .template-card__badge {
    align-self: flex-start;
    padding: 0.24rem 0.55rem;
    border: 1px solid rgba(37, 99, 235, 0.16);
    border-radius: 9999px;
    background: rgba(37, 99, 235, 0.08);
    color: var(--crm-accent-strong);
    font-size: 0.68rem;
    font-weight: 800;
    line-height: 1.1;
    text-transform: uppercase;
}

.sendportal-shell .template-card__actions {
    flex: 0 0 auto;
    gap: 0.35rem;
}

.sendportal-shell .template-card__action-group {
    gap: 0.35rem;
}

.sendportal-shell .template-card .template-card__action {
    padding: 0.32rem 0.55rem;
    font-size: 0.72rem;
    line-height: 1.1;
    border-radius: 9999px;
    white-space: nowrap;
}

.sendportal-shell .template-card__menu {
    flex: 0 0 auto;
}

.sendportal-shell .template-card__menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.15rem;
    min-width: 2.15rem;
    height: 2.15rem;
    padding: 0 !important;
}

.sendportal-shell .template-card__menu-toggle::after {
    display: none;
}

.sendportal-shell .template-card__dropdown-menu {
    min-width: 10rem;
    padding: 0.35rem;
    border-radius: 1rem;
}

.sendportal-shell .template-card__dropdown-menu .dropdown-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    border-radius: 0.75rem;
    padding: 0.55rem 0.8rem;
    font-size: 0.84rem;
    line-height: 1.2;
}

.sendportal-shell .template-panel {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    width: 100%;
    min-width: 0;
}

.sendportal-shell .template-card .template-panel__preview {
    position: relative;
    width: 100%;
    min-width: 0;
    overflow: hidden;
    border: 0;
    background: transparent;
    transition:
        height 180ms ease,
        box-shadow 180ms ease;
}

.sendportal-shell .template-card.is-expanded .template-panel__preview {
    height: 600px;
    box-shadow: var(--crm-shadow-soft);
}

.sendportal-shell .template-card .template-panel__preview iframe {
    display: block;
    width: 100% !important;
    height: 100% !important;
    min-width: 0;
    min-height: 0;
    border: 0;
}

.sendportal-shell .template-card .card-header .js-open-template-preview {
    margin-right: 0.25rem;
}

.sendportal-shell .template-grid-section {
    display: grid;
    gap: 0.95rem;
}

.sendportal-shell .template-grid-section + .template-grid-section {
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--crm-border);
}

.sendportal-shell .template-grid-section__header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
}

.sendportal-shell .template-grid-section__title {
    margin: 0;
    color: var(--crm-text);
    font-size: 0.88rem;
    font-weight: 800;
    text-transform: uppercase;
}

.sendportal-shell .template-grid-section__copy {
    margin: 0.25rem 0 0;
    color: var(--crm-text-muted);
    font-size: 0.86rem;
}

.sendportal-shell .template-preview--clickable {
    cursor: pointer;
}

.sendportal-shell .template-preview__launch {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    width: 100%;
    padding: 0.8rem;
    border: 0;
    background: transparent;
    transition: none;
}

.sendportal-shell .template-preview__launch:hover,
.sendportal-shell .template-preview__launch:focus {
    background: transparent;
}

.sendportal-shell .template-preview__launch-chip {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.42rem 0.72rem;
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.94);
    color: var(--crm-text);
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    box-shadow: var(--crm-shadow-soft);
    transition: transform 180ms ease, box-shadow 180ms ease;
}

.sendportal-shell .template-preview__launch:focus {
    outline: none;
}

.sendportal-shell .template-preview__launch:hover .template-preview__launch-chip,
.sendportal-shell .template-preview__launch:focus-visible .template-preview__launch-chip {
    transform: translateY(-1px);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.18), var(--crm-shadow-soft);
}

.sendportal-shell .template-preview--clickable iframe {
    pointer-events: none;
}

.sendportal-shell .template-preview-drawer.modal-right .modal-dialog {
    position: fixed;
    top: 0;
    right: 0;
    margin: 0;
    width: min(72rem, 94vw);
    max-width: none;
    height: 100vh;
    transform: translateX(100%);
    transition: transform 0.3s ease;
    will-change: transform;
}

.sendportal-shell .template-preview-drawer.modal-right.show .modal-dialog {
    transform: translateX(0);
}

.sendportal-shell .template-preview-drawer.modal-right .modal-content {
    height: 100%;
    min-height: 100%;
    border: 0;
    border-radius: 1.4rem 0 0 1.4rem;
    background: var(--crm-surface);
    box-shadow: var(--crm-shadow);
    overflow: hidden;
}

.sendportal-shell .template-preview-drawer.modal-right .modal-body {
    display: flex;
    flex-direction: column;
    min-height: 0;
    height: 100%;
}

.sendportal-shell .sendportal-template-preview-drawer__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.35rem 1.5rem;
    border-bottom: 1px solid var(--crm-border);
    background: var(--crm-surface-elevated);
}

.sendportal-shell .sendportal-template-preview-drawer__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 0.45rem;
}

.sendportal-shell .sendportal-template-preview-drawer__actions .btn {
    padding: 0.42rem 0.72rem !important;
    font-size: 0.74rem !important;
    line-height: 1.1 !important;
}

.sendportal-shell .sendportal-template-preview-drawer__eyebrow {
    color: var(--crm-accent-strong);
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
}

.sendportal-shell .sendportal-template-preview-drawer__title {
    margin: 0.15rem 0 0;
    color: var(--crm-text);
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1.2;
}

.sendportal-shell .sendportal-template-preview-drawer__subtitle {
    margin: 0.45rem 0 0;
    color: var(--crm-text-muted);
    font-size: 0.92rem;
    line-height: 1.55;
}

.sendportal-shell .sendportal-template-preview-drawer__close {
    opacity: 1;
    color: var(--crm-text);
    text-shadow: none;
}

.sendportal-shell .sendportal-template-preview-drawer__frame-wrap {
    flex: 1 1 auto;
    min-height: 0;
    padding: 1rem;
    background: var(--crm-surface-soft);
}

.sendportal-shell .sendportal-template-preview-drawer__frame-wrap iframe {
    display: block;
    width: 100% !important;
    height: 100% !important;
    min-width: 0;
    min-height: 0;
    border: 0;
    border-radius: 1.4rem;
    background: #ffffff;
    box-shadow: var(--crm-shadow-soft);
}

.sendportal-shell .sendportal-template-preview-drawer__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--crm-border);
    background: var(--crm-surface-elevated);
}

.sendportal-shell .sendportal-template-preview-drawer__footer-copy {
    color: var(--crm-text-muted);
    font-size: 0.88rem;
    line-height: 1.5;
}

.sendportal-widget-grid {
    display: grid;
    gap: 1rem;
}

.sendportal-widget-grid--four {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sendportal-stat {
    display: flex;
    align-items: stretch;
    min-height: 100%;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: var(--crm-radius-lg);
    background: rgba(255, 255, 255, 0.05);
    overflow: hidden;
}

.sendportal-stat__body {
    flex: 1 1 auto;
    padding: 1rem 1.1rem;
}

.sendportal-stat__value {
    margin: 0;
    color: var(--crm-text);
    font-size: 1.8rem;
    font-weight: 700;
}

.sendportal-stat__label {
    margin: 0.35rem 0 0;
    color: var(--crm-text-soft);
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
}

.sendportal-stat__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 88px;
    border-left: 1px solid rgba(255, 255, 255, 0.08);
    background: rgba(255, 255, 255, 0.04);
    color: var(--crm-accent-strong);
}

html:not(.dark) .sendportal-stat {
    border-color: rgba(15, 23, 42, 0.08);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95)),
        rgba(255, 255, 255, 0.98);
    box-shadow: 0 16px 34px rgba(148, 163, 184, 0.14);
}

html:not(.dark) .sendportal-stat__icon {
    border-left-color: rgba(15, 23, 42, 0.08);
    background:
        linear-gradient(180deg, rgba(241, 245, 249, 0.98), rgba(226, 232, 240, 0.94)),
        rgba(241, 245, 249, 0.96);
}

.sendportal-table-shell + .sendportal-table-shell {
    margin-top: 1.25rem;
}

.sendportal-table-shell__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.sendportal-table-shell__title {
    margin: 0;
    color: var(--crm-text);
    font-size: 1rem;
    font-weight: 650;
}

.sendportal-table-shell__copy {
    margin: 0.3rem 0 0;
    color: var(--crm-text-muted);
    font-size: 0.9rem;
}

.sendportal-table-wrap {
    overflow-x: auto;
}

.sendportal-section-space {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

@media (max-width: 1199px) {
    .sendportal-sidebar {
        width: 100%;
        min-width: 100%;
        max-width: 100%;
    }

    .sendportal-suite-sidebar {
        min-height: 100%;
    }

    .sendportal-widget-grid--four {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .sendportal-shell .template-preview-drawer.modal-right .modal-dialog {
        width: 100vw;
        max-width: none;
        height: 100vh;
    }

    .sendportal-shell .template-preview-drawer.modal-right .modal-content {
        border-radius: 0;
    }
}

@media (max-width: 767px) {
    .sendportal-main {
        padding: 0.85rem;
    }

    .sendportal-main > .main-header,
    .sendportal-main > .sendportal-content {
        padding-inline: 1rem;
    }

    .sendportal-topbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .sendportal-page-header {
        margin-bottom: 1.5rem;
    }

    .sendportal-widget-grid--four {
        grid-template-columns: 1fr;
    }

    .sendportal-nav-pills {
        width: 100%;
        border-radius: 1.2rem;
    }

    .sendportal-form-group {
        grid-template-columns: 1fr;
        gap: 0.55rem;
    }

    .sendportal-form-label {
        padding-top: 0;
    }

    .sendportal-form-actions {
        justify-content: stretch;
        flex-direction: column-reverse;
        align-items: stretch;
    }

    .sendportal-template-editor-modal__header,
    .sendportal-template-editor-modal__footer {
        padding: 1rem 1.1rem;
    }

    .sendportal-template-editor-modal__body {
        padding: 0.9rem 1.1rem 1.1rem;
    }

    .sendportal-template-editor-modal__footer-test-send-row {
        align-items: stretch;
        flex-direction: column;
    }

    .sendportal-template-editor-modal__footer-test-send-field {
        max-width: none;
    }

    .sendportal-template-editor-modal__footer-test-send-row .btn {
        width: 100%;
    }

    .sendportal-template-editor-modal__footer {
        align-items: stretch;
        flex-direction: column;
    }

    .sendportal-template-editor-modal__footer-actions {
        width: 100%;
        margin-left: 0;
        flex-direction: column;
    }

    .sendportal-template-editor-modal__footer .btn {
        width: 100%;
    }

    .sendportal-template-editor-workspace {
        grid-template-columns: 1fr;
    }

    .sendportal-template-editor-workspace.is-sidebar-collapsed {
        grid-template-columns: 1fr;
    }

    .sendportal-shell .sendportal-template-preview-drawer__header {
        padding: 1rem 1.1rem;
    }

    .sendportal-shell .sendportal-template-preview-drawer__actions {
        justify-content: flex-start;
    }

    .sendportal-shell .sendportal-template-preview-drawer__frame-wrap {
        padding: 0.85rem;
    }

    .sendportal-shell .sendportal-template-preview-drawer__footer {
        flex-direction: column;
        align-items: flex-start;
        padding: 0.95rem 1.1rem;
    }

    .sendportal-shell .sendportal-template-preview-drawer__title {
        font-size: 1.1rem;
    }

    .sendportal-shell .sendportal-template-preview-drawer__subtitle {
        font-size: 0.85rem;
    }
}

@media (min-width: 768px) {
    .sendportal-main > .main-header,
    .sendportal-main > .sendportal-content {
        padding-inline: 1.5rem;
    }

    .sendportal-page-header {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }

    .sendportal-page-header__breadcrumbs {
        display: block;
    }

    [dir="rtl"] .sendportal-page-header .fi-breadcrumbs-item-separator.rtl\:hidden {
        display: inline-flex;
    }

    .sendportal-page-header__actions {
        margin-top: 1.75rem;
        justify-content: flex-end;
    }
}

@media (min-width: 1024px) {
    .sendportal-main > .main-header,
    .sendportal-main > .sendportal-content {
        padding-inline: 2rem;
    }
}

.crm-user-card--interactive {
    width: 100%;
    text-align: left;
    appearance: none;
    cursor: pointer;
}

.crm-user-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 24px 50px rgba(0, 0, 0, 0.26);
    border-color: rgba(251, 191, 36, 0.35);
}

.crm-user-card--interactive:focus-visible {
    outline: 2px solid rgba(59, 130, 246, 0.45);
    outline-offset: 3px;
}

.crm-user-card__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.crm-user-card__identity {
    display: flex;
    align-items: center;
    gap: 1rem;
    min-width: 0;
    flex: 1 1 auto;
}

.crm-user-card__avatar-image,
.crm-user-card__avatar-fallback {
    width: 4rem;
    height: 4rem;
    flex-shrink: 0;
    border-radius: 9999px;
    border: 1px solid rgba(191, 219, 254, 0.95);
    box-shadow:
        0 10px 22px rgba(59, 130, 246, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.crm-user-card__avatar-image {
    object-fit: cover;
    background: #0f172a;
}

.crm-user-card__avatar-fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(251, 191, 36, 0.2) 0%, rgba(234, 179, 8, 0.12) 100%);
    color: #fde68a;
    font-size: 1.1rem;
    font-weight: 700;
}

.crm-user-card__avatar-fallback.hidden {
    display: none;
}

.crm-user-card__name {
    margin: 0;
    color: var(--crm-text);
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.2;
    white-space: normal;
    overflow: visible;
    text-overflow: initial;
}

.crm-user-card__subtext {
    margin: 0.28rem 0 0;
    color: var(--crm-text-soft);
    font-size: 0.82rem;
    white-space: normal;
    overflow: visible;
    text-overflow: initial;
}

.crm-user-card__contact-stack {
    display: grid;
    gap: 0.55rem;
    margin-top: 0.72rem;
}

.crm-user-card__body {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    margin-top: 0.65rem;
}

.crm-user-card__contact-row {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    flex-wrap: wrap;
}

.crm-user-card__contact,
.crm-user-card__metric,
.crm-user-card__meta-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}

.crm-user-card__contact {
    color: #dfe7f5;
    font-size: 0.84rem;
    font-weight: 500;
    min-width: 0;
    max-width: 100%;
    padding: 0 0.42rem;
    /* border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.04); */
}

.crm-user-card__contact--full {
    width: 100%;
}

.crm-user-card__contact--missing {
    /* border-color: rgba(255, 140, 161, 0.22);
    background: rgba(255, 140, 161, 0.08); */
}

.crm-user-card__contact-icon,
.crm-user-card__metric-icon,
.crm-user-card__button-icon {
    width: 1rem;
    height: 1rem;
    flex-shrink: 0;
}

.crm-user-card__contact-icon,
.crm-user-card__metric-icon {
    color: #94a3b8;
}

.crm-user-card__contact-text {
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.crm-user-card__contact-badge,
.crm-user-card__contact-empty {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.crm-user-card__contact-badge {
    width: 1.45rem;
    height: 1.45rem;
    border: 1px solid rgba(138, 180, 255, 0.16);
    border-radius: 9999px;
    background: rgba(138, 180, 255, 0.08);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.crm-user-card__contact-badge--missing {
    border-color: rgba(255, 140, 161, 0.24);
    background: rgba(255, 140, 161, 0.12);
}

.crm-user-card__contact-empty {
    padding: 0.42rem 0.72rem;
    border: 1px dashed rgba(255, 255, 255, 0.12);
    border-radius: 9999px;
    color: var(--crm-text-soft);
    font-size: 0.8rem;
}

.crm-user-card__contact-icon--empty {
    color: #ff9aab;
}

.crm-user-card__contact--missing .crm-user-card__contact-text,
.crm-user-card__contact--missing .crm-user-card__contact-icon {
    color: #ffd5de;
}

.crm-user-card__roles {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.crm-user-card__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.crm-user-card__status {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.crm-user-card__role {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.75rem;
    border: 1px solid rgba(251, 191, 36, 0.28);
    border-radius: 9999px;
    background: rgba(255, 251, 235, 0.95);
    color: #b45309;
    font-size: 0.76rem;
    font-weight: 700;
}

.crm-user-card__tag {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.75rem;
    border: 1px solid rgba(59, 130, 246, 0.22);
    border-radius: 9999px;
    background: rgba(239, 246, 255, 0.95);
    color: #1d4ed8;
    font-size: 0.76rem;
    font-weight: 700;
}

.crm-user-card__status-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.75rem;
    border-radius: 9999px;
    font-size: 0.76rem;
    font-weight: 700;
    border: 1px solid transparent;
}

.crm-user-card__status-badge--unsubscribed {
    border-color: rgba(245, 158, 11, 0.25);
    background: rgba(255, 251, 235, 0.95);
    color: #b45309;
}

.crm-user-card__status-badge--bad-email {
    border-color: rgba(248, 113, 113, 0.25);
    background: rgba(254, 242, 242, 0.95);
    color: #b91c1c;
}

.crm-user-card__status-badge--suppressed {
    border-color: rgba(148, 163, 184, 0.28);
    background: rgba(248, 250, 252, 0.95);
    color: #475569;
}

.crm-user-card__empty {
    color: #94a3b8;
    font-size: 0.95rem;
}

.crm-user-card__summary {
    margin: 0;
    color: #aebbd0;
    font-size: 0.88rem;
    line-height: 1.6;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.crm-user-card__meta-line {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.65rem;
    padding-top: 0.65rem;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.crm-user-card__meta-pill {
    padding: 0.32rem 0.56rem;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 9999px;
    background: rgba(255, 255, 255, 0.04);
    color: var(--crm-text-soft);
    font-size: 0.72rem;
}

.crm-user-card__meta-label {
    color: var(--crm-text-soft);
    font-size: 0.62rem;
    font-weight: 700;
    text-transform: uppercase;
}

.crm-user-card__meta-value {
    color: #e7eefb;
    font-size: 0.72rem;
    font-weight: 600;
}

html:not(.dark) .crm-user-card {
    border-color: rgba(15, 23, 42, 0.08);
    background:
        radial-gradient(circle at top right, rgba(37, 99, 235, 0.08), transparent 30%),
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(248, 250, 252, 0.94) 100%);
    box-shadow: 0 24px 46px rgba(148, 163, 184, 0.16);
}

html:not(.dark) .crm-user-card:hover {
    border-color: rgba(37, 99, 235, 0.22);
    box-shadow: 0 30px 56px rgba(148, 163, 184, 0.2);
}

html:not(.dark) .crm-user-card--interactive:focus-visible {
    outline-color: rgba(37, 99, 235, 0.45);
}

html:not(.dark) .crm-user-card__avatar-image,
html:not(.dark) .crm-user-card__avatar-fallback {
    border-color: rgba(148, 163, 184, 0.22);
    box-shadow:
        0 12px 28px rgba(148, 163, 184, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

html:not(.dark) .crm-user-card__avatar-image {
    background: #eef2ff;
}

html:not(.dark) .crm-user-card__avatar-fallback {
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.14) 0%, rgba(59, 130, 246, 0.08) 100%);
    color: #1d4ed8;
}

html:not(.dark) .crm-user-card__name {
    color: var(--crm-text);
}

html:not(.dark) .crm-user-card__subtext,
html:not(.dark) .crm-user-card__empty {
    color: var(--crm-text-soft);
}

html:not(.dark) .crm-user-card__contact {
    color: var(--crm-text);
}

html:not(.dark) .crm-user-card__contact-icon,
html:not(.dark) .crm-user-card__metric-icon {
    color: var(--crm-text-soft);
}

html:not(.dark) .crm-user-card__contact-badge {
    border-color: rgba(37, 99, 235, 0.16);
    background: rgba(37, 99, 235, 0.08);
}

html:not(.dark) .crm-user-card__contact-badge--missing {
    border-color: rgba(239, 68, 68, 0.18);
    background: rgba(254, 226, 226, 0.96);
}

html:not(.dark) .crm-user-card__contact-empty {
    border-color: rgba(15, 23, 42, 0.08);
    background: rgba(255, 255, 255, 0.96);
    color: var(--crm-text-soft);
}

html:not(.dark) .crm-user-card__contact-icon--empty {
    color: #dc2626;
}

html:not(.dark) .crm-user-card__contact--missing .crm-user-card__contact-text,
html:not(.dark) .crm-user-card__contact--missing .crm-user-card__contact-icon {
    color: #b91c1c;
}

html:not(.dark) .crm-user-card__role {
    border-color: rgba(245, 158, 11, 0.18);
    background: rgba(255, 251, 235, 0.96);
    color: #92400e;
}

html:not(.dark) .crm-user-card__tag {
    border-color: rgba(37, 99, 235, 0.16);
    background: rgba(239, 246, 255, 0.96);
    color: #1d4ed8;
}

html:not(.dark) .crm-user-card__status-badge--unsubscribed {
    border-color: rgba(245, 158, 11, 0.18);
    background: rgba(255, 251, 235, 0.96);
    color: #92400e;
}

html:not(.dark) .crm-user-card__status-badge--bad-email {
    border-color: rgba(239, 68, 68, 0.18);
    background: rgba(254, 242, 242, 0.96);
    color: #b91c1c;
}

html:not(.dark) .crm-user-card__status-badge--suppressed {
    border-color: rgba(148, 163, 184, 0.22);
    background: rgba(248, 250, 252, 0.96);
    color: #475569;
}

html:not(.dark) .crm-user-card__summary {
    color: var(--crm-text-muted);
}

html:not(.dark) .crm-user-card__meta-line {
    border-top-color: rgba(15, 23, 42, 0.08);
}

html:not(.dark) .crm-user-card__meta-pill {
    border-color: rgba(15, 23, 42, 0.08);
    background: rgba(255, 255, 255, 0.96);
    color: var(--crm-text-soft);
}

html:not(.dark) .crm-user-card__meta-label {
    color: var(--crm-text-soft);
}

html:not(.dark) .crm-user-card__meta-value {
    color: var(--crm-text);
}

.dark .crm-user-card {
    border-color: rgba(255, 255, 255, 0.08);
    background:
        radial-gradient(circle at top right, rgba(251, 191, 36, 0.12), transparent 28%),
        linear-gradient(180deg, rgba(24, 24, 28, 0.98) 0%, rgba(17, 24, 39, 0.98) 100%);
    box-shadow: 0 24px 46px rgba(0, 0, 0, 0.3);
}

.dark .crm-user-card:hover {
    border-color: rgba(251, 191, 36, 0.25);
    box-shadow: 0 30px 56px rgba(0, 0, 0, 0.36);
}

.dark .crm-user-card__avatar-image,
.dark .crm-user-card__avatar-fallback {
    border-color: rgba(255, 255, 255, 0.1);
    box-shadow:
        0 12px 28px rgba(0, 0, 0, 0.28),
        inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.dark .crm-user-card__avatar-fallback {
    background: linear-gradient(135deg, rgba(251, 191, 36, 0.14) 0%, rgba(217, 119, 6, 0.12) 100%);
    color: #fbbf24;
}

.dark .crm-user-card__name {
    color: #f8fafc;
}

.dark .crm-user-card__subtext,
.dark .crm-user-card__empty {
    color: #94a3b8;
}

.dark .crm-user-card__contact {
    color: #e5e7eb;
    /* background: rgba(255, 255, 255, 0.04); */
}

.dark .crm-user-card__contact--missing {
    border-color: rgba(255, 140, 161, 0.24);
    /* background: rgba(127, 29, 29, 0.2); */
}

.dark .crm-user-card__contact-icon,
.dark .crm-user-card__metric-icon {
    color: #64748b;
}

.dark .crm-user-card__contact-badge {
    border-color: rgba(138, 180, 255, 0.14);
    background: rgba(138, 180, 255, 0.08);
}

.dark .crm-user-card__contact-badge--missing {
    border-color: rgba(255, 140, 161, 0.22);
    background: rgba(255, 140, 161, 0.14);
}

.dark .crm-user-card__contact-empty {
    border-color: rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.03);
}

.dark .crm-user-card__role {
    border-color: rgba(251, 191, 36, 0.22);
    background: rgba(251, 191, 36, 0.1);
    color: #fbbf24;
}

.dark .crm-user-card__tag {
    border-color: rgba(96, 165, 250, 0.22);
    background: rgba(59, 130, 246, 0.12);
    color: #93c5fd;
}

.dark .crm-user-card__status-badge--unsubscribed {
    border-color: rgba(245, 158, 11, 0.22);
    background: rgba(245, 158, 11, 0.12);
    color: #fbbf24;
}

.dark .crm-user-card__status-badge--bad-email {
    border-color: rgba(248, 113, 113, 0.22);
    background: rgba(127, 29, 29, 0.24);
    color: #fca5a5;
}

.dark .crm-user-card__status-badge--suppressed {
    border-color: rgba(148, 163, 184, 0.2);
    background: rgba(71, 85, 105, 0.22);
    color: #cbd5e1;
}

.dark .crm-user-card__summary {
    color: #cbd5e1;
}

.dark .crm-user-card__meta-line {
    border-top-color: rgba(255, 255, 255, 0.08);
}

@media (max-width: 768px) {
    .crm-user-table--cards .fi-ta-record {
        width: 100%;
        max-width: 100%;
        flex-basis: 100%;
    }

    .crm-user-card {
        padding: 1rem;
        border-radius: 1.25rem;
    }

    .crm-user-card__top {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (min-width: 769px) and (max-width: 1279px) {
    .crm-user-table--cards .fi-ta-record {
        width: calc(50% - 0.625rem);
        max-width: calc(50% - 0.625rem);
        flex-basis: calc(50% - 0.625rem);
    }
}

.crm-suite-shell {
    display: flex;
    min-height: 100vh;
    align-items: stretch;
}

@media (min-width: 1024px) {
    .crm-suite-shell {
        position: sticky;
        top: 0;
        flex: 0 0 auto;
        align-self: flex-start;
        height: 100vh;
        z-index: 40;
    }
}

.api-shell {
    overflow: hidden;
    margin: 0;
}

.api-shell .scramble-suite-shell {
    min-height: 100vh;
}

.api-shell .scramble-docs-frame {
    flex: 1 1 auto;
    min-width: 0;
    min-height: 100vh;
    overflow: hidden;
    background:
        radial-gradient(circle at top left, rgba(127, 168, 255, 0.14), transparent 24%),
        radial-gradient(circle at top right, rgba(255, 255, 255, 0.08), transparent 20%),
        linear-gradient(180deg, rgba(9, 17, 31, 0.98) 0%, rgba(11, 21, 36, 0.98) 100%);
}

.api-shell elements-api {
    display: block;
    width: 100%;
    height: 100vh;
}

.crm-suite-rail {
    position: relative;
    z-index: 40;
    width: 5.5rem;
    flex: 0 0 5.5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    padding: 1.25rem 0.6rem;
    overflow: visible;
    border-right: 1px solid rgba(255, 255, 255, 0.08);
    background:
        linear-gradient(180deg, rgba(13, 16, 23, 0.98) 0%, rgba(10, 12, 18, 0.98) 100%);
    transition: width 220ms ease, flex-basis 220ms ease, padding 220ms ease;
}

.crm-suite-rail.is-collapsed {
    width: 4.25rem;
    flex-basis: 4.25rem;
    padding-inline: 0.65rem;
}

.crm-suite-rail__brand {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.1rem;
    height: 3.1rem;
    padding: 0.4rem;
    border-radius: 1rem;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.crm-suite-rail__brand img {
    width: 100%;
    height: auto;
    display: block;
}

.crm-suite-rail__nav {
    display: grid;
    gap: 0.8rem;
    width: 100%;
}

.crm-suite-rail__account {
    margin-top: auto;
    width: 100%;
    display: flex;
    justify-content: center;
    padding-top: 0.5rem;
}

.crm-suite-rail__item {
    display: grid;
    justify-items: center;
    gap: 0.45rem;
    width: 100%;
    min-width: 0;
    padding: 0.8rem 0.25rem;
    border-radius: 1.15rem;
    color: #8f99ad;
    text-decoration: none;
    border: 1px solid transparent;
    transition: transform 180ms ease, background 180ms ease, border-color 180ms ease, color 180ms ease;
}

.crm-suite-rail.is-collapsed .crm-suite-rail__item {
    min-height: 3.1rem;
    align-content: center;
    gap: 0;
    padding: 0.75rem 0.25rem;
}

.crm-suite-rail__item:hover {
    transform: translateY(-1px);
    color: #f8fafc;
    background: rgba(255, 255, 255, 0.05);
    border-color: rgba(255, 255, 255, 0.08);
}

.crm-suite-rail__item.is-active {
    color: #f8fafc;
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.2), rgba(37, 99, 235, 0.12));
    border-color: rgba(96, 165, 250, 0.22);
    box-shadow: 0 16px 28px rgba(2, 6, 23, 0.24);
}

.crm-suite-rail__icon {
    width: 1.4rem;
    height: 1.4rem;
}

.crm-suite-rail__label {
    display: block;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    overflow-wrap: anywhere;
    font-size: 0.55rem;
    font-weight: 700;
    line-height: 1.15;
    text-align: center;
    text-transform: uppercase;
    white-space: normal;
}

.crm-suite-rail.is-collapsed .crm-suite-rail__label {
    display: none;
}

.crm-suite-rail__toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.1rem;
    height: 2.1rem;
    margin-inline: auto;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.04);
    color: #8f99ad;
    transition: background 180ms ease, border-color 180ms ease, color 180ms ease, transform 180ms ease;
}

.crm-suite-rail__toggle:hover {
    transform: translateY(-1px);
    border-color: rgba(255, 255, 255, 0.14);
    background: rgba(255, 255, 255, 0.07);
    color: #f8fafc;
}

.crm-suite-rail__toggle-icon {
    width: 1rem;
    height: 1rem;
}

.crm-suite-rail__toggle-icon--expand,
.crm-suite-rail.is-collapsed .crm-suite-rail__toggle-icon--collapse {
    display: none;
}

.crm-suite-rail.is-collapsed .crm-suite-rail__toggle-icon--expand {
    display: block;
}

.crm-child-sidebar,
.sendportal-suite-sidebar {
    width: var(--crm-sidebar-width);
    min-width: var(--crm-sidebar-width);
    max-width: var(--crm-sidebar-width);
}

.crm-child-sidebar {
    width: var(--crm-child-sidebar-width) !important;
    min-width: var(--crm-child-sidebar-width) !important;
    max-width: var(--crm-child-sidebar-width) !important;
}

.crm-child-sidebar .fi-sidebar-header {
    height: 4rem;
    padding-inline: 1rem !important;
}

.crm-child-sidebar .fi-sidebar-nav {
    gap: 1rem;
    padding: 1.25rem 0.75rem 1.5rem !important;
}

.crm-child-sidebar .fi-sidebar-nav-groups {
    gap: 1rem;
    margin-inline: 0 !important;
}

.crm-child-sidebar .fi-sidebar-group {
    gap: 0.2rem;
}

.crm-child-sidebar .fi-sidebar-group-items {
    gap: 0.15rem;
}

.crm-child-sidebar .fi-sidebar-group-button,
.crm-child-sidebar .fi-sidebar-item-button {
    justify-content: flex-start;
    gap: 0.55rem;
    min-height: 2.4rem;
    border-radius: 0.8rem !important;
    padding: 0.52rem 0.62rem !important;
}

.crm-child-sidebar .fi-sidebar-group-label {
    font-size: 0.72rem !important;
    font-weight: 600 !important;
    text-transform: uppercase;
}

.crm-child-sidebar .fi-sidebar-item-label {
    font-size: 0.86rem !important;
    font-weight: 400 !important;
}

.crm-child-sidebar .fi-sidebar-item-icon,
.crm-child-sidebar .fi-sidebar-group-icon {
    width: 1.15rem !important;
    height: 1.15rem !important;
    min-width: 1.15rem;
    min-height: 1.15rem;
}

.crm-suite-shell:has(.crm-suite-rail.is-collapsed) .crm-child-sidebar {
    width: var(--crm-child-sidebar-compact-width) !important;
    min-width: var(--crm-child-sidebar-compact-width) !important;
    max-width: var(--crm-child-sidebar-compact-width) !important;
}

.crm-suite-shell:has(.crm-suite-rail.is-collapsed) .crm-child-sidebar .fi-sidebar-nav {
    padding-inline: 0.55rem !important;
}

.crm-suite-shell:has(.crm-suite-rail.is-collapsed) .crm-child-sidebar .fi-sidebar-header,
.crm-suite-shell:has(.crm-suite-rail.is-collapsed) .crm-child-sidebar .fi-sidebar-item-icon,
.crm-suite-shell:has(.crm-suite-rail.is-collapsed) .crm-child-sidebar .fi-sidebar-group-icon,
.crm-suite-shell:has(.crm-suite-rail.is-collapsed) .crm-child-sidebar .fi-sidebar-group-collapse-button {
    display: none !important;
}

.crm-suite-shell:has(.crm-suite-rail.is-collapsed) .crm-child-sidebar .fi-sidebar-group-button,
.crm-suite-shell:has(.crm-suite-rail.is-collapsed) .crm-child-sidebar .fi-sidebar-item-button {
    gap: 0;
    min-height: 2.15rem;
    padding: 0.45rem 0.5rem !important;
}

.sendportal-suite-sidebar__brand {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
}

.theme-logo {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.theme-logo img {
    display: block;
    height: 100%;
    width: auto;
}

@media (max-width: 1023px) {
    .crm-suite-shell {
        position: static;
        height: auto;
        min-height: auto;
    }

    .crm-suite-rail {
        display: flex !important;
    }

    .crm-child-sidebar,
    .sendportal-suite-sidebar {
        width: calc(100% - 5.5rem);
        min-width: calc(100% - 5.5rem);
        max-width: calc(100% - 5.5rem);
    }

    .crm-child-sidebar {
        width: calc(100% - 5.5rem) !important;
        min-width: calc(100% - 5.5rem) !important;
        max-width: calc(100% - 5.5rem) !important;
    }
}

html:not(.dark) body,
html:not(.dark) .fi-body,
html:not(.dark) .fi-layout,
html:not(.dark) .fi-main,
html:not(.dark) .fi-page,
html:not(.dark) .crm-theme,
html:not(.dark) .sendportal-shell,
html:not(.dark) .api-shell {
    --crm-bg: #fafcff;
    --crm-bg-secondary: #f4f7fc;
    --crm-surface: rgba(255, 255, 255, 0.97);
    --crm-surface-elevated: rgba(255, 255, 255, 0.99);
    --crm-surface-soft: rgba(15, 23, 42, 0.03);
    --crm-border: rgba(15, 23, 42, 0.06);
    --crm-border-strong: rgba(15, 23, 42, 0.11);
    --crm-text: #0f172a;
    --crm-text-muted: #334155;
    --crm-text-soft: #475569;
    --crm-accent: #2563eb;
    --crm-accent-strong: #1d4ed8;
    --crm-accent-soft: rgba(37, 99, 235, 0.1);
    --crm-highlight: rgba(15, 23, 42, 0.08);
    color: var(--crm-text);
    background:
        radial-gradient(circle at top left, rgba(59, 130, 246, 0.04), transparent 20%),
        radial-gradient(circle at top right, rgba(148, 163, 184, 0.04), transparent 18%),
        radial-gradient(circle at bottom right, rgba(251, 191, 36, 0.03), transparent 22%),
        linear-gradient(180deg, #ffffff 0%, #f3f7fd 100%);
    background-attachment: fixed;
}

html:not(.dark) .fi-layout::before {
    background:
        radial-gradient(circle at 12% 8%, rgba(59, 130, 246, 0.03), transparent 14%),
        radial-gradient(circle at 86% 14%, rgba(148, 163, 184, 0.03), transparent 16%),
        radial-gradient(circle at 52% 100%, rgba(251, 191, 36, 0.025), transparent 20%);
}

html:not(.dark) .fi-sidebar,
html:not(.dark) .sendportal-suite-sidebar,
html:not(.dark) .crm-suite-rail {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(250, 252, 255, 0.96)),
        linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(244, 247, 252, 0.9)) !important;
    border-color: rgba(15, 23, 42, 0.06) !important;
    border-inline-end: 1px solid rgba(15, 23, 42, 0.06) !important;
    box-shadow: 0 16px 38px rgba(148, 163, 184, 0.06);
}

html:not(.dark) .fi-sidebar-header,
html:not(.dark) .fi-topbar,
html:not(.dark) .fi-topbar > nav,
html:not(.dark) .sendportal-suite-sidebar .fi-sidebar-header {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(250, 252, 255, 0.95)),
        rgba(255, 255, 255, 0.96) !important;
    border-color: rgba(15, 23, 42, 0.06) !important;
}

html:not(.dark) .fi-sidebar-item-button,
html:not(.dark) .fi-sidebar-group-button,
html:not(.dark) .fi-sidebar-item-label,
html:not(.dark) .fi-sidebar-group-label,
html:not(.dark) .sendportal-suite-sidebar .fi-sidebar-item-button,
html:not(.dark) .sendportal-suite-sidebar .fi-sidebar-group-button,
html:not(.dark) .sendportal-suite-sidebar .fi-sidebar-item-label,
html:not(.dark) .sendportal-suite-sidebar .fi-sidebar-group-label {
    color: var(--crm-text-muted) !important;
}

html:not(.dark) .fi-sidebar-item-icon,
html:not(.dark) .fi-sidebar-group-icon,
html:not(.dark) .sendportal-suite-sidebar .fi-sidebar-item-icon,
html:not(.dark) .sendportal-suite-sidebar .fi-sidebar-group-icon {
    color: #64748b !important;
}

html:not(.dark) .fi-sidebar-item-button:hover,
html:not(.dark) .fi-sidebar-group-button:hover,
html:not(.dark) .sendportal-suite-sidebar .fi-sidebar-item-button:hover,
html:not(.dark) .sendportal-suite-sidebar .fi-sidebar-group-button:hover {
    background: rgba(37, 99, 235, 0.05) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .fi-sidebar-item-active .fi-sidebar-item-button,
html:not(.dark) .fi-sidebar-item-button[aria-current="page"],
html:not(.dark) .sendportal-suite-sidebar .fi-sidebar-item-active .fi-sidebar-item-button,
html:not(.dark) .sendportal-suite-sidebar .fi-sidebar-item-button[aria-current="page"] {
    background: rgba(37, 99, 235, 0.1) !important;
    color: var(--crm-accent-strong) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

html:not(.dark) .fi-sidebar-item-active .fi-sidebar-item-icon,
html:not(.dark) .fi-sidebar-item-button[aria-current="page"] .fi-sidebar-item-icon,
html:not(.dark) .sendportal-suite-sidebar .fi-sidebar-item-active .fi-sidebar-item-icon,
html:not(.dark) .sendportal-suite-sidebar .fi-sidebar-item-button[aria-current="page"] .fi-sidebar-item-icon {
    color: var(--crm-accent-strong) !important;
}

html:not(.dark) .fi-sidebar-footer,
html:not(.dark) .sendportal-suite-sidebar .fi-sidebar-footer {
    border-top-color: rgba(15, 23, 42, 0.08);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.9)),
        rgba(255, 255, 255, 0.84);
}

html:not(.dark) .fi-theme-switcher {
    background: rgba(241, 245, 249, 0.92);
}

html:not(.dark) .fi-theme-switcher-btn.fi-active,
html:not(.dark) .fi-theme-switcher-btn[class*="bg-gray-50"][class*="text-primary-500"] {
    background: rgba(37, 99, 235, 0.12) !important;
    color: #1d4ed8 !important;
}

html:not(.dark) .fi-tabs {
    border: 1px solid rgba(148, 163, 184, 0.18) !important;
    background: rgba(255, 255, 255, 0.99) !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

html:not(.dark) .fi-tabs-item {
    border-color: rgba(148, 163, 184, 0.16) !important;
    background: rgba(255, 255, 255, 0.98) !important;
    color: var(--crm-text) !important;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04) !important;
}

html:not(.dark) .fi-tabs-item:hover,
html:not(.dark) .fi-tabs-item[aria-selected="true"],
html:not(.dark) .fi-tabs-item.fi-active {
    border-color: rgba(37, 99, 235, 0.22) !important;
    background: rgba(241, 245, 249, 0.98) !important;
    color: var(--crm-accent-strong) !important;
    box-shadow:
        0 1px 2px rgba(15, 23, 42, 0.05),
        0 8px 18px rgba(37, 99, 235, 0.08) !important;
}

html:not(.dark) .fi-tabs-item .fi-badge {
    border-color: rgba(148, 163, 184, 0.16) !important;
    background: rgba(248, 250, 252, 0.98) !important;
    color: var(--crm-text-soft) !important;
}

html:not(.dark) .fi-tabs-item.fi-active .fi-badge.fi-color-primary,
html:not(.dark) .fi-tabs-item.fi-active .fi-badge.fi-color-custom,
html:not(.dark) .fi-tabs-item[aria-selected="true"] .fi-badge.fi-color-primary,
html:not(.dark) .fi-tabs-item[aria-selected="true"] .fi-badge.fi-color-custom {
    background: rgba(37, 99, 235, 0.12) !important;
    border-color: rgba(37, 99, 235, 0.18) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .fi-input-wrp,
html:not(.dark) .fi-select-input,
html:not(.dark) .fi-input,
html:not(.dark) .choices__inner {
    border-color: rgba(148, 163, 184, 0.26) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.995), rgba(248, 250, 252, 0.96)),
        rgba(255, 255, 255, 0.98) !important;
    color: var(--crm-text) !important;
    box-shadow:
        inset 0 0 0 1px rgba(148, 163, 184, 0.16),
        0 1px 2px rgba(15, 23, 42, 0.05),
        0 8px 18px rgba(15, 23, 42, 0.03) !important;
}

html:not(.dark) .fi-ta-search-field .fi-input-wrp {
    border-color: rgba(148, 163, 184, 0.26) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.995), rgba(248, 250, 252, 0.96)),
        rgba(255, 255, 255, 0.98) !important;
    box-shadow:
        inset 0 0 0 1px rgba(148, 163, 184, 0.16),
        0 1px 2px rgba(15, 23, 42, 0.05),
        0 8px 18px rgba(15, 23, 42, 0.03) !important;
}

html:not(.dark) .fi-ta-search-field .fi-input,
html:not(.dark) .fi-ta-search-field input,
html:not(.dark) .fi-ta-search-field .fi-input-wrp-input,
html:not(.dark) .fi-ta-search-field .fi-input-wrp-prefix,
html:not(.dark) .fi-input,
html:not(.dark) .fi-select-input {
    color: var(--crm-text) !important;
    background: transparent !important;
}

html:not(.dark) .fi-input::placeholder,
html:not(.dark) .fi-ta-search-field input::placeholder {
    color: var(--crm-text-soft) !important;
}

html:not(.dark) .fi-input-wrp:focus-within,
html:not(.dark) .fi-select-input:focus,
html:not(.dark) .fi-input:focus {
    border-color: rgba(37, 99, 235, 0.28) !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12) !important;
}

html:not(.dark) .fi-input-wrp-prefix,
html:not(.dark) .fi-input-wrp-suffix,
html:not(.dark) .fi-input-wrp-icon {
    color: var(--crm-text-soft) !important;
}

html:not(.dark) .fi-dropdown-panel {
    border-color: rgba(148, 163, 184, 0.16) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95)),
        rgba(255, 255, 255, 0.98) !important;
    box-shadow: 0 18px 42px rgba(15, 23, 42, 0.08) !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

html:not(.dark) .fi-dropdown-list {
    background: transparent !important;
}

html:not(.dark) .fi-dropdown-list-item {
    background: transparent !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .fi-dropdown-list-item:hover,
html:not(.dark) .fi-dropdown-list-item:focus-visible {
    background: rgba(241, 245, 249, 0.98) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .crm-panel,
html:not(.dark) .crm-panel--soft,
html:not(.dark) .crm-card,
html:not(.dark) .crm-stat-card,
html:not(.dark) .crm-empty-state,
html:not(.dark) .fi-empty-state,
html:not(.dark) .fi-ta-empty-state {
    border-color: rgba(15, 23, 42, 0.08);
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94)),
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(241, 245, 249, 0.86));
    box-shadow: 0 16px 45px rgba(148, 163, 184, 0.12);
}

html:not(.dark) .crm-card__eyebrow,
html:not(.dark) .crm-pill__label,
html:not(.dark) .crm-stat-card__label {
    color: var(--crm-text-soft);
}

html:not(.dark) .crm-meta-pill {
    border-color: rgba(15, 23, 42, 0.08);
    background: rgba(241, 245, 249, 0.96);
    color: var(--crm-text);
    box-shadow:
        0 1px 2px rgba(15, 23, 42, 0.04),
        0 8px 18px rgba(15, 23, 42, 0.03);
}

html:not(.dark) .crm-tone-badge {
    border-color: rgba(148, 163, 184, 0.18);
    background: rgba(248, 250, 252, 0.98);
    color: var(--crm-text);
    box-shadow:
        0 1px 2px rgba(15, 23, 42, 0.04),
        0 8px 18px rgba(15, 23, 42, 0.03);
}

html:not(.dark) .crm-tone-badge--info {
    border-color: rgba(59, 130, 246, 0.18);
    background: rgba(219, 234, 254, 0.94);
    color: #1d4ed8;
}

html:not(.dark) .crm-tone-badge--primary {
    border-color: rgba(124, 58, 237, 0.2);
    background: rgba(237, 233, 254, 0.96);
    color: #6d28d9;
}

html:not(.dark) .crm-tone-badge--success {
    border-color: rgba(16, 185, 129, 0.18);
    background: rgba(209, 250, 229, 0.94);
    color: #047857;
}

html:not(.dark) .crm-tone-badge--warning {
    border-color: rgba(245, 158, 11, 0.2);
    background: rgba(254, 243, 199, 0.96);
    color: #b45309;
}

html:not(.dark) .crm-tone-badge--danger {
    border-color: rgba(244, 63, 94, 0.2);
    background: rgba(254, 226, 226, 0.96);
    color: #be123c;
}

html:not(.dark) .crm-tone-badge--gray {
    border-color: rgba(148, 163, 184, 0.18);
    background: rgba(241, 245, 249, 0.96);
    color: var(--crm-text-soft);
}

html:not(.dark) .crm-status-pill,
html:not(.dark) .crm-pill {
    border-color: rgba(15, 23, 42, 0.08);
    background: rgba(241, 245, 249, 0.92);
    color: var(--crm-text);
}

html:not(.dark) .crm-alert--success {
    border-color: rgba(16, 185, 129, 0.18);
    background: linear-gradient(180deg, rgba(236, 253, 245, 0.98), rgba(240, 253, 250, 0.94));
    color: #065f46;
}

html:not(.dark) .crm-alert--warning {
    border-color: rgba(245, 158, 11, 0.2);
    background: linear-gradient(180deg, rgba(255, 251, 235, 0.98), rgba(254, 243, 199, 0.92));
    color: #92400e;
}

html:not(.dark) .crm-alert--danger {
    border-color: rgba(244, 63, 94, 0.2);
    background: linear-gradient(180deg, rgba(254, 242, 242, 0.98), rgba(255, 228, 230, 0.92));
    color: #9f1239;
}

html:not(.dark) .crm-broadcast-status--success {
    border-color: rgba(16, 185, 129, 0.18);
    background: linear-gradient(180deg, rgba(236, 253, 245, 0.98), rgba(240, 253, 250, 0.94));
    color: #065f46;
}

html:not(.dark) .crm-broadcast-status--warning {
    border-color: rgba(245, 158, 11, 0.2);
    background: linear-gradient(180deg, rgba(255, 251, 235, 0.98), rgba(254, 243, 199, 0.92));
    color: #92400e;
}

html:not(.dark) .crm-broadcast-status--danger {
    border-color: rgba(244, 63, 94, 0.2);
    background: linear-gradient(180deg, rgba(254, 242, 242, 0.98), rgba(255, 228, 230, 0.92));
    color: #9f1239;
}

html:not(.dark) .crm-table th {
    color: var(--crm-text-soft);
}

html:not(.dark) .crm-table td {
    border-top-color: rgba(15, 23, 42, 0.08);
    color: var(--crm-text);
}

html:not(.dark) .crm-suite-rail__brand {
    background: rgba(37, 99, 235, 0.06);
    border-color: rgba(37, 99, 235, 0.12);
}

html:not(.dark) .crm-suite-rail__item {
    color: #64748b;
}

html:not(.dark) .crm-suite-rail__item:hover {
    color: var(--crm-text);
    background: rgba(37, 99, 235, 0.05);
    border-color: rgba(37, 99, 235, 0.12);
}

html:not(.dark) .crm-suite-rail__item.is-active {
    color: var(--crm-text);
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.14), rgba(251, 191, 36, 0.08));
    border-color: rgba(37, 99, 235, 0.18);
    box-shadow: 0 16px 28px rgba(148, 163, 184, 0.16);
}

html:not(.dark) .crm-suite-rail__toggle {
    border-color: rgba(37, 99, 235, 0.12);
    background: rgba(37, 99, 235, 0.04);
    color: #64748b;
}

html:not(.dark) .crm-suite-rail__toggle:hover {
    border-color: rgba(37, 99, 235, 0.18);
    background: rgba(37, 99, 235, 0.08);
    color: var(--crm-text);
}

html:not(.dark) .crm-sidebar-account--compact .crm-sidebar-account__avatar {
    box-shadow:
        0 10px 24px rgba(148, 163, 184, 0.18),
        0 0 0 1px rgba(15, 23, 42, 0.12);
}

html:not(.dark) .crm-sidebar-account__popover {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.95)),
        linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(241, 245, 249, 0.88));
    border-color: rgba(15, 23, 42, 0.08);
    box-shadow: 0 24px 70px rgba(148, 163, 184, 0.22);
}

html:not(.dark) .crm-sidebar-account__logout-btn,
html:not(.dark) .crm-sidebar-account__theme {
    background: rgba(241, 245, 249, 0.92);
    border-color: rgba(15, 23, 42, 0.08);
    color: var(--crm-text);
}

html:not(.dark) .crm-sidebar-account__logout-btn:hover,
html:not(.dark) .crm-sidebar-account__logout-btn:focus-visible {
    background: rgba(226, 232, 240, 0.92);
    border-color: rgba(15, 23, 42, 0.12);
    color: var(--crm-text);
}

html:not(.dark) .api-shell .scramble-docs-frame {
    background:
        radial-gradient(circle at top left, rgba(59, 130, 246, 0.08), transparent 24%),
        radial-gradient(circle at top right, rgba(148, 163, 184, 0.08), transparent 20%),
        linear-gradient(180deg, rgba(248, 251, 255, 0.98) 0%, rgba(238, 244, 251, 0.98) 100%);
}

html:not(.dark) .fi-section,
html:not(.dark) .fi-ta,
html:not(.dark) .fi-in-entry,
html:not(.dark) .fi-wi-widget {
    border-color: rgba(15, 23, 42, 0.08) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94)),
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(241, 245, 249, 0.86)) !important;
    box-shadow: 0 16px 45px rgba(148, 163, 184, 0.12) !important;
}

html:not(.dark) .fi-fo-field-wrp {
    border-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
}

html:not(.dark) .fi-wi-stats-overview-stat {
    border-color: rgba(15, 23, 42, 0.08) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94)),
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(241, 245, 249, 0.86)) !important;
    box-shadow: 0 16px 45px rgba(148, 163, 184, 0.12) !important;
}

html:not(.dark) .fi-wi-stats-overview-stat-label {
    color: var(--crm-text-soft) !important;
}

html:not(.dark) .fi-wi-stats-overview-stat-value {
    color: var(--crm-text) !important;
}

html:not(.dark) .fi-wi-stats-overview-stat-description {
    color: var(--crm-accent-strong) !important;
}

html:not(.dark) .fi-wi-stats-overview-stat-description-icon {
    color: var(--crm-accent) !important;
}

html:not(.dark) .fi-wi-chart,
html:not(.dark) .fi-wi-chart .fi-section {
    border-color: rgba(15, 23, 42, 0.08) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94)),
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(241, 245, 249, 0.86)) !important;
    box-shadow: 0 16px 45px rgba(148, 163, 184, 0.12) !important;
}

html:not(.dark) .fi-ta-header-toolbar {
    border-bottom-color: rgba(15, 23, 42, 0.08) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.92)),
        rgba(255, 255, 255, 0.94) !important;
}

html:not(.dark) .fi-ta-content,
html:not(.dark) .fi-ta-ctn {
    background: transparent !important;
}

html:not(.dark) .fi-ta-table thead {
    background: rgba(248, 250, 252, 0.92) !important;
}

html:not(.dark) .fi-ta-table thead th {
    border-bottom-color: rgba(15, 23, 42, 0.08) !important;
    color: var(--crm-text-soft) !important;
}

html:not(.dark) .fi-ta-record:hover,
html:not(.dark) .fi-ta-row:hover {
    background:
        linear-gradient(180deg, rgba(37, 99, 235, 0.05), rgba(37, 99, 235, 0.02)),
        rgba(255, 255, 255, 0.92) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.68);
}

html:not(.dark) .fi-ta-record:has(input[type="checkbox"]:checked),
html:not(.dark) .fi-ta-row:has(.fi-ta-record-checkbox:checked),
html:not(.dark) .fi-ta-row:has(.fi-ta-page-checkbox:checked) {
    background: rgba(37, 99, 235, 0.08) !important;
}

html:not(.dark) .fi-ta-record > td,
html:not(.dark) .fi-ta-cell {
    border-top-color: rgba(15, 23, 42, 0.08) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .fi-ta-text-item-label {
    color: var(--crm-text) !important;
}

html:not(.dark) .fi-ta .text-gray-700,
html:not(.dark) .fi-ta .text-gray-600,
html:not(.dark) .fi-section .text-gray-700,
html:not(.dark) .fi-section .text-gray-600,
html:not(.dark) .fi-modal-window .text-gray-700,
html:not(.dark) .fi-modal-window .text-gray-600,
html:not(.dark) .fi-dropdown-panel .text-gray-700,
html:not(.dark) .fi-dropdown-panel .text-gray-600 {
    color: var(--crm-text-muted) !important;
}

html:not(.dark) .fi-ta .text-gray-500,
html:not(.dark) .fi-ta .text-gray-400,
html:not(.dark) .fi-section .text-gray-500,
html:not(.dark) .fi-section .text-gray-400,
html:not(.dark) .fi-modal-window .text-gray-500,
html:not(.dark) .fi-modal-window .text-gray-400,
html:not(.dark) .fi-dropdown-panel .text-gray-500,
html:not(.dark) .fi-dropdown-panel .text-gray-400 {
    color: var(--crm-text-soft) !important;
}

html:not(.dark) .fi-color-primary {
    color: var(--crm-accent-strong) !important;
}

html:not(.dark) .fi-color-gray,
html:not(.dark) .fi-badge-color-gray,
html:not(.dark) .fi-status-badge-color-gray {
    border-color: rgba(15, 23, 42, 0.08) !important;
    background: rgba(241, 245, 249, 0.92) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .fi-ta-filters-summary,
html:not(.dark) .fi-ta-grouping-settings,
html:not(.dark) .fi-ta-selection-indicator {
    border-color: rgba(15, 23, 42, 0.08) !important;
    background: rgba(241, 245, 249, 0.92) !important;
    color: var(--crm-text-muted) !important;
}

html:not(.dark) .fi-ta-filter-indicators {
    border-top-color: rgba(15, 23, 42, 0.08) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(248, 250, 252, 0.9)),
        rgba(255, 255, 255, 0.88) !important;
}

html:not(.dark) .fi-ta-filter-indicators > div:first-child > span {
    color: var(--crm-text-soft) !important;
}

html:not(.dark) .fi-ta-filter-indicators .fi-icon-btn {
    color: var(--crm-text-soft) !important;
}

html:not(.dark) .fi-ta-filter-indicators .fi-icon-btn:hover,
html:not(.dark) .fi-ta-filter-indicators .fi-icon-btn:focus-visible {
    color: var(--crm-text) !important;
}

html:not(.dark) .fi-icon-btn:not(.fi-btn-color-primary):not(.fi-btn-color-gray) {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.92)),
        rgba(255, 255, 255, 0.9) !important;
    border-color: rgba(15, 23, 42, 0.08) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .fi-icon-btn:not(.fi-btn-color-primary):not(.fi-btn-color-gray):hover,
html:not(.dark) .fi-icon-btn:not(.fi-btn-color-primary):not(.fi-btn-color-gray):focus-visible {
    background:
        linear-gradient(180deg, rgba(248, 250, 252, 0.98), rgba(241, 245, 249, 0.94)),
        rgba(255, 255, 255, 0.94) !important;
    border-color: rgba(15, 23, 42, 0.12) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .fi-icon-btn-badge-ctn {
    border-color: rgba(15, 23, 42, 0.08) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 250, 252, 0.92)),
        rgba(255, 255, 255, 0.9) !important;
    box-shadow: 0 10px 24px rgba(148, 163, 184, 0.12) !important;
}

html:not(.dark) .fi-icon-btn-badge-ctn .fi-badge.fi-color-primary,
html:not(.dark) .fi-icon-btn-badge-ctn .fi-badge.fi-color-custom {
    background: rgba(37, 99, 235, 0.12) !important;
    border-color: rgba(37, 99, 235, 0.18) !important;
    color: var(--crm-accent-strong) !important;
}

html:not(.dark) .fi-btn-color-primary,
html:not(.dark) .fi-btn-color-primary:is(.fi-color-custom) {
    background: #023E8A !important;
    border-color: #023E8A !important;
    color: #ffffff !important;
    box-shadow:
        0 12px 24px rgba(2, 62, 138, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.14) !important;
}

html:not(.dark) .fi-btn-color-primary *,
html:not(.dark) .fi-btn-color-primary:is(.fi-color-custom) * {
    color: #ffffff !important;
}

html:not(.dark) .fi-btn-color-primary:hover,
html:not(.dark) .fi-btn-color-primary:focus,
html:not(.dark) .fi-btn-color-primary:is(.fi-color-custom):hover,
html:not(.dark) .fi-btn-color-primary:is(.fi-color-custom):focus {
    background: #002f6c !important;
    border-color: #002f6c !important;
    color: #ffffff !important;
    box-shadow:
        0 16px 28px rgba(2, 62, 138, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.14) !important;
}

html:not(.dark) .fi-btn-color-gray {
    background: rgba(241, 245, 249, 0.96) !important;
    border-color: rgba(15, 23, 42, 0.08) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .fi-btn-color-gray:hover,
html:not(.dark) .fi-btn-color-gray:focus {
    background: rgba(226, 232, 240, 0.96) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .sendportal-shell .btn-primary,
html:not(.dark) .sendportal-shell .btn-primary.btn-flat {
    border-color: #023E8A !important;
    background: #023E8A !important;
    color: #ffffff !important;
    box-shadow:
        0 12px 24px rgba(2, 62, 138, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.14) !important;
}

html:not(.dark) .sendportal-shell .btn-primary *,
html:not(.dark) .sendportal-shell .btn-primary.btn-flat * {
    color: #ffffff !important;
}

html:not(.dark) .sendportal-shell .btn-primary:hover,
html:not(.dark) .sendportal-shell .btn-primary:focus,
html:not(.dark) .sendportal-shell .btn-primary.btn-flat:hover,
html:not(.dark) .sendportal-shell .btn-primary.btn-flat:focus {
    border-color: #002f6c !important;
    background: #002f6c !important;
    color: #ffffff !important;
    box-shadow:
        0 16px 28px rgba(2, 62, 138, 0.26),
        inset 0 1px 0 rgba(255, 255, 255, 0.14) !important;
}

html:not(.dark) .sendportal-shell .btn-secondary,
html:not(.dark) .sendportal-shell .btn-secondary.btn-flat,
html:not(.dark) .sendportal-shell .btn-light,
html:not(.dark) .sendportal-shell .dropdown-toggle.btn-light,
html:not(.dark) .sendportal-shell .btn-light.btn-flat,
html:not(.dark) .sendportal-shell .btn-default {
    background: rgba(241, 245, 249, 0.96) !important;
    border-color: rgba(15, 23, 42, 0.08) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .sendportal-shell .btn-secondary:hover,
html:not(.dark) .sendportal-shell .btn-secondary:focus,
html:not(.dark) .sendportal-shell .btn-secondary.btn-flat:hover,
html:not(.dark) .sendportal-shell .btn-secondary.btn-flat:focus,
html:not(.dark) .sendportal-shell .btn-light:hover,
html:not(.dark) .sendportal-shell .dropdown-toggle.btn-light:hover,
html:not(.dark) .sendportal-shell .btn-light.btn-flat:hover,
html:not(.dark) .sendportal-shell .btn-light.btn-flat:focus,
html:not(.dark) .sendportal-shell .btn-default:hover,
html:not(.dark) .sendportal-shell .btn-default:focus {
    background: rgba(226, 232, 240, 0.96) !important;
    color: var(--crm-text) !important;
    border-color: rgba(15, 23, 42, 0.12) !important;
}

html:not(.dark) .sendportal-shell .btn-danger {
    border-color: rgba(239, 68, 68, 0.24) !important;
    background: linear-gradient(180deg, rgba(248, 113, 113, 0.98), rgba(220, 38, 38, 0.94)) !important;
    color: #ffffff !important;
    box-shadow:
        0 12px 24px rgba(220, 38, 38, 0.16),
        inset 0 1px 0 rgba(255, 255, 255, 0.12) !important;
}

html:not(.dark) .sendportal-shell .btn-danger:hover,
html:not(.dark) .sendportal-shell .btn-danger:focus {
    border-color: rgba(185, 28, 28, 0.3) !important;
    background: linear-gradient(180deg, rgba(239, 68, 68, 1), rgba(185, 28, 28, 0.96)) !important;
    color: #ffffff !important;
}

html:not(.dark) .sendportal-shell .btn-group > .dropdown-toggle {
    min-height: 2.85rem !important;
    padding: 0.72rem 1rem !important;
    border-color: rgba(15, 23, 42, 0.08) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 252, 0.94)),
        rgba(255, 255, 255, 0.94) !important;
    color: var(--crm-text) !important;
    box-shadow: 0 10px 24px rgba(148, 163, 184, 0.1) !important;
}

html:not(.dark) .sendportal-shell .btn-group > .dropdown-toggle:hover,
html:not(.dark) .sendportal-shell .btn-group > .dropdown-toggle:focus {
    border-color: rgba(37, 99, 235, 0.18) !important;
    background:
        linear-gradient(180deg, rgba(248, 250, 252, 0.98), rgba(241, 245, 249, 0.95)),
        rgba(255, 255, 255, 0.98) !important;
    color: var(--crm-text) !important;
    box-shadow: 0 14px 28px rgba(148, 163, 184, 0.14) !important;
}

html:not(.dark) .sendportal-shell .note-toolbar .note-btn {
    width: 2.25rem !important;
    min-width: 2.25rem !important;
    height: 2.25rem !important;
    min-height: 2.25rem !important;
    padding: 0 !important;
    border-radius: 0 !important;
    border-color: rgba(15, 23, 42, 0.12) !important;
    background: #ffffff !important;
    color: #0f172a !important;
    box-shadow: none !important;
}

html:not(.dark) .sendportal-shell .note-toolbar .note-btn:hover,
html:not(.dark) .sendportal-shell .note-toolbar .note-btn:focus,
html:not(.dark) .sendportal-shell .note-toolbar .note-btn.active {
    border-color: rgba(2, 62, 138, 0.24) !important;
    background: rgba(2, 62, 138, 0.08) !important;
    color: #023E8A !important;
    box-shadow: none !important;
}

html:not(.dark) .sendportal-shell .dropdown-menu {
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 1rem;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95)),
        rgba(255, 255, 255, 0.96);
    box-shadow: 0 18px 42px rgba(148, 163, 184, 0.18);
}

html:not(.dark) .sendportal-shell .dropdown-item {
    color: var(--crm-text);
    border-radius: 0.8rem;
}

html:not(.dark) .sendportal-shell .note-dropdown-menu,
html:not(.dark) .sendportal-shell .note-dropdown-menu .dropdown-item,
html:not(.dark) .sendportal-shell .note-dropdown-menu .note-icon-menu-check {
    color: #0f172a !important;
}

html:not(.dark) .sendportal-shell .note-dropdown-menu {
    background: #ffffff !important;
    border-color: rgba(15, 23, 42, 0.14) !important;
    box-shadow: 0 18px 42px rgba(148, 163, 184, 0.2) !important;
}

html:not(.dark) .sendportal-shell .note-dropdown-menu .note-palette-title,
html:not(.dark) .sendportal-shell .note-dropdown-menu .note-form-label {
    color: #475569 !important;
}

html:not(.dark) .sendportal-shell .sendportal-summernote-color-close {
    border-color: rgba(15, 23, 42, 0.12);
    background: #f8fafc;
    color: #0f172a;
}

html:not(.dark) .sendportal-shell .note-dropdown-menu .note-color-reset,
html:not(.dark) .sendportal-shell .note-dropdown-menu .note-color-select {
    border-color: rgba(15, 23, 42, 0.12) !important;
    background: #f8fafc !important;
    color: #0f172a !important;
}

html:not(.dark) .sendportal-shell .sendportal-summernote-fontsize-value {
    color: #0f172a !important;
}

html:not(.dark) .sendportal-shell .note-dropdown-menu .dropdown-item:hover,
html:not(.dark) .sendportal-shell .note-dropdown-menu .dropdown-item:focus {
    background: rgba(37, 99, 235, 0.1) !important;
    color: #0f172a !important;
}

html:not(.dark) .sendportal-shell .dropdown-item:hover,
html:not(.dark) .sendportal-shell .dropdown-item:focus {
    background: rgba(37, 99, 235, 0.08);
    color: var(--crm-text);
}

html:not(.dark) .sendportal-shell .badge,
html:not(.dark) .sendportal-shell .badge-light,
html:not(.dark) .sendportal-shell .badge-success,
html:not(.dark) .sendportal-shell .badge-danger,
html:not(.dark) .sendportal-shell .badge-primary {
    border-radius: 9999px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    font-weight: 700;
}

html:not(.dark) .sendportal-shell .badge-light {
    background: rgba(241, 245, 249, 0.96);
    color: var(--crm-text);
}

html:not(.dark) .sendportal-shell .badge-success {
    background: rgba(220, 252, 231, 0.96);
    border-color: rgba(34, 197, 94, 0.18);
    color: #166534;
}

html:not(.dark) .sendportal-shell .badge-danger {
    background: rgba(254, 226, 226, 0.96);
    border-color: rgba(239, 68, 68, 0.18);
    color: #b91c1c;
}

html:not(.dark) .sendportal-shell .badge-primary {
    background: rgba(219, 234, 254, 0.96);
    border-color: rgba(37, 99, 235, 0.18);
    color: #1d4ed8;
}

html:not(.dark) .sendportal-pagination {
    margin-top: 1rem;
}

html:not(.dark) .sendportal-pagination > div {
    color: var(--crm-text-soft);
}

html:not(.dark) .sendportal-pagination-shell {
    display: grid;
    gap: 0.85rem;
    width: 100%;
}

html:not(.dark) .sendportal-pagination-shell__mobile,
html:not(.dark) .sendportal-pagination-shell__desktop {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    flex-wrap: wrap;
}

html:not(.dark) .sendportal-pagination-shell__mobile {
    display: inline-flex;
}

html:not(.dark) .sendportal-pagination-shell__desktop {
    display: none;
}

html:not(.dark) .sendportal-page-chip,
html:not(.dark) .sendportal-page-ellipsis {
    min-width: 2.6rem;
    height: 2.6rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 0.9rem;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 9999px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95)),
        rgba(255, 255, 255, 0.96);
    color: var(--crm-text);
    text-decoration: none;
    box-shadow: 0 10px 24px rgba(148, 163, 184, 0.1);
    transition: transform 180ms ease, background 180ms ease, color 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

html:not(.dark) .sendportal-page-chip:hover,
html:not(.dark) .sendportal-page-chip:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(37, 99, 235, 0.18);
    background:
        linear-gradient(180deg, rgba(248, 250, 252, 0.98), rgba(241, 245, 249, 0.95)),
        rgba(255, 255, 255, 0.98);
    color: var(--crm-text);
}

html:not(.dark) .sendportal-page-chip.is-active {
    border-color: rgba(37, 99, 235, 0.18);
    background: rgba(37, 99, 235, 0.12);
    color: var(--crm-accent-strong);
    font-weight: 700;
}

html:not(.dark) .sendportal-page-chip.is-disabled,
html:not(.dark) .sendportal-page-ellipsis {
    cursor: default;
    opacity: 0.7;
}

html:not(.dark) .sendportal-page-ellipsis {
    background: transparent;
    border-color: transparent;
    box-shadow: none;
    min-width: 1.8rem;
    padding: 0;
}

html:not(.dark) .sendportal-shell .pagination {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.45rem;
    margin-bottom: 0 !important;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 9999px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(248, 250, 252, 0.95)),
        rgba(255, 255, 255, 0.96);
    box-shadow: 0 14px 28px rgba(148, 163, 184, 0.12);
}

html:not(.dark) .sendportal-shell .page-item {
    display: inline-flex;
}

html:not(.dark) .sendportal-shell .page-link,
html:not(.dark) .sendportal-shell .pagination .page-link {
    min-width: 2.6rem;
    height: 2.6rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 0.9rem !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    border-radius: 9999px !important;
    background: rgba(255, 255, 255, 0.96) !important;
    color: var(--crm-text) !important;
    box-shadow: 0 6px 14px rgba(148, 163, 184, 0.08) !important;
}

html:not(.dark) .sendportal-shell .page-link:hover,
html:not(.dark) .sendportal-shell .pagination .page-link:hover {
    background: rgba(241, 245, 249, 0.98) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .sendportal-shell .page-item.active .page-link {
    border-color: rgba(37, 99, 235, 0.18) !important;
    background: rgba(37, 99, 235, 0.12) !important;
    color: var(--crm-accent-strong) !important;
}

html:not(.dark) .sendportal-shell .page-item.disabled .page-link {
    opacity: 0.55;
    background: rgba(255, 255, 255, 0.9) !important;
    color: var(--crm-text-soft) !important;
}

html:not(.dark) .sendportal-pagination svg {
    width: 1.15rem;
    height: 1.15rem;
}

@media (min-width: 640px) {
    html:not(.dark) .sendportal-pagination-shell__mobile {
        display: none;
    }

    html:not(.dark) .sendportal-pagination-shell__desktop {
        display: inline-flex;
    }
}

html:not(.dark) .sendportal-shell .btn,
html:not(.dark) .sendportal-shell button.btn,
html:not(.dark) .sendportal-shell a.btn,
html:not(.dark) .sendportal-shell .btn-group > .btn,
html:not(.dark) .sendportal-shell .btn-group > .dropdown-toggle {
    text-decoration: none !important;
}

html:not(.dark) .fi-badge,
html:not(.dark) .fi-status-badge {
    border-color: rgba(15, 23, 42, 0.08) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .fi-ta-pagination {
    background: transparent !important;
}

html:not(.dark) .fi-pagination-items {
    border: 1px solid rgba(148, 163, 184, 0.16) !important;
    background: rgba(255, 255, 255, 0.98) !important;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05) !important;
}

html:not(.dark) .fi-pagination-item-button {
    background: transparent !important;
    border-color: transparent !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .fi-pagination-item-button:hover,
html:not(.dark) .fi-pagination-item-button:focus-visible {
    background: rgba(241, 245, 249, 0.98) !important;
    border-color: rgba(15, 23, 42, 0.12) !important;
    color: var(--crm-text) !important;
}

html:not(.dark) .fi-pagination-item.fi-active .fi-pagination-item-button,
html:not(.dark) .fi-pagination-item[aria-current="page"] .fi-pagination-item-button {
    background: rgba(37, 99, 235, 0.08) !important;
    border-color: rgba(37, 99, 235, 0.18) !important;
    color: var(--crm-accent-strong) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7) !important;
}

html:not(.dark) .fi-pagination-item-label,
html:not(.dark) .fi-pagination-item-icon {
    color: var(--crm-text-soft) !important;
}

html:not(.dark) .fi-pagination-item.fi-active .fi-pagination-item-label,
html:not(.dark) .fi-pagination-item[aria-current="page"] .fi-pagination-item-label,
html:not(.dark) .fi-pagination-item.fi-active .fi-pagination-item-icon,
html:not(.dark) .fi-pagination-item[aria-current="page"] .fi-pagination-item-icon {
    color: var(--crm-accent-strong) !important;
}

html:not(.dark) .fi-ta .text-white,
html:not(.dark) .fi-section .text-white,
html:not(.dark) .fi-modal-window .text-white,
html:not(.dark) .fi-dropdown-panel .text-white,
html:not(.dark) .fi-in-card .text-white,
html:not(.dark) .fi-wi-widget .text-white,
html:not(.dark) .crm-panel .text-white,
html:not(.dark) .sendportal-shell .text-white {
    color: var(--crm-text) !important;
}

html:not(.dark) .crm-panel .fi-btn.fi-btn-color-primary,
html:not(.dark) .crm-panel .fi-btn.fi-btn-color-primary:is(.fi-color-custom) {
    color: #ffffff !important;
}

html:not(.dark) .crm-panel .fi-btn.fi-btn-color-primary .fi-btn-label,
html:not(.dark) .crm-panel .fi-btn.fi-btn-color-primary .fi-btn-icon {
    color: #ffffff !important;
}

html:not(.dark) .fi-ta .text-gray-950,
html:not(.dark) .fi-section .text-gray-950,
html:not(.dark) .fi-modal-window .text-gray-950,
html:not(.dark) .fi-dropdown-panel .text-gray-950,
html:not(.dark) .fi-in-card .text-gray-950,
html:not(.dark) .fi-wi-widget .text-gray-950,
html:not(.dark) .fi-ta .dark\:text-white,
html:not(.dark) .fi-section .dark\:text-white,
html:not(.dark) .fi-modal-window .dark\:text-white,
html:not(.dark) .fi-dropdown-panel .dark\:text-white,
html:not(.dark) .fi-in-card .dark\:text-white,
html:not(.dark) .fi-wi-widget .dark\:text-white {
    color: var(--crm-text) !important;
}

html:not(.dark) .fi-btn.fi-btn-color-primary,
html:not(.dark) .fi-btn.fi-btn-color-primary:is(.fi-color-custom),
html:not(.dark) .fi-ta .fi-btn.fi-btn-color-primary,
html:not(.dark) .fi-section .fi-btn.fi-btn-color-primary,
html:not(.dark) .fi-modal-window .fi-btn.fi-btn-color-primary,
html:not(.dark) .fi-dropdown-panel .fi-btn.fi-btn-color-primary,
html:not(.dark) .fi-in-card .fi-btn.fi-btn-color-primary,
html:not(.dark) .fi-wi-widget .fi-btn.fi-btn-color-primary {
    color: #ffffff !important;
}

html:not(.dark) .fi-btn.fi-btn-color-primary *,
html:not(.dark) .fi-btn.fi-btn-color-primary:is(.fi-color-custom) *,
html:not(.dark) .fi-ta .fi-btn.fi-btn-color-primary *,
html:not(.dark) .fi-section .fi-btn.fi-btn-color-primary *,
html:not(.dark) .fi-modal-window .fi-btn.fi-btn-color-primary *,
html:not(.dark) .fi-dropdown-panel .fi-btn.fi-btn-color-primary *,
html:not(.dark) .fi-in-card .fi-btn.fi-btn-color-primary *,
html:not(.dark) .fi-wi-widget .fi-btn.fi-btn-color-primary * {
    color: #ffffff !important;
}

.donation-summary-counter {
    position: relative;
}

.donation-summary-counter::after {
    content: attr(data-summary-counter);
    position: absolute;
    right: 0.85rem;
    bottom: 0.55rem;
    z-index: 1;
    color: #64748b;
    font-size: 0.72rem;
    line-height: 1;
    pointer-events: none;
}

.donation-summary-counter__input {
    padding-right: 5rem !important;
    padding-bottom: 1.85rem !important;
}

html:not(.dark) .donation-payment-methods-page .fi-fo-repeater-item,
html:not(.dark) .donation-payment-methods-page .fi-fo-repeater-item-header {
    border-color: rgba(148, 163, 184, 0.2) !important;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.995), rgba(248, 250, 252, 0.96)),
        #ffffff !important;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

html:not(.dark) .donation-payment-methods-page .fi-fo-repeater-item-content {
    background: transparent !important;
}

.fi-fo-date-time-picker-panel {
    z-index: 80 !important;
}

.donation-suite-main .fi-wi-stats-overview-stats-ctn {
    gap: 1rem !important;
}

.donation-suite-main .fi-wi-stats-overview-stat {
    overflow: hidden;
    border: 1px solid rgba(37, 99, 235, 0.14) !important;
    border-radius: 0.75rem !important;
    background:
        linear-gradient(135deg, rgba(37, 99, 235, 0.075), transparent 42%),
        linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
    box-shadow: 0 14px 34px rgba(37, 99, 235, 0.08) !important;
    padding: 1rem 1.125rem !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.donation-suite-main .fi-wi-stats-overview-stat::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 0.1875rem;
    background: linear-gradient(90deg, #2563eb 0%, #60a5fa 100%);
}

.donation-suite-main .fi-wi-stats-overview-stat > div {
    gap: 0.5rem !important;
}

.donation-suite-main .fi-wi-stats-overview-stat-icon {
    height: 1.05rem !important;
    width: 1.05rem !important;
    color: #2563eb !important;
}

.donation-suite-main .fi-wi-stats-overview-stat-label {
    color: #475569 !important;
    font-size: 0.68rem !important;
    font-weight: 600 !important;
    line-height: 0.95rem !important;
}

.donation-suite-main .fi-wi-stats-overview-stat-value {
    color: #0f172a !important;
    font-size: 1.6rem !important;
    font-weight: 700 !important;
    line-height: 1.9rem !important;
}

.donation-suite-main .fi-wi-stats-overview-stat-value .text-3xl {
    color: #0f172a !important;
    font-size: 1.55rem !important;
    font-weight: 700 !important;
    line-height: 1.85rem !important;
}

.donation-suite-main .fi-wi-stats-overview-stat-value .text-base {
    color: #64748b !important;
    font-size: 0.82rem !important;
    font-weight: 500 !important;
    line-height: 1.1rem !important;
}

.donation-suite-main .fi-wi-stats-overview-stat-value span[aria-hidden="true"] {
    margin-right: 0.2rem !important;
}

.donation-suite-main .fi-wi-stats-overview-stat-description {
    color: #2563eb !important;
    font-size: 0.78rem !important;
    font-weight: 500 !important;
    line-height: 1rem !important;
}

.donation-suite-main .fi-wi-stats-overview-stat-description-icon {
    color: #60a5fa !important;
}

.donor-profile-shell {
    display: grid;
    gap: 1rem;
}

.donor-profile-breadcrumb {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    color: #64748b;
    font-size: 0.82rem;
    font-weight: 500;
}

.donor-profile-breadcrumb a {
    color: #475569;
    text-decoration: none;
}

.donor-profile-breadcrumb a:hover {
    color: #023E8A;
}

.donor-profile-breadcrumb strong {
    color: #0f172a;
    font-weight: 650;
}

.donor-profile-hero,
.donor-profile-panel {
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 0.5rem;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.055);
}

.donor-profile-hero {
    overflow: hidden;
}

.donor-profile-hero__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.25rem;
}

.donor-profile-identity {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 1rem;
}

.donor-profile-avatar {
    display: grid;
    width: 4rem;
    height: 4rem;
    flex: 0 0 auto;
    place-items: center;
    border: 1px solid rgba(2, 62, 138, 0.16);
    border-radius: 999px;
    background:
        radial-gradient(circle at 30% 20%, rgba(2, 62, 138, 0.18), transparent 34%),
        #eef5ff;
    color: #023E8A;
    font-size: 1.05rem;
    font-weight: 700;
}

.donor-profile-identity__body {
    min-width: 0;
}

.donor-profile-name-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.55rem;
}

.donor-profile-name-row h2 {
    margin: 0;
    color: #0f172a;
    font-size: 1.18rem;
    font-weight: 700;
    line-height: 1.35;
}

.donor-profile-status {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 0.16rem 0.52rem;
    font-size: 0.72rem;
    font-weight: 650;
    line-height: 1.1rem;
}

.donor-profile-status--success {
    background: #dcfce7;
    color: #15803d;
}

.donor-profile-status--info {
    background: #e0f2fe;
    color: #0369a1;
}

.donor-profile-status--warning {
    background: #fef3c7;
    color: #a16207;
}

.donor-profile-status--gray {
    background: #f1f5f9;
    color: #475569;
}

.donor-profile-contact-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin-top: 0.45rem;
    color: #64748b;
    font-size: 0.82rem;
    font-weight: 500;
}

.donor-profile-contact-strip span {
    display: inline-flex;
    min-width: 0;
    align-items: center;
    gap: 0.3rem;
}

.donor-profile-contact-strip svg {
    width: 0.95rem;
    height: 0.95rem;
    color: #64748b;
}

.donor-profile-actions {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.5rem;
}

.donor-profile-action {
    display: inline-flex;
    height: 2.25rem;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    border-radius: 0.5rem;
    font-size: 0.8rem;
    font-weight: 650;
    line-height: 1;
    padding: 0 0.78rem;
    text-decoration: none;
    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease, background-color 160ms ease;
}

.donor-profile-action svg {
    width: 0.95rem;
    height: 0.95rem;
}

.donor-profile-action--secondary {
    border: 1px solid rgba(148, 163, 184, 0.28);
    background: #ffffff;
    color: #0f172a;
}

.donor-profile-action--secondary:hover,
.donor-profile-action--secondary:focus-visible {
    border-color: rgba(2, 62, 138, 0.24);
    color: #023E8A;
    transform: translateY(-1px);
}

.donor-profile-action--primary {
    border: 1px solid #023E8A;
    background: #023E8A;
    color: #ffffff;
    box-shadow: 0 10px 22px rgba(2, 62, 138, 0.18);
}

.donor-profile-action--primary:hover,
.donor-profile-action--primary:focus-visible {
    background: #002f6c;
    color: #ffffff;
    transform: translateY(-1px);
}

.donor-profile-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid rgba(148, 163, 184, 0.22);
}

.donor-profile-metric {
    display: grid;
    gap: 0.2rem;
    min-width: 0;
    padding: 1rem 1.25rem;
}

.donor-profile-metric + .donor-profile-metric {
    border-left: 1px solid rgba(148, 163, 184, 0.18);
}

.donor-profile-metric span {
    color: #64748b;
    font-size: 0.68rem;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
}

.donor-profile-metric strong {
    color: #0f172a;
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.35;
}

.donor-profile-metric small {
    overflow: hidden;
    color: #64748b;
    font-size: 0.75rem;
    font-weight: 500;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.donor-profile-tabs {
    display: flex;
    gap: 1rem;
    border-bottom: 1px solid rgba(148, 163, 184, 0.22);
    padding: 0 0.35rem;
}

.donor-profile-tabs a,
.donor-profile-tabs button {
    display: inline-flex;
    align-items: center;
    border-bottom: 2px solid transparent;
    background: transparent;
    color: #475569;
    font-size: 0.8rem;
    font-weight: 600;
    padding: 0.65rem 0;
    text-decoration: none;
    cursor: pointer;
}

.donor-profile-tabs a:hover,
.donor-profile-tabs a.is-active,
.donor-profile-tabs button:hover,
.donor-profile-tabs button.is-active {
    border-bottom-color: #023E8A;
    color: #023E8A;
}

.donor-profile-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.48fr);
    gap: 1rem;
    align-items: start;
}

.donor-profile-main-column,
.donor-profile-side-column {
    display: grid;
    gap: 1rem;
}

.donor-profile-panel {
    padding: 1rem;
}

.donor-profile-panel--compact {
    padding: 0.9rem;
}

.donor-profile-panel__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.85rem;
}

.donor-profile-panel__header h3 {
    margin: 0;
    color: #0f172a;
    font-size: 0.98rem;
    font-weight: 700;
    line-height: 1.35;
}

.donor-profile-panel__header p {
    margin: 0.12rem 0 0;
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 500;
    line-height: 1.35;
}

.donor-profile-panel__header a {
    color: #023E8A;
    font-size: 0.78rem;
    font-weight: 650;
    text-decoration: none;
}

.donor-profile-channel-list,
.donor-profile-timeline,
.donor-profile-identity-list {
    display: grid;
    gap: 0.65rem;
}

.donor-profile-channel,
.donor-profile-timeline-item,
.donor-profile-crm-match,
.donor-profile-empty-state {
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 0.5rem;
    background: #f8fafc;
}

.donor-profile-channel {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
}

.donor-profile-channel__icon,
.donor-profile-timeline-item__dot,
.donor-profile-crm-match__avatar {
    display: grid;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 999px;
}

.donor-profile-channel__icon {
    width: 1.7rem;
    height: 1.7rem;
    border: 1px solid rgba(148, 163, 184, 0.24);
    background: #ffffff;
    color: #475569;
}

.donor-profile-channel__icon svg,
.donor-profile-timeline-item__dot svg {
    width: 0.95rem;
    height: 0.95rem;
}

.donor-profile-channel__body {
    display: grid;
    min-width: 0;
    gap: 0.08rem;
}

.donor-profile-channel__body strong {
    color: #0f172a;
    font-size: 0.82rem;
    font-weight: 650;
}

.donor-profile-channel__body small {
    overflow: hidden;
    color: #64748b;
    font-size: 0.75rem;
    font-weight: 500;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.donor-profile-toggle {
    position: relative;
    display: inline-flex;
    width: 2rem;
    height: 1.1rem;
    flex: 0 0 auto;
    align-items: center;
    margin-left: auto;
    border-radius: 999px;
    background: #e2e8f0;
    padding: 0.14rem;
}

.donor-profile-toggle span {
    width: 0.82rem;
    height: 0.82rem;
    border-radius: 999px;
    background: #ffffff;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.22);
    transition: transform 160ms ease;
}

.donor-profile-toggle.is-on {
    background: #023E8A;
}

.donor-profile-toggle.is-on span {
    transform: translateX(0.9rem);
}

.donor-profile-timeline {
    position: relative;
}

.donor-profile-timeline::before {
    content: "";
    position: absolute;
    left: 0.85rem;
    top: 0.75rem;
    bottom: 0.75rem;
    width: 1px;
    background: rgba(148, 163, 184, 0.34);
}

.donor-profile-timeline-item {
    position: relative;
    display: flex;
    gap: 0.75rem;
    padding: 0.85rem;
    color: inherit;
    text-decoration: none;
}

.donor-profile-timeline-item:hover {
    border-color: rgba(2, 62, 138, 0.22);
    background: #ffffff;
}

.donor-profile-timeline-item__dot {
    z-index: 1;
    width: 1.7rem;
    height: 1.7rem;
    background: #eef5ff;
    color: #023E8A;
}

.donor-profile-timeline-item--success .donor-profile-timeline-item__dot {
    background: #dcfce7;
    color: #15803d;
}

.donor-profile-timeline-item--warning .donor-profile-timeline-item__dot {
    background: #fef3c7;
    color: #a16207;
}

.donor-profile-timeline-item--info .donor-profile-timeline-item__dot {
    background: #e0f2fe;
    color: #0369a1;
}

.donor-profile-timeline-item--gray .donor-profile-timeline-item__dot {
    background: #f1f5f9;
    color: #475569;
}

.donor-profile-timeline-item__body {
    display: grid;
    min-width: 0;
    gap: 0.18rem;
}

.donor-profile-timeline-item__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.donor-profile-timeline-item strong {
    color: #0f172a;
    font-size: 0.82rem;
    font-weight: 700;
}

.donor-profile-timeline-item time,
.donor-profile-timeline-item small {
    color: #64748b;
    font-size: 0.73rem;
    font-weight: 500;
}

.donor-profile-timeline-item__body > span:not(.donor-profile-timeline-item__top) {
    color: #334155;
    font-size: 0.8rem;
    font-weight: 500;
}

.donor-profile-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.donor-profile-tags span {
    border: 1px solid rgba(2, 62, 138, 0.12);
    border-radius: 0.42rem;
    background: #eef5ff;
    color: #023E8A;
    font-size: 0.72rem;
    font-weight: 650;
    padding: 0.28rem 0.5rem;
}

.donor-profile-side-stat {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border-top: 1px solid rgba(148, 163, 184, 0.18);
    padding: 0.65rem 0;
}

.donor-profile-side-stat:first-of-type {
    border-top: 0;
    padding-top: 0;
}

.donor-profile-side-stat span,
.donor-profile-identity-list dt {
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
}

.donor-profile-side-stat strong {
    color: #0f172a;
    font-size: 0.98rem;
    font-weight: 700;
}

.donor-profile-crm-match {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    padding: 0.75rem;
    color: inherit;
    text-decoration: none;
}

.donor-profile-crm-match:hover {
    border-color: rgba(2, 62, 138, 0.22);
    background: #ffffff;
}

.donor-profile-crm-match__avatar {
    width: 2rem;
    height: 2rem;
    background: #023E8A;
    color: #ffffff;
    font-size: 0.82rem;
    font-weight: 700;
}

.donor-profile-crm-match strong,
.donor-profile-crm-match small {
    display: block;
}

.donor-profile-crm-match strong {
    color: #0f172a;
    font-size: 0.82rem;
    font-weight: 700;
}

.donor-profile-crm-match small {
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 500;
}

.donor-profile-identity-list {
    margin: 0;
}

.donor-profile-identity-list div {
    display: grid;
    gap: 0.12rem;
    border-top: 1px solid rgba(148, 163, 184, 0.18);
    padding: 0.55rem 0;
}

.donor-profile-identity-list div:first-child {
    border-top: 0;
    padding-top: 0;
}

.donor-profile-identity-list dd {
    margin: 0;
    overflow-wrap: anywhere;
    color: #0f172a;
    font-size: 0.8rem;
    font-weight: 600;
}

.donor-profile-empty-state {
    color: #64748b;
    font-size: 0.8rem;
    font-weight: 500;
    padding: 0.85rem;
}

.donor-profile-empty-state--small {
    padding: 0.75rem;
}

.donor-profile-records {
    scroll-margin-top: 6rem;
}

.unified-profile-shell {
    --unified-accent: #023E8A;
}

.unified-profile-hero .donor-profile-avatar {
    background:
        radial-gradient(circle at 32% 20%, rgba(196, 18, 48, 0.18), transparent 34%),
        #eef5ff;
}

.unified-profile-identity-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 0.85rem;
}

.unified-profile-identity-list div:nth-child(2) {
    border-top: 0;
    padding-top: 0;
}

.unified-profile-tags-secondary {
    margin-top: 0.65rem;
}

.unified-profile-tags-secondary span {
    border-color: rgba(100, 116, 139, 0.16);
    background: #f8fafc;
    color: #475569;
}

.unified-profile-page [x-cloak] {
    display: none !important;
}

.unified-profile-tabs-shell,
.donor-profile-tab-panel {
    display: grid;
    gap: 1rem;
}

.unified-profile-stat-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.unified-profile-stat-grid .donor-profile-side-stat {
    border: 1px solid rgba(148, 163, 184, 0.18);
    border-radius: 0.5rem;
    background: #f8fafc;
    padding: 0.8rem;
}

.unified-profile-stat-grid .donor-profile-side-stat:first-of-type {
    border-top: 1px solid rgba(148, 163, 184, 0.18);
    padding-top: 0.8rem;
}

.unified-profile-record-list {
    display: grid;
    gap: 0.65rem;
}

.unified-profile-record {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    border: 1px solid rgba(148, 163, 184, 0.2);
    border-radius: 0.5rem;
    background: #f8fafc;
    color: inherit;
    padding: 0.78rem 0.85rem;
    text-decoration: none;
    transition: background-color 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.unified-profile-record[href]:hover {
    border-color: rgba(2, 62, 138, 0.22);
    background: #ffffff;
    transform: translateY(-1px);
}

.unified-profile-record span {
    display: grid;
    min-width: 0;
    gap: 0.12rem;
}

.unified-profile-record strong {
    overflow: hidden;
    color: #0f172a;
    font-size: 0.84rem;
    font-weight: 650;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.unified-profile-record small,
.unified-profile-record time {
    color: #64748b;
    font-size: 0.74rem;
    font-weight: 500;
}

.unified-profile-record time {
    flex: 0 0 auto;
}

.recurring-dunning-panel {
    display: grid;
    gap: 0.9rem;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 0.5rem;
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.055);
    padding: 1rem;
}

.recurring-dunning-panel__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.recurring-dunning-panel__header h2 {
    display: inline-flex;
    align-items: center;
    gap: 0.42rem;
    margin: 0;
    color: #0f172a;
    font-size: 1rem;
    font-weight: 680;
}

.recurring-dunning-panel__header h2 svg {
    width: 1rem;
    height: 1rem;
    color: #dc2626;
}

.recurring-dunning-panel__header p {
    margin: 0.22rem 0 0;
    color: #64748b;
    font-size: 0.78rem;
    font-weight: 500;
}

.recurring-dunning-panel__header a {
    color: #023E8A;
    font-size: 0.78rem;
    font-weight: 650;
    text-decoration: none;
}

.recurring-dunning-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.75rem;
}

.recurring-dunning-card {
    display: grid;
    gap: 0.65rem;
    border: 1px solid rgba(245, 158, 11, 0.28);
    border-radius: 0.5rem;
    background: #fffaf0;
    padding: 0.78rem;
}

.recurring-dunning-card--danger {
    border-color: rgba(220, 38, 38, 0.26);
    background: #fff5f5;
}

.recurring-dunning-card--warning {
    border-color: rgba(245, 158, 11, 0.28);
    background: #fffaf0;
}

.recurring-dunning-card__top {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    min-width: 0;
}

.recurring-dunning-card__avatar {
    display: grid;
    width: 2rem;
    height: 2rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 999px;
    background: #eef5ff;
    color: #023E8A;
    font-size: 0.78rem;
    font-weight: 700;
}

.recurring-dunning-card__identity {
    display: grid;
    min-width: 0;
    gap: 0.08rem;
}

.recurring-dunning-card__identity strong {
    overflow: hidden;
    color: #0f172a;
    font-size: 0.8rem;
    font-weight: 680;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.recurring-dunning-card__identity small,
.recurring-dunning-card__meta {
    color: #64748b;
    font-size: 0.72rem;
    font-weight: 500;
}

.recurring-dunning-card__badge {
    flex: 0 0 auto;
    margin-left: auto;
    border-radius: 0.36rem;
    background: rgba(245, 158, 11, 0.16);
    color: #a16207;
    font-size: 0.64rem;
    font-weight: 700;
    padding: 0.22rem 0.38rem;
    text-transform: uppercase;
}

.recurring-dunning-card--danger .recurring-dunning-card__badge {
    background: rgba(220, 38, 38, 0.12);
    color: #b91c1c;
}

.recurring-dunning-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem 0.65rem;
}

.recurring-dunning-card__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.5rem;
}

.recurring-dunning-card__button {
    display: inline-flex;
    min-height: 2rem;
    align-items: center;
    justify-content: center;
    border-radius: 0.42rem;
    font-size: 0.74rem;
    font-weight: 650;
    text-decoration: none;
}

.recurring-dunning-card__button--secondary {
    border: 1px solid rgba(148, 163, 184, 0.28);
    background: #ffffff;
    color: #0f172a;
}

.recurring-dunning-card__button--primary {
    border: 1px solid #023E8A;
    background: #023E8A;
    color: #ffffff;
}

.recurring-dunning-card__button.is-disabled {
    color: #94a3b8;
}

.recurring-dunning-empty {
    display: flex;
    grid-column: 1 / -1;
    align-items: center;
    gap: 0.55rem;
    border: 1px solid rgba(34, 197, 94, 0.2);
    border-radius: 0.5rem;
    background: #f0fdf4;
    color: #166534;
    font-size: 0.82rem;
    font-weight: 600;
    padding: 0.9rem;
}

.recurring-dunning-empty svg {
    width: 1.05rem;
    height: 1.05rem;
}

@media (max-width: 640px) {
    .unified-profile-identity-list {
        grid-template-columns: 1fr;
    }

    .unified-profile-identity-list div:nth-child(2) {
        border-top: 1px solid rgba(148, 163, 184, 0.18);
        padding-top: 0.55rem;
    }

    .unified-profile-stat-grid {
        grid-template-columns: 1fr;
    }

    .unified-profile-record {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 1100px) {
    .recurring-dunning-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1100px) {
    .donor-profile-grid {
        grid-template-columns: 1fr;
    }

    .donor-profile-side-column {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 900px) {
    .donor-profile-hero__top {
        flex-direction: column;
    }

    .donor-profile-actions {
        justify-content: flex-start;
    }

    .donor-profile-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .donor-profile-metric:nth-child(3) {
        border-left: 0;
    }
}

@media (max-width: 640px) {
    .donor-profile-hero__top,
    .donor-profile-panel {
        padding: 0.9rem;
    }

    .donor-profile-identity {
        align-items: flex-start;
    }

    .donor-profile-avatar {
        width: 3.2rem;
        height: 3.2rem;
    }

    .donor-profile-metrics,
    .donor-profile-side-column {
        grid-template-columns: 1fr;
    }

    .donor-profile-metric {
        border-left: 0 !important;
        border-top: 1px solid rgba(148, 163, 184, 0.18);
    }

    .donor-profile-metric:first-child {
        border-top: 0;
    }

    .donor-profile-tabs {
        overflow-x: auto;
    }
}

.donation-settings-page {
    display: grid;
    grid-template-columns: minmax(12rem, 16rem) minmax(0, 1fr);
    gap: 1.5rem;
    color: #0f172a;
}

.donation-settings-simple {
    display: grid;
    gap: 1.25rem;
    color: #0f172a;
}

.donation-settings-nav {
    align-self: start;
    position: sticky;
    top: 1rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 1rem;
    border: 1px solid #e5e7eb;
    border-radius: 1rem;
    background: #ffffff;
    box-shadow: 0 16px 40px rgba(15, 23, 42, 0.06);
}

.donation-settings-nav h2 {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 650;
    color: #0f172a;
}

.donation-settings-nav nav {
    display: grid;
    gap: 0.35rem;
}

.donation-settings-nav__item {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    min-height: 2.45rem;
    padding: 0 0.75rem;
    border-radius: 0.65rem;
    color: #475569;
    font-size: 0.9rem;
    font-weight: 520;
    text-decoration: none;
}

.donation-settings-nav__item svg {
    width: 1rem;
    height: 1rem;
    color: #64748b;
}

.donation-settings-nav__item:hover,
.donation-settings-nav__item.is-active {
    background: #eef6ff;
    color: #023E8A;
}

.donation-settings-nav__item:hover svg,
.donation-settings-nav__item.is-active svg {
    color: #023E8A;
}

.donation-settings-content {
    display: grid;
    gap: 1.25rem;
}

.donation-settings-panel {
    border: 1px solid #e5e7eb;
    border-radius: 1rem;
    background: #ffffff;
    box-shadow: 0 16px 42px rgba(15, 23, 42, 0.06);
    overflow: hidden;
}

.donation-settings-panel--accent {
    border-color: rgba(2, 62, 138, 0.22);
    box-shadow: 0 18px 48px rgba(2, 62, 138, 0.08);
}

.donation-settings-panel__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.15rem 1.35rem;
    border-bottom: 1px solid #eef2f7;
}

.donation-settings-panel__header h2 {
    margin: 0.12rem 0 0;
    font-size: 1.1rem;
    line-height: 1.25;
    font-weight: 650;
    color: #0f172a;
}

.donation-settings-panel__eyebrow {
    margin: 0;
    font-size: 0.72rem;
    font-weight: 700;
    text-transform: uppercase;
    color: #023E8A;
}

.donation-settings-org-grid,
.donation-settings-export-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    padding: 1.25rem;
}

.donation-settings-simple .donation-settings-export-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.donation-settings-info-card,
.donation-settings-export-card,
.donation-settings-gateway,
.donation-settings-endpoint {
    border: 1px solid #e5e7eb;
    border-radius: 0.85rem;
    background: #f8fafc;
}

.donation-settings-info-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.8rem;
    padding: 1rem;
}

.donation-settings-info-card__icon,
.donation-settings-export-card__icon,
.donation-settings-gateway__icon,
.donation-settings-endpoint__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 0.8rem;
    background: #eef6ff;
    color: #023E8A;
}

.donation-settings-info-card__icon svg,
.donation-settings-export-card__icon svg,
.donation-settings-gateway__icon svg,
.donation-settings-endpoint__icon svg {
    width: 1.1rem;
    height: 1.1rem;
}

.donation-settings-info-card small,
.donation-settings-gateway small,
.donation-settings-endpoint small,
.donation-settings-export-card p {
    display: block;
    color: #64748b;
    font-size: 0.82rem;
    line-height: 1.45;
}

.donation-settings-info-card strong,
.donation-settings-gateway strong,
.donation-settings-endpoint strong {
    display: block;
    min-width: 0;
    overflow-wrap: anywhere;
    color: #0f172a;
    font-size: 0.95rem;
    font-weight: 620;
}

.donation-settings-info-card em {
    display: block;
    margin-top: 0.25rem;
    color: #64748b;
    font-size: 0.78rem;
    font-style: normal;
}

.donation-settings-gateway-list,
.donation-settings-endpoints {
    display: grid;
    gap: 0;
    padding: 1.25rem;
}

.donation-settings-payment-form {
    display: grid;
    gap: 1rem;
    padding: 1.25rem;
}

.donation-settings-payment-form .fi-fo-repeater-item {
    border-radius: 0.85rem;
    border-color: #e5e7eb;
    background: #f8fafc;
    box-shadow: none;
}

.donation-settings-payment-form .fi-fo-repeater-item-header {
    background: #ffffff;
}

.donation-settings-payment-form .fi-fo-repeater-add-action-ctn {
    justify-content: flex-start;
}

.donation-settings-payment-form > .donation-settings-button {
    justify-self: start;
}

.donation-payment-method-list {
    display: grid;
    gap: 0.8rem;
    padding: 1.25rem;
}

.donation-payment-method {
    border: 1px solid #e5e7eb;
    border-radius: 0.85rem;
    background: #f8fafc;
    overflow: hidden;
}

.donation-payment-method__summary {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.85rem;
    padding: 0.95rem;
}

.donation-payment-method__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.35rem;
    height: 2.35rem;
    border-radius: 0.8rem;
    background: #eef6ff;
    color: #023E8A;
}

.donation-payment-method__icon svg {
    width: 1.1rem;
    height: 1.1rem;
}

.donation-payment-method__identity {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.8rem;
    min-width: 0;
}

.donation-payment-method__identity h3 {
    margin: 0;
    color: #0f172a;
    font-size: 0.95rem;
    font-weight: 650;
}

.donation-payment-method__identity p {
    margin: 0.2rem 0 0;
    color: #64748b;
    font-size: 0.8rem;
    line-height: 1.4;
}

.donation-payment-method__actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5rem;
}

.donation-payment-method__editor {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.85rem;
    padding: 1rem;
    border-top: 1px solid #e5e7eb;
    background: #ffffff;
}

.donation-payment-method__editor label {
    display: grid;
    gap: 0.35rem;
    min-width: 0;
}

.donation-payment-method__editor label span {
    color: #334155;
    font-size: 0.78rem;
    font-weight: 650;
}

.donation-settings-input {
    width: 100%;
    min-height: 2.45rem;
    border: 1px solid #dbe3ef;
    border-radius: 0.65rem;
    background: #ffffff;
    padding: 0 0.75rem;
    color: #0f172a;
    font-size: 0.88rem;
    outline: none;
}

.donation-settings-input:focus {
    border-color: #023E8A;
    box-shadow: 0 0 0 3px rgba(2, 62, 138, 0.12);
}

select.donation-settings-input {
    appearance: none;
    -webkit-appearance: none;
    background-color: #ffffff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2364748b' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-position: right 0.8rem center !important;
    background-repeat: no-repeat !important;
    background-size: 1rem 1rem !important;
    padding-right: 2.5rem;
}

select.donation-settings-input::-ms-expand {
    display: none;
}

.donation-settings-toggle-row {
    align-content: center;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.55rem !important;
    min-height: 2.45rem;
    padding-top: 1.25rem;
}

.donation-settings-toggle-row input {
    width: 1rem;
    height: 1rem;
    accent-color: #023E8A;
}

.donation-payment-method__editor-actions {
    display: flex;
    justify-content: flex-end;
    gap: 0.6rem;
    grid-column: 1 / -1;
    padding-top: 0.2rem;
}

.donation-settings-button--danger {
    border: 1px solid #fecaca;
    background: #fff1f2;
    color: #b91c1c;
}

.donation-settings-button--danger:hover,
.donation-settings-button--danger:focus-visible {
    border-color: #fca5a5;
    background: #fee2e2;
    color: #991b1b;
}

.donation-settings-gateway {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.85rem;
    padding: 0.95rem;
}

.donation-settings-gateway__copy {
    min-width: 0;
}

.donation-settings-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.65rem;
    padding: 0 0.65rem;
    border-radius: 999px;
    font-size: 0.75rem;
    font-weight: 650;
}

.donation-settings-status--success {
    background: #dcfce7;
    color: #166534;
}

.donation-settings-status--warning {
    background: #fef3c7;
    color: #92400e;
}

.donation-settings-status--gray {
    background: #e2e8f0;
    color: #475569;
}

.donation-settings-export-card {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 1rem;
    background: #ffffff;
}

.donation-settings-export-card__top {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.85rem;
}

.donation-settings-export-card h3 {
    margin: 0;
    color: #0f172a;
    font-size: 1rem;
    font-weight: 650;
}

.donation-settings-export-card p {
    margin: 0.25rem 0 0;
}

.donation-settings-field-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.donation-settings-field-list span {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    min-height: 1.75rem;
    padding: 0 0.55rem;
    border-radius: 999px;
    background: #f1f5f9;
    color: #334155;
    font-size: 0.76rem;
    font-weight: 560;
}

.donation-settings-field-list svg {
    width: 0.8rem;
    height: 0.8rem;
    color: #16a34a;
}

.donation-settings-button,
.donation-settings-link,
.donation-settings-copy {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    min-height: 2.35rem;
    padding: 0 0.85rem;
    border-radius: 0.65rem;
    font-size: 0.85rem;
    font-weight: 620;
    text-decoration: none;
    transition: background 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

.donation-settings-button svg,
.donation-settings-link svg {
    width: 1rem;
    height: 1rem;
}

.donation-settings-test-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    min-height: 2.2rem;
    padding: 0 0.75rem;
    border: 1px solid #bfdbfe;
    border-radius: 0.65rem;
    background: #eff6ff;
    color: #023E8A;
    font-size: 0.84rem;
    font-weight: 650;
    transition: background 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease, opacity 160ms ease;
}

.donation-settings-test-button svg {
    width: 1rem;
    height: 1rem;
}

.donation-settings-test-button:hover,
.donation-settings-test-button:focus-visible {
    border-color: #023E8A;
    background: #eef6ff;
    color: #023E8A;
    transform: translateY(-1px);
}

.donation-settings-test-button[disabled] {
    cursor: wait;
    opacity: 0.65;
    transform: none;
}

.donation-settings-button--primary {
    margin-top: auto;
    border: 1px solid #023E8A;
    background: #023E8A;
    color: #ffffff;
}

.donation-settings-button--primary:hover,
.donation-settings-button--primary:focus-visible {
    background: #002f6c;
    color: #ffffff;
    transform: translateY(-1px);
}

.donation-settings-button--secondary,
.donation-settings-link,
.donation-settings-copy {
    border: 1px solid #dbe3ef;
    background: #ffffff;
    color: #023E8A;
}

.donation-settings-button--secondary:hover,
.donation-settings-link:hover,
.donation-settings-copy:hover {
    border-color: #023E8A;
    background: #eef6ff;
    color: #023E8A;
}

.donation-settings-pill {
    display: inline-flex;
    align-items: center;
    min-height: 1.9rem;
    padding: 0 0.7rem;
    border-radius: 999px;
    background: #eef6ff;
    color: #023E8A;
    font-size: 0.78rem;
    font-weight: 650;
}

.donation-settings-endpoint {
    display: grid;
    grid-template-columns: minmax(12rem, 16rem) minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
    padding: 0.8rem 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

.donation-settings-endpoint + .donation-settings-endpoint {
    border-top: 1px solid #e5e7eb;
}

.donation-settings-endpoint__copy {
    min-width: 0;
}

.donation-settings-endpoint code {
    display: block;
    margin-top: 0;
    padding: 0;
    border-radius: 0;
    background: transparent;
    color: #334155;
    font-size: 0.78rem;
    line-height: 1.45;
    overflow-wrap: anywhere;
}

.donation-settings-copy--compact {
    width: 2.2rem;
    min-width: 2.2rem;
    height: 2.2rem;
    min-height: 2.2rem;
    padding: 0;
}

.donation-settings-copy--compact svg {
    width: 1rem;
    height: 1rem;
}

html.dark .donation-settings-page {
    color: #e5edf8;
}

html.dark .donation-settings-simple {
    color: #e5edf8;
}

html.dark .donation-settings-nav,
html.dark .donation-settings-panel {
    border-color: rgba(148, 163, 184, 0.18);
    background: #111827;
    box-shadow: 0 16px 42px rgba(0, 0, 0, 0.22);
}

html.dark .donation-settings-nav h2,
html.dark .donation-settings-panel__header h2,
html.dark .donation-settings-info-card strong,
html.dark .donation-settings-gateway strong,
html.dark .donation-settings-endpoint strong,
html.dark .donation-settings-export-card h3 {
    color: #f8fafc;
}

html.dark .donation-settings-panel__header {
    border-bottom-color: rgba(148, 163, 184, 0.16);
}

html.dark .donation-settings-info-card,
html.dark .donation-settings-export-card,
html.dark .donation-settings-gateway,
html.dark .donation-settings-field-list span,
html.dark .donation-settings-endpoint code {
    border-color: rgba(148, 163, 184, 0.16);
    background: #0f172a;
}

html.dark .donation-settings-endpoint + .donation-settings-endpoint {
    border-top-color: rgba(148, 163, 184, 0.16);
}

html.dark .donation-settings-button--secondary,
html.dark .donation-settings-link,
html.dark .donation-settings-copy {
    border-color: rgba(148, 163, 184, 0.18);
    background: #0f172a;
}

html.dark .donation-settings-payment-form .fi-fo-repeater-item,
html.dark .donation-settings-payment-form .fi-fo-repeater-item-header {
    border-color: rgba(148, 163, 184, 0.16);
    background: #0f172a;
}

html.dark .donation-payment-method {
    border-color: rgba(148, 163, 184, 0.16);
    background: #0f172a;
}

html.dark .donation-payment-method__editor {
    border-top-color: rgba(148, 163, 184, 0.16);
    background: #111827;
}

html.dark .donation-payment-method__identity h3,
html.dark .donation-payment-method__editor label span {
    color: #f8fafc;
}

html.dark .donation-settings-input {
    border-color: rgba(148, 163, 184, 0.2);
    background: #0f172a;
    color: #f8fafc;
}

html.dark select.donation-settings-input {
    background-color: #0f172a;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2394a3b8' stroke-width='2'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
}

html.dark .donation-settings-test-button {
    border-color: rgba(96, 165, 250, 0.28);
    background: rgba(30, 64, 175, 0.18);
    color: #bfdbfe;
}

html.dark .donation-settings-test-button:hover,
html.dark .donation-settings-test-button:focus-visible {
    border-color: rgba(147, 197, 253, 0.55);
    background: rgba(30, 64, 175, 0.28);
    color: #dbeafe;
}

@media (max-width: 1100px) {
    .donation-settings-page {
        grid-template-columns: 1fr;
    }

    .donation-settings-simple .donation-settings-export-grid {
        grid-template-columns: 1fr;
    }

    .donation-settings-nav {
        position: static;
    }

    .donation-settings-nav nav {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 820px) {
    .donation-settings-org-grid,
    .donation-settings-export-grid {
        grid-template-columns: 1fr;
    }

    .donation-settings-panel__header,
    .donation-settings-gateway,
    .donation-settings-endpoint {
        align-items: flex-start;
        grid-template-columns: 1fr;
    }

    .donation-settings-panel__header {
        flex-direction: column;
    }

    .donation-settings-copy,
    .donation-settings-button,
    .donation-settings-link {
        width: 100%;
    }

    .donation-settings-copy--compact {
        width: 2.2rem;
        align-self: flex-start;
    }

    .donation-payment-method__summary,
    .donation-payment-method__editor {
        grid-template-columns: 1fr;
    }

    .donation-payment-method__identity,
    .donation-payment-method__actions,
    .donation-payment-method__editor-actions {
        align-items: stretch;
        flex-direction: column;
    }
}

@media (max-width: 560px) {
    .donation-settings-nav nav {
        grid-template-columns: 1fr;
    }
}

/* Support ticket conversation thread */
.crm-ticket-thread {
    display: grid;
    gap: 1rem;
}

.crm-ticket-thread__row {
    --crm-thread-accent: #2563eb;
    --crm-thread-bg: #eff6ff;
    --crm-thread-border: #bfdbfe;
    --crm-thread-avatar-bg: #dbeafe;
    --crm-thread-avatar-text: #1d4ed8;
    --crm-thread-badge-bg: #ffffff;
    --crm-thread-badge-text: #1d4ed8;
    --crm-thread-title: #0f172a;
    --crm-thread-meta: #64748b;
    --crm-thread-body: #334155;

    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
}

.crm-ticket-thread__row--support {
    --crm-thread-accent: #0f766e;
    --crm-thread-bg: #ecfdf5;
    --crm-thread-border: #99f6e4;
    --crm-thread-avatar-bg: #ccfbf1;
    --crm-thread-avatar-text: #0f766e;
    --crm-thread-badge-bg: #f0fdfa;
    --crm-thread-badge-text: #0f766e;
}

.crm-ticket-thread__row--internal {
    --crm-thread-accent: #b45309;
    --crm-thread-bg: #fffbeb;
    --crm-thread-border: #fde68a;
    --crm-thread-avatar-bg: #fef3c7;
    --crm-thread-avatar-text: #92400e;
    --crm-thread-badge-bg: #fef3c7;
    --crm-thread-badge-text: #92400e;
}

.crm-ticket-thread__avatar {
    align-items: center;
    background: var(--crm-thread-avatar-bg);
    border: 1px solid var(--crm-thread-border);
    border-radius: 9999px;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
    color: var(--crm-thread-avatar-text);
    display: flex;
    flex: 0 0 2.25rem;
    font-size: 0.75rem;
    font-weight: 700;
    height: 2.25rem;
    justify-content: center;
    line-height: 1;
    width: 2.25rem;
}

.crm-ticket-thread__bubble {
    background: var(--crm-thread-bg);
    border: 1px solid var(--crm-thread-border);
    border-radius: 1rem;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
    flex: 1;
    min-width: 0;
    overflow: hidden;
    padding: 1rem;
    position: relative;
}

.crm-ticket-thread__bubble::before {
    background: var(--crm-thread-accent);
    bottom: 0;
    content: "";
    left: 0;
    position: absolute;
    top: 0;
    width: 0.25rem;
}

.crm-ticket-thread__header {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.crm-ticket-thread__author {
    color: var(--crm-thread-title);
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 1.25rem;
    margin: 0;
}

.crm-ticket-thread__meta {
    color: var(--crm-thread-meta);
    font-size: 0.75rem;
    line-height: 1rem;
    margin: 0.125rem 0 0;
}

.crm-ticket-thread__badge {
    align-self: flex-start;
    background: var(--crm-thread-badge-bg);
    border: 1px solid var(--crm-thread-border);
    border-radius: 9999px;
    color: var(--crm-thread-badge-text);
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1rem;
    padding: 0.25rem 0.625rem;
    white-space: nowrap;
}

.crm-ticket-thread__body {
    color: var(--crm-thread-body);
    font-size: 0.875rem;
    line-height: 1.5rem;
    margin-top: 0.75rem;
    overflow-wrap: anywhere;
    white-space: pre-line;
}

.crm-ticket-thread__attachments {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 1rem;
}

.crm-ticket-thread__attachment {
    align-items: center;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid var(--crm-thread-border);
    border-radius: 0.65rem;
    color: var(--crm-thread-body);
    display: inline-flex;
    font-size: 0.75rem;
    font-weight: 600;
    gap: 0.5rem;
    line-height: 1rem;
    padding: 0.375rem 0.625rem;
    text-decoration: none;
    transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.crm-ticket-thread__attachment:hover,
.crm-ticket-thread__attachment:focus-visible {
    background: #ffffff;
    border-color: var(--crm-thread-accent);
    color: var(--crm-thread-badge-text);
}

.crm-ticket-thread__attachment svg {
    height: 1rem;
    width: 1rem;
}

html.dark .crm-ticket-thread__row {
    --crm-thread-bg: rgba(37, 99, 235, 0.14);
    --crm-thread-border: rgba(96, 165, 250, 0.28);
    --crm-thread-avatar-bg: rgba(37, 99, 235, 0.18);
    --crm-thread-avatar-text: #bfdbfe;
    --crm-thread-badge-bg: rgba(37, 99, 235, 0.18);
    --crm-thread-badge-text: #dbeafe;
    --crm-thread-title: #f8fafc;
    --crm-thread-meta: #94a3b8;
    --crm-thread-body: #dbeafe;
}

html.dark .crm-ticket-thread__row--support {
    --crm-thread-bg: rgba(15, 118, 110, 0.16);
    --crm-thread-border: rgba(45, 212, 191, 0.28);
    --crm-thread-avatar-bg: rgba(15, 118, 110, 0.22);
    --crm-thread-avatar-text: #99f6e4;
    --crm-thread-badge-bg: rgba(15, 118, 110, 0.22);
    --crm-thread-badge-text: #ccfbf1;
    --crm-thread-body: #ccfbf1;
}

html.dark .crm-ticket-thread__row--internal {
    --crm-thread-bg: rgba(180, 83, 9, 0.16);
    --crm-thread-border: rgba(251, 191, 36, 0.3);
    --crm-thread-avatar-bg: rgba(180, 83, 9, 0.22);
    --crm-thread-avatar-text: #fde68a;
    --crm-thread-badge-bg: rgba(180, 83, 9, 0.22);
    --crm-thread-badge-text: #fde68a;
    --crm-thread-body: #fef3c7;
}

html.dark .crm-ticket-thread__attachment {
    background: rgba(15, 23, 42, 0.72);
}

html.dark .crm-ticket-thread__attachment:hover,
html.dark .crm-ticket-thread__attachment:focus-visible {
    background: rgba(15, 23, 42, 0.95);
}

@media (min-width: 640px) {
    .crm-ticket-thread__row--support {
        flex-direction: row-reverse;
    }

    .crm-ticket-thread__row--support .crm-ticket-thread__bubble::before {
        left: auto;
        right: 0;
    }

    .crm-ticket-thread__header {
        align-items: center;
        flex-direction: row;
        justify-content: space-between;
    }

    .crm-ticket-thread__row--support .crm-ticket-thread__header {
        text-align: right;
    }
}
