:root {
  --mf-ink: #18212f;
  --mf-muted: #647084;
  --mf-line: #d9e0e8;
  --mf-bg: #f6f8fb;
  --mf-panel: #ffffff;
  --mf-panel-soft: #f8fafc;
  --mf-input: #ffffff;
  --mf-input-disabled: #eef2f7;
  --mf-nav-bg: #172338;
  --mf-nav-menu-bg: #1d2b43;
  --mf-shadow: 0 8px 24px rgba(24, 33, 47, 0.05);
  --mf-focus: rgba(37, 94, 168, 0.22);
  --mf-blue: #255ea8;
  --mf-green: #127a69;
  --mf-gold: #b7791f;
  --bs-body-bg: var(--mf-bg);
  --bs-body-color: var(--mf-ink);
  --bs-border-color: var(--mf-line);
  --bs-secondary-color: var(--mf-muted);
  --bs-tertiary-bg: var(--mf-panel-soft);
  --bs-emphasis-color: var(--mf-ink);
  --bs-link-color: var(--mf-blue);
  color-scheme: light;
}

.mf-existing-client-field-locked {
  opacity: .72;
}

.mf-existing-client-field-locked .form-control,
.mf-existing-client-field-locked .form-select {
  background-color: var(--bs-secondary-bg);
}

.mf-workflow-step-card.is-obsolete {
  opacity: .65;
  border-style: dashed;
}

:root[data-theme="dark"] {
  --mf-ink: #e9eef7;
  --mf-muted: #a8b4c7;
  --mf-line: #334054;
  --mf-bg: #0f141d;
  --mf-panel: #171f2d;
  --mf-panel-soft: #111a27;
  --mf-input: #101826;
  --mf-input-disabled: #1a2433;
  --mf-nav-bg: #09111f;
  --mf-nav-menu-bg: #101a2a;
  --mf-shadow: 0 12px 34px rgba(0, 0, 0, 0.28);
  --mf-focus: rgba(86, 154, 255, 0.28);
  --mf-blue: #7fb2ff;
  --mf-green: #5fd0ba;
  --mf-gold: #f0bd65;
  --bs-body-bg: var(--mf-bg);
  --bs-body-color: var(--mf-ink);
  --bs-border-color: var(--mf-line);
  --bs-secondary-color: var(--mf-muted);
  --bs-tertiary-bg: var(--mf-panel-soft);
  --bs-emphasis-color: var(--mf-ink);
  --bs-link-color: var(--mf-blue);
  color-scheme: dark;
}

html {
  font-size: var(--mf-root-font-size, 15px);
  min-height: 100%;
  position: relative;
}

body {
  background: var(--mf-bg);
  color: var(--mf-ink);
  margin-bottom: 60px;
}

.mf-environment-gate-body {
  min-height: 100vh;
}

.mf-environment-gate-header {
  background: var(--mf-nav-bg);
  border-bottom: 1px solid var(--mf-line);
  color: #fff;
  padding: 0.75rem 0;
}

.mf-environment-gate-main {
  align-items: center;
  display: flex;
  min-height: calc(100vh - 125px);
  padding: 2rem 0;
}

.mf-environment-gate {
  align-items: center;
  display: grid;
  gap: 2rem;
  grid-template-columns: minmax(0, 1fr) minmax(20rem, 29rem);
}

.mf-environment-gate-copy h1 {
  font-size: clamp(2rem, 4vw, 3.8rem);
  font-weight: 800;
  line-height: 1.05;
  margin-bottom: 0.75rem;
  max-width: 12ch;
}

.mf-environment-gate-copy p:not(.mf-eyebrow) {
  max-width: 44rem;
}

.mf-environment-picker {
  border-color: color-mix(in srgb, var(--mf-blue) 24%, var(--mf-line));
}

.mf-environment-preview {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  padding: 1rem;
}

.mf-environment-preview h2 {
  font-size: 1.25rem;
}

@media (max-width: 900px) {
  .mf-environment-gate {
    grid-template-columns: 1fr;
  }

  .mf-environment-gate-copy h1 {
    max-width: none;
  }
}

.mf-nav {
  background: var(--mf-nav-bg);
}

.mf-nav .container {
  align-items: center;
  display: flex;
  flex-wrap: nowrap;
  gap: 0.75rem;
}

.mf-nav .navbar-collapse {
  flex-basis: auto;
  flex-grow: 1;
  min-width: 0;
}

.mf-nav .navbar-nav {
  min-width: 0;
}

.mf-nav .nav-link.active,
.mf-nav .navbar-brand:hover,
.mf-nav .navbar-brand:focus {
  color: #fff;
}

.mf-env-pill {
  border: 1px solid transparent;
  color: #09111f;
  font-weight: 750;
  min-width: 4.5rem;
}

.mf-active-users-indicator {
  color: var(--mf-muted);
  font-weight: 750;
  white-space: nowrap;
}

.mf-env-pill.mf-env-prod {
  border-color: rgba(255, 255, 255, 0.78);
  color: #fff;
}

.mf-env-pill.mf-env-test {
  background: #ffd24a;
  border-color: #ffd24a;
}

.mf-env-pill.mf-env-dev {
  background: #38d5ff;
  border-color: #38d5ff;
}

.mf-env-pill:hover,
.mf-env-pill:focus {
  color: #09111f;
  filter: brightness(0.96);
}

.mf-env-pill.mf-env-prod:hover,
.mf-env-pill.mf-env-prod:focus {
  color: #fff;
}

.mf-env-picker {
  background-color: rgba(255, 255, 255, 0.08);
  background-position: right 0.45rem center;
  background-size: 0.75rem;
  border: 1px solid rgba(255, 255, 255, 0.62);
  color: #fff;
  font-weight: 750;
  min-width: 7.5rem;
  padding-right: 1.65rem;
}

.mf-env-picker option {
  background: var(--mf-nav-bg);
  color: #fff;
}

.mf-env-picker:disabled {
  opacity: 0.78;
}

.mf-env-picker:focus {
  border-color: #fff;
  box-shadow: 0 0 0 0.2rem rgba(255, 255, 255, 0.22);
}

.mf-environment-banner {
  border-bottom: 1px solid transparent;
  color: #09111f;
  font-size: 0.9rem;
  padding: 0.45rem 0;
}

.mf-environment-banner.mf-env-test {
  background: #ffd24a;
  border-bottom-color: #b7791f;
}

.mf-environment-banner.mf-env-dev {
  background: #38d5ff;
  border-bottom-color: #157899;
}

.mf-environment-banner strong {
  display: inline;
  font-weight: 700;
  white-space: nowrap;
}

.mf-system-menu {
  background: var(--mf-nav-menu-bg);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  min-width: 12rem;
  padding: 0.4rem;
}

.mf-system-menu .dropdown-item {
  border-radius: 6px;
  color: rgba(255, 255, 255, 0.84);
  font-weight: 600;
  padding: 0.55rem 0.8rem;
}

.mf-system-menu .dropdown-item:hover,
.mf-system-menu .dropdown-item:focus,
.mf-system-menu .dropdown-item.active {
  background: rgba(37, 94, 168, 0.3);
  color: #fff;
}

.mf-demo-banner {
  background: color-mix(in srgb, var(--mf-gold) 20%, var(--mf-panel));
  border-bottom: 1px solid #e5c77a;
  color: var(--mf-ink);
  padding: 0.75rem 0;
}

.mf-demo-banner strong {
  font-size: 0.95rem;
}

.mf-impersonation-banner {
  background: #facc15;
  border-bottom: 1px solid rgba(120, 53, 15, 0.28);
  color: #1f2937;
  padding: 0.65rem 0;
}

.mf-impersonation-banner strong,
.mf-impersonation-banner span {
  display: block;
}

.mf-impersonation-banner span {
  color: rgba(31, 41, 55, 0.78);
  font-size: 0.9rem;
}

.mf-external-form-body {
  background:
    radial-gradient(circle at top left, color-mix(in srgb, var(--mf-blue) 12%, transparent), transparent 34rem),
    linear-gradient(180deg, color-mix(in srgb, var(--mf-blue) 5%, transparent), transparent 22rem),
    var(--mf-bg);
  min-height: 100vh;
}

.mf-external-form-header {
  background: color-mix(in srgb, var(--mf-panel) 94%, transparent);
  border-bottom: 1px solid var(--mf-line);
  backdrop-filter: blur(10px);
  padding: 0.95rem 0;
}

.mf-external-header-inner,
.mf-external-footer-inner {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.mf-external-form-footer {
  border-top: 1px solid var(--mf-line);
  padding: 1.1rem 0;
}

.mf-external-form-shell {
  max-width: 940px;
  padding-bottom: 3.5rem;
  padding-top: 2.35rem;
}

.navbar-brand {
  font-weight: 700;
  letter-spacing: 0;
}

.mf-brand-lockup {
  align-items: center;
  display: inline-flex;
  flex: 0 1 clamp(8rem, 24vw, 14rem);
  gap: 0.45rem;
  margin-right: 0.25rem;
  max-width: 14rem;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
}

.mf-brand-lockup span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mf-external-brand {
  display: grid;
  flex: 1 1 auto;
  grid-template-columns: auto minmax(0, 1fr);
  max-width: min(32rem, 70vw);
}

.mf-external-brand img {
  grid-row: 1 / 3;
}

.mf-external-brand small {
  color: var(--mf-muted);
  font-size: 0.78rem;
  font-weight: 700;
  grid-column: 2;
  line-height: 1.1;
}

.mf-brand-mark {
  border-radius: 8px;
  flex: 0 0 1.85rem;
  height: 1.85rem;
  object-fit: contain;
  width: 1.85rem;
}

.mf-external-trust-lockup {
  align-items: center;
  background: color-mix(in srgb, var(--mf-green) 10%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-green) 24%, var(--mf-line));
  border-radius: 999px;
  color: var(--mf-text);
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 0.84rem;
  font-weight: 800;
  gap: 0.45rem;
  padding: 0.45rem 0.7rem;
}

.mf-secure-dot {
  background: var(--mf-green);
  border-radius: 50%;
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--mf-green) 18%, transparent);
  height: 0.55rem;
  width: 0.55rem;
}

.btn-primary {
  background: var(--mf-blue);
  border-color: var(--mf-blue);
}

.btn-secondary,
.btn-outline-secondary:not(:disabled):not(.disabled):not([aria-disabled="true"]) {
  border-color: color-mix(in srgb, var(--mf-muted) 82%, var(--mf-line));
  color: var(--mf-ink);
}

.btn:disabled,
.btn.disabled,
fieldset:disabled .btn,
.btn[aria-disabled="true"] {
  background: repeating-linear-gradient(
    135deg,
    color-mix(in srgb, var(--mf-muted) 10%, transparent) 0,
    color-mix(in srgb, var(--mf-muted) 10%, transparent) 6px,
    transparent 6px,
    transparent 12px
  );
  border-color: color-mix(in srgb, var(--mf-muted) 48%, var(--mf-line));
  border-style: dashed;
  color: var(--mf-muted);
  cursor: not-allowed;
  filter: grayscale(0.35);
  opacity: 0.72;
  pointer-events: none;
  text-decoration: none;
}

.btn-primary:disabled,
.btn-primary.disabled,
fieldset:disabled .btn-primary,
.btn-success:disabled,
.btn-success.disabled,
fieldset:disabled .btn-success,
.btn-danger:disabled,
.btn-danger.disabled,
fieldset:disabled .btn-danger,
.btn-warning:disabled,
.btn-warning.disabled,
fieldset:disabled .btn-warning,
.btn-info:disabled,
.btn-info.disabled,
fieldset:disabled .btn-info,
.btn-primary[aria-disabled="true"],
.btn-success[aria-disabled="true"],
.btn-danger[aria-disabled="true"],
.btn-warning[aria-disabled="true"],
.btn-info[aria-disabled="true"] {
  border-color: color-mix(in srgb, var(--mf-muted) 55%, transparent);
  color: var(--mf-muted);
}

.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-select:focus,
.form-check-input:focus {
  box-shadow: 0 0 0 0.2rem var(--mf-focus);
}

.mf-nav-user {
  align-items: center;
  display: flex;
  gap: 0.5rem;
  min-width: 0;
}

.mf-nav-user .navbar-text {
  max-width: 8rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mf-nav-profile-link {
  align-items: center;
  display: inline-flex;
  font-size: 0.95rem;
  height: 1.95rem;
  justify-content: center;
  padding: 0;
  width: 1.95rem;
}

.mf-inline-help {
  align-self: end;
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  gap: 0.25rem;
  padding: 0.75rem;
}

.mf-inline-help strong {
  font-size: 0.88rem;
}

.mf-inline-help span {
  color: var(--mf-muted);
  font-size: 0.84rem;
}

.mf-inline-help a {
  font-size: 0.84rem;
  font-weight: 750;
}

.mf-provisioning-packet {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  padding: 0.75rem;
  min-width: min(34rem, 72vw);
}

.mf-provisioning-grid {
  display: grid;
  gap: 0.3rem 0.75rem;
  grid-template-columns: max-content minmax(0, 1fr);
}

.mf-provisioning-grid span {
  color: var(--mf-muted);
  font-size: 0.82rem;
}

.mf-provisioning-grid strong {
  font-size: 0.84rem;
  overflow-wrap: anywhere;
}

@media (max-width: 1199.98px) {
  .mf-nav .container {
    flex-wrap: wrap;
  }

  .mf-nav .navbar-collapse {
    flex-basis: 100%;
  }

  .mf-nav .navbar-nav {
    padding-top: 0.65rem;
  }

  .mf-nav-user {
    align-items: stretch;
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    flex-wrap: wrap;
    margin-top: 0.55rem;
    padding-top: 0.75rem;
  }

  .mf-nav-user form:first-child {
    flex: 1 1 12rem;
  }

  .mf-env-picker {
    max-width: 100%;
    width: 100%;
  }

  .mf-nav-user .navbar-text {
    flex: 1 1 auto;
    max-width: none;
  }
}

.mf-theme-switch {
  align-items: center;
  color: var(--mf-ink);
  cursor: pointer;
  display: inline-flex;
  font-size: 0.82rem;
  font-weight: 750;
  gap: 0.45rem;
  white-space: nowrap;
}

.mf-theme-switch-input {
  opacity: 0;
  position: absolute;
  pointer-events: none;
}

.mf-theme-switch-track {
  align-items: center;
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 999px;
  display: inline-flex;
  height: 1.3rem;
  padding: 0.12rem;
  transition: background-color 0.15s ease, border-color 0.15s ease;
  width: 2.35rem;
}

.mf-theme-switch-thumb {
  background: var(--mf-panel);
  border-radius: 999px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.24);
  display: block;
  height: 0.95rem;
  transform: translateX(0);
  transition: transform 0.15s ease;
  width: 0.95rem;
}

.mf-theme-switch:hover .mf-theme-switch-track {
  background: color-mix(in srgb, var(--mf-blue) 10%, var(--mf-panel-soft));
  border-color: color-mix(in srgb, var(--mf-blue) 40%, var(--mf-line));
}

.mf-font-size-options {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(auto-fit, minmax(8.5rem, 1fr));
  max-width: 42rem;
}

.mf-font-size-option {
  align-items: flex-start;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  min-height: 4.2rem;
  padding: 0.8rem 0.9rem;
  text-align: left;
  white-space: normal;
}

.mf-font-size-option span {
  font-weight: 750;
  line-height: 1.2;
}

.mf-font-size-option small {
  color: var(--mf-muted);
  font-weight: 650;
}

.mf-font-size-option-small span {
  font-size: 0.9rem;
}

.mf-font-size-option-standard span {
  font-size: 1rem;
}

.mf-font-size-option-large span {
  font-size: 1.12rem;
}

.mf-font-size-option-extra-large span {
  font-size: 1.25rem;
}

.mf-theme-preference {
  align-items: center;
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  max-width: 42rem;
  padding: 0.85rem 0.95rem;
}

.mf-theme-switch-input:checked + .mf-theme-switch-track {
  background: rgba(95, 208, 186, 0.34);
  border-color: rgba(95, 208, 186, 0.62);
}

.mf-theme-switch-input:checked + .mf-theme-switch-track .mf-theme-switch-thumb {
  transform: translateX(1.02rem);
}

.mf-theme-switch-input:focus-visible + .mf-theme-switch-track {
  box-shadow: 0 0 0 0.2rem var(--mf-focus);
}

.text-muted {
  color: var(--mf-muted) !important;
}

.border-top,
.border-bottom {
  border-color: var(--mf-line) !important;
}

a {
  color: var(--mf-blue);
}

.dropdown-menu {
  --bs-dropdown-bg: var(--mf-panel);
  --bs-dropdown-border-color: var(--mf-line);
  --bs-dropdown-link-color: var(--mf-ink);
  --bs-dropdown-link-hover-bg: var(--mf-panel-soft);
  --bs-dropdown-link-hover-color: var(--mf-blue);
  --bs-dropdown-link-active-bg: color-mix(in srgb, var(--mf-blue) 20%, var(--mf-panel));
  --bs-dropdown-link-active-color: var(--mf-ink);
}

