/*
 * DABA shell and typography parity.
 *
 * CRM is deployed independently from ERP, so it cannot import ERP's runtime
 * stylesheet. These role tokens intentionally mirror the stable ERP UI
 * contract while keeping CRM-specific colors and components independent.
 */
:root {
  --daba-font-body: .9375rem;
  --daba-font-label: .875rem;
  --daba-font-help: .8125rem;
  --daba-font-meta: .75rem;
  --daba-page-title-size: clamp(1.45rem, 2.3vw, 2rem);
  --daba-page-title-size-mobile: 1.35rem;
  --daba-page-title-line-height: 1.35;
  --daba-context-nav-font-size: .8125rem;
  --daba-context-nav-font-weight: 800;
  --daba-content-max: 1500px;
  --daba-page-panel-width: 100%;
  --daba-control-height: 46px;
}

html { font-size: 16px; }
body.crm-body,
.crm-body button,
.crm-body input,
.crm-body select,
.crm-body textarea {
  font-size: var(--daba-font-body);
}
.crm-body { line-height: 1.75; }

/* Product shell: same physical rhythm as the ERP shell. */
.crm-body .module-rail__brand small { font-size: .52rem; }
.crm-body .module-rail__item {
  min-height: 46px;
  font-size: .72rem;
  line-height: 1.3;
}
.crm-body .erp-topbar {
  z-index: 4000;
  min-height: 72px;
}
.crm-body .module-context-bar {
  z-index: 3900;
  top: 72px;
  min-height: 58px;
}
.crm-body .module-context-bar__module { min-width: 176px; }
.crm-body .module-context-bar__links > a,
.crm-body .module-context-bar__links > .crm-context-menu > summary {
  min-height: 100%;
  font-size: var(--daba-context-nav-font-size);
  font-weight: var(--daba-context-nav-font-weight);
  line-height: 1.5;
}
.crm-body .module-context-bar__back {
  display:inline-flex;
  min-width:max-content;
  min-height:0;
  align-items:center;
  align-self:center;
  gap:6px;
  margin-inline-start:auto;
  padding:7px 11px;
  border:1px solid #e3e6eb;
  border-radius:8px;
  color:#596476;
  background:#fff;
  font-family:inherit;
  font-size:.58rem !important;
  font-weight:850;
  line-height:normal;
  white-space:nowrap;
}
.crm-body .module-context-bar__back:hover { color:var(--module-accent); border-color:color-mix(in srgb,var(--module-accent) 35%,#e3e6eb); background:var(--module-soft); }
.crm-body .module-context-bar__back i { font-size:.78rem; }
@media (max-width:700px) { .crm-body .module-context-bar__back { padding:6px 8px; } }

/* Operational content uses the same density and type roles as ERP. */
.crm-body .erp-main { padding: 16px clamp(14px, 2vw, 26px) 26px; }
.crm-body .content-wrap {
  width: 100%;
  max-width: var(--daba-content-max);
}
.crm-body .content-wrap > :is(section, nav, form, article, [class$="-page"]) {
  width: var(--daba-page-panel-width);
}

/*
 * KPI layout contract
 * -------------------
 * KPI rows must derive their column count from the number of available cards.
 * A fixed five-column grid left an empty column whenever a page exposed four
 * indicators (customers, account detail and several reports).  Keeping this
 * rule in the shared ERP-parity layer makes every current and future CRM page
 * fill the available content width without template-specific overrides.
 */
.crm-body :is(.metrics,.stats-grid,.customer-hub__metrics) {
  width: 100%;
  grid-template-columns: repeat(auto-fit, minmax(min(190px, 100%), 1fr));
  align-items: stretch;
}
.crm-body :is(.metrics,.stats-grid) > article {
  min-width: 0;
  height: 100%;
  align-content: space-between;
}
.crm-body .record-facts {
  grid-template-columns: repeat(auto-fit, minmax(min(180px, 100%), 1fr));
}
.crm-body .target-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
}
@media (max-width: 520px) {
  .crm-body :is(.metrics,.stats-grid,.customer-hub__metrics,.record-facts,.target-grid) {
    grid-template-columns: 1fr;
  }
}
.crm-body .form-panel,
.crm-body .policy-panel,
.crm-body .assistant-profile-panel,
.crm-body .configuration-form-page {
  width: var(--daba-page-panel-width);
  max-width: none;
}
.crm-body .page-head {
  display: flex;
  min-height: 68px;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin: 0 0 12px;
  padding: 11px 14px;
  border: 1px solid #dde5ee;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 3px 12px rgba(28, 48, 76, .035);
}
.crm-body .page-head > div:first-child,
.crm-body .page-head__main,
.crm-body .page-head__copy { min-width: 0; }
.crm-body .page-head__main {
  display: flex;
  align-items: center;
  gap: 10px;
}
.crm-body .page-head__icon {
  display: grid;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  place-items: center;
  border: 1px solid #f1dfad;
  border-radius: 11px;
  color: #b77900;
  background: #fff9e7;
  font-size: 1rem;
}
.crm-body .page-head h1 {
  overflow: hidden;
  margin: 1px 0 0;
  color: var(--erp-ink);
  font-size: var(--daba-page-title-size);
  line-height: var(--daba-page-title-line-height);
  text-overflow: ellipsis;
}
.crm-body .page-head p { font-size: .8125rem; line-height: 1.7; }
.crm-body .page-head small { font-size: var(--daba-font-meta); }
.crm-body .page-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}
.crm-body .page-actions a,
.crm-body .primary,
.crm-body .page-head > a,
.crm-body .form-actions a,
.crm-body .form-actions button {
  font-size: var(--daba-font-meta);
}
.crm-body .page-actions a,
.crm-body .page-head > a,
.crm-body .page-head button {
  min-height: 36px;
  padding: 7px 12px;
  border-radius: 9px;
}
.crm-body .panel {
  border-radius: 12px;
  box-shadow: 0 3px 12px rgba(28, 48, 76, .03);
}
.crm-body .panel > header {
  min-height: 50px;
  padding: 10px 14px;
}
.crm-body .panel h2 { font-size: .88rem; }
.crm-body .panel header a,
.crm-body .row small,
.crm-body .empty { font-size: var(--daba-font-meta); }

.crm-body .list-toolbar {
  display: flex;
  min-height: 56px;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 9px 11px;
  border-bottom: 1px solid var(--erp-line-soft);
  background: #fbfcfe;
}
.crm-body .list-toolbar .search {
  width: min(100%, 620px);
  margin: 0;
}
.crm-body .list-toolbar__meta {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 6px;
  color: var(--erp-muted);
  font-size: var(--daba-font-meta);
}
.crm-body .list-toolbar__meta strong { color: var(--erp-ink); }

.crm-body th { font-size: .7rem; }
.crm-body td { font-size: .76rem; line-height: 1.55; }

.crm-body .form-panel label,
.crm-body .field-group > label,
.crm-body .compact-form label {
  font-size: var(--daba-font-label);
  line-height: 1.5;
}
.crm-body .field-group > small,
.crm-body .form-text,
.crm-body .helptext,
.crm-body .form-panel ul.errorlist {
  font-size: var(--daba-font-help);
  line-height: 1.7;
}
.crm-body .form-control,
.crm-body .form-select,
.crm-body .form-panel input:not([type="checkbox"]):not([type="radio"]),
.crm-body .form-panel select,
.crm-body .form-panel textarea,
.crm-body .field-group > input:not([type="checkbox"]):not([type="radio"]),
.crm-body .field-group > select,
.crm-body .field-group > textarea {
  min-height: var(--daba-control-height);
  font-size: var(--daba-font-body);
}

.crm-body .settings-guide strong,
.crm-body .settings-directory strong,
.crm-body .report-directory strong { font-size: .8125rem; }
.crm-body .settings-guide span,
.crm-body .settings-guide bdi,
.crm-body .settings-directory small,
.crm-body .report-directory small,
.crm-body .settings-directory em,
.crm-body .report-directory em { font-size: var(--daba-font-meta); }