.form-control,
.form-select,
.form-check-input {
  background-color: var(--mf-input);
  border-color: var(--mf-line);
  color: var(--mf-ink);
}

.form-control:disabled,
.form-select:disabled {
  background-color: var(--mf-input-disabled);
  color: var(--mf-muted);
}

.form-control::placeholder {
  color: var(--mf-muted);
}

.input-group-text,
.list-group-item,
.modal-content,
.card {
  background-color: var(--mf-panel);
  border-color: var(--mf-line);
  color: var(--mf-ink);
}

.alert {
  border-color: var(--mf-line);
}

.table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--mf-ink);
  --bs-table-border-color: var(--mf-line);
  --bs-table-striped-bg: color-mix(in srgb, var(--mf-panel-soft) 72%, transparent);
  --bs-table-striped-color: var(--mf-ink);
  --bs-table-hover-bg: color-mix(in srgb, var(--mf-blue) 10%, transparent);
  --bs-table-hover-color: var(--mf-ink);
}

.mf-inbound-email-detail-row td {
  border-top: 0;
  padding-top: 0;
  white-space: normal;
}

.pagination {
  --bs-pagination-bg: var(--mf-panel);
  --bs-pagination-border-color: var(--mf-line);
  --bs-pagination-color: var(--mf-blue);
  --bs-pagination-hover-bg: var(--mf-panel-soft);
  --bs-pagination-hover-border-color: var(--mf-line);
  --bs-pagination-active-bg: var(--mf-blue);
  --bs-pagination-active-border-color: var(--mf-blue);
  --bs-pagination-disabled-bg: var(--mf-panel-soft);
  --bs-pagination-disabled-border-color: var(--mf-line);
  --bs-pagination-disabled-color: var(--mf-muted);
}

.mf-hero {
  align-items: end;
  background: linear-gradient(135deg, #172338 0%, #255ea8 58%, #127a69 100%);
  border-radius: 8px;
  color: #fff;
  display: flex;
  gap: 2rem;
  justify-content: space-between;
  margin-bottom: 1.5rem;
  padding: 2.25rem;
}

.mf-hero h1,
.mf-page-heading h1 {
  font-weight: 760;
  letter-spacing: 0;
  margin: 0;
}

.mf-hero .lead {
  color: rgba(255, 255, 255, 0.84);
  max-width: 760px;
}

.mf-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: flex-end;
}

.mf-hero-side {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
}

.mf-hero-metrics {
  align-items: stretch;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 0.65rem;
  justify-content: flex-end;
  min-width: 340px;
}

.mf-hero-metrics span {
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 8px;
  color: rgba(255, 255, 255, 0.9);
  font-weight: 650;
  padding: 0.65rem 0.8rem;
  flex: 1 1 160px;
}

.mf-hero-metrics strong {
  color: #fff;
  display: block;
  font-size: 1.35rem;
  line-height: 1;
}

.mf-eyebrow {
  color: var(--mf-gold);
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  margin-bottom: 0.35rem;
  text-transform: uppercase;
}

.mf-page-heading {
  align-items: end;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin: 1rem 0 1.25rem;
}

.mf-heading-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
}

.mf-list-search {
  align-items: center;
  display: flex;
  gap: 0.4rem;
}

.mf-list-search .form-control {
  min-width: 14rem;
}

.mf-list-filter-bar {
  align-items: end;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(10rem, 1fr)) auto;
}

.mf-list-filter-bar .form-label {
  color: var(--mf-muted);
  font-size: 0.78rem;
  font-weight: 700;
  margin-bottom: 0.25rem;
}

.mf-list-filter-actions {
  display: flex;
  gap: 0.5rem;
}

.mf-stat-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-bottom: 1.5rem;
}

.mf-dashboard-switcher {
  align-items: center;
  background: var(--mf-panel);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  box-shadow: var(--mf-shadow);
  display: inline-flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  margin: -0.5rem 0 1.25rem;
  padding: 0.35rem;
}

.mf-dashboard-switcher a {
  border-radius: 6px;
  color: var(--mf-muted);
  font-weight: 750;
  padding: 0.55rem 0.8rem;
  text-decoration: none;
}

.mf-dashboard-switcher a:hover,
.mf-dashboard-switcher a:focus {
  background: color-mix(in srgb, var(--mf-blue) 10%, var(--mf-panel));
  color: var(--mf-text);
}

.mf-dashboard-switcher a.active {
  background: var(--mf-blue);
  color: #fff;
}

.mf-stat,
.mf-panel {
  background: var(--mf-panel);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  box-shadow: var(--mf-shadow);
}

.mf-stat {
  padding: 1.1rem;
}

.mf-stat-link {
  color: inherit;
  display: block;
  text-decoration: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.mf-stat-link:hover,
.mf-stat-link:focus {
  border-color: rgba(37, 94, 168, 0.45);
  box-shadow: 0 12px 30px rgba(37, 94, 168, 0.12);
  color: inherit;
  text-decoration: none;
  transform: translateY(-1px);
}

.mf-stat-link:focus-visible {
  outline: 3px solid rgba(37, 94, 168, 0.24);
  outline-offset: 3px;
}

.mf-stat span {
  color: var(--mf-blue);
  display: block;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
}

.mf-stat strong {
  color: var(--mf-muted);
  display: block;
  margin-top: 0.45rem;
}

.mf-panel {
  padding: 1.25rem;
}

.mf-panel-heading {
  align-items: center;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

[data-bs-toggle="collapse"][aria-expanded="true"] .mf-collapse-label-expand,
[data-bs-toggle="collapse"][aria-expanded="false"] .mf-collapse-label-collapse {
  display: none;
}

.mf-plan-current {
  border-color: rgba(37, 94, 168, 0.45);
  box-shadow: 0 12px 30px rgba(37, 94, 168, 0.12);
}

.mf-panel h2 {
  font-size: 1.1rem;
  font-weight: 750;
  margin: 0;
}

.mf-dashboard-list {
  display: grid;
  gap: 0.55rem;
}

.mf-dashboard-row {
  align-items: flex-start;
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  color: inherit;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  min-height: 4rem;
  padding: 0.75rem 0.85rem;
  text-decoration: none;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.mf-dashboard-row:hover,
.mf-dashboard-row:focus {
  border-color: rgba(37, 94, 168, 0.45);
  box-shadow: 0 10px 24px rgba(37, 94, 168, 0.1);
  color: inherit;
  transform: translateY(-1px);
}

.mf-dashboard-row > span,
.mf-dashboard-row-action > a > span {
  min-width: 0;
  overflow: hidden;
}

.mf-dashboard-row strong,
.mf-dashboard-row small {
  -webkit-box-orient: vertical;
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;
  word-break: break-word;
}

.mf-dashboard-row strong {
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

.mf-dashboard-row small {
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

.mf-dashboard-row small,
.mf-dashboard-row em {
  color: var(--mf-muted);
}

.mf-dashboard-row em {
  flex: 0 0 auto;
  font-size: 0.85rem;
  font-style: normal;
  font-weight: 700;
  max-width: 9rem;
  overflow: hidden;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mf-dashboard-row-action {
  padding: 0.55rem 0.65rem 0.55rem 0.85rem;
}

.mf-dashboard-row-action > a {
  align-items: flex-start;
  color: inherit;
  display: flex;
  flex: 1 1 auto;
  gap: 1rem;
  justify-content: space-between;
  min-width: 0;
  text-decoration: none;
}

.mf-time-exported-row {
  opacity: 0.58;
}

.mf-time-exported-row td {
  background: color-mix(in srgb, var(--mf-panel-soft) 70%, transparent);
}

.mf-time-exported-row a {
  color: var(--mf-muted);
}

.mf-dashboard-row-action > form {
  flex: 0 0 auto;
}

.mf-mini-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}

.mf-mini-metrics span {
  background: color-mix(in srgb, var(--mf-blue) 10%, var(--mf-panel));
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  color: var(--mf-muted);
  font-weight: 700;
  padding: 0.45rem 0.65rem;
}

.mf-mini-metrics strong {
  color: var(--mf-blue);
  margin-right: 0.25rem;
}

.mf-dashboard-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
}

.mf-chart-card {
  display: flex;
  flex-direction: column;
  min-height: 250px;
}

.mf-chart-heading {
  align-items: flex-start;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 1rem;
}

.mf-chart-heading strong {
  background: color-mix(in srgb, var(--mf-blue) 14%, var(--mf-panel));
  border-radius: 999px;
  color: var(--mf-blue);
  font-size: 0.85rem;
  padding: 0.35rem 0.65rem;
  white-space: nowrap;
}

.mf-donut-wrap {
  align-items: center;
  display: grid;
  flex: 1;
  gap: 1rem;
  grid-template-columns: 150px minmax(0, 1fr);
}

.mf-donut {
  align-items: center;
  aspect-ratio: 1;
  background: var(--mf-donut);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  max-width: 150px;
  position: relative;
  width: 100%;
}

.mf-donut::after {
  background: var(--mf-panel);
  border-radius: 50%;
  content: "";
  height: 62%;
  position: absolute;
  width: 62%;
}

.mf-donut span {
  color: var(--mf-ink);
  font-size: 1.4rem;
  font-weight: 800;
  position: relative;
  z-index: 1;
}

.mf-donut-small span {
  font-size: 1.2rem;
}

.mf-chart-legend {
  display: grid;
  gap: 0.55rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.mf-chart-legend li {
  align-items: center;
  color: var(--mf-muted);
  display: flex;
  gap: 0.5rem;
}

.mf-chart-legend li span {
  background: var(--slice-color);
  border-radius: 999px;
  display: inline-block;
  height: 0.75rem;
  width: 0.75rem;
}

.mf-chart-legend strong {
  color: var(--mf-ink);
}

.mf-bar-stack,
.mf-limit-list {
  display: grid;
  gap: 0.9rem;
}

.mf-bar-row > div:first-child,
.mf-limit-row > div:first-child {
  align-items: baseline;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  margin-bottom: 0.3rem;
}

.mf-bar-row span,
.mf-limit-row span {
  color: var(--mf-muted);
  font-weight: 650;
}

.mf-bar,
.mf-meter {
  background: var(--mf-panel-soft);
  border-radius: 999px;
  height: 0.65rem;
  overflow: hidden;
}

.mf-bar span,
.mf-meter span {
  background: linear-gradient(90deg, var(--mf-blue), var(--mf-green));
  border-radius: inherit;
  display: block;
  height: 100%;
  min-width: 0.35rem;
}

.mf-spark-bars {
  align-items: end;
  display: grid;
  flex: 1;
  gap: 0.35rem;
  grid-template-columns: repeat(14, minmax(0, 1fr));
  min-height: 150px;
}

.mf-spark-bars span {
  background: linear-gradient(180deg, var(--mf-green), var(--mf-blue));
  border-radius: 999px 999px 4px 4px;
  min-height: 8px;
}

.mf-workflow-notification-cell {
  min-width: 280px;
}

.mf-roadmap {
  margin: 1rem 0 0;
  padding-left: 1.25rem;
}

.mf-roadmap li {
  color: var(--mf-muted);
  margin-bottom: 0.55rem;
}

.mf-roadmap li.active {
  color: var(--mf-green);
  font-weight: 700;
}

.mf-tabs .nav-link {
  color: var(--mf-muted);
  font-size: 0.875rem;
  font-weight: 600;
  white-space: nowrap;
}

.mf-tabs {
  flex-wrap: nowrap;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
}

.mf-tabs > .nav-item {
  flex: 0 0 auto;
}

.mf-hover-card-source {
  display: inline-block;
  position: relative;
}

.mf-hover-card {
  background: var(--mf-panel);
  border: 1px solid var(--mf-line);
  border-radius: 6px;
  box-shadow: 0 12px 28px rgb(0 0 0 / 28%);
  display: none;
  left: 0;
  min-width: 260px;
  padding: 0.75rem;
  position: absolute;
  top: calc(100% + 0.35rem);
  z-index: 1080;
}

.mf-hover-card-source:hover .mf-hover-card,
.mf-hover-card-source:focus-within .mf-hover-card {
  display: grid;
  gap: 0.25rem;
}

.mf-hover-card small,
.mf-hover-card span {
  color: var(--mf-muted);
  display: block;
}

[data-smart-filter-panel] > summary {
  cursor: pointer;
  list-style: none;
}

[data-smart-filter-panel] > summary::-webkit-details-marker {
    display: none;
}

.d-none-smart-filter {
    display: none !important;
}

.mf-smart-filter-choice {
    display: flex;
    align-items: stretch;
    gap: .5rem;
}

.mf-smart-filter-choice .mf-smart-filter-toggle {
    flex: 1 1 auto;
}

.mf-tabs .nav-link.active {
  color: var(--mf-blue);
}

.mf-record-link {
  color: var(--mf-ink);
  display: inline-block;
  text-decoration: none;
}

.mf-record-link:hover {
  color: var(--mf-blue);
}

.mf-identity-stack {
  display: grid;
  gap: 0.8rem;
}

.mf-identity-card {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  gap: 0.15rem;
  padding: 0.85rem;
}

.mf-identity-card-active {
  border-color: rgba(37, 94, 168, 0.45);
  box-shadow: 0 10px 24px rgba(37, 94, 168, 0.1);
}

.mf-identity-card small,
.mf-identity-card span {
  color: var(--mf-muted);
}

.mf-identity-card code {
  width: fit-content;
}

.mf-submitted-value {
  color: var(--mf-muted);
  font-weight: 700;
}

.mf-submission-lifecycle {
  overflow: hidden;
}

.mf-submission-lifecycle-header {
  align-items: start;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.95rem;
}

.mf-submission-lifecycle-header h2 {
  font-size: 1.1rem;
  margin: 0;
}

.mf-submission-lifecycle-now {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  gap: 0.15rem;
  min-width: min(18rem, 100%);
  padding: 0.65rem 0.75rem;
}

.mf-submission-lifecycle-now span,
.mf-action-summary span,
.mf-lifecycle-step span {
  color: var(--mf-muted);
  font-size: 0.76rem;
}

.mf-submission-lifecycle-now span,
.mf-action-summary span {
  font-weight: 800;
  text-transform: uppercase;
}

.mf-stage-badge {
  background: color-mix(in srgb, var(--mf-blue) 12%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 34%, var(--mf-line));
  border-radius: 999px;
  color: var(--mf-text);
  display: inline-flex;
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1;
  margin-bottom: 0.35rem;
  padding: 0.28rem 0.55rem;
  text-transform: uppercase;
}

.mf-lifecycle-track {
  display: grid;
  gap: 0;
  grid-template-columns: repeat(auto-fit, minmax(7rem, 1fr));
}

.mf-lifecycle-step {
  display: grid;
  gap: 0.35rem;
  grid-template-rows: auto auto auto;
  min-height: 5.25rem;
  padding: 0.15rem 0.5rem 0;
  position: relative;
}

.mf-lifecycle-step::after {
  background: color-mix(in srgb, var(--mf-line) 78%, transparent);
  content: "";
  height: 3px;
  left: 2.65rem;
  position: absolute;
  right: -0.7rem;
  top: 1.25rem;
  z-index: 0;
}

.mf-lifecycle-step:last-child::after {
  display: none;
}

.mf-lifecycle-marker {
  align-items: center;
  background: var(--mf-panel);
  border: 2px solid color-mix(in srgb, var(--mf-line) 92%, white);
  border-radius: 7px;
  display: inline-flex;
  height: 2.35rem;
  justify-content: center;
  position: relative;
  width: 2.35rem;
  z-index: 1;
}

.mf-lifecycle-marker::before {
  border: solid transparent;
  border-width: 0 0.18rem 0.18rem 0;
  content: "";
  height: 1rem;
  margin-top: -0.1rem;
  opacity: 0;
  transform: rotate(45deg);
  width: 0.55rem;
}

.mf-lifecycle-step.is-done {
  color: var(--mf-text);
}

.mf-lifecycle-step.is-done::after {
  background: color-mix(in srgb, var(--mf-green) 72%, var(--mf-line));
}

.mf-lifecycle-step.is-done .mf-lifecycle-marker {
  background: color-mix(in srgb, var(--mf-green) 86%, white);
  border-color: var(--mf-green);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--mf-green) 14%, transparent), 0 10px 24px color-mix(in srgb, var(--mf-green) 18%, transparent);
}

.mf-lifecycle-step.is-done .mf-lifecycle-marker::before {
  border-color: white;
  opacity: 1;
}

.mf-lifecycle-step.is-current {
  color: var(--mf-text);
}

.mf-lifecycle-step.is-current .mf-lifecycle-marker {
  background: color-mix(in srgb, var(--mf-blue) 9%, var(--mf-panel));
  border-color: var(--mf-blue);
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--mf-blue) 13%, transparent);
}

.mf-lifecycle-step.is-waiting strong,
.mf-lifecycle-step.is-waiting span {
  color: var(--mf-muted);
}

.mf-submission-context-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mf-submission-context-grid > div {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  padding: 0.8rem;
}

.mf-submission-context-grid span,
.mf-submission-context-grid small {
  color: var(--mf-muted);
  display: block;
}

.mf-submission-context-grid span {
  font-size: 0.78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.mf-submission-context-grid a,
.mf-submission-context-grid strong {
  display: block;
  margin-top: 0.25rem;
}

.mf-answer-grid {
  display: grid;
  gap: 0;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mf-answer-grid > div {
  border-top: 1px solid var(--mf-line);
  padding: 0.7rem 0.85rem 0.7rem 0;
}

.mf-answer-grid > .mf-form-field-full,
.mf-form-field-full {
  grid-column: 1 / -1;
}

.mf-answer-grid dt {
  color: var(--mf-muted);
  font-size: 0.84rem;
  font-weight: 800;
}

.mf-answer-grid dd {
  margin: 0.2rem 0 0;
}

.mf-answer-value,
.mf-readonly-answer {
  white-space: pre-line;
}

.mf-answer-display-object {
  border-top: 1px solid var(--mf-line);
  padding: 0.7rem 0.85rem 0.7rem 0;
}

.mf-readonly-answer {
  background: var(--mf-surface);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  color: var(--mf-ink);
  min-height: 2.35rem;
  padding: 0.55rem 0.75rem;
}

.mf-form-display-object {
  color: var(--mf-ink);
  max-width: 72rem;
}

.mf-form-display-object h3,
.mf-form-display-object h4,
.mf-form-display-object h5 {
  margin: 0 0 0.35rem;
}

.mf-form-display-object p {
  margin: 0 0 0.45rem;
}

.mf-form-display-object p:last-child,
.mf-form-display-object ul:last-child {
  margin-bottom: 0;
}

.mf-form-display-object ul {
  margin: 0.25rem 0 0.5rem 1.15rem;
  padding: 0;
}

.mf-form-display-text {
  background: color-mix(in srgb, var(--mf-panel-soft) 66%, transparent);
  border-left: 3px solid color-mix(in srgb, var(--mf-blue) 58%, var(--mf-line));
  border-radius: 6px;
  padding: 0.85rem 1rem;
}

.mf-form-display-text h3 {
  font-size: 1.05rem;
}

.mf-form-display-body {
  color: color-mix(in srgb, var(--mf-ink) 88%, var(--mf-muted));
}

.mf-form-help-object {
  align-items: start;
  background: color-mix(in srgb, var(--mf-blue) 10%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 32%, var(--mf-line));
  border-radius: 8px;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: auto minmax(0, 1fr);
  padding: 0.85rem 1rem;
}

.mf-form-help-object h3 {
  font-size: 0.98rem;
}

.mf-form-help-icon {
  align-items: center;
  background: var(--mf-blue);
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  font-size: 0.78rem;
  font-weight: 900;
  height: 1.35rem;
  justify-content: center;
  line-height: 1;
  width: 1.35rem;
}

.mf-field-label-row {
  align-items: center;
  display: flex;
  gap: 0.35rem;
  margin-bottom: 0.5rem;
  min-width: 0;
  position: relative;
}

.mf-field-label-row .form-label,
.mf-field-label-row dt {
  margin-bottom: 0;
}

.mf-field-help {
  display: inline-flex;
  flex: 0 0 auto;
  position: relative;
}

.mf-field-help-trigger {
  align-items: center;
  background: color-mix(in srgb, var(--mf-blue) 16%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 40%, var(--mf-line));
  border-radius: 999px;
  color: var(--mf-blue);
  display: inline-flex;
  font-size: 0.68rem;
  font-weight: 900;
  height: 1.05rem;
  justify-content: center;
  line-height: 1;
  padding: 0;
  width: 1.05rem;
}

.mf-field-help-trigger:focus-visible {
  box-shadow: 0 0 0 0.2rem color-mix(in srgb, var(--mf-blue) 24%, transparent);
  outline: none;
}

.mf-field-help-popover {
  background: color-mix(in srgb, var(--mf-panel) 94%, var(--mf-blue));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 32%, var(--mf-line));
  border-radius: 8px;
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.28);
  color: var(--mf-ink);
  display: none;
  font-size: 0.86rem;
  left: 50%;
  line-height: 1.45;
  margin-top: 0.35rem;
  max-width: min(28rem, calc(100vw - 2rem));
  min-width: 16rem;
  padding: 0.75rem 0.85rem;
  position: absolute;
  top: 100%;
  transform: translateX(-50%);
  z-index: 1200;
}

.mf-field-help-popover::before {
  background: inherit;
  border-left: 1px solid color-mix(in srgb, var(--mf-blue) 32%, var(--mf-line));
  border-top: 1px solid color-mix(in srgb, var(--mf-blue) 32%, var(--mf-line));
  content: "";
  height: 0.6rem;
  left: 50%;
  position: absolute;
  top: -0.35rem;
  transform: translateX(-50%) rotate(45deg);
  width: 0.6rem;
}

.mf-field-help-popover p {
  margin: 0 0 0.45rem;
}

.mf-field-help-popover p:last-child,
.mf-field-help-popover ul:last-child {
  margin-bottom: 0;
}

.mf-field-help-popover ul {
  margin: 0.2rem 0 0.5rem 1.05rem;
  padding: 0;
}

.mf-field-help:hover .mf-field-help-popover,
.mf-field-help:focus-within .mf-field-help-popover,
.mf-field-help.is-open .mf-field-help-popover {
  display: block;
}

@media (max-width: 575.98px) {
  .mf-field-help-popover {
    left: auto;
    right: -0.25rem;
    transform: none;
  }

  .mf-field-help-popover::before {
    left: auto;
    right: 0.45rem;
    transform: rotate(45deg);
  }
}

.mf-form-divider {
  border: 0;
  border-top: 1px solid var(--mf-line-strong);
  margin: 1rem 0;
}

.mf-form-line {
  border: 0;
  border-top: 1px solid color-mix(in srgb, var(--mf-line-strong) 78%, transparent);
  margin: 0.45rem 0 0.65rem;
}

.mf-form-divider-with-label {
  align-items: center;
  color: var(--mf-muted);
  display: grid;
  font-size: 0.78rem;
  font-weight: 900;
  gap: 0.75rem;
  grid-template-columns: auto minmax(2rem, 1fr);
  letter-spacing: 0.04em;
  margin: 1rem 0 0.65rem;
  text-transform: uppercase;
}

.mf-form-divider-with-label::after {
  border-top: 1px solid var(--mf-line-strong);
  content: "";
}

.mf-rich-text-source {
  display: none;
}

.mf-rich-text-shell {
  background: var(--mf-panel);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  overflow: hidden;
}

.mf-rich-text-toolbar {
  background: color-mix(in srgb, var(--mf-panel-soft) 80%, transparent);
  border-bottom: 1px solid var(--mf-line);
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  padding: 0.5rem;
}

.mf-rich-text-toolbar .btn {
  min-width: 2.25rem;
}

.mf-rich-color-button {
  align-items: center;
  display: inline-flex;
  gap: 0.35rem;
}

.mf-rich-color-button input {
  background: transparent;
  block-size: 1.1rem;
  border: 0;
  inline-size: 1.1rem;
  padding: 0;
}

.mf-rich-text-editor {
  color: var(--mf-ink);
  min-height: 12rem;
  outline: 0;
  padding: 0.75rem;
}

.mf-rich-text-editor:focus {
  box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--mf-blue) 46%, transparent);
}