/* Staff access follows the same page/card/table contract as every module. */
.crm-body .staff-page-head .primary {
  border-color: #1769d2;
  color: #fff;
  background: #1769d2;
}
.crm-body .staff-source-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  margin: 0 0 12px;
  padding: 14px;
  border: 1px solid #d8e2ef;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 3px 12px rgba(28, 48, 76, .03);
}
.crm-body .staff-source-card > span {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 11px;
  color: #1769d2;
  background: #eef4ff;
  font-size: 1.1rem;
}
.crm-body .staff-source-card > div { display: grid; min-width: 0; gap: 2px; }
.crm-body .staff-source-card small { color: #718096; font-size: var(--daba-font-meta); }
.crm-body .staff-source-card strong { color: var(--erp-ink); font-size: .875rem; }
.crm-body .staff-source-card p { margin: 0; color: #66758b; font-size: var(--daba-font-help); }
.crm-body .staff-source-card > em {
  padding: 5px 9px;
  border-radius: 999px;
  color: #14704b;
  background: #eef8f3;
  font-size: var(--daba-font-meta);
  font-style: normal;
  font-weight: 750;
}
.crm-body .staff-directory { padding: 0; overflow: hidden; }
.crm-body .staff-directory > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.crm-body .staff-directory h2,
.crm-body .staff-directory p { margin: 0; }
.crm-body .staff-directory p { color: #718096; font-size: var(--daba-font-meta); }
.crm-body .staff-directory .search-form { display: flex; width: min(100%, 470px); gap: 8px; }
.crm-body .staff-directory .search-control { position: relative; min-width: 0; flex: 1; }
.crm-body .staff-directory .search-control i {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 12px;
  color: #7f8da1;
  transform: translateY(-50%);
  pointer-events: none;
}
.crm-body .staff-directory .search-control input { width: 100%; padding-left: 38px; }
.crm-body .staff-directory button {
  min-height: 38px;
  padding: 7px 12px;
  border: 1px solid #ccd8e7;
  border-radius: 8px;
  color: var(--erp-text);
  background: #fff;
  font: inherit;
}
.crm-body .staff-avatar {
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  border-radius: 10px;
  color: #245fc2;
  background: #edf3ff;
  font-weight: 800;
}
.crm-body .badge-admin { color: #08784d; background: #e9f7f0; }
.crm-body .expertise-list { display: flex; flex-wrap: wrap; gap: 5px; }
.crm-body .expertise-list span {
  padding: 3px 7px;
  border-radius: 7px;
  background: #f1f5fa;
  font-size: var(--daba-font-meta);
}
.crm-body .staff-note { display: block; margin-top: 4px; color: #5e6e84; font-size: var(--daba-font-meta); }
.crm-body .staff-note.is-warning { color: #9a6400; }
.crm-body .row-action { color: #1769d2; font-weight: 750; }
.crm-body .restricted-action { color: #8996a8; font-size: var(--daba-font-meta); }

/* Customer portal access policy: decision-oriented settings, not a raw model form. */
.crm-body .portal-policy-summary {
  display: flex;
  align-items: center;
  gap: 11px;
  margin: 0 0 12px;
  padding: 11px 14px;
  border: 1px solid #b9dfd4;
  border-radius: 12px;
  color: #175a4d;
  background: #f1faf7;
}
.crm-body .portal-policy-summary__icon {
  display: grid;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  place-items: center;
  border-radius: 9px;
  background: #dff4ed;
}
.crm-body .portal-policy-summary > div { min-width: 0; flex: 1; }
.crm-body .portal-policy-summary strong { display: block; font-size: .8125rem; }
.crm-body .portal-policy-summary p { margin: 1px 0 0; font-size: var(--daba-font-meta); }
.crm-body .portal-policy-form { display: grid; gap: 12px; }
.crm-body .portal-policy-panel { width: 100%; padding: 0; overflow: hidden; }
.crm-body .portal-policy-panel > .policy-section-head {
  display: flex;
  min-height: 62px;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  padding: 10px 14px;
  border-bottom: 1px solid var(--erp-line-soft);
  background: #fbfcfe;
}
.crm-body .policy-section-head > span {
  display: grid;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  place-items: center;
  border-radius: 9px;
  color: #235da8;
  background: #edf4ff;
}
.crm-body .policy-section-head > div { min-width: 0; }
.crm-body .policy-section-head h2 { margin: 0; font-size: .875rem; }
.crm-body .policy-section-head p { margin: 1px 0 0; color: var(--erp-muted); font-size: var(--daba-font-meta); }
.crm-body .policy-section-body { padding: 14px; }
.crm-body .policy-fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.crm-body .policy-fieldset legend,
.crm-body .policy-field > label { color: var(--erp-ink); font-size: var(--daba-font-label); font-weight: 800; }
.crm-body .policy-fieldset__help,
.crm-body .policy-field > p { margin: 2px 0 9px; color: var(--erp-muted); font-size: var(--daba-font-meta); }
.crm-body .policy-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.crm-body .policy-choice-grid--four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.crm-body .policy-choice {
  position: relative;
  display: grid;
  min-height: 82px;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: start;
  gap: 9px;
  padding: 11px;
  border: 1px solid #d8e2ed;
  border-radius: 10px;
  background: #fff;
  cursor: pointer;
}
.crm-body .policy-choice:hover { border-color: #aac4e6; background: #fbfdff; }
.crm-body .policy-choice:has(input:checked) { border-color: #76a7e8; background: #f2f7ff; }
.crm-body .policy-choice input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.crm-body .policy-choice__marker {
  display: grid;
  width: 20px;
  height: 20px;
  place-items: center;
  border: 1px solid #b9c7d8;
  border-radius: 50%;
  color: transparent;
  background: #fff;
  font-size: .65rem;
}
.crm-body .policy-choice input:checked + .policy-choice__marker { border-color: #1769d2; color: #fff; background: #1769d2; }
.crm-body .policy-choice:has(input:focus-visible) { outline: 3px solid rgba(23, 105, 210, .18); outline-offset: 2px; }
.crm-body .policy-choice__copy { display: grid; gap: 3px; }
.crm-body .policy-choice__copy strong { color: var(--erp-ink); font-size: .8rem; }
.crm-body .policy-choice__copy small { color: var(--erp-muted); font-size: var(--daba-font-meta); line-height: 1.65; }
.crm-body .policy-two-column { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(260px, .6fr); gap: 18px; margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--erp-line-soft); }
.crm-body .policy-field { min-width: 0; }
.crm-body .policy-field > .form-control,
.crm-body .policy-field > select { width: 100%; min-height: var(--daba-control-height); }
.crm-body .policy-number-input { position: relative; width: min(100%, 220px); }
.crm-body .policy-number-input input { width: 100%; min-height: var(--daba-control-height); padding-inline-end: 52px; }
.crm-body .policy-number-input span { position: absolute; top: 50%; inset-inline-end: 12px; color: var(--erp-muted); font-size: var(--daba-font-meta); transform: translateY(-50%); pointer-events: none; }
.crm-body .policy-toggle-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 20px; }
.crm-body .policy-toggle {
  position: relative;
  display: grid;
  min-height: 76px;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  padding: 10px 2px;
  border-bottom: 1px solid var(--erp-line-soft);
  cursor: pointer;
}
.crm-body .policy-toggle > input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.crm-body .policy-toggle__indicator { position: relative; width: 40px; height: 22px; border-radius: 999px; background: #cbd5e1; transition: background-color .16s ease-out; }
.crm-body .policy-toggle__indicator::after { position: absolute; top: 3px; right: 3px; width: 16px; height: 16px; border-radius: 50%; background: #fff; box-shadow: 0 2px 5px rgba(15, 23, 42, .22); content: ""; transition: transform .16s ease-out; }
.crm-body .policy-toggle > input:checked + .policy-toggle__indicator { background: #16836c; }
.crm-body .policy-toggle > input:checked + .policy-toggle__indicator::after { transform: translateX(-18px); }
.crm-body .policy-toggle:has(input:focus-visible) .policy-toggle__indicator { outline: 3px solid rgba(22, 131, 108, .2); outline-offset: 2px; }
.crm-body .policy-toggle > span:last-child { display: grid; gap: 2px; }
.crm-body .policy-toggle strong { color: var(--erp-ink); font-size: .8rem; }
.crm-body .policy-toggle small { color: var(--erp-muted); font-size: var(--daba-font-meta); line-height: 1.65; }
.crm-body .policy-routing-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.crm-body .policy-savebar { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 11px 14px; border-top: 1px solid var(--erp-line-soft); background: #fbfcfe; }
.crm-body .policy-savebar > span { display: flex; align-items: center; gap: 6px; color: var(--erp-muted); font-size: var(--daba-font-meta); }
.crm-body .policy-savebar button { min-height: 40px; padding: 8px 16px; border: 1px solid #f0a000; border-radius: 9px; color: #302f2b; background: #ffc62e; font: inherit; font-size: var(--daba-font-meta); font-weight: 800; cursor: pointer; }
.crm-body .field-error,
.crm-body ul.errorlist {
  position: relative;
  margin: 5px 0 0;
  padding: 6px 28px 6px 9px;
  border: 1px solid #f1c8c8;
  border-radius: 8px;
  color: #8a3030 !important;
  background: #fff7f7;
  font-size: var(--daba-font-help);
  line-height: 1.65;
  list-style: none;
}
.crm-body .field-error::before,
.crm-body ul.errorlist::before {
  position: absolute;
  inset-block-start: 7px;
  inset-inline-start: 9px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  color: #fff;
  background: #c75b5b;
  font-size: 10px;
  font-weight: 900;
  line-height: 14px;
  text-align: center;
  content: "!";
}
.crm-body ul.errorlist li + li { margin-top: 3px; }
.crm-body form p.has-errors { display: grid; align-content: start; gap: 6px; }
.crm-body form p.has-errors ul.errorlist { order: 10; }
.crm-body [aria-invalid="true"]:not([type="checkbox"]):not([type="radio"]) {
  border-color: #d98b8b !important;
  background: #fffdfd !important;
  box-shadow: 0 0 0 3px rgb(199 91 91 / 7%);
}
.crm-body .policy-form-errors { padding: 11px 14px; border: 1px solid #efb7b7; border-radius: 10px; color: #8c2525; background: #fff4f4; }
.crm-body .policy-form-errors ul { margin: 0; }

.crm-body .system-feedback {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  width: min(100% - 32px, var(--erp-content-max));
  margin: 12px auto 0;
  padding: 11px 14px;
  border: 1px solid;
  border-radius: 10px;
  box-shadow: 0 4px 16px rgb(31 45 61 / 5%);
}
.crm-body .system-feedback > i { margin-top: 2px; font-size: 1rem; }
.crm-body .system-feedback strong { display: block; font-size: var(--daba-font-label); }
.crm-body .system-feedback p { margin: 2px 0 0; font-size: var(--daba-font-meta); line-height: 1.7; }
.crm-body .system-feedback--warning { border-color: #efd38c; color: #76520b; background: #fff9e9; }
.crm-body .system-feedback--error { border-color: #efb7b7; color: #8c2525; background: #fff4f4; }
.crm-body .form-error-summary {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 14px 18px 0;
  padding: 12px 14px;
  border: 1px solid #efb7b7;
  border-radius: 10px;
  color: #783838;
  background: #fffafa;
}
.crm-body .form-error-summary > span { display: grid; width: 30px; height: 30px; flex: 0 0 30px; place-items: center; border-radius: 8px; background: #ffe4e4; }
.crm-body .form-error-summary strong { font-size: var(--daba-font-label); }
.crm-body .form-error-summary p { margin: 2px 0 0; color: #925050; font-size: var(--daba-font-help); }
.crm-body .portal-field:has(.field-error) input,
.crm-body .portal-field:has(.field-error) select { border-color: #cf5656; background: #fffafa; }

/* Public portal registration keeps tenant selection understandable and safe. */
.crm-body .portal-register-panel { width: 100%; margin-inline: auto; padding: 0; overflow: hidden; }
.crm-body .portal-register-form { display: grid; grid-template-columns: 1fr; }
.crm-body .portal-register-wide { min-width: 0; }
.crm-body .portal-register-section { padding: 16px 18px; border-bottom: 1px solid var(--erp-line-soft); }
.crm-body .portal-register-section > header { display: flex; align-items: center; justify-content: flex-start; gap: 10px; margin-bottom: 14px; text-align: start; }
.crm-body .portal-register-section > header > span {
  display: grid;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  place-items: center;
  border-radius: 9px;
  color: #235da8;
  background: #edf4ff;
}
.crm-body .portal-register-section > header > div { min-width: 0; }
.crm-body .portal-register-section h2 { margin: 0; color: var(--erp-ink); font-size: .875rem; }
.crm-body .portal-register-section header p { margin: 1px 0 0; color: var(--erp-muted); font-size: var(--daba-font-meta); }
.crm-body .portal-register-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px 16px; }
.crm-body .portal-field { display: grid; min-width: 0; align-content: start; gap: 5px; }
.crm-body .portal-field label { color: var(--erp-ink); font-size: var(--daba-font-label); font-weight: 800; }
.crm-body .portal-field input:not([type="checkbox"]):not([type="radio"]),
.crm-body .portal-field select { width: 100%; height: var(--daba-control-height); min-height: var(--daba-control-height); max-height: var(--daba-control-height); align-self: start; }
.crm-body .portal-organization-field .portal-field { width: min(100%, 560px); }
.crm-body .portal-terms { display: flex; align-items: flex-start; gap: 8px; margin-top: 14px; color: var(--erp-text); font-size: var(--daba-font-help); cursor: pointer; }
.crm-body .portal-terms input { width: 18px; height: 18px; flex: 0 0 18px; margin-top: 2px; accent-color: #16836c; }
.crm-body .portal-register-actions { display: flex; align-items: center; justify-content: flex-end; gap: 9px; padding: 12px 18px; background: #fbfcfe; }
.crm-body .portal-register-actions a,
.crm-body .portal-register-actions button { min-height: 40px; padding: 8px 16px; border: 1px solid var(--erp-line); border-radius: 9px; font: inherit; font-size: var(--daba-font-meta); font-weight: 800; }
.crm-body .portal-register-actions a { color: var(--erp-text); background: #fff; }
.crm-body .portal-register-actions button { border-color: #f0a000; color: #302f2b; background: #ffc62e; cursor: pointer; }
.crm-body .portal-registration-empty { display: grid; min-height: 340px; place-items: center; align-content: center; gap: 8px; padding: 30px; text-align: center; }
.crm-body .portal-registration-empty > i { color: #7690ad; font-size: 2rem; }
.crm-body .portal-registration-empty h2 { margin: 2px 0 0; color: var(--erp-ink); font-size: 1rem; }
.crm-body .portal-registration-empty p { max-width: 62ch; margin: 0; color: var(--erp-muted); font-size: var(--daba-font-help); }
.crm-body .portal-registration-empty a { margin-top: 8px; color: #235da8; font-size: var(--daba-font-meta); font-weight: 800; }

@media (max-width: 1050px) {
  .crm-body .policy-choice-grid--four { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 1100px) {
  .crm-body .erp-topbar { min-height: 62px; }
  .crm-body .module-context-bar { top: 62px; }
}

@media (max-width: 680px) {
  :root {
    --daba-font-body: .875rem;
    --daba-font-label: .8125rem;
  }
  .crm-body .module-context-bar__links a { font-size: .75rem; }
  .crm-body .erp-main { padding: 18px 14px 26px; }
  .crm-body .page-head { min-height: 0; align-items: stretch; flex-direction: column; padding: 10px; }
  .crm-body .page-head__icon { width: 36px; height: 36px; flex-basis: 36px; }
  .crm-body .page-head h1 { font-size: 1.05rem; }
  .crm-body .page-head p { display: none; }
  .crm-body .page-actions { width: 100%; }
  .crm-body .page-actions a { flex: 1 1 auto; }
  .crm-body .list-toolbar { align-items: stretch; flex-direction: column; }
  .crm-body .list-toolbar .search { width: 100%; }
  .crm-body .list-toolbar__meta { align-self: flex-start; }
  .crm-body .staff-source-card { grid-template-columns: auto minmax(0, 1fr); }
  .crm-body .staff-source-card > em { grid-column: 1 / -1; width: max-content; }
  .crm-body .staff-directory > header { align-items: stretch; flex-direction: column; }
  .crm-body .staff-directory .search-form { width: 100%; }
  .crm-body .portal-policy-summary { align-items: flex-start; flex-wrap: wrap; }
  .crm-body .portal-policy-summary .status-chip { margin-inline-start: 47px; }
  .crm-body .policy-choice-grid,
  .crm-body .policy-choice-grid--four,
  .crm-body .policy-two-column,
  .crm-body .policy-toggle-list,
  .crm-body .policy-routing-grid { grid-template-columns: 1fr; }
  .crm-body .policy-section-body { padding: 12px; }
  .crm-body .policy-two-column { gap: 14px; }
  .crm-body .policy-toggle { min-height: 72px; }
  .crm-body .policy-savebar { align-items: stretch; flex-direction: column; }
  .crm-body .policy-savebar button { width: 100%; }
  .crm-body .portal-register-section { padding: 14px 12px; }
  .crm-body .portal-register-grid { grid-template-columns: 1fr; }
  .crm-body .portal-register-actions { align-items: stretch; flex-direction: column-reverse; padding: 12px; }
  .crm-body .portal-register-actions a,
  .crm-body .portal-register-actions button { width: 100%; text-align: center; }
  .crm-body .system-feedback { width: calc(100% - 20px); margin-top: 10px; }
  .crm-body .form-error-summary { margin: 10px 12px 0; }
}
/* Final ERP typography contract. Keep last so feature CSS cannot shrink text. */
.crm-body .module-rail__brand small{font-size:.75rem}.crm-body .module-rail__item{min-height:48px;font-size:.875rem;line-height:1.5}.crm-body .module-rail__item>i{font-size:1.05rem}.crm-body .module-rail__item--assistant small{font-size:.6875rem}
.crm-body .workspace-context span,.crm-body .account-copy small,.crm-body .topbar-capability,.crm-body .topbar-live{font-size:.75rem}.crm-body .workspace-context strong,.crm-body .account-copy strong,.crm-body .product-space-switcher a{font-size:.8125rem}.crm-body .module-context-bar__module small{font-size:.6875rem}.crm-body .module-context-bar__module strong{font-size:.875rem}.crm-body .module-context-bar__links>a,.crm-body .module-context-bar__links>.crm-context-menu>summary{font-size:var(--daba-context-nav-font-size)!important;font-weight:var(--daba-context-nav-font-weight)}
.crm-body .page-head{min-height:82px;padding:16px 20px;margin-bottom:16px}.crm-body .page-head__icon{width:52px;height:52px;flex-basis:52px;border-radius:15px;font-size:1.2rem}.crm-body .page-head h1{font-size:var(--daba-page-title-size);line-height:var(--daba-page-title-line-height)}.crm-body .page-head p{margin-top:6px;font-size:.9375rem}.crm-body .page-head small{font-size:.75rem}.crm-body .page-actions a,.crm-body .page-actions button,.crm-body .primary,.crm-body .secondary{min-height:44px;padding-inline:16px;font-size:.875rem}
.crm-body .panel>header{min-height:64px;padding:16px 20px}.crm-body .panel h2,.crm-body .form-section>header h2,.crm-body .card-heading h2{font-size:1.05rem}.crm-body .panel header p,.crm-body .form-section>header p,.crm-body .card-heading p{font-size:.8125rem}.crm-body .panel header a{font-size:.8125rem}.crm-body th{padding:14px 18px;font-size:.8125rem}.crm-body td{padding:14px 18px;font-size:.875rem;line-height:1.65}.crm-body .entity-cell small,.crm-body .table-subline,.crm-body .pagination-bar,.crm-body .table-empty p{font-size:.8125rem}.crm-body .badge,.crm-body .status-dot,.crm-body .status-chip{font-size:.75rem}
.crm-body .field-group>label,.crm-body .form-panel label,.crm-body .compact-form label,.crm-body .portal-form-field label{font-size:.875rem}.crm-body .field-group>small,.crm-body .form-text,.crm-body .helptext,.crm-body .form-panel ul.errorlist,.crm-body .portal-form-field>small,.crm-body .portal-form-field .errorlist,.crm-body .portal-field-hint{font-size:.8125rem}.crm-body input:not([type=checkbox]):not([type=radio]),.crm-body select,.crm-body textarea{min-height:46px;padding:.62rem .85rem;border-radius:10px;font-size:.9375rem!important}.crm-body .btn,.crm-body button.primary,.crm-body a.primary{min-height:44px;padding-inline:16px;font-size:.875rem}
.crm-body .customer-hub__head{background:#fff}.crm-body .customer-hub__metrics small,.crm-body .customer-hub__metrics em{font-size:.75rem}.crm-body .customer-hub__metrics strong{font-size:1.05rem}.crm-body .customer-hub__services header small,.crm-body .customer-hub__panel header small{font-size:.75rem}.crm-body .customer-hub__services h2,.crm-body .customer-hub__panel h2{font-size:1.05rem}.crm-body .customer-service-card b{font-size:.9375rem}.crm-body .customer-service-card p{font-size:.8125rem}.crm-body .customer-hub__list b,.crm-body .customer-hub__document strong{font-size:.875rem}.crm-body .customer-hub__list small{font-size:.75rem}.crm-body .customer-hub__list em{font-size:.75rem}.crm-body .customer-hub__empty{font-size:.8125rem}.crm-body .customer-hub__empty b{font-size:.9375rem}.crm-body .customer-hub__attention b{font-size:.875rem}.crm-body .customer-hub__attention span,.crm-body .customer-hub__attention a{font-size:.8125rem}
.crm-body .portal-record-list b,.crm-body .portal-record-list strong,.crm-body .portal-list-row b,.crm-body .portal-list-row strong{font-size:.875rem}.crm-body .portal-record-list small,.crm-body .portal-list-row small,.crm-body .portal-balance-card small,.crm-body .portal-balance-card em{font-size:.75rem}.crm-body .portal-balance-card b{font-size:1.05rem}.crm-body .portal-knowledge-library small{font-size:.75rem}.crm-body .portal-knowledge-library h2{font-size:.9375rem}.crm-body .portal-knowledge-library p,.crm-body .portal-knowledge-library a{font-size:.8125rem}
.crm-body .customer-chat-sidebar>header small,.crm-body .customer-chat-sidebar nav small,.crm-body .customer-chat-main>header small,.crm-body .customer-chat-compose-wrap>small{font-size:.75rem}.crm-body .customer-chat-sidebar h1,.crm-body .customer-chat-sidebar nav b,.crm-body .customer-chat-main>header h2{font-size:.9375rem}.crm-body .customer-chat-security,.crm-body .customer-chat-welcome button{font-size:.75rem}.crm-body .customer-chat-welcome h2{font-size:1.15rem}.crm-body .customer-chat-welcome p,.crm-body .portal-chat-message,.crm-body .portal-assistant__notice{font-size:.8125rem}
.crm-body .portal-ticket-form-card h2,.crm-body .portal-ticket-guide h2{font-size:1rem}.crm-body .portal-ticket-form-card p,.crm-body .portal-ticket-guide p,.crm-body .portal-ticket-guide li strong,.crm-body .portal-ticket-guide>a strong{font-size:.8125rem}.crm-body .portal-ticket-guide li small,.crm-body .portal-ticket-guide>a small{font-size:.75rem}
@media(max-width:720px){.crm-body .page-head{min-height:0;padding:16px}.crm-body .page-head h1{font-size:var(--daba-page-title-size-mobile)}.crm-body .module-rail__item{font-size:.875rem}}

/* Human-facing AI readiness and discoverable knowledge administration. */
.settings-feature-card{display:grid;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:16px;margin-bottom:16px;padding:18px 20px;border:1px solid #cddcf0;border-radius:14px;background:#fff;box-shadow:0 8px 26px rgba(15,23,42,.05)}.settings-feature-card>span{display:grid;width:52px;height:52px;place-items:center;border-radius:15px;color:#2563c8;background:#eaf2ff;font-size:1.25rem}.settings-feature-card>div{display:grid;gap:3px}.settings-feature-card small{color:#6f5ba7;font-size:.75rem;font-weight:800}.settings-feature-card h2{margin:0;color:#263548;font-size:1.05rem}.settings-feature-card p{margin:0;color:#64748b;font-size:.8125rem}.settings-feature-card nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.settings-feature-card nav a{display:inline-flex;min-height:40px;align-items:center;gap:6px;padding:8px 12px;border:1px solid #d5dee8;border-radius:9px;color:#46576b;background:#fff;font-size:.8125rem;font-weight:800}.settings-feature-card nav a.primary{border-color:#2563c8;color:#fff;background:#2563c8}
.settings-subnav{display:flex;align-items:center;gap:6px;margin-bottom:14px;padding:6px;border:1px solid #dce4ed;border-radius:12px;background:#fff}.settings-subnav a{display:inline-flex;min-height:40px;align-items:center;gap:7px;padding:8px 12px;border-radius:8px;color:#607084;font-size:.8125rem;font-weight:800}.settings-subnav a:hover,.settings-subnav a.is-current{color:#2563c8;background:#edf4ff}.assistant-settings-intro{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px;padding:14px 16px;border:1px solid #b9dfd4;border-radius:13px;color:#205f53;background:#f1faf7}.assistant-settings-intro>i{font-size:1.15rem}.assistant-settings-intro strong{font-size:.875rem}.assistant-settings-intro p{margin:3px 0 0;font-size:.8125rem}.assistant-settings-grid{align-items:start}.assistant-settings-grid .form-panel>header>div{display:grid;gap:3px}.assistant-settings-grid .form-panel>header small,.assistant-source-list>header small{color:#7c66ae;font-size:.75rem;font-weight:850}.assistant-source-list{margin-top:14px;overflow:visible}.assistant-source-list>header>div{display:grid;gap:3px}.assistant-source-list>header>a{display:inline-flex;align-items:center;gap:6px}.assistant-source-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:70px;padding:11px 18px;border-top:1px solid #edf1f5}.assistant-source-row>span{display:grid;width:40px;height:40px;place-items:center;border-radius:11px;color:#2869aa;background:#eaf3fc}.assistant-source-row>div:nth-of-type(1){display:grid;gap:3px}.assistant-source-row b{font-size:.875rem}.assistant-source-row small{color:#718096;font-size:.75rem}.assistant-source-row em{padding:5px 9px;border-radius:999px;color:#44647f;background:#eef3f7;font-size:.75rem;font-style:normal}
.ai-readiness-page{display:grid;gap:14px}.ai-readiness-summary{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:16px;padding:22px;border:1px solid #d8e2ed;border-radius:15px;background:#fff;box-shadow:0 8px 26px rgba(15,23,42,.05)}.ai-readiness-summary>span{display:grid;width:56px;height:56px;place-items:center;border-radius:16px;font-size:1.35rem}.ai-readiness-summary>div{display:grid;gap:4px}.ai-readiness-summary small{font-size:.75rem;font-weight:850}.ai-readiness-summary h2{margin:0;color:#263548;font-size:1.1rem}.ai-readiness-summary p{margin:0;color:#64748b;font-size:.8125rem}.ai-readiness-summary.is-ready>span{color:#08745f;background:#e5f7f1}.ai-readiness-summary.is-ready small{color:#08745f}.ai-readiness-summary.is-warning>span{color:#9a6800;background:#fff3d5}.ai-readiness-summary.is-warning small{color:#9a6800}.ai-readiness-summary.is-disabled>span{color:#64748b;background:#eef2f6}.ai-readiness-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ai-readiness-grid article{display:flex;min-height:130px;gap:12px;padding:17px;border:1px solid #dfe6ee;border-radius:14px;background:#fff}.ai-readiness-grid article>span{display:grid;width:42px;height:42px;flex:0 0 42px;place-items:center;border-radius:11px;color:#2769aa;background:#eaf3fc;font-size:1.05rem}.ai-readiness-grid article>div{display:grid;align-content:start;gap:4px}.ai-readiness-grid small{color:#718096;font-size:.75rem}.ai-readiness-grid strong{color:#263548;font-size:.9375rem}.ai-readiness-grid p{margin:0;color:#64748b;font-size:.8125rem}.ai-readiness-policy{display:flex;align-items:flex-start;gap:11px;padding:15px 17px;border:1px solid #cfdbe8;border-radius:13px;background:#f8fafc}.ai-readiness-policy>i{color:#16816a;font-size:1.15rem}.ai-readiness-policy strong{font-size:.875rem}.ai-readiness-policy p{margin:3px 0 0;color:#64748b;font-size:.8125rem}
@media(max-width:900px){.settings-feature-card{grid-template-columns:48px minmax(0,1fr)}.settings-feature-card nav{grid-column:1/-1;justify-content:flex-start}.ai-readiness-grid{grid-template-columns:1fr}.ai-readiness-summary{grid-template-columns:52px minmax(0,1fr)}.ai-readiness-summary>a{grid-column:2;justify-self:start}}
@media(max-width:600px){.settings-feature-card{grid-template-columns:1fr}.settings-feature-card nav,.settings-subnav{align-items:stretch;flex-direction:column}.settings-feature-card nav a,.settings-subnav a{justify-content:center}.assistant-source-row{grid-template-columns:40px minmax(0,1fr)}.assistant-source-row em{grid-column:2;justify-self:start}.ai-readiness-summary{grid-template-columns:1fr}.ai-readiness-summary>a{grid-column:auto}.ai-readiness-grid article{min-height:0}}

/* Assistant profile uses an explicit form layout instead of Django's generic as_p output. */
.crm-body .assistant-profile-panel{overflow:hidden;padding:0}
.crm-body .assistant-profile-form{display:grid;gap:0}
.crm-body .assistant-activation{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px 22px;border-bottom:1px solid var(--erp-line);background:#f8fbff;cursor:pointer}
.crm-body .assistant-activation__icon{display:grid;width:44px;height:44px;place-items:center;border-radius:10px;color:#2563c8;background:#e8f1ff;font-size:1.15rem}
.crm-body .assistant-activation__copy{display:grid;gap:3px}.crm-body .assistant-activation__copy strong{color:var(--erp-ink);font-size:.9375rem}.crm-body .assistant-activation__copy small{color:var(--erp-muted);font-size:.8125rem;line-height:1.7}
.crm-body .assistant-activation>input,.crm-body .assistant-knowledge-policy>input{position:absolute;width:1px;height:1px;opacity:0}
.crm-body .assistant-activation>input:checked+.policy-toggle__indicator,.crm-body .assistant-knowledge-policy>input:checked+.policy-toggle__indicator{background:#16836c}
.crm-body .assistant-activation>input:checked+.policy-toggle__indicator::after,.crm-body .assistant-knowledge-policy>input:checked+.policy-toggle__indicator::after{transform:translateX(-18px)}
.crm-body .assistant-activation:has(input:focus-visible),.crm-body .assistant-knowledge-policy:has(input:focus-visible){outline:3px solid rgba(37,99,200,.16);outline-offset:-3px}
.crm-body .assistant-profile-section{padding:22px}.crm-body .assistant-profile-section+.assistant-profile-section{border-top:1px solid var(--erp-line)}
.crm-body .assistant-profile-section>header{display:flex;align-items:flex-start;gap:11px;margin-bottom:18px}.crm-body .assistant-profile-section>header>span{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;border-radius:9px;color:#49647f;background:#eef3f8}.crm-body .assistant-profile-section>header>div{display:grid;gap:3px}.crm-body .assistant-profile-section h2{margin:0;color:var(--erp-ink);font-size:1rem}.crm-body .assistant-profile-section p{margin:0;color:var(--erp-muted);font-size:.8125rem;line-height:1.75}
.crm-body .assistant-profile-grid{display:grid;grid-template-columns:minmax(230px,.75fr) minmax(360px,1.25fr);gap:16px}.crm-body .assistant-profile-grid--textareas{grid-template-columns:repeat(2,minmax(0,1fr))}
.crm-body .assistant-form-field{display:grid;align-content:start;gap:7px}.crm-body .assistant-form-field>label{color:#334155;font-size:.8125rem;font-weight:800}.crm-body .assistant-form-field>small{color:var(--erp-muted);font-size:.75rem;line-height:1.65}.crm-body .assistant-form-field input,.crm-body .assistant-form-field textarea{width:100%}.crm-body .assistant-form-field textarea{min-height:138px;resize:vertical}
.crm-body .assistant-knowledge-policy{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:12px;margin:0 22px 22px;padding:15px 16px;border:1px solid #dce4ed;border-radius:10px;background:#fbfcfe;cursor:pointer}.crm-body .assistant-knowledge-policy>span:last-child{display:grid;gap:3px}.crm-body .assistant-knowledge-policy strong{color:var(--erp-ink);font-size:.8125rem}.crm-body .assistant-knowledge-policy small{color:var(--erp-muted);font-size:.75rem;line-height:1.65}
.crm-body .assistant-profile-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 22px;border-top:1px solid var(--erp-line);background:#fafbfd}.crm-body .assistant-profile-actions>a,.crm-body .assistant-profile-actions>button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:7px;padding:9px 14px}
@media(max-width:800px){.crm-body .assistant-profile-grid,.crm-body .assistant-profile-grid--textareas{grid-template-columns:1fr}.crm-body .assistant-activation{grid-template-columns:42px minmax(0,1fr) auto}.crm-body .assistant-profile-actions{align-items:stretch;flex-direction:column-reverse}.crm-body .assistant-profile-actions>a,.crm-body .assistant-profile-actions>button{width:100%}}

/* Shared form contract: all CRUD/settings forms use the same field grid and errors. */
.structured-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;width:100%}
.structured-form-errors{grid-column:1/-1}
.structured-field{display:grid;align-content:start;gap:7px;min-width:0}.structured-field--wide{grid-column:1/-1}.structured-field>label{color:#334155;font-size:.8125rem;font-weight:800}.structured-field>label>span{margin-inline-start:3px;color:#c2413b}.structured-field>small{color:var(--erp-muted);font-size:.75rem;line-height:1.65}.structured-field :is(input:not([type=checkbox]):not([type=radio]),select,textarea){width:100%}.structured-field textarea{min-height:120px;resize:vertical}
.structured-toggle{position:relative;display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:12px;min-height:70px;padding:13px 14px;border:1px solid #dce4ed;border-radius:10px;background:#fbfcfe;cursor:pointer}.structured-toggle>input{position:absolute;width:1px;height:1px;opacity:0}.structured-toggle>input:checked+.policy-toggle__indicator{background:#16836c}.structured-toggle>input:checked+.policy-toggle__indicator::after{transform:translateX(-18px)}.structured-toggle:has(input:focus-visible){outline:3px solid rgba(37,99,200,.16);outline-offset:2px}.structured-toggle>span:nth-last-of-type(1){display:grid;gap:3px}.structured-toggle strong{color:var(--erp-ink);font-size:.8125rem}.structured-toggle small{color:var(--erp-muted);font-size:.75rem;line-height:1.65}.structured-toggle>.field-errors{grid-column:1/-1}
.field-errors,.field-errors ul,.form-errors ul{margin:0;padding:0;list-style:none}.field-errors{color:#b42318;font-size:.75rem;line-height:1.65}.form-errors{padding:11px 13px;border:1px solid #f0b8b2;border-radius:9px;color:#9f241b;background:#fff7f6;font-size:.8125rem}
.form-panel>form>.structured-form-grid,.compact-form>.structured-form-grid{margin-bottom:16px}
.crm-body .form-panel>form>.structured-form-grid{grid-column:1/-1}
.crm-body .structured-field>[data-searchable-select]{width:100%;min-width:0}
.crm-body .generic-form-panel{padding:0;overflow:visible}
.crm-body .generic-form-panel__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 20px;border-bottom:1px solid var(--erp-line-soft);background:#fbfcfe}
.crm-body .generic-form-panel__head>div{display:flex;align-items:center;gap:11px}.crm-body .generic-form-panel__head>div>span{display:grid;width:40px;height:40px;flex:0 0 40px;place-items:center;border-radius:11px;color:#2563a8;background:#eaf3fc;font-size:1rem}.crm-body .generic-form-panel__head>div>div{display:grid;gap:3px}.crm-body .generic-form-panel__head h2{margin:0;font-size:.9375rem}.crm-body .generic-form-panel__head p{margin:0;color:var(--erp-muted);font-size:.8125rem}.crm-body .generic-form-panel__head>small{display:inline-flex;align-items:center;gap:5px;color:#9b5d19;font-size:.75rem;font-weight:750}.crm-body .generic-form-panel__head>small i{font-size:.55rem}
.crm-body .generic-form-panel>form{padding:22px 20px 18px}
.crm-body .generic-form-panel .structured-field{padding:2px 0}.crm-body .generic-form-panel .structured-field>label{display:flex;align-items:center;min-height:24px}.crm-body .generic-form-panel .structured-field :is(input:not([type=checkbox]):not([type=radio]),select,textarea){border-color:#c9d7e5;background:#fff}.crm-body .generic-form-panel .structured-field :is(input:not([type=checkbox]):not([type=radio]),select,textarea):hover{border-color:#9fb6ce}.crm-body .generic-form-panel .structured-field :is(input:not([type=checkbox]):not([type=radio]),select,textarea):focus{border-color:#4d83bd;box-shadow:0 0 0 3px rgba(77,131,189,.12)}
.crm-body .generic-form-panel .structured-toggle{align-self:end;min-height:72px;background:#f8fafc}.crm-body .generic-form-panel .structured-toggle:hover{border-color:#a9bfd5;background:#fff}
.crm-body .generic-form-panel .structured-toggle:last-child{grid-column:1/-1}
.crm-body .generic-form-panel .form-actions{grid-column:1/-1;justify-content:flex-start;margin:4px -20px -18px;padding:15px 20px;border-radius:0 0 var(--erp-radius) var(--erp-radius);background:#fbfcfe}.crm-body .generic-form-panel .form-actions button,.crm-body .generic-form-panel .form-actions a{min-width:128px}
@media(max-width:720px){.structured-form-grid{grid-template-columns:1fr}.structured-field--wide{grid-column:auto}}
@media(max-width:720px){.crm-body .generic-form-panel__head{align-items:flex-start}.crm-body .generic-form-panel__head>small{display:none}.crm-body .generic-form-panel>form{padding:16px 14px}.crm-body .generic-form-panel .form-actions{margin:2px -14px -16px;padding:13px 14px}.crm-body .generic-form-panel .form-actions>*{flex:1;min-width:0}}

/* Backward-compatible rendering for legacy forms not migrated to the shared partial yet. */
.crm-body :is(.form-panel form,.compact-form,.reply-box,.rating-form)>p{display:grid;gap:7px;margin:0 0 15px}.crm-body :is(.form-panel form,.compact-form,.reply-box,.rating-form)>p>label{color:#334155;font-size:.8125rem;font-weight:800}.crm-body :is(.form-panel form,.compact-form,.reply-box,.rating-form)>p>:is(input:not([type=checkbox]):not([type=radio]),select,textarea){width:100%}.crm-body :is(.form-panel form,.compact-form,.reply-box,.rating-form)>p>textarea{min-height:110px;resize:vertical}.crm-body :is(.form-panel form,.compact-form,.reply-box,.rating-form)>p>.helptext{color:var(--erp-muted);font-size:.75rem;line-height:1.65}.crm-body :is(.form-panel form,.compact-form,.reply-box,.rating-form)>p>.errorlist{margin:0;padding:0;list-style:none;color:#b42318;font-size:.75rem;line-height:1.65}
.crm-body :is(.form-panel form,.compact-form,.reply-box,.rating-form)>p:has(>input[type=checkbox]){position:relative;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-height:58px;padding:12px 14px;border:1px solid #dce4ed;border-radius:10px;background:#fbfcfe}.crm-body :is(.form-panel form,.compact-form,.reply-box,.rating-form)>p:has(>input[type=checkbox])>input{width:18px;height:18px;accent-color:#16836c}

.configuration-directory{overflow:visible}.configuration-directory>header>div{display:grid;gap:3px}.configuration-row{display:grid;grid-template-columns:44px minmax(180px,.8fr) minmax(360px,1.5fr) auto;align-items:center;gap:14px;min-height:88px;padding:13px 18px;border-top:1px solid #edf1f5}.configuration-row>span{display:grid;width:42px;height:42px;place-items:center;border-radius:11px;color:#2563c8;background:#eaf2ff;font-size:1.05rem}.configuration-row>div:nth-of-type(1){display:grid;gap:3px}.configuration-row b{font-size:.875rem}.configuration-row small{color:#718096;font-size:.75rem}.configuration-row dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.configuration-row dl>div{display:grid;gap:2px;padding:7px 9px;border-radius:8px;background:#f7f9fc}.configuration-row dt{color:#718096;font-size:.6875rem}.configuration-row dd{margin:0;color:#334155;font-size:.8125rem;font-weight:750}.record-actions{display:flex!important;align-items:center;justify-content:flex-end;gap:6px}.record-actions>a,.record-actions>details>summary{display:inline-flex;min-height:36px;align-items:center;gap:5px;padding:7px 10px;border:1px solid #d7e0e9;border-radius:8px;color:#52657a;background:#fff;font-size:.75rem;font-weight:800;list-style:none;cursor:pointer;white-space:nowrap}.record-actions>details{position:relative}.record-actions>details>summary::-webkit-details-marker{display:none}.record-actions>details>summary{color:#a52a25}.record-actions>details>form{position:absolute;z-index:40;inset-block-start:calc(100% + 6px);inset-inline-end:0;width:260px;padding:13px;border:1px solid #f0b9b5;border-radius:11px;background:#fff;box-shadow:0 16px 38px rgba(80,25,25,.15)}.record-actions>details form p{margin:0 0 10px;color:#6b3130;font-size:.75rem;line-height:1.8}.record-actions>details form button{width:100%;min-height:38px;border:0;border-radius:8px;color:#fff;background:#b42318;font:inherit;font-size:.75rem;font-weight:850}.configuration-form-page .form-panel{overflow:hidden}
@media(max-width:1050px){.configuration-row{grid-template-columns:42px minmax(0,1fr) auto}.configuration-row dl{grid-column:2/-1}.assistant-source-row{grid-template-columns:42px minmax(0,1fr) auto}.assistant-source-row .record-actions{grid-column:2/-1;justify-content:flex-start}}
@media(max-width:650px){.configuration-row{grid-template-columns:40px minmax(0,1fr)}.configuration-row dl,.configuration-row .record-actions{grid-column:1/-1}.configuration-row dl{grid-template-columns:1fr}.configuration-row .record-actions{justify-content:flex-start}.record-actions>details>form{position:fixed;inset:auto 12px 18px;width:auto}.assistant-source-row .record-actions{grid-column:1/-1}}

/* Customer segmentation uses the same compact, responsive language as ERP master data. */
.tag-color{display:inline-block;width:.7rem;height:.7rem;border-radius:50%;background:var(--tag-color);margin-inline-end:.4rem}
.entity-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.65rem}.entity-tags span{display:inline-flex;align-items:center;border:1px solid #dbe4ef;background:#f7fafc;border-radius:999px;padding:.25rem .65rem;font-size:.78rem;color:#334155}
.record-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}.record-facts>div{background:#fff;border:1px solid #dce5ef;border-radius:12px;padding:.85rem 1rem}.record-facts span,.record-facts strong{display:block}.record-facts span{font-size:.76rem;color:#64748b;margin-bottom:.25rem}.record-facts strong{font-size:.9rem;color:#172b4d}
@media(max-width:800px){.record-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
.calendar-agenda{display:grid;gap:12px}.agenda-day{padding:0;overflow:hidden}.agenda-day>header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #e7edf4}.agenda-day>header>div{display:flex;align-items:center;gap:8px}.agenda-day.is-today{border-color:#93c5fd}.agenda-day.is-today>header{background:#eff6ff}.agenda-day>header span{padding:2px 7px;border-radius:999px;color:#1d4ed8;background:#dbeafe;font-size:.7rem}.agenda-item{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 16px;border-bottom:1px solid #edf2f7}.agenda-item:last-child{border-bottom:0}.agenda-item>i{display:grid;width:32px;height:32px;place-items:center;border-radius:9px;color:#2563c8;background:#eef4ff}.agenda-item>div{display:grid;gap:2px}.agenda-item small{color:#64748b;font-size:.75rem}
.target-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.target-card{padding:18px}.target-card>header,.target-card>footer{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.target-card h2{margin:3px 0 0;font-size:1rem}.target-card header small,.target-card footer{color:#64748b;font-size:.75rem}.target-values{display:flex;align-items:baseline;gap:7px;margin:20px 0 10px}.target-values strong{font-size:1.65rem;color:#172b4d}.target-values span{color:#64748b}.target-progress{height:8px;overflow:hidden;border-radius:999px;background:#e8eef5}.target-progress span{display:block;height:100%;border-radius:inherit;background:#16836c}.target-card>footer{margin-top:14px;padding-top:12px;border-top:1px solid #edf1f5}
@media(max-width:950px){.target-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.target-grid{grid-template-columns:1fr}.agenda-item{grid-template-columns:32px minmax(0,1fr)}.agenda-item>.badge{grid-column:2}}

/* Organization themes ----------------------------------------------------
 * This is intentionally the same token contract as ERP ui_readability.css.
 * Components consume semantic tokens instead of guessing text contrast from
 * the header colour (which previously produced dark text on blue buttons).
 */
.crm-body{--org-chrome:#3f4554;--org-chrome-2:#303642;--org-accent:#e6a500;--org-accent-hover:#c78900;--org-accent-soft:#fff7d6;--org-accent-2:#f43f62;--org-on-accent:#302f2b;--org-on-chrome:#fff;--org-focus:rgba(230,165,0,.2);--org-shadow:rgba(47,52,64,.16);--erp-navy:var(--org-chrome);--erp-primary:var(--org-accent);--erp-primary-hover:var(--org-accent-hover);--erp-primary-soft:var(--org-accent-soft);--crm-accent:var(--org-accent);--crm-accent-soft:var(--org-accent-soft)}
.crm-body.organization-theme--ocean{--org-chrome:#173b66;--org-chrome-2:#102c4e;--org-accent:#2878c8;--org-accent-hover:#1e62a8;--org-accent-soft:#eaf4ff;--org-accent-2:#27a7b8;--org-on-accent:#fff;--org-focus:rgba(40,120,200,.2);--org-shadow:rgba(23,59,102,.2)}
.crm-body.organization-theme--emerald{--org-chrome:#184a42;--org-chrome-2:#103830;--org-accent:#16836e;--org-accent-hover:#0f6958;--org-accent-soft:#e8f8f3;--org-accent-2:#d39a25;--org-on-accent:#fff;--org-focus:rgba(22,131,110,.2);--org-shadow:rgba(24,74,66,.2)}
.crm-body.organization-theme--violet{--org-chrome:#3e315f;--org-chrome-2:#2d2348;--org-accent:#7655c7;--org-accent-hover:#6041ad;--org-accent-soft:#f1edff;--org-accent-2:#cf5b91;--org-on-accent:#fff;--org-focus:rgba(118,85,199,.2);--org-shadow:rgba(62,49,95,.2)}
.crm-body.organization-theme--rose{--org-chrome:#5f3042;--org-chrome-2:#462332;--org-accent:#bd4c72;--org-accent-hover:#9e385d;--org-accent-soft:#fff0f5;--org-accent-2:#d59a25;--org-on-accent:#fff;--org-focus:rgba(189,76,114,.2);--org-shadow:rgba(95,48,66,.2)}
.crm-body.organization-theme--graphite{--org-chrome:#343a46;--org-chrome-2:#272c35;--org-accent:#5f6b7a;--org-accent-hover:#46515f;--org-accent-soft:#eef1f4;--org-accent-2:#9a6c35;--org-on-accent:#fff;--org-focus:rgba(95,107,122,.2);--org-shadow:rgba(39,44,53,.2)}
.crm-body .erp-topbar,.crm-body .module-rail__brand{background:var(--org-chrome)!important;box-shadow:0 5px 20px var(--org-shadow)}
.crm-body .module-rail__brand>span,.crm-body .account-avatar,.crm-body .module-rail__avatar{color:var(--org-on-accent);background:linear-gradient(135deg,color-mix(in srgb,var(--org-accent) 76%,#fff),var(--org-accent));border-color:color-mix(in srgb,var(--org-accent) 55%,#fff);box-shadow:0 7px 18px color-mix(in srgb,var(--org-accent) 28%,transparent)}
.crm-body .module-rail__item:hover>i,.crm-body .module-rail__utility:hover{color:var(--org-accent-hover)}
.crm-body .module-rail__item.is-current{color:var(--org-accent-hover);border-color:color-mix(in srgb,var(--org-accent) 35%,#e4e7ec);background:var(--org-accent-soft)}
.crm-body .module-rail__item.is-current>i{color:var(--org-accent)}
.crm-body .module-rail__item.is-current::after{background:var(--org-accent)}
.crm-body .module-context-bar{--module-accent:var(--org-accent);--module-soft:var(--org-accent-soft)}
.crm-body .module-context-bar__module{border-color:var(--org-accent)}
.crm-body .module-context-bar__links>a.is-current,.crm-body .module-context-bar__links>.crm-context-menu.is-current>summary{color:var(--org-accent-hover);background:var(--org-accent-soft)}
.crm-body :is(button.primary,a.primary,.btn-primary,.search button,.form-actions button.primary){border-color:var(--org-accent)!important;background:var(--org-accent)!important;color:var(--org-on-accent)!important;box-shadow:0 5px 14px color-mix(in srgb,var(--org-accent) 22%,transparent)}
.crm-body :is(button.primary,a.primary,.btn-primary,.search button,.form-actions button.primary):hover{border-color:var(--org-accent-hover)!important;background:var(--org-accent-hover)!important;color:var(--org-on-accent)!important}
.crm-body :is(input,select,textarea):focus{border-color:var(--org-accent)!important;box-shadow:0 0 0 3px var(--org-focus)!important}
.crm-body :is(input[type=checkbox],input[type=radio]){accent-color:var(--org-accent)}
.crm-body .page-head__icon{border-color:color-mix(in srgb,var(--org-accent) 22%,#e4eaf1);color:var(--org-accent);background:var(--org-accent-soft)}
.crm-body .page-head small,.crm-body .eyebrow{color:var(--org-accent-hover)}
.crm-body .metrics article::before{background:var(--org-accent)}
.crm-body .status-active,.crm-body .badge.active{border-color:color-mix(in srgb,var(--org-accent) 24%,#dbe4ed);color:var(--org-accent-hover);background:var(--org-accent-soft)}

/* Explainable lead workspace: decision-first, usable without an AI provider. */
.lead-command{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:12px;padding:14px}
.lead-command__filters{display:grid;grid-template-columns:minmax(260px,2fr) minmax(190px,1fr) auto;align-items:end;gap:10px;flex:1}
.lead-command__filters label{display:grid;gap:5px;color:var(--erp-ink);font-size:.78rem;font-weight:800}.lead-command__filters input,.lead-command__filters select{width:100%}
.lead-command__legend{display:flex;flex-wrap:wrap;gap:10px;color:var(--erp-muted);font-size:.72rem}.lead-command__legend span{display:inline-flex;align-items:center;gap:5px}.lead-dot{width:8px;height:8px;border-radius:50%;background:#94a3b8}.lead-dot--a{background:#14936f}.lead-dot--b{background:#2878c8}.lead-dot--risk{background:#d97706}
.lead-worklist{display:grid;gap:9px}.lead-card{overflow:hidden;border:1px solid #dfe6ef;border-radius:13px;background:#fff;box-shadow:0 3px 12px rgba(28,48,76,.035)}.lead-card:hover{border-color:color-mix(in srgb,var(--org-accent) 36%,#dfe6ef);box-shadow:0 8px 22px color-mix(in srgb,var(--org-shadow) 55%,transparent)}
.lead-card__main{display:grid;grid-template-columns:70px minmax(220px,1.2fr) minmax(250px,1.4fr) minmax(190px,.8fr) 22px;align-items:center;gap:14px;padding:13px 15px;color:inherit;text-decoration:none}
.lead-score{display:grid;width:58px;height:58px;place-content:center;border-radius:15px;text-align:center;background:#f3f6fa}.lead-score strong{font-size:1.25rem;line-height:1}.lead-score span{margin-top:5px;font-size:.62rem}.lead-score--a{color:#087a59;background:#e8f8f3}.lead-score--b{color:#1e62a8;background:#eaf4ff}.lead-score--c{color:#a16207;background:#fff7d6}.lead-score--d{color:#b42318;background:#fff0ef}
.lead-card__identity{min-width:0}.lead-card__identity>div{display:flex;align-items:center;gap:8px}.lead-card__identity h2{overflow:hidden;margin:0;color:var(--erp-ink);font-size:.91rem;text-overflow:ellipsis;white-space:nowrap}.lead-card__identity p{margin:3px 0;color:#64748b;font-size:.76rem}.lead-card__identity small{display:flex;flex-wrap:wrap;gap:10px;color:#8491a4;font-size:.68rem}
.lead-card__signal{display:grid;min-width:0;gap:3px;padding-inline-start:14px;border-inline-start:1px solid #e8edf3}.lead-card__signal small{color:var(--org-accent-hover);font-size:.65rem;font-weight:800}.lead-card__signal strong{color:var(--erp-ink);font-size:.8rem}.lead-card__signal span{overflow:hidden;color:#738197;font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}
.lead-card__meta{display:grid;gap:4px;color:#718096;font-size:.68rem}.lead-card__meta span{display:flex;justify-content:space-between;gap:8px}.lead-card__meta b{color:#344054}.lead-card__arrow{color:var(--org-accent)}
.lead-brief-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}.lead-decision-card{display:grid;align-content:start;min-height:210px;padding:16px;border:1px solid #dfe6ef;border-radius:14px;background:#fff;box-shadow:0 3px 12px rgba(28,48,76,.035)}.lead-decision-card>header{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#66758b;font-size:.72rem}.lead-decision-card h2{margin:22px 0 5px;color:var(--erp-ink);font-size:1rem}.lead-decision-card p{margin:0;color:#6b778c;font-size:.74rem;line-height:1.9}.lead-decision-card>a{align-self:end;margin-top:16px;color:var(--org-accent-hover);font-size:.73rem;font-weight:800;text-decoration:none}
.lead-score-ring{display:grid;width:90px;height:90px;margin:14px auto 8px;place-content:center;border-radius:50%;background:radial-gradient(circle at center,#fff 58%,transparent 60%),conic-gradient(var(--org-accent) calc(var(--score)*1%),#e9eef4 0);text-align:center}.lead-score-ring strong{font-size:1.55rem;line-height:1}.lead-score-ring small{color:#718096;font-size:.62rem}.lead-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:22px}.lead-facts span{display:grid;padding:9px;border-radius:10px;background:#f7f9fc;color:#718096;font-size:.66rem}.lead-facts b{color:var(--erp-ink);font-size:.9rem}.lead-health{padding:4px 8px;border-radius:999px;font-size:.65rem}.lead-health--good{color:#087a59;background:#e8f8f3}.lead-health--watch{color:#a16207;background:#fff7d6}.lead-health--risk{color:#b42318;background:#fff0ef}
.lead-duplicates{display:flex;flex-wrap:wrap;gap:7px;margin-top:7px}.lead-duplicates a{padding:5px 8px;border:1px solid #efcf8b;border-radius:8px;color:#8a5b00;background:#fff;text-decoration:none}
.lead-detail-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,.8fr);gap:12px}.lead-detail-layout__side{display:grid;align-content:start;gap:12px}.lead-timeline>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.lead-timeline>header h2,.lead-timeline>header p{margin:0}.lead-timeline>header p{color:#718096;font-size:.7rem}.lead-timeline>header a{color:var(--org-accent-hover);font-size:.72rem;text-decoration:none}.lead-timeline>div>article{display:grid;grid-template-columns:38px 1fr;gap:10px;padding:12px 15px;border-top:1px solid #edf0f4}.lead-timeline__icon{display:grid;width:34px;height:34px;place-items:center;border-radius:10px;color:var(--org-accent);background:var(--org-accent-soft)}.lead-timeline article header{display:flex;align-items:center;justify-content:space-between;gap:8px}.lead-timeline article p{margin:3px 0;color:#66758b;font-size:.73rem}.lead-timeline article small{color:#8a96a8;font-size:.66rem}
.lead-profile dl{margin:0}.lead-profile dl>div{display:flex;justify-content:space-between;gap:10px;padding:9px 14px;border-top:1px solid #edf0f4;font-size:.72rem}.lead-profile dt{color:#718096}.lead-profile dd{margin:0;color:var(--erp-ink);font-weight:750}.lead-reasons{padding-bottom:10px}.lead-reason{display:flex;align-items:start;gap:7px;margin:0;padding:8px 13px;color:#5f6d81;font-size:.7rem;line-height:1.7}.lead-reason--positive i{color:#14936f}.lead-reason--negative i{color:#d97706}.lead-reasons hr{border:0;border-top:1px solid #edf0f4}.lead-reasons>small,.lead-reasons>p:not(.lead-reason){display:block;margin:5px 13px;color:#718096;font-size:.68rem}
.lead-ai-card{padding:14px;background:linear-gradient(145deg,#fff,var(--org-accent-soft))}.lead-ai-card>header{display:flex;align-items:center;justify-content:space-between}.lead-ai-card h2,.lead-ai-card small{display:block;margin:0}.lead-ai-card small{color:#718096;font-size:.65rem}.lead-ai-card>header>i{color:var(--org-accent);font-size:1.15rem}.lead-ai-card>p{white-space:pre-line;color:#536176;font-size:.72rem;line-height:1.9}.lead-ai-card>button{width:100%}
@media(max-width:1000px){.lead-card__main{grid-template-columns:60px 1fr 1fr}.lead-card__meta{display:none}.lead-brief-grid{grid-template-columns:1fr 1fr}.lead-decision-card:last-child{grid-column:1/-1}.lead-detail-layout{grid-template-columns:1fr}}
@media(max-width:700px){.lead-command{align-items:stretch;flex-direction:column}.lead-command__filters{grid-template-columns:1fr}.lead-card__main{grid-template-columns:52px 1fr 18px}.lead-card__signal{grid-column:1/-1;border-inline-start:0;border-top:1px solid #edf0f4;padding:9px 0 0}.lead-brief-grid{grid-template-columns:1fr}.lead-decision-card:last-child{grid-column:auto}}

.organization-theme-panel{overflow:hidden}.organization-theme-panel>form{padding:20px}.organization-theme-field{min-width:0;margin:0;padding:0;border:0}.organization-theme-field>legend{color:var(--erp-ink);font-size:1rem;font-weight:850}.organization-theme-field>p{margin:4px 0 16px;color:var(--erp-muted);font-size:.8125rem}.organization-theme-options{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px}.organization-theme-option{--theme-chrome:#3f4554;--theme-accent:#e6a500;--theme-soft:#fff7d6;position:relative;display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:12px;min-height:88px;padding:13px;border:1px solid #dfe5ec;border-radius:12px;background:#fff;cursor:pointer}.organization-theme-option--ocean{--theme-chrome:#173b66;--theme-accent:#2878c8;--theme-soft:#eaf4ff}.organization-theme-option--emerald{--theme-chrome:#184a42;--theme-accent:#16836e;--theme-soft:#e8f8f3}.organization-theme-option--violet{--theme-chrome:#3e315f;--theme-accent:#7655c7;--theme-soft:#f1edff}.organization-theme-option--rose{--theme-chrome:#5f3042;--theme-accent:#bd4c72;--theme-soft:#fff0f5}.organization-theme-option--graphite{--theme-chrome:#343a46;--theme-accent:#5f6b7a;--theme-soft:#eef1f4}.organization-theme-option>input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}.organization-theme-option__preview{display:grid;width:62px;height:50px;grid-template-columns:19px 1fr;grid-template-rows:14px 1fr;overflow:hidden;border:1px solid color-mix(in srgb,var(--theme-chrome) 18%,#e5e7eb);border-radius:8px;background:#fff}.organization-theme-option__preview i:first-child{grid-row:1/-1;background:var(--theme-chrome)}.organization-theme-option__preview i:nth-child(2){background:color-mix(in srgb,var(--theme-chrome) 82%,#fff)}.organization-theme-option__preview i:last-child{margin:7px;border-radius:4px;background:var(--theme-accent)}.organization-theme-option>span:nth-of-type(2){display:grid;gap:4px}.organization-theme-option strong{color:#344256;font-size:.875rem}.organization-theme-option small{color:#718096;font-size:.75rem}.organization-theme-option>em{display:none;position:absolute;inset-block-start:8px;inset-inline-end:9px;align-items:center;gap:3px;color:var(--theme-accent);font-size:.6875rem;font-style:normal;font-weight:850}.organization-theme-option:hover{border-color:color-mix(in srgb,var(--theme-accent) 45%,#dfe5ec)}.organization-theme-option:has(input:checked){border-color:var(--theme-accent);background:var(--theme-soft);box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-accent) 14%,transparent)}.organization-theme-option:has(input:checked)>em{display:inline-flex}.organization-theme-option:focus-within{outline:3px solid color-mix(in srgb,var(--theme-accent) 20%,transparent);outline-offset:2px}.organization-theme-panel .form-actions{margin:20px -20px -20px;padding:14px 20px;border-top:1px solid var(--erp-line);background:#fafbfd}
@media(max-width:850px){.organization-theme-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.organization-theme-options{grid-template-columns:1fr}.organization-theme-panel>form{padding:14px}.organization-theme-panel .form-actions{margin:16px -14px -14px;padding:13px 14px}}
/* Action completion uses the same compact, evidence-first form language as
   the rest of the CRM workspace. */
.activity-completion-layout{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(0,1.7fr);gap:16px;align-items:start}
.activity-context-card{position:sticky;top:150px;padding:18px}
.activity-context-card header{margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--erp-line)}
.activity-context-card h2{margin:0;font-size:.95rem}
.activity-context-card dl{display:grid;gap:0;margin:0}
.activity-context-card dl>div{display:grid;grid-template-columns:75px minmax(0,1fr);gap:10px;padding:10px 0;border-bottom:1px solid var(--erp-line-soft)}
.activity-context-card dl>div:last-child{border-bottom:0}
.activity-context-card dt{color:var(--erp-muted);font-size:.74rem}
.activity-context-card dd{margin:0;color:var(--erp-ink);font-size:.8rem;font-weight:700;line-height:1.8}
.activity-completion-form{padding:18px}
.activity-completion-form>header{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--erp-line)}
.activity-completion-form>header h2{margin:0;font-size:1rem}
.activity-completion-form>header p{margin:5px 0 0;color:var(--erp-muted);font-size:.76rem}
.table-action{display:inline-flex;align-items:center;gap:5px;margin-inline-start:7px;padding:5px 8px;border:1px solid var(--erp-line);border-radius:8px;color:var(--erp-primary);font-size:.72rem;font-weight:800;background:#fff}
.table-action:hover{border-color:var(--erp-primary);background:var(--erp-primary-soft)}
@media(max-width:820px){.activity-completion-layout{grid-template-columns:1fr}.activity-context-card{position:static}}
.forecast-grid{margin-top:16px}.forecast-row{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--erp-line-soft)}.forecast-row:last-child{border-bottom:0}.forecast-row>i{width:7px;height:34px;border-radius:8px;background:var(--stage-color,var(--erp-primary))}.forecast-row>div{display:grid;gap:2px}.forecast-row b{font-size:.8rem}.forecast-row small{color:var(--erp-muted);font-size:.7rem}.forecast-row>span{color:var(--erp-ink);font-size:.82rem;font-weight:900}.forecast-row>span small{display:block;text-align:end;font-weight:500}.forecast-reason{display:inline-flex;margin:2px;padding:4px 7px;border-radius:999px;color:#9a3412;background:#fff7ed;font-size:.68rem;font-weight:700}
.service-queue-metrics{margin-bottom:16px}.service-queue-filter{grid-template-columns:minmax(220px,1.5fr) repeat(4,minmax(135px,.7fr)) auto}.service-row--risk{background:#fffaf8}.service-row--risk td:first-child{box-shadow:inset -3px 0 #dc2626}.sla-state{display:inline-flex;align-items:center;gap:5px;color:var(--erp-muted);font-size:.72rem;font-weight:700}.sla-state--overdue{color:#b42318}.sla-state--ok{color:#18794e}.badge--critical{color:#991b1b;background:#fee2e2}.badge--high{color:#9a3412;background:#ffedd5}@media(max-width:1100px){.service-queue-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.service-queue-filter .field-group--grow{grid-column:1/-1}}