.mf-rich-text-editor p:last-child,
.mf-rich-message p:last-child {
  margin-bottom: 0;
}

.mf-rich-message ul,
.mf-rich-message ol {
  margin-bottom: 0.75rem;
}

.mf-submission-workspace {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
}

.mf-submission-workspace-main {
  min-width: 0;
}

.mf-workflow-rail {
  position: sticky;
  top: 1rem;
}

.mf-workflow-rail .mf-page-heading {
  margin-bottom: 0.5rem;
}

.mf-workflow-rail-section {
  border-top: 1px solid var(--mf-line);
  margin-top: 0.75rem;
  padding-top: 0.75rem;
}

.mf-workflow-rail-section-top {
  border-top: 0;
  margin-top: 0.45rem;
  padding-top: 0;
}

.mf-workflow-rail-section h3 {
  color: var(--mf-muted);
  font-size: 0.76rem;
  font-weight: 800;
  margin-bottom: 0.45rem;
  text-transform: uppercase;
}

.mf-rail-details summary {
  color: var(--mf-muted);
  cursor: pointer;
  font-size: 0.76rem;
  font-weight: 800;
  list-style-position: inside;
  margin-bottom: 0;
  text-transform: uppercase;
}

.mf-rail-details[open] summary {
  margin-bottom: 0.45rem;
}

.mf-workflow-rail-card {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  gap: 0.32rem;
  margin-bottom: 0.5rem;
  padding: 0.55rem 0.6rem;
}

.mf-action-summary {
  display: grid;
  gap: 0.5rem;
}

.mf-engagement-letter-workspace {
  align-items: start;
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: space-between;
  padding: 0.85rem;
}

.mf-engagement-letter-preview {
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  padding: 0.85rem;
}

.mf-engagement-letter-preview h4 {
  color: var(--mf-muted);
  font-size: 0.76rem;
  font-weight: 850;
  margin-bottom: 0.45rem;
  text-transform: uppercase;
}

.mf-action-summary > div {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  padding: 0.65rem;
}

.mf-action-summary strong {
  line-height: 1.35;
}

.mf-share-panel {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  gap: 0.85rem;
  grid-template-columns: minmax(12rem, 1fr) minmax(20rem, 2fr) auto;
  padding: 0.85rem;
}

.mf-share-panel strong,
.mf-share-panel span {
  display: block;
}

.mf-share-panel span,
.mf-share-actions label span,
.mf-share-tracking span {
  color: var(--mf-muted);
  font-size: 0.78rem;
}

.mf-share-actions {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mf-share-actions .btn {
  align-self: end;
}

.mf-share-tracking {
  align-content: start;
  display: grid;
  gap: 0.35rem;
  white-space: nowrap;
}

.mf-client-intake-hero {
  align-items: start;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--mf-blue) 10%, var(--mf-panel)), var(--mf-panel));
  border-color: color-mix(in srgb, var(--mf-blue) 18%, var(--mf-line));
  display: grid;
  gap: 1.25rem;
  grid-template-columns: minmax(0, 1.25fr) minmax(18rem, 0.75fr);
}

.mf-client-intake-hero h2 {
  font-size: clamp(1.35rem, 2vw, 1.85rem);
  margin: 0 0 0.35rem;
}

.mf-client-intake-steps {
  display: grid;
  gap: 0.55rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.mf-client-intake-steps li {
  align-items: center;
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  gap: 0.65rem;
  grid-template-columns: 2rem minmax(0, 1fr);
  min-height: 3rem;
  padding: 0.45rem 0.6rem;
}

.mf-client-intake-steps span {
  align-items: center;
  background: color-mix(in srgb, var(--mf-blue) 15%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 26%, var(--mf-line));
  border-radius: 50%;
  color: var(--mf-blue);
  display: inline-flex;
  font-size: 0.76rem;
  font-weight: 800;
  height: 2rem;
  justify-content: center;
  width: 2rem;
}

.mf-client-intake-steps strong {
  font-size: 0.9rem;
  min-width: 0;
  overflow-wrap: anywhere;
}

.mf-client-assurance-grid {
  display: grid;
  gap: 0.85rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-bottom: 1rem;
}

.mf-client-assurance-grid article {
  background: color-mix(in srgb, var(--mf-panel) 88%, var(--mf-panel-soft));
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  padding: 0.9rem;
}

.mf-client-assurance-grid span {
  display: block;
  font-weight: 800;
  margin-bottom: 0.25rem;
}

.mf-client-assurance-grid p {
  color: var(--mf-muted);
  font-size: 0.9rem;
  margin: 0;
}

.mf-client-form-panel {
  padding: 1.25rem;
}

.mf-client-next-steps {
  background: color-mix(in srgb, var(--mf-green) 7%, var(--mf-panel-soft));
  border: 1px solid color-mix(in srgb, var(--mf-green) 24%, var(--mf-line));
  border-radius: 8px;
  display: grid;
  gap: 0.2rem;
  margin: 1rem 0;
  padding: 0.75rem;
}

.mf-client-next-steps span {
  color: var(--mf-muted);
}

.mf-client-submit-row {
  align-items: end;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.mf-client-submit-row > div {
  display: grid;
  gap: 0.2rem;
}

.mf-client-draft-status {
  color: var(--mf-green);
  font-weight: 800;
}

.mf-client-submitted {
  margin-inline: auto;
  max-width: 48rem;
  text-align: center;
}

.mf-client-success-mark {
  align-items: center;
  background: color-mix(in srgb, var(--mf-green) 14%, var(--mf-panel-soft));
  border: 1px solid color-mix(in srgb, var(--mf-green) 28%, var(--mf-line));
  border-radius: 50%;
  color: var(--mf-green);
  display: inline-flex;
  font-size: 2rem;
  font-weight: 900;
  height: 4rem;
  justify-content: center;
  margin-bottom: 1rem;
  width: 4rem;
}

.mf-client-receipt {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  gap: 0.25rem;
  margin: 1rem 0;
  padding: 0.85rem;
}

.mf-client-receipt span {
  color: var(--mf-muted);
  font-size: 0.8rem;
  font-weight: 800;
  text-transform: uppercase;
}

.mf-client-receipt strong {
  font-size: 1.45rem;
}

.mf-client-submitted-steps {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  list-style: none;
  margin: 1rem 0 0;
  padding: 0;
  text-align: left;
}

.mf-client-submitted-steps li {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  color: var(--mf-muted);
  font-size: 0.86rem;
  font-weight: 800;
  padding: 0.7rem;
}

.mf-workflow-rail-card-action {
  gap: 0.45rem;
  padding: 0.65rem;
}

.mf-workflow-action-note {
  min-height: 5.5rem;
  resize: vertical;
}

.mf-workflow-note-card {
  border-left: 3px solid var(--mf-blue);
}

.mf-workflow-note-card p {
  color: var(--mf-text);
  line-height: 1.45;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}

.mf-workflow-status-card {
  gap: 0.35rem;
}

.mf-workflow-status-card .badge {
  align-self: stretch;
  text-align: center;
}

.mf-pending-entity-change-warning {
  background: color-mix(in srgb, var(--mf-warning, #f4c542) 12%, var(--mf-panel));
  border-color: color-mix(in srgb, var(--mf-warning, #f4c542) 42%, var(--mf-line));
}

.mf-pending-entity-main-alert {
  align-items: center;
  background: color-mix(in srgb, var(--mf-warning, #f4c542) 12%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-warning, #f4c542) 42%, var(--mf-line));
  border-radius: 8px;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  padding: 0.85rem 1rem;
}

.mf-pending-entity-main-alert div {
  display: grid;
  gap: 0.2rem;
}

.mf-pending-entity-main-alert span {
  color: var(--mf-muted);
}

.mf-pending-entity-change-warning strong,
.mf-pending-entity-change-card strong {
  overflow-wrap: anywhere;
}

.mf-pending-entity-change-card {
  border-left: 3px solid var(--mf-warning, #f4c542);
}

.mf-queue-warning-pill {
  align-items: center;
  background: color-mix(in srgb, var(--mf-warning, #f4c542) 15%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-warning, #f4c542) 42%, var(--mf-line));
  border-radius: 999px;
  color: var(--mf-text);
  display: inline-flex;
  font-size: 0.74rem;
  font-weight: 850;
  line-height: 1;
  margin-top: 0.35rem;
  padding: 0.28rem 0.5rem;
}

.mf-workflow-rail-card small,
.mf-workflow-rail-card p {
  color: var(--mf-muted);
  margin: 0;
}

.mf-workflow-timeline {
  border-left: 2px solid var(--mf-line);
  display: grid;
  gap: 0.55rem;
  list-style: none;
  margin: 0;
  padding-left: 0.85rem;
}

.mf-workflow-timeline li {
  position: relative;
}

.mf-workflow-timeline li::before {
  background: var(--mf-blue);
  border: 2px solid var(--mf-panel);
  border-radius: 999px;
  content: "";
  height: 0.55rem;
  left: -1.17rem;
  position: absolute;
  top: 0.25rem;
  width: 0.55rem;
}

.mf-workflow-timeline span,
.mf-workflow-timeline small {
  color: var(--mf-muted);
  display: block;
}

.mf-rail-table {
  display: grid;
  gap: 0.45rem;
}

.mf-rail-table > div {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  gap: 0.25rem;
  padding: 0.5rem 0.6rem;
}

.mf-rail-table strong,
.mf-rail-table small {
  min-width: 0;
  overflow-wrap: anywhere;
}

.mf-rail-table small {
  color: var(--mf-muted);
}

.mf-approval-summary-cell {
  min-width: 24rem;
}

.mf-approval-route {
  display: grid;
  gap: 0.25rem;
  min-width: 11rem;
}

.mf-approval-route-badge {
  align-items: center;
  background: color-mix(in srgb, var(--mf-blue) 13%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 30%, var(--mf-line));
  border-radius: 999px;
  color: var(--mf-blue);
  display: inline-flex;
  font-size: 0.74rem;
  font-weight: 850;
  justify-self: start;
  line-height: 1;
  padding: 0.28rem 0.55rem;
  text-transform: uppercase;
  white-space: nowrap;
}

.mf-approval-route small {
  color: var(--mf-muted);
  max-width: 15rem;
}

.mf-change-diff-list {
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  overflow: hidden;
}

.mf-change-diff-row {
  background: var(--mf-panel);
  display: grid;
  gap: 0.5rem;
  grid-template-columns: minmax(7rem, 0.8fr) minmax(8rem, 1fr) minmax(8rem, 1fr);
  padding: 0.45rem 0.55rem;
}

.mf-change-diff-row + .mf-change-diff-row {
  border-top: 1px solid var(--mf-line);
}

.mf-change-diff-row.is-header {
  background: var(--mf-panel-soft);
  color: var(--mf-muted);
  font-size: 0.76rem;
  font-weight: 800;
  text-transform: uppercase;
}

.mf-change-diff-row strong,
.mf-change-diff-row span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.mf-form-tab-shell {
  display: grid;
  gap: 1rem;
}

.mf-form-tab-shell-compact {
  gap: 0.75rem;
}

.mf-form-tab-list {
  align-items: center;
  border-bottom: 1px solid var(--mf-line);
  display: flex;
  flex-wrap: nowrap;
  gap: 0.35rem;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
}

.mf-form-tab {
  background: transparent;
  border: 0;
  border-bottom: 3px solid transparent;
  color: var(--mf-muted);
  flex: 0 0 auto;
  font-size: 0.875rem;
  font-weight: 600;
  padding: 0.55rem 0.8rem;
  white-space: nowrap;
}

.mf-form-tab:hover,
.mf-form-tab.active {
  border-bottom-color: var(--mf-blue);
  color: var(--mf-text);
}

.mf-form-tab-panel {
  min-width: 0;
}

.mf-entity-detail-tabs {
  margin-bottom: 1rem;
}

.mf-entity-detail-panel:not([hidden]) {
  display: grid;
  gap: 1rem;
}

.mf-form-tab-panel[hidden] {
  display: none !important;
}

.mf-form-field-panel {
  align-items: start;
  display: grid;
  gap: 0.9rem 1rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mf-form-tab-panel.mf-form-field-panel:not([hidden]) {
  display: grid;
}

.mf-form-field-panel > .mf-form-section-heading {
  grid-column: 1 / -1;
}

.mf-form-section-heading h2 {
  font-size: 1rem;
  margin-bottom: 0.85rem;
}

.table {
  margin-bottom: 0;
}

.mf-compact-table th,
.mf-compact-table td {
  white-space: nowrap;
}

.mf-compact-table .mf-truncate-cell {
  max-width: 24rem;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mf-compact-table .mf-truncate-cell > a {
  display: inline-block;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
}

.mf-submissions-table {
  table-layout: fixed;
  width: 100%;
}

.mf-submissions-table th,
.mf-submissions-table td,
.mf-submissions-table .mf-truncate-cell,
.mf-submissions-table .mf-truncate-cell > a {
  max-width: none;
  overflow-wrap: anywhere;
  text-overflow: clip;
  white-space: normal;
}

.mf-submissions-table th[data-column-key="number"] { width: 24%; }
.mf-submissions-table th[data-column-key="client"] { width: 18%; }
.mf-submissions-table th[data-column-key="matter"] { width: 20%; }
.mf-submissions-table th[data-column-key="submitter"] { width: 14%; }
.mf-submissions-table th[data-column-key="status"] { width: 11%; }
.mf-submissions-table th[data-column-key="submitted"] { width: 13%; }

.mf-submissions-table .badge {
  white-space: normal;
}

.mf-compact-table .mf-inline-context {
  color: var(--mf-muted);
  font-weight: 600;
  margin-left: 0.5rem;
}

.mf-lateral-review-table {
  table-layout: fixed;
  width: 100%;
}

.mf-lateral-review-table th,
.mf-lateral-review-table td {
  overflow-wrap: anywhere;
  vertical-align: top;
  white-space: normal;
}

.mf-lateral-review-table th:nth-child(1) { width: 13%; }
.mf-lateral-review-table th:nth-child(2) { width: 9%; }
.mf-lateral-review-table th:nth-child(3) { width: 7%; }
.mf-lateral-review-table th:nth-child(4) { width: 16%; }
.mf-lateral-review-table th:nth-child(5) { width: 19%; }
.mf-lateral-review-table th:nth-child(6) { width: 21%; }
.mf-lateral-review-table th:nth-child(7) { width: 15%; }

.mf-lateral-review-table .form-control,
.mf-lateral-review-table .form-select {
  min-width: 0;
  width: 100%;
}

@media (max-width: 991.98px) {
  .mf-lateral-review-table {
    min-width: 64rem;
  }
}

.mf-enhancement-table {
  min-width: 76rem;
}

.mf-enhancement-table th {
  vertical-align: bottom;
}

.mf-enhancement-table td {
  vertical-align: top;
}

.mf-enhancement-table td:nth-child(2) {
  min-width: 28rem;
}

.mf-enhancement-title {
  display: block;
  line-height: 1.25;
}

.mf-enhancement-description {
  max-width: 48rem;
}

.mf-enhancement-value {
  color: var(--mf-ink);
}

.mf-enhancement-submitted {
  min-width: 8rem;
}

.mf-enhancement-admin {
  display: grid;
  gap: 0.45rem;
  min-width: 16rem;
  padding: 0.6rem;
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--mf-panel-soft) 78%, transparent);
}

.mf-enhancement-admin-row {
  display: grid;
  grid-template-columns: minmax(7rem, 1fr) auto;
  gap: 0.5rem;
  align-items: center;
}

.mf-enhancement-admin textarea {
  min-height: 4.6rem;
  resize: vertical;
}

.mf-process-overview {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
  gap: 1rem;
  margin-bottom: 1rem;
}

.mf-process-card {
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--mf-panel) 96%, transparent), color-mix(in srgb, var(--mf-panel-soft) 86%, transparent));
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  color: var(--mf-ink);
  display: grid;
  gap: 0.35rem;
  min-height: 8.5rem;
  padding: 1rem;
  text-decoration: none;
}

.mf-process-card:hover,
.mf-process-card:focus {
  border-color: color-mix(in srgb, var(--mf-blue) 48%, var(--mf-line));
  color: var(--mf-ink);
  text-decoration: none;
}

.mf-process-card strong {
  font-size: 2rem;
  line-height: 1;
}

.mf-process-card small {
  color: var(--mf-muted);
}

.mf-card-label {
  color: var(--mf-gold);
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.mf-report-pdf-card {
    overflow: hidden;
}

.mf-report-pdf-frame {
    display: block;
    width: 100%;
    min-height: 720px;
    border: 1px solid var(--bs-border-color);
    border-radius: 4px;
    background: #fff;
}

@media (max-width: 767.98px) {
    .mf-report-pdf-frame {
        min-height: 520px;
    }
}

.mf-section-heading-row {
  align-items: start;
  display: flex;
  justify-content: space-between;
  gap: 1rem;
}

.mf-section-heading-row h2 {
  margin-bottom: 0.25rem;
}

.mf-inline-editor {
  align-items: end;
  background: color-mix(in srgb, var(--mf-blue) 6%, var(--mf-panel-soft));
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(18rem, 28rem) auto;
  padding: 1rem;
}

.mf-process-table td:first-child {
  min-width: 20rem;
}

.mf-definition-card {
  background: color-mix(in srgb, var(--mf-panel-soft) 70%, transparent);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  padding: 1rem;
}

.mf-definition-card h3 {
  color: var(--mf-ink);
}

.mf-process-template-grid {
  display: grid;
  gap: 0.75rem;
}

.mf-process-template {
  align-items: start;
  background: color-mix(in srgb, var(--mf-panel-soft) 70%, transparent);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 0.85rem;
}

.mf-process-template h3 {
  font-size: 1rem;
  margin: 0;
}

.mf-record-pagination {
  align-items: stretch;
}

.mf-page-jump-form {
  margin: 0;
}

.mf-page-jump-control {
  align-items: center;
  display: flex;
  gap: 0.35rem;
  height: 100%;
}

.mf-page-jump-input {
  min-height: 1.75rem;
  padding-bottom: 0.12rem;
  padding-top: 0.12rem;
  text-align: center;
  width: 4.5rem;
}

.mf-sortable-heading {
  cursor: pointer;
  position: relative;
  user-select: none;
  white-space: nowrap;
}

.mf-sortable-heading a {
  color: inherit;
  text-decoration: none;
}

.mf-sortable-heading::after {
  color: var(--mf-muted);
  content: "↕";
  display: inline-block;
  font-size: 0.78em;
  font-weight: 800;
  margin-left: 0.35rem;
  opacity: 0.55;
}

.mf-sortable-heading:hover,
.mf-sortable-heading:focus {
  color: var(--mf-blue);
}

.mf-sortable-heading:focus-visible {
  outline: 3px solid rgba(37, 94, 168, 0.2);
  outline-offset: 2px;
}

.mf-sortable-heading[aria-sort="ascending"]::after {
  content: "▲";
  opacity: 0.9;
}

.mf-sortable-heading[aria-sort="descending"]::after {
  content: "▼";
  opacity: 0.9;
}

.mf-sort-active::after {
  color: var(--mf-blue);
  opacity: 1;
}

.mf-timer {
  align-items: center;
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  padding: 1rem;
}

.mf-timer-label {
  color: var(--mf-muted);
  display: block;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.mf-timer strong {
  display: block;
  font-size: 1.8rem;
  line-height: 1;
}

.mf-queue-actions {
  min-width: 260px;
}

.mf-forms-table-wrap {
  min-height: min(34rem, calc(100vh - 18rem));
  overflow: visible;
}

.mf-forms-table-wrap .dropdown-menu {
  z-index: 1080;
}

.mf-designer-table {
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  overflow-x: auto;
  overflow-y: hidden;
}

.mf-designer-field-table {
  margin-bottom: 0;
  min-width: min(100%, 1080px);
  table-layout: auto;
}

.mf-field-toolbar {
  align-items: end;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 0.85rem;
}

.mf-field-toolbar-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
}

.mf-form-map-scroll {
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  margin-bottom: 1rem;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 0.75rem;
}

.mf-form-map {
  align-items: stretch;
  display: flex;
  gap: 0.45rem;
  min-height: 5.35rem;
  min-width: max-content;
}

.mf-form-map-node {
  align-items: center;
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--mf-panel) 96%, transparent), color-mix(in srgb, var(--mf-panel-soft) 84%, transparent));
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  color: var(--mf-text);
  display: grid;
  gap: 0.5rem;
  grid-template-columns: 2.1rem minmax(8rem, 12rem);
  grid-template-rows: auto auto;
  min-height: 5.1rem;
  padding: 0.7rem;
  position: relative;
  text-align: left;
}

.mf-form-map-node[draggable="true"] {
    cursor: grab;
}

.mf-form-map-node.is-dragging {
    cursor: grabbing;
    opacity: .55;
}

.mf-form-map-node.is-drop-target {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--bs-primary) 30%, transparent);
}

.mf-form-map-node:hover,
.mf-form-map-node:focus-visible,
.mf-form-map-node.is-selected {
  border-color: color-mix(in srgb, var(--mf-blue) 58%, var(--mf-line));
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--mf-blue) 14%, transparent);
}

.mf-form-map-node.is-collapsed {
  opacity: 0.72;
}

.mf-form-map-index {
  align-items: center;
  background: color-mix(in srgb, var(--mf-blue) 14%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 32%, var(--mf-line));
  border-radius: 50%;
  color: var(--mf-blue);
  display: inline-flex;
  font-size: 0.78rem;
  font-weight: 900;
  grid-row: 1 / 3;
  height: 2.1rem;
  justify-content: center;
  width: 2.1rem;
}

.mf-form-map-copy {
  display: grid;
  gap: 0.1rem;
  min-width: 0;
}

.mf-form-map-copy strong,
.mf-form-map-copy small,
.mf-form-map-kind {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mf-form-map-copy strong {
  font-size: 0.94rem;
}

.mf-form-map-copy small {
  color: var(--mf-muted);
  font-size: 0.78rem;
}

.mf-form-map-kind {
  background: color-mix(in srgb, var(--mf-green) 9%, var(--mf-panel-soft));
  border: 1px solid color-mix(in srgb, var(--mf-green) 20%, var(--mf-line));
  border-radius: 999px;
  color: var(--mf-muted);
  font-size: 0.72rem;
  font-weight: 800;
  grid-column: 2;
  justify-self: start;
  max-width: 12rem;
  padding: 0.18rem 0.45rem;
}

.mf-form-map-add-field {
  align-items: center;
  align-self: center;
  appearance: none;
  background: color-mix(in srgb, var(--mf-blue) 12%, var(--mf-panel-soft));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 44%, var(--mf-line));
  border-radius: 999px;
  color: var(--mf-blue);
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 1.85rem;
  font: inherit;
  font-size: 1.05rem;
  font-weight: 900;
  height: 1.85rem;
  justify-content: center;
  line-height: 1;
  padding: 0 0 0.08rem;
  transition: background-color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
  width: 1.85rem;
}

.mf-form-map-add-field:hover,
.mf-form-map-add-field:focus-visible {
  background: color-mix(in srgb, var(--mf-blue) 20%, var(--mf-panel-soft));
  border-color: var(--mf-blue);
  box-shadow: 0 0 0 0.16rem color-mix(in srgb, var(--mf-blue) 20%, transparent);
  outline: none;
  transform: translateY(-1px);
}

.mf-designer-table th {
  color: var(--mf-muted);
  font-size: 0.82rem;
  white-space: nowrap;
}

.mf-designer-field-table thead {
  display: none;
}

.mf-field-col-order {
  width: 9.5rem;
}

.mf-field-col-section,
.mf-field-col-label,
.mf-field-col-key,
.mf-field-col-type,
.mf-field-col-step {
  width: 9.75rem;
}

.mf-field-col-required {
  width: 9rem;
}

.mf-field-col-options {
  width: 11rem;
}

.mf-field-col-condition {
  width: 17rem;
}

.mf-condition-pair {
  display: grid;
  gap: 0.35rem;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.mf-field-order-number {
  min-width: 5.25rem;
}

.mf-field-order-number .form-control {
  text-align: center;
}

.mf-field-card-cell {
  padding: 0.55rem 0.35rem !important;
}

.mf-field-card {
  background: color-mix(in srgb, var(--mf-panel) 84%, var(--mf-field));
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  gap: 0.85rem;
  padding: 0.75rem;
}

.mf-field-card.is-selected {
  border-color: color-mix(in srgb, var(--mf-blue) 54%, var(--mf-line));
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--mf-blue) 12%, transparent);
}

.mf-field-card.is-collapsed {
  gap: 0;
}

.mf-check-tile-inline {
  display: inline-flex;
  margin-bottom: 0.25rem;
  width: auto;
}

.mf-inline-details {
  border: 1px solid color-mix(in srgb, var(--mf-line) 78%, transparent);
  border-radius: 8px;
  padding: 0.75rem 0.9rem;
}

.mf-inline-details > summary {
  cursor: pointer;
  font-weight: 800;
}

.mf-audit-row-details {
  margin-top: 0.45rem;
}

.mf-audit-row-details > summary {
  color: var(--mf-accent);
  cursor: pointer;
  font-size: 0.8rem;
  font-weight: 700;
}

.mf-audit-row-details pre {
  background: rgba(5, 12, 24, 0.6);
  border: 1px solid var(--mf-line);
  border-radius: 0.4rem;
  color: var(--mf-text);
  font-size: 0.78rem;
  margin: 0.45rem 0 0;
  max-width: 48rem;
  overflow: auto;
  padding: 0.75rem;
  white-space: pre-wrap;
  word-break: break-word;
}

.mf-validation-grid {
  display: grid;
  gap: 0.5rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mf-field-card-top,
.mf-field-card-bottom {
  align-items: start;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

.mf-field-card-top {
  border-bottom: 1px solid color-mix(in srgb, var(--mf-line) 72%, transparent);
  padding-bottom: 0.85rem;
}

.mf-section-designer {
  padding: 1rem;
}

.mf-section-list {
  display: grid;
  gap: 0.75rem;
}

.mf-section-row {
  align-items: start;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(12rem, 1fr) minmax(16rem, 1.5fr) auto;
}

.mf-section-row-actions {
  align-self: end;
  display: flex;
  gap: 0.35rem;
}

.mf-section-row-actions .btn {
  min-height: 2.35rem;
}

.mf-section-row-actions .btn:not([data-remove-section]) {
  align-items: center;
  aspect-ratio: 1;
  display: inline-flex;
  justify-content: center;
  line-height: 1;
  padding: 0;
  width: 2.35rem;
}

.mf-section-row.is-collapsed {
  align-items: center;
  grid-template-columns: 1fr auto;
}

.mf-section-summary {
  align-self: center;
  color: var(--mf-text);
  font-weight: 700;
}

.mf-field-card-top > :nth-child(1) {
  grid-column: span 2;
}

.mf-field-card-top > :nth-child(2) {
  grid-column: span 1;
}

.mf-field-card-top > :nth-child(3) {
  grid-column: span 2;
}

.mf-field-card-top > :nth-child(4) {
  grid-column: span 3;
}

.mf-field-card-top > :nth-child(5) {
  grid-column: span 2;
}

.mf-field-card-top > :nth-child(6) {
  grid-column: span 2;
}

.mf-field-card-bottom > :nth-child(1),
.mf-field-card-bottom > :nth-child(2),
.mf-field-card-bottom > :nth-child(3),
.mf-field-card-bottom > :nth-child(4) {
  grid-column: span 3;
  order: 40;
}

.mf-field-card-bottom > :nth-child(5),
.mf-field-card-bottom > :nth-child(6),
.mf-field-card-bottom > :nth-child(7),
.mf-field-card-bottom > :nth-child(8) {
  grid-column: span 3;
  order: 10;
}

.mf-field-card-bottom > :nth-child(9) {
  grid-column: span 4;
  order: 30;
}

.mf-field-card-bottom > :nth-child(10) {
  grid-column: span 3;
  order: 30;
}

.mf-field-card-bottom > :nth-child(11) {
  grid-column: span 5;
  order: 30;
}

.mf-field-card-bottom > .mf-field-display-logic {
  grid-column: span 6;
  order: 10;
}

.mf-field-card-bottom > .mf-field-validation-wide {
  grid-column: 1 / -1;
  order: 20;
}

.mf-field-card-bottom > .mf-entity-mapping-wide {
  grid-column: span 6;
  order: 30;
}

.mf-field-card-bottom > .mf-field-editability-row {
  align-items: start;
  display: grid;
  gap: 0.75rem;
  grid-column: 1 / -1;
  grid-template-columns: minmax(12rem, 0.36fr) minmax(18rem, 0.64fr);
  order: 26;
}

.mf-field-card-bottom::before,
.mf-field-card-bottom::after {
  color: var(--mf-muted);
  content: "Field behavior";
  display: block;
  font-size: 0.72rem;
  font-weight: 800;
  grid-column: 1 / -1;
  letter-spacing: 0.04em;
  order: 1;
  text-transform: uppercase;
}

.mf-field-card-bottom::after {
  content: "Access and workflow";
  order: 25;
}

.mf-field-card .form-label {
  color: var(--mf-muted);
  font-size: 0.78rem;
  font-weight: 800;
  margin-bottom: 0.25rem;
}

.mf-field-order {
  align-items: center;
  display: flex;
  gap: 0.35rem;
  min-width: 0;
  padding-bottom: 0.05rem;
}

.mf-field-order .btn:not(.mf-field-toggle),
.mf-field-order .mf-drag-handle {
  align-items: center;
  aspect-ratio: 1;
  display: inline-flex;
  justify-content: center;
  line-height: 1;
  min-height: 2.35rem;
  padding: 0;
  width: 2.35rem;
}

.mf-field-toggle {
  min-height: 2.35rem;
  white-space: nowrap;
}

.mf-field-card.is-collapsed .mf-field-card-top {
  border-bottom: 0;
  padding-bottom: 0;
}

.mf-check-tile {
  align-items: center;
  background: color-mix(in srgb, var(--mf-field) 82%, transparent);
  border: 1px solid var(--mf-line);
  border-radius: 6px;
  display: inline-flex;
  gap: 0.45rem;
  min-height: 2.45rem;
  padding: 0.45rem 0.65rem;
  white-space: nowrap;
}

.mf-check-tile .form-check-input {
  flex: 0 0 auto;
  margin: 0;
  width: 1rem;
}

.mf-check-tile .form-check-label {
  color: var(--mf-ink);
  font-weight: 700;
  line-height: 1.1;
}

.mf-drag-handle {
  background: color-mix(in srgb, var(--mf-blue) 14%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 28%, var(--mf-line));
  border-radius: 6px;
  color: var(--mf-blue);
  cursor: grab;
  display: inline-flex;
  height: 2rem;
  justify-content: center;
  font-size: 0.78rem;
  font-weight: 800;
  padding: 0.35rem 0.5rem;
  user-select: none;
  width: 2.15rem;
}

.mf-drag-handle:active {
  cursor: grabbing;
}

.mf-grip-icon {
  align-self: center;
  background: currentColor;
  border-radius: 999px;
  box-shadow: 0 -0.35rem 0 currentColor, 0 0.35rem 0 currentColor;
  display: block;
  height: 0.12rem;
  width: 0.9rem;
}

.mf-field-row.is-dragging {
  opacity: 0.45;
}

.mf-designer-table input,
.mf-designer-table select {
  min-width: 0;
  width: 100%;
}

.mf-designer-table .mf-team-multiselect {
  min-height: 5.6rem;
}

.mf-team-scroll-list {
  max-height: 32rem;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.mf-token-native-select {
  display: none !important;
}

.mf-token-multiselect {
  position: relative;
}

.mf-token-button {
  align-items: center;
  background: var(--mf-input);
  border: 1px solid var(--mf-line);
  border-radius: 6px;
  color: var(--mf-ink);
  display: flex;
  gap: 0.5rem;
  justify-content: space-between;
  min-height: 2.45rem;
  padding: 0.3rem 0.5rem;
  text-align: left;
  width: 100%;
}

.mf-token-button:hover {
  border-color: color-mix(in srgb, var(--mf-blue) 26%, var(--mf-line));
}

.mf-token-button:focus-visible {
  border-color: var(--mf-blue);
  box-shadow: 0 0 0 0.18rem color-mix(in srgb, var(--mf-blue) 24%, transparent);
  outline: none;
}

.mf-token-chips {
  align-items: center;
  display: flex;
  flex: 1;
  flex-wrap: wrap;
  gap: 0.25rem;
  min-width: 0;
}

.mf-token-chip {
  background: color-mix(in srgb, var(--mf-blue) 16%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 34%, var(--mf-line));
  border-radius: 999px;
  color: var(--mf-ink);
  display: inline-flex;
  font-size: 0.78rem;
  font-weight: 700;
  max-width: 100%;
  overflow: hidden;
  padding: 0.12rem 0.45rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mf-token-chip-muted,
.mf-token-empty {
  color: var(--mf-muted);
}

.mf-token-empty {
  font-size: 0.88rem;
}

.mf-token-arrow {
  color: var(--mf-muted);
  flex: 0 0 auto;
  font-size: 1rem;
  line-height: 1;
}

.mf-token-panel {
  background: var(--mf-panel);
  border: 1px solid var(--mf-line-strong);
  border-radius: 6px;
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.32);
  display: none;
  left: 0;
  max-height: 16rem;
  min-width: 100%;
  overflow-y: auto;
  padding: 0.35rem;
  position: absolute;
  top: calc(100% + 0.25rem);
  z-index: 1090;
}

.mf-token-multiselect.is-open .mf-token-panel {
  display: grid;
  gap: 0.15rem;
}

.mf-token-option {
    align-items: center;
    border-radius: 5px;
    cursor: pointer;
    display: grid;
    gap: 0.35rem;
    grid-template-columns: 1.05rem minmax(0, 1fr);
    padding: 0.35rem 0.4rem;
}

.mf-token-option:hover,
.mf-token-option:focus-within {
  background: color-mix(in srgb, var(--mf-blue) 12%, transparent);
}

.mf-token-option input {
    justify-self: center;
    margin: 0;
}

.mf-token-option span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.mf-token-custom-area {
    border-top: 1px solid var(--mf-line);
    display: grid;
    gap: 0.35rem;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 0.45rem;
}

@media (max-width: 1200px) {
  .mf-field-card-top,
  .mf-field-card-bottom {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mf-field-card-top > *,
  .mf-field-card-bottom > * {
    grid-column: auto / span 1;
  }

  .mf-field-card-bottom::before,
  .mf-field-card-bottom::after {
    grid-column: 1 / -1;
  }

  .mf-validation-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mf-field-order {
    align-self: end;
    grid-column: 1 / -1;
  }
}

@media (max-width: 700px) {
  .mf-field-card-top,
  .mf-field-card-bottom {
    grid-template-columns: 1fr;
  }

  .mf-section-row {
    grid-template-columns: 1fr;
  }

  .mf-field-card-top > *,
  .mf-field-card-bottom > * {
    grid-column: 1 / -1;
  }

  .mf-condition-pair {
    grid-template-columns: 1fr;
  }

  .mf-validation-grid {
    grid-template-columns: 1fr;
  }
}

.mf-address-lookup-list {
  background: var(--mf-panel);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  box-shadow: 0 14px 32px rgba(15, 23, 42, 0.16);
  margin-top: 0.25rem;
  max-height: 16rem;
  overflow-y: auto;
  position: absolute;
  width: min(36rem, calc(100vw - 3rem));
  z-index: 30;
}

.mf-entity-address-edit {
  position: relative;
}

.mf-entity-address-edit summary {
  list-style: none;
}

.mf-entity-address-edit summary::-webkit-details-marker {
  display: none;
}

.mf-entity-address-edit-form {
  position: fixed;
  right: 1.25rem;
  bottom: 1.25rem;
  z-index: 80;
  display: grid;
  width: min(42rem, calc(100vw - 2rem));
  max-height: calc(100vh - 2.5rem);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.65rem;
  overflow-y: auto;
  padding: 0.9rem;
  text-align: left;
  background: var(--bs-body-bg);
  border: 1px solid var(--bs-border-color);
  border-radius: 0.5rem;
  box-shadow: 0 1rem 2rem rgba(15, 23, 42, 0.16);
}

.mf-entity-address-edit-form .col-span-2 {
  grid-column: span 2;
}

.mf-address-field-grid {
  display: grid;
  gap: 0.65rem;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  position: relative;
}

.mf-address-field-grid .col-span-2 {
  grid-column: span 2;
}

.mf-address-field-grid .col-span-3 {
  grid-column: span 3;
}

.mf-address-field-grid .col-span-4 {
  grid-column: span 4;
}

.mf-address-field-grid .col-span-8 {
  grid-column: span 8;
}

.mf-party-grid {
  background: rgba(15, 23, 42, 0.18);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  padding: 0.75rem;
}

.mf-party-grid-header,
.mf-party-grid-row {
  display: grid;
  gap: 0.55rem;
  grid-template-columns: minmax(14rem, 2fr) minmax(8rem, 1fr) minmax(8rem, 1fr) minmax(10rem, 1.4fr) auto;
}

.mf-party-grid-header {
  color: var(--mf-muted);
  font-size: 0.78rem;
  font-weight: 800;
  margin-bottom: 0.4rem;
  text-transform: uppercase;
}

.mf-party-grid-rows {
  display: grid;
  gap: 0.55rem;
}

.mf-party-grid-row {
  align-items: center;
}

.mf-party-grid-row .btn {
  white-space: nowrap;
}

.mf-party-grid-actions {
  display: flex;
  gap: 0.35rem;
  justify-content: flex-end;
}

.mf-party-grid-details {
  display: grid;
  gap: 0.5rem;
  grid-column: 1 / -1;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin-top: -0.15rem;
}

.mf-party-grid-details[hidden] {
  display: none;
}

.mf-party-grid-details > * {
  min-width: 0;
}

.mf-party-grid-details .mf-party-grid-wide {
  grid-column: span 2;
}

.mf-party-compliance-config {
  display: grid;
  gap: 0.75rem;
  grid-column: 1 / -1;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  order: 15;
}

.mf-party-compliance-config > :first-child {
  grid-column: 1 / -1;
}

.mf-party-grid-compliance {
  display: contents;
}

.mf-party-grid[data-party-compliance-split="true"] .mf-party-grid-compliance {
  background: color-mix(in srgb, var(--mf-panel) 88%, var(--mf-info));
  border: 1px solid var(--mf-line);
  border-radius: 6px;
  display: grid;
  gap: 0.5rem;
  grid-column: 1 / -1;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  padding: 0.75rem;
}

.mf-party-grid-compliance-heading,
.mf-party-grid-compliance .mf-party-grid-wide {
  grid-column: 1 / -1;
}

.mf-party-grid-compliance[hidden] {
  display: none !important;
}

@media (max-width: 900px) {
  .mf-party-compliance-config,
  .mf-party-grid[data-party-compliance-split="true"] .mf-party-grid-compliance {
    grid-template-columns: minmax(0, 1fr);
  }
}

.mf-relationship-grid-row,
[data-relationship-grid] .mf-party-grid-header {
  grid-template-columns: minmax(6rem, 0.55fr) minmax(11rem, 1.45fr) minmax(8rem, 0.9fr) minmax(8rem, 0.9fr) minmax(5rem, 0.4fr) minmax(5rem, auto);
  min-width: 0;
}

.mf-relationship-grid-row > *,
[data-relationship-grid] .mf-party-grid-header > * {
  min-width: 0;
}

.mf-relationship-grid-row [data-relationship-grid-remove] {
  justify-self: end;
}

.mf-relationship-grid-details {
  display: grid;
  gap: 0.55rem;
  grid-column: 1 / -1;
  grid-template-columns: minmax(9rem, 0.5fr) minmax(9rem, 0.5fr) minmax(14rem, 1fr);
}

.mf-relationship-grid-details .form-label {
  color: var(--mf-muted);
  display: block;
  font-size: 0.78rem;
  font-weight: 700;
  margin-bottom: 0.25rem;
}

.mf-relationship-grid-notes {
  grid-column: 1 / -1;
}

@media (max-width: 767.98px) {
  .mf-relationship-grid-details {
    grid-template-columns: 1fr;
  }
}

.mf-standard-list-grid {
  align-items: center;
  display: grid;
  gap: 0.65rem;
  grid-template-columns: minmax(5rem, 0.35fr) minmax(9rem, 1fr) minmax(9rem, 1fr) minmax(8rem, 0.75fr) minmax(7rem, 0.5fr);
  padding: 0.35rem 0;
}

.mf-standard-list-grid-head {
  color: var(--mf-muted);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
}

.mf-standard-list-card {
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  overflow: hidden;
}

.mf-standard-list-card-toggle {
  align-items: center;
  background: color-mix(in srgb, var(--mf-panel) 86%, var(--mf-bg));
  border: 0;
  color: var(--mf-ink);
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  padding: 0.85rem 1rem;
  text-align: left;
  width: 100%;
}

.mf-standard-list-card-toggle:hover,
.mf-standard-list-card-toggle:focus-visible {
  background: color-mix(in srgb, var(--mf-panel) 78%, var(--mf-accent));
}

.mf-standard-list-card-toggle span:first-child {
  display: grid;
  gap: 0.15rem;
  min-width: 0;
}

.mf-standard-list-card-toggle strong,
.mf-standard-list-card-toggle small {
  overflow-wrap: anywhere;
}

.mf-standard-list-card-meta {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  gap: 0.35rem;
  justify-content: flex-end;
}

.mf-standard-list-card-body {
  border-top: 1px solid var(--mf-line);
  padding: 1rem;
}

.mf-address-lookup-item {
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--mf-line);
  color: var(--mf-ink);
  display: block;
  padding: 0.65rem 0.8rem;
  text-align: left;
  width: 100%;
}

.mf-address-lookup-item:last-child {
  border-bottom: 0;
}

.mf-address-lookup-item:hover,
.mf-address-lookup-item:focus {
  background: var(--mf-panel-soft);
}

.mf-address-lookup-item span,
.mf-address-lookup-item small {
  display: block;
}

.mf-address-lookup-item small {
  color: var(--mf-muted);
  margin-top: 0.12rem;
}

.mf-pre {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  color: var(--mf-ink);
  font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;
  margin: 0;
  padding: 0.85rem;
  white-space: pre-wrap;
}

.mf-upload-drop {
  align-items: center;
  background: var(--mf-panel-soft);
  border: 1px dashed var(--mf-line);
  border-radius: 8px;
  color: var(--mf-muted);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  justify-content: center;
  margin-top: 1rem;
  min-height: 128px;
  padding: 1rem;
  text-align: center;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.mf-upload-drop input {
  height: 1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  width: 1px;
}

.mf-upload-drop span {
  color: var(--mf-ink);
  font-weight: 750;
}

.mf-upload-drop small {
  overflow-wrap: anywhere;
}

.mf-upload-drop:hover,
.mf-upload-drop.is-dragging {
  background: color-mix(in srgb, var(--mf-blue) 12%, var(--mf-panel));
  border-color: var(--mf-blue);
  color: var(--mf-blue);
}

.mf-form-address-list {
  display: grid;
  gap: 0.75rem;
}

.mf-form-address-rows {
  display: grid;
  gap: 0.75rem;
}

.mf-form-address-row {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  gap: 0.75rem;
  padding: 0.85rem;
}

.mf-form-address-row-top,
.mf-form-address-row-bottom {
  align-items: center;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(150px, 220px) minmax(0, 1fr) auto;
}

.mf-form-address-row-bottom {
  grid-template-columns: minmax(0, 1fr) auto;
}

.mf-form-address-primary {
  align-items: center;
  display: flex;
  gap: 0.35rem;
  margin: 0;
  white-space: nowrap;
}

.mf-import-actions {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 1rem;
}

.mf-import-actions .btn {
  min-height: 40px;
}

.mf-ocr-import {
  overflow: hidden;
}

.mf-ocr-status {
  align-self: flex-start;
  background: color-mix(in srgb, var(--mf-blue) 14%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 28%, var(--mf-line));
  border-radius: 999px;
  color: #175b9f;
  font-size: 0.875rem;
  font-weight: 750;
  padding: 0.35rem 0.75rem;
}

.mf-ocr-progress {
  height: 0.55rem;
}

.mf-ocr-preview {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  margin-top: 0.75rem;
  overflow: hidden;
}

.mf-ocr-preview img {
  display: block;
  max-height: 260px;
  object-fit: contain;
  width: 100%;
}

.mf-ocr-raw {
  font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;
  font-size: 0.9rem;
  resize: vertical;
}

.mf-convert-grid,
.mf-submit-grid {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
}

.mf-conflict-preview {
  position: sticky;
  top: 1rem;
}

.mf-conflict-radar {
  background: var(--mf-panel);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  box-shadow: 0 18px 46px rgba(24, 33, 47, 0.18);
  display: none;
  max-height: min(460px, calc(100vh - 2rem));
  overflow-y: auto;
  padding: 0.95rem;
  pointer-events: auto;
  position: fixed;
  transform: translateY(-4px);
  z-index: 1040;
}

.mf-conflict-radar.is-open {
  display: block;
}

.mf-conflict-radar::before {
  background: var(--mf-panel);
  border-left: 1px solid var(--mf-line);
  border-top: 1px solid var(--mf-line);
  content: "";
  height: 12px;
  left: 1.4rem;
  position: absolute;
  top: -7px;
  transform: rotate(45deg);
  width: 12px;
}

.mf-conflict-radar.is-sidecar::before {
  left: -7px;
  top: 1.35rem;
}

.mf-conflict-radar.is-below-picker {
  box-shadow: 0 16px 40px rgba(24, 33, 47, 0.16);
}

.mf-conflict-radar h2 {
  font-size: 1rem;
  margin-bottom: 0;
}

.mf-conflict-preview-status {
  align-self: flex-start;
  background: color-mix(in srgb, var(--mf-blue) 14%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 28%, var(--mf-line));
  border-radius: 999px;
  color: #175b9f;
  font-size: 0.78rem;
  font-weight: 800;
  padding: 0.3rem 0.65rem;
  white-space: nowrap;
}

.mf-conflict-search-progress {
  background: color-mix(in srgb, var(--mf-blue) 8%, var(--mf-panel-soft));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 28%, var(--mf-line));
  border-radius: 8px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
  padding: 1rem;
}

.mf-conflict-search-progress .progress {
  background: color-mix(in srgb, var(--mf-blue) 12%, var(--mf-panel));
  height: 0.65rem;
}

.mf-conflict-search-progress .progress-bar {
  background-color: var(--mf-blue);
  transition: width 0.55s ease;
}

.mf-conflict-preview-summary {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  color: var(--mf-muted);
  font-size: 0.9rem;
  padding: 0.75rem;
}

.mf-conflict-preview-stats {
  display: grid;
  gap: 0.45rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 0.75rem;
}

.mf-conflict-preview-stats span {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  color: var(--mf-muted);
  font-size: 0.78rem;
  font-weight: 750;
  padding: 0.45rem 0.55rem;
}

.mf-conflict-preview-results {
  display: grid;
  gap: 0.65rem;
  margin-top: 0.75rem;
}

.mf-conflict-preview-card {
  border: 1px solid var(--mf-line);
  border-left-width: 4px;
  border-radius: 8px;
  padding: 0.75rem;
}

.mf-conflict-preview-card strong,
.mf-conflict-preview-card span {
  color: var(--mf-ink);
}

.mf-conflict-preview-card small {
  color: var(--mf-muted);
  display: block;
  font-size: 0.78rem;
  line-height: 1.35;
  margin-top: 0.2rem;
}

.mf-conflict-preview-card p {
  color: var(--mf-muted);
  font-size: 0.86rem;
  margin: 0.45rem 0 0;
}

.mf-client-lookup,
.mf-user-lookup,
.mf-entity-lookup {
  position: relative;
}

.mf-client-lookup-list,
.mf-user-lookup-list,
.mf-entity-lookup-list {
  background: var(--mf-panel);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  box-shadow: 0 10px 28px rgba(24, 33, 47, 0.14);
  display: grid;
  gap: 0.25rem;
  margin-top: 0.4rem;
  max-height: 220px;
  overflow-y: auto;
  padding: 0.35rem;
}

.mf-client-lookup-item,
.mf-user-lookup-item,
.mf-entity-lookup-item {
  background: transparent;
  border: 0;
  border-radius: 6px;
  color: var(--mf-ink);
  display: grid;
  gap: 0.1rem;
  padding: 0.55rem 0.6rem;
  text-align: left;
  width: 100%;
}

.mf-client-lookup-item:hover,
.mf-client-lookup-item:focus,
.mf-user-lookup-item:hover,
.mf-user-lookup-item:focus,
.mf-entity-lookup-item:hover,
.mf-entity-lookup-item:focus {
  background: color-mix(in srgb, var(--mf-blue) 10%, var(--mf-panel-soft));
  outline: 0;
}

.mf-client-lookup-item strong,
.mf-user-lookup-item strong,
.mf-entity-lookup-item strong {
  color: var(--mf-ink);
  font-size: 0.92rem;
  line-height: 1.25;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mf-client-lookup-item small,
.mf-client-lookup-empty,
.mf-user-lookup-item small,
.mf-user-lookup-empty,
.mf-entity-lookup-item small,
.mf-entity-lookup-empty {
  color: var(--mf-muted);
  font-size: 0.78rem;
  line-height: 1.35;
}

.mf-client-lookup-empty,
.mf-user-lookup-empty,
.mf-entity-lookup-empty {
  padding: 0.65rem;
}

.mf-risk-critical {
  border-left-color: #b42318;
}

.mf-risk-high {
  border-left-color: #b7791f;
}

.mf-risk-medium {
  border-left-color: #2563a8;
}

.mf-risk-low {
  border-left-color: #647084;
}

.mf-result-filters {
  align-items: end;
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  gap: 0.55rem;
  grid-template-columns: repeat(3, minmax(10rem, 1fr)) auto;
  margin-bottom: 0;
  padding: 0.65rem;
}

.mf-result-filters .form-label {
  font-size: 0.78rem;
  font-weight: 750;
  margin-bottom: 0.2rem;
}

.mf-result-filter-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
}

.mf-panel-subtle {
  background: color-mix(in srgb, var(--mf-panel-soft) 84%, transparent);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  padding: 1rem;
}

.mf-smart-filter-list {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.mf-smart-filter-toggle {
  align-items: flex-start;
  background: color-mix(in srgb, var(--mf-panel) 82%, transparent);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: flex;
  gap: 0.65rem;
  padding: 0.75rem;
}

.mf-smart-filter-toggle input {
  margin-top: 0.2rem;
}

.mf-smart-filter-toggle small,
.mf-summary-label {
  color: var(--mf-muted);
  display: block;
}

.mf-smart-filter-flags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.25rem;
}

.mf-summary-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.mf-summary-grid > div {
  background: color-mix(in srgb, var(--mf-panel) 82%, transparent);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  padding: 0.75rem;
}

.mf-conflict-bulk-panel {
  background: color-mix(in srgb, var(--mf-blue) 4%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 18%, var(--mf-line));
  border-radius: 8px;
  padding: 0.75rem;
}

.mf-conflict-bulk-panel .form-label {
  font-size: 0.78rem;
  font-weight: 750;
  margin-bottom: 0.2rem;
}

.mf-conflict-bulk-panel .form-control,
.mf-conflict-bulk-panel .form-select {
  min-height: 2.2rem;
}

.mf-conflict-results-table {
  font-size: 0.92rem;
}

.mf-conflict-results-table > :not(caption) > * > * {
  padding: 0.55rem 0.6rem;
  vertical-align: top;
}

.mf-conflict-group-row td {
  background: color-mix(in srgb, var(--mf-blue) 9%, var(--mf-panel));
  border-top: 1px solid color-mix(in srgb, var(--mf-blue) 28%, var(--mf-line));
  border-bottom: 1px solid color-mix(in srgb, var(--mf-blue) 20%, var(--mf-line));
  padding: 0.45rem 0.6rem;
}

.mf-conflict-group-toggle {
  background: transparent;
  border: 0;
  color: var(--mf-ink);
  font: inherit;
  font-size: 0.84rem;
  font-weight: 800;
  padding: 0;
  text-align: left;
}

.mf-conflict-group-toggle:hover,
.mf-conflict-group-toggle:focus {
  color: var(--mf-blue);
  text-decoration: underline;
}

.d-none-conflict-group {
  display: none !important;
}

.mf-row-actions {
  border-top: 1px solid var(--mf-line);
  padding-top: 0.4rem;
}

.mf-row-actions summary {
  color: var(--mf-blue);
  cursor: pointer;
  font-size: 0.82rem;
  font-weight: 750;
}

.mf-row-action-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
}

.mf-document-actions {
  display: grid;
  gap: 0.45rem;
}

.mf-document-action {
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  background: color-mix(in srgb, var(--mf-panel-soft) 72%, transparent);
  overflow: hidden;
}

.mf-document-action summary {
  align-items: center;
  cursor: pointer;
  display: grid;
  gap: 0.45rem;
  grid-template-columns: auto minmax(0, 1fr);
  min-height: 2.45rem;
  padding: 0.45rem 0.7rem;
}

.mf-document-action summary::-webkit-details-marker,
.mf-document-action summary::marker {
  display: none;
}

.mf-document-action summary::before {
  color: var(--mf-blue);
  content: ">";
  font-size: 0.85rem;
  font-weight: 900;
  line-height: 1;
  transform-origin: center;
  transition: transform 0.12s ease;
}

.mf-document-action[open] summary::before {
  transform: rotate(90deg);
}

.mf-document-action summary span {
  color: var(--mf-ink);
  font-weight: 750;
}

.mf-document-action summary small {
  color: var(--mf-muted);
  display: block;
  font-size: 0.78rem;
  font-weight: 500;
  grid-column: 2;
  line-height: 1.2;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mf-document-action-form {
  border-top: 1px solid var(--mf-line);
  padding: 0.7rem;
}

.mf-document-action-form .form-label {
  font-size: 0.76rem;
  font-weight: 750;
  margin-bottom: 0.18rem;
}

@media (min-width: 768px) {
  .mf-document-action summary {
    grid-template-columns: auto auto minmax(0, 1fr);
  }

  .mf-document-action summary small {
    grid-column: 3;
  }
}

.mf-help-grid {
  align-items: start;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
}

.mf-help-toc {
  position: sticky;
  top: 1rem;
}

.mf-help-toc .nav-link {
  color: var(--mf-muted);
  padding: 0.25rem 0;
}

.mf-help-toc .nav-link:hover {
  color: var(--mf-blue);
}

.mf-help-content {
  display: grid;
  gap: 1rem;
}

.mf-help-content p,
.mf-help-content li {
  color: var(--mf-muted);
}

.mf-help-content strong {
  color: var(--mf-ink);
}

.mf-help-steps {
  color: var(--mf-muted);
  margin-bottom: 0;
  padding-left: 1.25rem;
}

.mf-form-grid {
  display: grid;
  gap: 0.85rem;
}

.mf-form-grid.two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mf-form-grid.three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mf-form-grid.four {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

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

.mf-grid-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.mf-timeline {
  display: grid;
  gap: 1rem;
}

.mf-timeline-item {
  border-left: 3px solid var(--mf-primary);
  padding-left: 1rem;
}

.mf-timeline-item h2 {
  font-size: 1.05rem;
  margin: 0.45rem 0 0.25rem;
}

.mf-timeline-item p {
  margin-bottom: 0;
}

.mf-workflow-builder-heading {
  align-items: end;
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  margin-bottom: 1rem;
}

.mf-workflow-builder-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
}

.mf-workflow-step-list,
.mf-template-editor,
.mf-template-list {
  display: grid;
  gap: 1rem;
}

.mf-workflow-step-card {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  padding: 1rem;
}

.mf-workflow-step-card.is-collapsed {
  background: color-mix(in srgb, var(--mf-panel-soft) 88%, var(--mf-panel));
}

.mf-workflow-map-editor .mf-workflow-step-card {
  display: none;
}

.mf-workflow-map-editor .mf-workflow-step-card.is-selected {
  display: block;
}

.mf-workflow-step-header {
  align-items: end;
  display: grid;
  gap: 0.85rem;
  grid-template-columns: auto 6.5rem minmax(16rem, 1fr) minmax(12rem, 16rem);
  margin-bottom: 1rem;
}

.mf-workflow-step-card.is-collapsed .mf-workflow-step-header {
  margin-bottom: 0;
}

.mf-workflow-step-controls {
  align-items: center;
  display: flex;
  gap: 0.35rem;
  padding-bottom: 0.05rem;
}

.mf-workflow-step-controls .btn {
  align-items: center;
  aspect-ratio: 1;
  display: inline-flex;
  justify-content: center;
  line-height: 1;
  min-height: 2.35rem;
  padding: 0;
  width: 2.35rem;
}

.mf-workflow-step-number .form-control {
  text-align: center;
}

.mf-workflow-step-grid {
  display: grid;
  gap: 0.85rem;
}

.mf-workflow-step-section {
  background: color-mix(in srgb, var(--mf-panel) 72%, transparent);
  border: 1px solid color-mix(in srgb, var(--mf-line) 82%, transparent);
  border-radius: 8px;
  padding: 0.85rem;
}

.mf-workflow-required-note {
  color: var(--mf-muted);
  font-size: 0.85rem;
  margin: 0.45rem 0 0;
}

.mf-required-publish {
  background: color-mix(in srgb, var(--mf-warning, #f4c542) 18%, transparent);
  border: 1px solid color-mix(in srgb, var(--mf-warning, #f4c542) 45%, var(--mf-line));
  border-radius: 999px;
  color: color-mix(in srgb, var(--mf-warning, #f4c542) 78%, var(--mf-ink));
  display: inline-flex;
  font-size: 0.68rem;
  font-weight: 850;
  line-height: 1;
  margin-left: 0.35rem;
  padding: 0.18rem 0.42rem;
  text-transform: uppercase;
  vertical-align: middle;
  white-space: nowrap;
}

.mf-workflow-step-draft-actions {
  align-items: center;
  background: color-mix(in srgb, var(--mf-blue) 6%, var(--mf-panel-soft));
  border: 1px dashed color-mix(in srgb, var(--mf-blue) 28%, var(--mf-line));
  border-radius: 8px;
  display: flex;
  gap: 0.5rem;
  justify-content: flex-end;
  padding: 0.75rem;
}

.mf-routing-rule-list {
  display: grid;
  gap: 0.6rem;
}

.mf-routing-rule-row {
  align-items: end;
  display: grid;
  gap: 0.65rem;
  grid-template-columns: minmax(5rem, 7rem) minmax(12rem, 1.35fr) minmax(9rem, 0.9fr) minmax(10rem, 1fr);
}

.mf-routing-rule-start {
  align-items: center;
  background: var(--mf-panel);
  border: 1px solid var(--mf-line);
  border-radius: 6px;
  color: var(--mf-muted);
  display: flex;
  font-weight: 800;
  min-height: 2.35rem;
  padding: 0.35rem 0.7rem;
}

.mf-section-label {
  color: var(--mf-muted);
  font-size: 0.75rem;
  font-weight: 850;
  letter-spacing: 0;
  margin-bottom: 0.65rem;
  text-transform: uppercase;
}

.mf-muted-section {
  opacity: 0.58;
}

.mf-template-card {
  align-items: start;
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: grid;
  gap: 1rem;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 1rem;
}

.mf-template-subject {
  color: var(--mf-ink);
  font-weight: 750;
}

.mf-token-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.mf-token-strip button {
  background: transparent;
  border: 0;
  padding: 0;
}

.mf-token-strip code {
  background: color-mix(in srgb, var(--mf-blue) 10%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 24%, var(--mf-line));
  border-radius: 999px;
  color: var(--mf-blue);
  cursor: pointer;
  padding: 0.25rem 0.55rem;
}

.mf-workflow-map-summary {
  display: grid;
  gap: 0.65rem 2rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
}

.mf-workflow-map-summary > div {
  background: transparent;
  border: 0;
  border-bottom: 1px solid color-mix(in srgb, var(--mf-line) 70%, transparent);
  min-width: 0;
  padding: 0 0 0.6rem;
}

.mf-workflow-map-summary dt,
.mf-workflow-step-detail dt {
  color: var(--mf-muted);
  display: block;
  font-size: 0.75rem;
  font-weight: 850;
  letter-spacing: 0;
  text-transform: uppercase;
}

.mf-workflow-map-summary dd {
  color: var(--mf-ink);
  font-weight: 800;
  margin-top: 0.2rem;
  margin-bottom: 0;
  overflow-wrap: anywhere;
}

.mf-workflow-map-summary dd code {
  color: var(--mf-gold);
  font-weight: 800;
}

.mf-workflow-map-scroll {
  align-items: center;
  container-type: inline-size;
  display: flex;
  min-height: clamp(12rem, 24vh, 17rem);
  overflow: visible;
  padding: 1rem 0 1.35rem;
}

.mf-workflow-map {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  justify-content: center;
  row-gap: 1.2rem;
  width: 100%;
}

.mf-workflow-map-anchor {
  align-items: center;
  background: color-mix(in srgb, var(--mf-blue) 12%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 32%, var(--mf-line));
  border-radius: 999px;
  color: var(--mf-blue);
  display: flex;
  flex: 0 0 clamp(4.25rem, 7vw, 5.4rem);
  font-weight: 850;
  justify-content: center;
  min-height: 4.25rem;
  padding: 0.6rem;
  text-align: center;
}

.mf-workflow-map-anchor.is-end {
  background: color-mix(in srgb, var(--mf-green) 12%, var(--mf-panel));
  border-color: color-mix(in srgb, var(--mf-green) 32%, var(--mf-line));
  color: var(--mf-green);
}

.mf-workflow-map-connector {
  align-self: center;
  background: var(--mf-line);
  flex: 1 1 clamp(1rem, 3vw, 2.5rem);
  height: 2px;
  max-width: 2.5rem;
  min-width: 1rem;
  position: relative;
}

.mf-workflow-map-connector::after {
  border-bottom: 0.35rem solid transparent;
  border-left: 0.5rem solid var(--mf-line);
  border-top: 0.35rem solid transparent;
  content: "";
  position: absolute;
  right: -0.1rem;
  top: 50%;
  transform: translateY(-50%);
}

.mf-workflow-map-add-step {
  align-items: center;
  align-self: center;
  appearance: none;
  background: color-mix(in srgb, var(--mf-blue) 13%, var(--mf-panel-soft));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 48%, var(--mf-line));
  border-radius: 999px;
  box-shadow: 0 0.45rem 1rem color-mix(in srgb, #000 13%, transparent);
  color: var(--mf-blue);
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 2.15rem;
  font: inherit;
  font-size: 1.28rem;
  font-weight: 900;
  height: 2.15rem;
  justify-content: center;
  line-height: 1;
  padding: 0 0 0.08rem;
  transition: background-color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
  width: 2.15rem;
}

.mf-workflow-map-add-step:hover,
.mf-workflow-map-add-step:focus-visible {
  background: color-mix(in srgb, var(--mf-blue) 20%, var(--mf-panel-soft));
  border-color: var(--mf-blue);
  box-shadow: 0 0 0 0.18rem color-mix(in srgb, var(--mf-blue) 20%, transparent),
    0 0.55rem 1.15rem color-mix(in srgb, #000 18%, transparent);
  outline: none;
  transform: translateY(-1px);
}

.mf-workflow-map-node {
  appearance: none;
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-left: 4px solid var(--mf-blue);
  border-radius: 7px;
  box-shadow: 0 0.65rem 1.4rem color-mix(in srgb, #000 12%, transparent);
  color: var(--mf-ink);
  cursor: pointer;
  display: grid;
  flex: 1 1 clamp(8.75rem, 14vw, 11rem);
  font: inherit;
  gap: 0.35rem;
  min-height: 6.15rem;
  min-width: 8.75rem;
  max-width: 11.75rem;
  padding: 0.58rem 0.65rem;
  position: relative;
  text-align: left;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.mf-workflow-map-node:hover,
.mf-workflow-map-node:focus-visible,
.mf-workflow-map-node.is-active {
  border-color: color-mix(in srgb, var(--mf-blue) 55%, var(--mf-line));
  box-shadow: 0 0 0 0.18rem color-mix(in srgb, var(--mf-blue) 20%, transparent),
    0 0.7rem 1.6rem color-mix(in srgb, #000 18%, transparent);
  outline: none;
  transform: translateY(-1px);
}

.mf-workflow-map-node.is-approval {
  clip-path: polygon(0.45rem 0, 100% 0, calc(100% - 0.45rem) 100%, 0 100%);
}

.mf-workflow-map-node.is-notification {
  background: color-mix(in srgb, var(--mf-gold) 9%, var(--mf-panel-soft));
  border-left-color: var(--mf-gold);
  border-radius: 7px;
  clip-path: polygon(
    0 0,
    100% 0,
    100% 100%,
    88% 91%,
    76% 88%,
    65% 94%,
    53% 100%,
    40% 97%,
    27% 91%,
    13% 93%,
    0 86%
  );
  flex: 0 1 clamp(6.9rem, 10vw, 8.25rem);
  font-size: 0.88rem;
  gap: 0.24rem;
  margin-bottom: 0.15rem;
  max-width: 8.7rem;
  min-height: 4.7rem;
  min-width: 6.9rem;
  padding: 0.48rem 0.56rem 0.82rem;
}

.mf-workflow-map-node.is-notification .mf-workflow-map-node-header {
  align-items: start;
  flex-direction: column;
  gap: 0.18rem;
}

.mf-workflow-map-node.is-notification h3 {
  font-size: 0.78rem;
  line-height: 1.12;
}

.mf-workflow-map-node.is-notification p {
  font-size: 0.66rem;
}

.mf-workflow-map-node.is-notification .badge {
  font-size: 0.58rem;
  padding: 0.18rem 0.32rem;
}

.mf-workflow-map-node.is-notification .mf-workflow-outcome-pill {
  font-size: 0.58rem;
  padding-bottom: 0.16rem;
  padding-top: 0.16rem;
}

.mf-workflow-map-node.is-notification::after {
  display: none;
}

.mf-workflow-map-node.is-decision {
  align-content: center;
  aspect-ratio: 1;
  border-left-color: var(--mf-gold);
  clip-path: polygon(50% 0, 100% 50%, 50% 100%, 0 50%);
  gap: 0.18rem;
  justify-items: center;
  max-width: 8.75rem;
  min-height: 8.75rem;
  min-width: 8.75rem;
  padding: 1.1rem;
  text-align: center;
}

.mf-workflow-map-node.is-decision .mf-workflow-map-node-header,
.mf-workflow-map-node.is-decision .mf-workflow-map-outcomes {
  display: none;
}

.mf-workflow-map-node.is-decision h3 {
  font-size: 0.88rem;
  font-weight: 900;
  line-height: 1.05;
}

.mf-workflow-map-node.is-decision p {
  color: var(--mf-ink);
  display: -webkit-box;
  font-size: 0.64rem;
  line-height: 1.1;
  max-width: 4.7rem;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.mf-workflow-map-node-header {
  align-items: center;
  display: flex;
  gap: 0.5rem;
  justify-content: space-between;
}

.mf-workflow-map-node h3 {
  font-size: 0.9rem;
  line-height: 1.2;
  margin: 0;
}

.mf-workflow-map-node p {
  color: var(--mf-muted);
  font-size: 0.76rem;
  margin: 0;
}

.mf-forgestrator-map-shell {
  background: color-mix(in srgb, var(--mf-panel-soft) 82%, var(--mf-panel));
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  padding: 0.85rem 1rem 1rem;
}

.mf-forgestrator-map-shell .mf-workflow-map-node.is-decision {
  min-height: 8.75rem;
}

.mf-forgestrator-dependency {
  color: var(--mf-blue);
  display: -webkit-box;
  font-size: 0.68rem;
  font-weight: 750;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.mf-forgestrator-editors {
  display: grid;
}

.mf-forgestrator-editor {
  background: color-mix(in srgb, var(--mf-panel-soft) 88%, var(--mf-panel));
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: none;
  padding: 1rem;
}

.mf-forgestrator-editor.is-active {
  display: block;
}

.mf-forgestrator-dependency-list {
  display: grid;
  gap: 0.4rem;
  max-height: 11rem;
  overflow-y: auto;
  padding: 0.25rem;
}

.mf-workflow-map-outcomes {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3rem;
}

.mf-workflow-outcome-pill {
  background: color-mix(in srgb, var(--mf-blue) 10%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 24%, var(--mf-line));
  color: var(--mf-ink);
  display: inline-flex;
  gap: 0.25rem;
  font-size: 0.7rem;
  font-weight: 750;
  line-height: 1.15;
  max-width: 100%;
  padding: 0.22rem 0.52rem 0.22rem 0.65rem;
}

.mf-workflow-outcome-pill.is-advance {
  clip-path: polygon(0 0, calc(100% - 0.55rem) 0, 100% 50%, calc(100% - 0.55rem) 100%, 0 100%, 0.4rem 50%);
}

.mf-workflow-outcome-pill.is-return {
  background: color-mix(in srgb, var(--mf-gold) 14%, var(--mf-panel));
  border-color: color-mix(in srgb, var(--mf-gold) 34%, var(--mf-line));
  clip-path: polygon(0.55rem 0, 100% 0, calc(100% - 0.4rem) 50%, 100% 100%, 0.55rem 100%, 0 50%);
  color: color-mix(in srgb, var(--mf-gold) 76%, var(--mf-ink));
  padding-left: 0.95rem;
}

.mf-workflow-outcome-pill.is-complete {
  background: color-mix(in srgb, var(--mf-green) 14%, var(--mf-panel));
  border-color: color-mix(in srgb, var(--mf-green) 34%, var(--mf-line));
  border-radius: 999px;
  color: color-mix(in srgb, var(--mf-green) 76%, var(--mf-ink));
}

.mf-workflow-outcome-pill small {
  color: var(--mf-muted);
  font-weight: 700;
}

.mf-workflow-step-details {
  margin-top: 0.9rem;
}

.mf-workflow-step-detail {
  background: color-mix(in srgb, var(--mf-panel-soft) 88%, var(--mf-panel));
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  display: none;
  gap: 0.75rem;
  padding: 0.85rem;
}

.mf-workflow-step-detail.is-active {
  display: grid;
}

.mf-workflow-step-detail h3 {
  font-size: 1rem;
  margin: 0;
}

.mf-workflow-step-detail dl {
  display: grid;
  gap: 0.7rem;
  grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
  margin: 0;
}

.mf-workflow-step-detail dd {
  margin: 0.1rem 0 0;
  overflow-wrap: anywhere;
}

.mf-workflow-step-detail-outcomes {
  border-top: 1px solid var(--mf-line);
  display: grid;
  gap: 0.55rem;
  padding-top: 0.7rem;
}

.mf-workflow-step-detail-outcomes > div {
  align-items: center;
  display: grid;
  gap: 0.6rem;
  grid-template-columns: auto minmax(0, 1fr) minmax(8rem, auto);
}

.mf-workflow-step-detail-outcomes strong {
  font-size: 0.9rem;
  overflow-wrap: anywhere;
}

.mf-workflow-step-detail-outcomes small {
  color: var(--mf-muted);
}

.mf-workflow-path-list {
  display: grid;
  gap: 0.6rem;
}

.mf-workflow-path-row {
  align-items: center;
  appearance: none;
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  color: var(--mf-ink);
  display: grid;
  font: inherit;
  gap: 0.75rem;
  grid-template-columns: minmax(14rem, 1fr) auto minmax(12rem, 1fr) minmax(10rem, 0.8fr);
  padding: 0.75rem;
  text-align: left;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
  width: 100%;
}

.mf-workflow-path-list-clickable .mf-workflow-path-row {
  cursor: pointer;
}

.mf-workflow-path-list-clickable .mf-workflow-path-row:hover,
.mf-workflow-path-list-clickable .mf-workflow-path-row:focus-visible,
.mf-workflow-path-list-clickable .mf-workflow-path-row.is-active {
  border-color: color-mix(in srgb, var(--mf-blue) 45%, var(--mf-line));
  box-shadow: 0 0 0 0.16rem color-mix(in srgb, var(--mf-blue) 16%, transparent);
  outline: none;
}

.mf-workflow-path-list-clickable .mf-workflow-path-row.is-active {
  background: color-mix(in srgb, var(--mf-blue) 8%, var(--mf-panel-soft));
}

.mf-workflow-path-outcomes {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  min-width: 0;
}

.mf-workflow-path-row small {
  color: var(--mf-muted);
  display: block;
}

.mf-note-thread {
  display: grid;
  gap: 0.85rem;
  max-height: 27rem;
  overflow-y: auto;
  padding-right: 0.15rem;
}

.mf-note-bubble {
  align-items: start;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 2.25rem minmax(0, 1fr);
}

.mf-note-avatar {
  align-items: center;
  background: color-mix(in srgb, var(--mf-blue) 14%, var(--mf-panel));
  border: 1px solid color-mix(in srgb, var(--mf-blue) 28%, var(--mf-line));
  border-radius: 999px;
  color: var(--mf-blue);
  display: inline-flex;
  font-size: 0.78rem;
  font-weight: 850;
  height: 2.25rem;
  justify-content: center;
  width: 2.25rem;
}

.mf-note-body {
  background: var(--mf-panel-soft);
  border: 1px solid var(--mf-line);
  border-radius: 8px;
  padding: 0.85rem;
}

.mf-note-body p {
  color: var(--mf-ink);
  margin: 0.45rem 0 0;
  white-space: pre-wrap;
}

.mf-note-older {
  border-top: 1px solid var(--mf-line);
  padding-top: 0.65rem;
}

.mf-note-older summary {
  color: var(--mf-blue);
  cursor: pointer;
  font-weight: 750;
}

code {
  color: #7a3b0c;
}

.mf-invite-timeline {
  display: grid;
  gap: 0.35rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mf-invite-step {
  border: 1px solid #d8e0ea;
  border-radius: 999px;
  color: #6b7280;
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1.1;
  padding: 0.35rem 0.45rem;
  text-align: center;
}

.mf-invite-step.is-done {
  background: #e8f5ee;
  border-color: #9ed7b5;
  color: #17643a;
}

@media (max-width: 1100px) {
  .mf-dashboard-grid {
    grid-template-columns: 1fr;
  }

  .mf-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .mf-submissions-table-wrap {
    overflow-x: visible;
  }

  .mf-submissions-table,
  .mf-submissions-table tbody {
    display: block;
  }

  .mf-submissions-table thead {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }

  .mf-submissions-table tbody {
    display: grid;
    gap: 0.75rem;
  }

  .mf-submissions-table tbody tr {
    background: color-mix(in srgb, var(--mf-panel-soft) 72%, transparent);
    border: 1px solid var(--mf-line);
    border-radius: 8px;
    display: grid;
    padding: 0.45rem 0;
  }

  .mf-submissions-table tbody td {
    align-items: start;
    border: 0;
    display: grid;
    gap: 0.75rem;
    grid-template-columns: minmax(7rem, 0.42fr) minmax(0, 1fr);
    padding: 0.45rem 0.7rem;
  }

  .mf-submissions-table tbody td[hidden] {
    display: none;
  }

  .mf-submissions-table tbody td::before {
    color: var(--mf-muted);
    content: attr(data-column-label);
    font-size: 0.75rem;
    font-weight: 800;
    text-transform: uppercase;
  }

  .mf-hero,
  .mf-page-heading {
    align-items: start;
    flex-direction: column;
  }

  .mf-heading-actions,
  .mf-list-search {
    justify-content: flex-start;
    width: 100%;
  }

  .mf-list-search .form-control {
    flex: 1 1 auto;
    min-width: 0;
  }

  .mf-list-filter-bar {
    grid-template-columns: 1fr;
  }

  .mf-list-filter-actions {
    flex-wrap: wrap;
  }

  .mf-hero-metrics {
    align-items: stretch;
    width: 100%;
  }

  .mf-hero-side {
    align-items: stretch;
    width: 100%;
  }

  .mf-stat-grid {
    grid-template-columns: 1fr;
  }

  .mf-donut-wrap {
    grid-template-columns: 1fr;
  }

  .mf-import-actions {
    grid-template-columns: 1fr;
  }

  .mf-help-grid {
    grid-template-columns: 1fr;
  }

  .mf-form-grid.two,
  .mf-form-grid.three,
  .mf-form-grid.four,
  .mf-routing-rule-row,
  .mf-workflow-map-summary,
  .mf-workflow-path-row,
  .mf-workflow-step-header,
  .mf-template-card {
    grid-template-columns: 1fr;
  }

  .mf-workflow-map-scroll {
    display: block;
    min-height: 0;
    overflow-x: visible;
  }

  .mf-workflow-map {
    align-items: stretch;
    display: grid;
    min-width: 0;
    width: 100%;
  }

  .mf-workflow-map-anchor,
  .mf-workflow-map-node {
    max-width: none;
    min-width: 0;
    width: 100%;
  }

  .mf-workflow-map-anchor {
    flex-basis: auto;
    min-height: 3.75rem;
  }

  .mf-workflow-map-node {
    flex-basis: auto;
  }

  .mf-workflow-map-node.is-approval,
  .mf-workflow-map-node.is-decision {
    clip-path: none;
    min-height: 0;
    padding-right: 0.7rem;
  }

  .mf-workflow-map-node.is-notification {
    margin-bottom: 0.25rem;
    min-height: 4.65rem;
    padding-bottom: 0.85rem;
  }

  .mf-workflow-map-add-step {
    justify-self: center;
  }

  .mf-workflow-step-detail-outcomes > div {
    align-items: start;
    grid-template-columns: 1fr;
  }

  .mf-workflow-map-connector {
    height: 1.75rem;
    justify-self: center;
    width: 2px;
  }

  .mf-workflow-map-connector::after {
    border-bottom: 0;
    border-left: 0.35rem solid transparent;
    border-right: 0.35rem solid transparent;
    border-top: 0.5rem solid var(--mf-line);
    bottom: -0.1rem;
    right: 50%;
    top: auto;
    transform: translateX(50%);
  }

  .mf-workflow-builder-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .mf-grid-2 {
    grid-template-columns: 1fr;
  }

  .mf-workflow-builder-actions {
    justify-content: flex-start;
  }

  .mf-submission-lifecycle-header {
    flex-direction: column;
  }

  .mf-lifecycle-track {
    grid-template-columns: 1fr;
  }

  .mf-lifecycle-step {
    column-gap: 0.7rem;
    grid-template-columns: 2.35rem minmax(0, 1fr);
    grid-template-rows: auto auto;
    min-height: auto;
    padding: 0 0 1rem 0;
  }

  .mf-lifecycle-marker {
    grid-row: 1 / 3;
  }

  .mf-lifecycle-step strong,
  .mf-lifecycle-step span {
    grid-column: 2;
  }

  .mf-lifecycle-step::after {
    bottom: -0.35rem;
    height: auto;
    left: 1.1rem;
    right: auto;
    top: 2.35rem;
    width: 3px;
  }

  .mf-share-panel,
  .mf-share-actions,
  .mf-client-intake-hero,
  .mf-client-assurance-grid,
  .mf-client-submitted-steps {
    grid-template-columns: 1fr;
  }

  .mf-external-header-inner,
  .mf-external-footer-inner,
  .mf-client-submit-row {
    align-items: start;
    flex-direction: column;
  }

  .mf-external-form-shell {
    padding-top: 1.35rem;
  }

  .mf-external-brand {
    max-width: 100%;
  }

  .mf-form-map {
    min-width: 100%;
  }

  .mf-form-map-node {
    grid-template-columns: 2rem minmax(9rem, 1fr);
    min-width: 14rem;
  }

  .mf-share-tracking {
    white-space: normal;
  }

  .mf-submission-context-grid,
  .mf-answer-grid,
  .mf-form-field-panel,
  .mf-address-field-grid,
  .mf-party-grid-header,
  .mf-party-grid-row,
  .mf-party-grid-details,
  .mf-relationship-grid-row,
  .mf-standard-list-grid,
  .mf-submission-workspace,
  .mf-condition-pair {
    grid-template-columns: 1fr;
  }

  .mf-party-grid-header {
    display: none;
  }

  .mf-relationship-grid-notes {
    grid-column: 1;
  }

  .mf-party-grid-details,
  .mf-party-grid-details .mf-party-grid-wide {
    grid-column: 1;
  }

  .mf-workflow-rail {
    position: static;
  }

  .mf-approval-summary-cell {
    min-width: 0;
  }

  .mf-change-diff-row {
    grid-template-columns: 1fr;
  }

  .mf-address-field-grid .col-span-2,
  .mf-address-field-grid .col-span-3,
  .mf-address-field-grid .col-span-4,
  .mf-address-field-grid .col-span-8 {
    grid-column: span 1;
  }

  .mf-convert-grid,
  .mf-submit-grid {
    grid-template-columns: 1fr;
  }

  .mf-result-filters {
    grid-template-columns: 1fr;
  }

  .mf-process-overview,
  .mf-inline-editor,
  .mf-process-template,
  .mf-section-heading-row {
    grid-template-columns: 1fr;
  }

  .mf-section-heading-row {
    align-items: stretch;
    display: grid;
  }

  .mf-pending-entity-main-alert {
    align-items: stretch;
    flex-direction: column;
  }

  .mf-result-filter-actions {
    justify-content: flex-start;
  }

  .mf-conflict-preview {
    position: static;
  }

  .mf-conflict-radar {
    box-shadow: none;
    margin-top: 0.85rem;
    max-height: none;
    overflow: visible;
    position: static;
    transform: none;
    width: auto;
  }

  .mf-conflict-radar::before {
    display: none;
  }

  .mf-help-toc {
    position: static;
  }
}

.mf-column-config {
  margin: 0 0 0.85rem;
  max-width: 28rem;
  position: relative;
}

.mf-column-config summary {
  align-items: center;
  background: var(--mf-panel);
  border: 1px solid var(--mf-line);
  border-radius: 0.45rem;
  color: var(--mf-text);
  cursor: pointer;
  display: inline-flex;
  font-weight: 700;
  gap: 0.55rem;
  min-height: 2.25rem;
  padding: 0.42rem 0.72rem;
}

.mf-column-config[open] summary {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.mf-column-count {
  background: color-mix(in srgb, var(--mf-blue) 16%, transparent);
  border: 1px solid color-mix(in srgb, var(--mf-blue) 42%, transparent);
  border-radius: 999px;
  color: var(--mf-blue);
  font-size: 0.78rem;
  line-height: 1;
  padding: 0.2rem 0.45rem;
}

.mf-column-config-menu {
  background: var(--mf-panel);
  border: 1px solid var(--mf-line);
  border-radius: 0 0 0.45rem 0.45rem;
  box-shadow: 0 1rem 2.75rem rgba(15, 23, 42, 0.16);
  display: grid;
  gap: 0.65rem;
  left: 0;
  max-width: min(28rem, calc(100vw - 2rem));
  padding: 0.75rem;
  position: absolute;
  top: calc(100% - 1px);
  width: 100%;
  z-index: 20;
}

.mf-column-options {
  display: grid;
  gap: 0.38rem;
  max-height: 22rem;
  overflow: auto;
}

.mf-column-option {
  align-items: center;
  display: grid;
  gap: 0.55rem;
  grid-template-columns: auto minmax(0, 1fr) auto;
}

.mf-column-option[draggable="true"] {
  cursor: grab;
}

.mf-column-option.is-dragging {
  opacity: 0.55;
}

.mf-column-option.is-drop-target {
  outline: 2px solid var(--mf-blue);
  outline-offset: 2px;
}

.mf-column-option span:nth-child(2) {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.mf-column-order-actions {
  display: inline-flex;
  gap: 0.25rem;
}

.mf-column-order-actions .btn {
  align-items: center;
  display: inline-flex;
  height: 1.85rem;
  justify-content: center;
  padding: 0;
  width: 1.85rem;
}

.mf-column-limit {
  color: var(--mf-muted);
  font-size: 0.84rem;
}

.mf-desktop-widget {
  position: fixed;
  right: 0;
  top: 42%;
  z-index: 1030;
}

.mf-desktop-widget-tab {
  background: var(--mf-blue);
  border: 0;
  border-radius: 0.5rem 0 0 0.5rem;
  box-shadow: 0 0.75rem 2rem rgba(15, 23, 42, 0.18);
  color: #fff;
  font-weight: 700;
  padding: 0.65rem 0.55rem;
  writing-mode: vertical-rl;
}

.mf-desktop-widget-panel {
  background: var(--mf-panel);
  border: 1px solid var(--mf-line);
  border-radius: 0.5rem 0 0 0.5rem;
  box-shadow: 0 1rem 2.75rem rgba(15, 23, 42, 0.22);
  margin-top: 0.5rem;
  padding: 0.85rem;
  width: min(18rem, calc(100vw - 2rem));
}

.mf-desktop-widget-header {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 0.75rem;
}

.mf-desktop-widget-header span {
  background: color-mix(in srgb, var(--mf-success) 16%, transparent);
  border: 1px solid color-mix(in srgb, var(--mf-success) 42%, transparent);
  border-radius: 999px;
  color: var(--mf-success);
  font-size: 0.76rem;
  font-weight: 700;
  padding: 0.15rem 0.45rem;
}

.mf-desktop-widget-header span.is-offline {
  background: color-mix(in srgb, var(--mf-warning) 20%, transparent);
  border-color: color-mix(in srgb, var(--mf-warning) 46%, transparent);
  color: var(--mf-warning);
}

@media (max-width: 991.98px) {
  .mf-form-address-row-top,
  .mf-form-address-row-bottom {
    grid-template-columns: 1fr;
  }

  .mf-forms-table-wrap {
    overflow-x: auto;
    overflow-y: visible;
  }
}

.mf-flight-recorder {
  display: grid;
  gap: 0;
  list-style: none;
  margin: 0;
  padding: 0;
}

.mf-flight-recorder li {
  align-items: start;
  border-left: 2px solid var(--mf-line);
  display: grid;
  gap: 0.75rem;
  grid-template-columns: 5rem 1fr;
  padding: 0 0 1.25rem 1rem;
}

.mf-flight-recorder strong,
.mf-flight-recorder small { display: block; }
.mf-flight-recorder p { margin: 0.35rem 0 0; }

.mf-context-list > div {
  border-bottom: 1px solid var(--mf-line);
  padding: 0.6rem 0;
}
.mf-context-list dd { margin: 0.2rem 0 0; overflow-wrap: anywhere; }
.mf-context-list small { color: var(--mf-muted); display: block; }

.mf-relationship-map {
  align-items: center;
  display: grid;
  gap: 2rem;
  grid-template-columns: minmax(12rem, 0.7fr) minmax(0, 2fr);
}
.mf-relationship-map-center {
  border: 2px solid var(--mf-blue);
  border-radius: 0.5rem;
  padding: 1rem;
  position: relative;
}
.mf-relationship-map-center::after {
  border-top: 2px solid var(--mf-line);
  content: "";
  left: 100%;
  position: absolute;
  top: 50%;
  width: 2rem;
}
.mf-relationship-map-center span,
.mf-relationship-map-center strong,
.mf-relationship-map-node strong,
.mf-relationship-map-node small { display: block; }
.mf-relationship-map-center span { color: var(--mf-muted); font-size: 0.75rem; font-weight: 700; text-transform: uppercase; }
.mf-relationship-map-nodes { display: grid; gap: 0.65rem; grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr)); }
.mf-relationship-map-node { background: transparent; border: 1px solid var(--mf-line); border-radius: 0.4rem; color: inherit; padding: 0.75rem; text-decoration: none; width: 100%; }
.mf-relationship-map-node:hover { border-color: var(--mf-blue); color: inherit; }
.mf-relationship-map-node.is-selected { border-color: var(--mf-blue); box-shadow: 0 0 0 1px var(--mf-blue); }
.mf-relationship-map-node small { color: var(--mf-muted); margin-top: 0.3rem; }

@media (max-width: 767.98px) {
  .mf-relationship-map { grid-template-columns: 1fr; }
  .mf-relationship-map-center::after { display: none; }
  .mf-flight-recorder li { grid-template-columns: 1fr; }
}
/* Central support portal */
.support-body { min-height: 100vh; background: #0d141f; color: #e8edf5; }
.support-header { border-bottom: 1px solid #2b3b50; background: #081421; position: sticky; top: 0; z-index: 20; }
.support-nav { min-height: 64px; max-width: 1180px; margin: 0 auto; padding: 0 24px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.support-brand { color: #fff; display: flex; align-items: center; gap: 10px; font-size: 1.05rem; text-decoration: none; white-space: nowrap; }
.support-brand strong { color: #75adff; }
.support-links { display: flex; align-items: center; gap: 20px; }
.support-links a { color: #c3cfde; text-decoration: none; }
.support-links a:hover { color: #fff; }
.support-links form { margin: 0; }
.support-user { color: #93a4b8; }
.support-main { max-width: 1180px; min-height: calc(100vh - 128px); margin: 0 auto; padding: 44px 24px 72px; }
.support-footer { max-width: 1180px; margin: 0 auto; padding: 24px; border-top: 1px solid #263549; display: flex; justify-content: space-between; color: #8392a5; }
.support-footer a { color: #75adff; }
.support-intro { padding: 24px 0 38px; max-width: 860px; }
.support-intro h1, .support-page-heading h1, .support-conversation h1, .support-article h1 { color: #f5f7fb; font-weight: 760; letter-spacing: 0; }
.support-intro h1 { font-size: clamp(2.25rem, 5vw, 4.25rem); margin: 4px 0 8px; }
.support-intro > p:not(.mf-eyebrow) { color: #b6c2d1; font-size: 1.08rem; }
.support-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; margin-top: 26px; }
.support-search input, .support-filter input, .support-filter select, .support-form input, .support-form select, .support-form textarea { width: 100%; min-height: 44px; border: 1px solid #39506c; border-radius: 5px; background: #111d2c; color: #f3f6fa; padding: 10px 12px; }
.support-search input { min-height: 52px; font-size: 1rem; }
.support-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block: 1px solid #293a50; margin-bottom: 48px; }
.support-action { display: flex; flex-direction: column; gap: 5px; padding: 24px 22px; color: #dce7f5; text-decoration: none; border-right: 1px solid #293a50; }
.support-action:last-child { border-right: 0; }
.support-action:hover { background: #131f2e; color: #fff; }
.support-action strong { color: #77afff; }
.support-action span, .support-meta { color: #91a0b3; font-size: .86rem; }
.support-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
.support-section-heading, .support-page-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 18px; }
.support-section-heading h2, .support-page-heading h1 { margin: 0; }
.support-section-heading a { color: #75adff; }
.support-page-heading { align-items: center; margin-bottom: 30px; }
.support-page-heading p { color: #aebacc; margin: 6px 0 0; }
.support-list { border-top: 1px solid #2c4058; }
.support-list-item { display: flex; flex-direction: column; gap: 6px; padding: 18px 4px; border-bottom: 1px solid #24364c; color: #b5c2d2; text-decoration: none; }
.support-list-item strong { color: #edf3fa; font-size: 1.03rem; }
.support-list-item:hover strong { color: #75adff; }
.support-category { color: #efbc4c; font-size: .72rem; font-weight: 700; text-transform: uppercase; }
.support-faq-strip { margin-top: 52px; }
.support-faq-strip > a { display: block; padding: 13px 0; color: #d9e5f3; border-top: 1px solid #26394f; }
.support-filter { display: grid; grid-template-columns: minmax(0, 1fr) 260px auto; gap: 10px; margin-bottom: 24px; }
.support-empty { color: #96a7ba; padding: 28px 4px; }
.support-form { max-width: 860px; display: grid; gap: 8px; padding: 24px; border: 1px solid #31445d; background: #111c2b; }
.support-form label { color: #dbe6f2; font-weight: 650; margin-top: 8px; }
.support-form-actions, .support-conversation-tools { display: flex; align-items: center; gap: 10px; margin-top: 14px; }
.support-form-actions form { margin: 0; }
.support-check { display: flex; align-items: center; gap: 9px; }
.support-check input { width: auto; min-height: 0; }
.support-conversation, .support-article { max-width: 920px; }
.support-conversation header, .support-article header { border-bottom: 1px solid #2b3d54; padding-bottom: 22px; }
.support-post { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 14px; padding: 24px 0; border-bottom: 1px solid #263950; }
.support-post.accepted { border-left: 3px solid #35b978; padding-left: 16px; }
.support-avatar { width: 38px; height: 38px; border-radius: 50%; background: #1c5fae; display: grid; place-items: center; color: #fff; font-weight: 750; }
.support-post-body, .support-article-body { white-space: pre-wrap; color: #d6e0ec; line-height: 1.65; margin: 12px 0; }
.support-replies { max-width: 920px; margin-top: 38px; }
.support-replies h2 { font-size: 1.2rem; }
.support-reply-form { margin-top: 34px; }
.support-article-summary { color: #aebdce; font-size: 1.08rem; }
.support-article-body { font-size: 1.02rem; padding: 28px 0; }
.support-helpful { max-width: 920px; border-top: 1px solid #2c4057; padding: 20px 0; display: flex; align-items: center; gap: 16px; }
.support-helpful span { color: #9cabbc; flex: 1; }
.support-faq .accordion-item { background: #111c2a; border-color: #30445d; color: #d8e2ed; }
.support-faq .accordion-button { background: #111c2a; color: #edf3fa; }
.support-faq .accordion-button:not(.collapsed) { background: #10294a; color: #fff; }
.support-review { padding: 22px 4px; border-bottom: 1px solid #2b3f57; }
.support-review h2 { margin: 6px 0; font-size: 1.25rem; }
.support-review details { margin: 14px 0; }
@media (max-width: 760px) {
    .support-nav { align-items: flex-start; padding-block: 14px; }
    .support-links { gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
    .support-links > a:not(.btn), .support-user { display: none; }
    .support-main { padding: 28px 16px 56px; }
    .support-actions, .support-columns { grid-template-columns: 1fr; }
    .support-action { border-right: 0; border-bottom: 1px solid #293a50; }
    .support-filter { grid-template-columns: 1fr; }
    .support-page-heading { align-items: flex-start; flex-direction: column; }
    .support-helpful { align-items: flex-start; flex-direction: column; }
}
