:root {
  color-scheme: light;
  --nex-red: #e30613;
  --nex-black: #050505;
  --nex-charcoal: #24272d;
  --nex-line: #e6e7eb;
  --nex-soft: #f4f5f7;
  --nex-gold: #c9a24a;
}

/* NEX Rewards V4 - isolated, read-only foundation. */
.nex-rewards-shell {
  --rewards-red: #e30613;
  --rewards-ink: #111318;
  --rewards-soft: #f4f6f8;
  display: grid;
  gap: 16px;
  max-width: 1500px;
  margin: 0 auto;
  padding-bottom: 28px;
}

.rewards-admin-tabs,
.rewards-ledger-tabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 3px 0 7px;
  scrollbar-width: thin;
}

.rewards-admin-tabs button,
.rewards-ledger-tabs button {
  flex: 0 0 auto;
  min-height: 40px;
  border: 1px solid #d8dde5;
  background: #fff;
  color: #222733;
  padding: 9px 13px;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.rewards-admin-tabs button.active,
.rewards-ledger-tabs button.active {
  border-color: var(--rewards-red);
  background: var(--rewards-red);
  color: #fff;
}

.rewards-network-intro,
.rewards-explorer-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 280px) minmax(150px, 190px);
  gap: 18px;
  align-items: end;
}

.rewards-network-intro {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.rewards-explorer-controls label,
.rewards-candidate-search {
  display: grid;
  gap: 7px;
  color: #555d6c;
  font-size: 12px;
  font-weight: 800;
}

.rewards-explorer-controls input,
.rewards-explorer-controls select,
.rewards-candidate-search input {
  width: 100%;
  min-height: 44px;
  border: 1px solid #cfd5df;
  background: #fff;
  padding: 10px 12px;
  color: #111318;
  font: inherit;
}

.rewards-privacy-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #a8dcc6;
  background: #effaf5;
  color: #126746;
  padding: 9px 12px;
  font-size: 12px;
  font-weight: 900;
}

.rewards-network-table-wrap {
  width: 100%;
  overflow-x: auto;
  border: 1px solid #dde2ea;
  background: #fff;
}

.rewards-network-table {
  width: 100%;
  min-width: 760px;
  border-collapse: collapse;
  font-size: 12px;
}

.rewards-network-table th,
.rewards-network-table td {
  padding: 12px;
  border-bottom: 1px solid #e4e8ee;
  text-align: left;
  vertical-align: middle;
  white-space: nowrap;
}

.recruiting-admin-shell {
  max-width: 1540px;
  margin: 0 auto;
  padding: 18px;
  display: grid;
  gap: 16px;
  color: #121722;
}

.recruiting-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 320px);
  gap: 18px;
  align-items: stretch;
  background: #111318;
  color: #fff;
  border-top: 6px solid var(--nex-red);
  padding: 24px;
}

.recruiting-hero h2 {
  margin: 2px 0 8px;
  font-size: clamp(28px, 4vw, 44px);
  line-height: 1;
  letter-spacing: 0;
}

.recruiting-hero p {
  max-width: 860px;
  margin: 0;
  color: #d9dde6;
  line-height: 1.55;
}

.recruiting-hero-status {
  display: grid;
  align-content: center;
  gap: 6px;
  background: #fff;
  color: #111318;
  border-left: 6px solid var(--nex-red);
  padding: 18px;
}

.recruiting-hero-status span,
.recruiting-panel h3,
.recruiting-metric span {
  text-transform: uppercase;
  letter-spacing: .12em;
  font-size: 11px;
  font-weight: 900;
  color: #747d8d;
}

.recruiting-hero-status strong {
  font-size: 24px;
}

.recruiting-tabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 4px;
}

.recruiting-tabs button,
.recruiting-row-actions button {
  border: 1px solid #d8dde6;
  background: #fff;
  color: #121722;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.recruiting-tabs button {
  min-height: 42px;
  padding: 10px 14px;
  flex: 0 0 auto;
}

.recruiting-tabs button.active {
  background: var(--nex-red);
  color: #fff;
  border-color: var(--nex-red);
}

.recruiting-workspace-nav {
  align-items: start;
  display: grid;
  gap: 12px;
  grid-template-columns: 220px minmax(0, 1fr);
}

.recruiting-area-nav,
.recruiting-section-nav {
  background: #fff;
  border: 1px solid #dfe4ec;
  padding: 8px;
}

.recruiting-area-nav {
  display: grid;
  gap: 6px;
}

.recruiting-section-nav {
  align-content: start;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  overflow: visible;
}

.recruiting-area-nav button,
.recruiting-section-nav button {
  align-items: center;
  background: #fff;
  border: 1px solid transparent;
  color: #202633;
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-size: 13px;
  font-weight: 900;
  gap: 8px;
  min-height: 40px;
  padding: 9px 11px;
  text-align: left;
}

.recruiting-system-strip {
  background: #fff;
  border: 1px solid #dfe4ec;
  display: grid;
  gap: 0;
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.recruiting-system-strip span {
  border-right: 1px solid #e7ebf1;
  color: #647083;
  display: grid;
  font-size: 11px;
  font-weight: 850;
  gap: 2px;
  min-height: 54px;
  padding: 10px 12px;
}

.recruiting-system-strip span:last-child {
  border-right: 0;
}

.recruiting-system-strip strong {
  color: #111318;
  font-size: 12px;
  text-transform: uppercase;
}

.recruiting-system-control {
  justify-self: start;
}

.recruiting-system-control summary {
  align-items: center;
  background: #fff;
  border: 1px solid #dfe4ec;
  color: #111318;
  cursor: pointer;
  display: inline-flex;
  font-size: 12px;
  font-weight: 950;
  gap: 7px;
  list-style: none;
  min-height: 34px;
  padding: 7px 10px;
  text-transform: uppercase;
}

.recruiting-system-control summary::-webkit-details-marker {
  display: none;
}

.recruiting-system-control[open] {
  justify-self: stretch;
}

.recruiting-system-strip button {
  background: #111318;
  border: 0;
  color: #fff;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 950;
  min-height: 54px;
  padding: 10px 12px;
}

.recruiting-area-nav button.active,
.recruiting-section-nav button.active {
  background: #111318;
  border-color: #111318;
  color: #fff;
}

.recruiting-area-nav button:hover,
.recruiting-section-nav button:hover {
  border-color: var(--nex-red);
}

.recruiting-metric-grid,
.recruiting-import-summary {
  display: grid;
  grid-template-columns: repeat(6, minmax(120px, 1fr));
  gap: 10px;
}

.recruiting-metric {
  background: #fff;
  border: 1px solid #dfe4ec;
  padding: 14px;
  min-height: 104px;
  display: grid;
  align-content: center;
  gap: 6px;
}

.recruiting-metric strong {
  font-size: 30px;
  line-height: 1;
}

.recruiting-metric small {
  color: #626b7a;
  line-height: 1.35;
}

.recruiting-metric.good {
  border-color: #b8dec9;
  background: #f0faf4;
}

.recruiting-metric.hot {
  border-color: #ffc4ca;
  background: #fff5f6;
}

.recruiting-metric.watch {
  border-color: #fed7aa;
  background: #fff7ed;
}

.recruiting-command-center,
.recruiting-panel {
  background: #fff;
  border: 1px solid #dfe4ec;
  padding: 18px;
}

.recruiting-command-center {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
}

.recruiting-command-center.intelligence {
  border-top: 5px solid var(--nex-red);
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.recruiting-command-center.ai-core {
  border-color: #cbd5e1;
  box-shadow: inset 0 5px 0 #111318;
}

.recruiting-command-center.radar {
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  border-color: #d6dee9;
  box-shadow: inset 0 5px 0 var(--nex-red);
}

.recruiting-command-center.growth {
  background: linear-gradient(135deg, #111318 0%, #202630 58%, #fff 58%);
  border-color: #111318;
  box-shadow: inset 0 5px 0 var(--nex-red);
  color: #ffffff;
}

.recruiting-command-center.growth h3,
.recruiting-command-center.growth p {
  color: inherit;
}

.recruiting-command-center.growth .eyebrow {
  color: #ffb7bd;
}

.recruiting-command-center.go-live {
  background: linear-gradient(135deg, #111318 0%, #171b22 64%, #fff5f6 64%);
  border-color: #111318;
  box-shadow: inset 0 5px 0 var(--nex-red);
  color: #ffffff;
}

.recruiting-command-center.go-live h3,
.recruiting-command-center.go-live p {
  color: inherit;
}

.recruiting-command-center.go-live .eyebrow {
  color: #ffb7bd;
}

.recruiting-command-center h3,
.recruiting-panel h3 {
  margin: 0 0 8px;
  color: #111318;
}

.recruiting-day-start {
  align-items: center;
  background: #111318;
  border-top: 6px solid var(--nex-red);
  color: #ffffff;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 20px;
}

.recruiting-day-start h3 {
  font-size: clamp(24px, 3vw, 38px);
  line-height: 1.05;
  margin: 2px 0 8px;
}

.recruiting-day-start > div > strong {
  color: #ffffff;
  display: block;
  font-size: 18px;
  font-weight: 950;
  margin-bottom: 8px;
}

.recruiting-day-start p {
  color: #d9dde6;
  line-height: 1.5;
  margin: 0;
  max-width: 780px;
}

.recruiting-daily-workbench {
  align-items: start;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr);
}

.recruiting-morning-plan {
  background: #fff;
  border: 1px solid #dfe4ec;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.recruiting-morning-plan span {
  border-right: 1px solid #e8ecf2;
  color: #596273;
  display: grid;
  font-size: 13px;
  font-weight: 850;
  gap: 3px;
  padding: 14px;
}

.recruiting-morning-plan span:last-child {
  border-right: 0;
}

.recruiting-morning-plan strong {
  color: #111318;
  font-size: 11px;
  text-transform: uppercase;
}

.recruiting-operator-workspace {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(220px, .65fr) minmax(420px, 1.35fr) minmax(280px, .85fr);
}

.recruiting-operator-workspace.power-session {
  grid-template-columns: minmax(240px, 320px) minmax(420px, 1fr) minmax(280px, 360px);
  min-height: calc(100vh - 210px);
}

.forge-flow-active {
  background: #eef2f7;
  min-height: 100vh;
}

.forge-flow-topbar {
  align-items: center;
  background: #111318;
  border-left: 6px solid var(--nex-red);
  color: #ffffff;
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 16px;
  position: sticky;
  top: 0;
  z-index: 6;
}

.forge-flow-topbar h2 {
  color: #ffffff;
  margin: 0;
}

.recruiting-call-block-strip {
  align-items: center;
  background: #ffffff;
  border: 1px solid #dfe4ec;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(220px, .45fr) minmax(0, 1fr);
  padding: 14px;
}

.recruiting-call-block-strip.active {
  border-top: 5px solid var(--nex-red);
}

.recruiting-call-block-strip h3 {
  margin: 0;
}

.recruiting-call-blocks {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.recruiting-call-blocks button {
  align-items: center;
  background: #f8fafc;
  border: 1px solid #d8dee9;
  color: #111318;
  cursor: pointer;
  display: grid;
  gap: 4px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  min-height: 48px;
  padding: 9px 10px;
  text-align: left;
}

.recruiting-call-blocks button:hover,
.recruiting-call-blocks button:focus,
.recruiting-call-blocks button.active {
  background: #111318;
  border-color: #111318;
  color: #ffffff;
  outline: none;
}

.recruiting-call-blocks span {
  font-size: 12px;
  font-weight: 900;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.recruiting-call-blocks strong {
  background: var(--nex-red);
  color: #ffffff;
  font-size: 12px;
  font-weight: 950;
  min-width: 26px;
  padding: 4px 6px;
  text-align: center;
}

.recruiting-power-actions {
  display: grid;
  gap: 12px;
}

.recruiting-call-now {
  align-items: center;
  background: var(--nex-red);
  border: 0;
  color: #ffffff;
  cursor: pointer;
  display: grid;
  font: inherit;
  font-size: 22px;
  font-weight: 950;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  min-height: 68px;
  padding: 14px 16px;
  text-align: left;
}

.recruiting-call-now:disabled {
  cursor: not-allowed;
  opacity: .55;
}

.recruiting-call-now small {
  background: rgba(0, 0, 0, .22);
  color: #ffffff;
  font-size: 11px;
  padding: 5px 7px;
  text-transform: uppercase;
}

.recruiting-fast-disposition-bar {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.recruiting-fast-disposition-bar button {
  background: #ffffff;
  border: 1px solid #d8dee9;
  color: #111318;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 950;
  min-height: 46px;
  padding: 9px;
}

.recruiting-fast-disposition-bar button:hover,
.recruiting-fast-disposition-bar button:focus {
  background: #111318;
  border-color: #111318;
  color: #ffffff;
  outline: none;
}

.recruiting-power-note {
  background: #f8fafc;
  border: 1px solid #dfe4ec;
}

.recruiting-power-note summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 8px;
  font-weight: 950;
  padding: 12px;
}

.recruiting-next-up-panel,
.recruiting-nia-panel {
  position: sticky;
  top: 12px;
}

.recruiting-focus-card,
.recruiting-closer-brief {
  display: grid;
  gap: 14px;
}

.recruiting-focus-card header {
  align-items: start;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.recruiting-focus-card header h3 {
  font-size: clamp(24px, 4vw, 40px);
  line-height: 1;
  margin: 0 0 8px;
  text-transform: none;
}

.recruiting-focus-card header span {
  color: #596273;
  display: block;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.4;
}

.recruiting-prospect-facts {
  border-bottom: 1px solid #e7ebf1;
  border-top: 1px solid #e7ebf1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.recruiting-prospect-facts span {
  border-right: 1px solid #e7ebf1;
  color: #111318;
  display: grid;
  font-size: 13px;
  font-weight: 850;
  gap: 3px;
  min-height: 58px;
  padding: 10px;
}

.recruiting-prospect-facts span:last-child {
  border-right: 0;
}

.recruiting-prospect-facts strong {
  color: #687182;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.recruiting-next-action.primary-objective {
  border-color: #111318;
  border-left: 6px solid var(--nex-red);
}

.recruiting-disposition-card {
  background: #f8fafc;
  border: 1px solid #dfe4ec;
  border-top: 5px solid var(--nex-red);
  display: grid;
  gap: 12px;
  padding: 14px;
}

.recruiting-disposition-buttons {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.recruiting-disposition-buttons button {
  background: #ffffff;
  border: 1px solid #d8dde6;
  color: #111318;
  cursor: pointer;
  font: inherit;
  font-weight: 950;
  min-height: 42px;
  padding: 9px;
}

.recruiting-disposition-buttons button.active,
.recruiting-disposition-buttons button:hover {
  background: #111318;
  border-color: #111318;
  color: #ffffff;
}

.recruiting-ratio-strip {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 12px;
}

.recruiting-ratio-strip span {
  background: #111318;
  border-top: 4px solid var(--nex-red);
  color: #d9dde6;
  display: grid;
  font-size: 12px;
  font-weight: 850;
  gap: 4px;
  padding: 12px;
}

.recruiting-ratio-strip strong {
  color: #ffffff;
  font-size: 24px;
  line-height: 1;
}

.recruiting-command-center p,
.recruiting-panel p,
.recruiting-card-list p {
  color: #4d5666;
  line-height: 1.55;
}

.recruiting-command-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.recruiting-metric-grid.ai-core .recruiting-metric {
  min-height: 86px;
}

.recruiting-panel.ai-core-control,
.recruiting-panel.ai-core-output {
  display: grid;
  gap: 14px;
}

.recruiting-ai-prompt-bank {
  display: grid;
  gap: 8px;
}

.recruiting-ai-prompt-bank button {
  background: #f8fafc;
  border: 1px solid #d8dee9;
  color: #111318;
  cursor: pointer;
  font: inherit;
  font-weight: 850;
  line-height: 1.35;
  min-height: 42px;
  padding: 10px 12px;
  text-align: left;
}

.recruiting-ai-prompt-bank button:hover,
.recruiting-ai-prompt-bank button:focus {
  border-color: var(--nex-red);
  outline: none;
}

.recruiting-ai-guardrail {
  align-items: center;
  background: #111318;
  color: #ffffff;
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr);
  padding: 12px;
}

.recruiting-ai-guardrail span {
  color: #e5e7eb;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.4;
}

.recruiting-ai-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.recruiting-ai-grid div,
.recruiting-memory-list article {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  display: grid;
  gap: 5px;
  padding: 12px;
}

.recruiting-ai-grid strong,
.recruiting-memory-list strong {
  color: #111318;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.recruiting-ai-grid span,
.recruiting-memory-list p,
.recruiting-memory-list small {
  color: #4b5563;
  font-size: 13px;
  line-height: 1.45;
}

.recruiting-memory-list {
  display: grid;
  gap: 8px;
  max-height: 620px;
  overflow: auto;
  padding-right: 4px;
}

.recruiting-two-column {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.recruiting-two-column.wide-left {
  grid-template-columns: minmax(250px, 360px) minmax(0, 1fr);
}

.recruiting-list-row,
.recruiting-card-list article {
  display: grid;
  gap: 5px;
  border: 1px solid #e2e6ee;
  padding: 12px;
  margin-top: 8px;
}

.radar-opportunity-card {
  border-left: 4px solid var(--nex-red) !important;
}

.radar-opportunity-card > strong {
  font-size: 17px;
}

.recruiting-list-row span,
.recruiting-list-row small,
.recruiting-card-list span,
.recruiting-card-list small,
.recruiting-table small {
  display: block;
  color: #697385;
  font-size: 12px;
  line-height: 1.35;
}

.recruiting-table-tools,
.recruiting-form-row,
.recruiting-settings-grid {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(140px, 220px) auto;
  gap: 10px;
  align-items: end;
  margin-bottom: 14px;
}

.recruiting-form-row {
  grid-template-columns: minmax(180px, 260px) minmax(280px, 1fr) minmax(180px, 280px) auto;
}

.recruiting-form-row.compact {
  grid-template-columns: minmax(180px, 280px) minmax(180px, 240px) minmax(150px, 220px) auto;
}

.recruiting-table-tools input,
.recruiting-table-tools select,
.recruiting-form-row input,
.recruiting-form-row select,
.recruiting-form-row textarea,
.recruiting-import-grid input,
.recruiting-import-grid textarea,
.recruiting-step-editor input,
.recruiting-step-editor textarea,
.recruiting-step-editor select,
.recruiting-settings-grid input,
.recruiting-settings-grid textarea {
  width: 100%;
  min-height: 42px;
  border: 1px solid #cfd5df;
  background: #fff;
  padding: 10px 12px;
  font: inherit;
}

.recruiting-form-row textarea,
.recruiting-import-grid textarea,
.recruiting-step-editor textarea,
.recruiting-settings-grid textarea {
  min-height: 112px;
  resize: vertical;
}

.recruiting-table-wrap {
  overflow-x: auto;
  border: 1px solid #e0e5ed;
}

.recruiting-table {
  width: 100%;
  min-width: 980px;
  border-collapse: collapse;
  font-size: 13px;
}

.recruiting-table th,
.recruiting-table td {
  padding: 12px;
  border-bottom: 1px solid #e8ecf2;
  text-align: left;
  vertical-align: top;
}

.recruiting-table th {
  background: #f4f6f9;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: 11px;
  color: #697385;
}

.recruiting-status {
  display: inline-flex;
  padding: 5px 8px;
  background: #f4f6f9;
  border: 1px solid #dfe4ec;
  font-size: 11px;
  font-weight: 900;
}

.recruiting-status.status-active,
.recruiting-status.status-appointment-scheduled,
.recruiting-status.status-joined-nex {
  background: #eaf8f0;
  border-color: #b8dec9;
  color: #106238;
}

.recruiting-status.status-unsubscribed,
.recruiting-status.status-bounced {
  background: #fff1f2;
  border-color: #ffc4ca;
  color: #9f1720;
}

.recruiting-row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.recruiting-row-actions button {
  padding: 7px 9px;
  font-size: 11px;
}

.recruiting-import-grid,
.recruiting-settings-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr);
  gap: 18px;
}

.recruiting-import-summary {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-content: start;
}

.recruiting-sequence-list {
  display: grid;
  gap: 8px;
}

.recruiting-sequence-list button {
  text-align: left;
  display: grid;
  gap: 4px;
  border: 1px solid #dfe4ec;
  background: #fff;
  padding: 13px;
  cursor: pointer;
}

.recruiting-sequence-list button.active {
  border-color: var(--nex-red);
  box-shadow: inset 4px 0 0 var(--nex-red);
}

.recruiting-sequence-list span,
.recruiting-sequence-list small {
  color: #697385;
}

.recruiting-step-editor,
.recruiting-start-card {
  display: grid;
  gap: 10px;
  margin-bottom: 16px;
}

.recruiting-step-editor label,
.recruiting-settings-grid label {
  display: grid;
  gap: 6px;
  color: #4d5666;
  font-size: 12px;
  font-weight: 900;
}

.recruiting-step-editor label:has(input[type="checkbox"]),
.recruiting-settings-grid label:has(input[type="checkbox"]),
.toggle-row {
  display: flex;
  align-items: center;
  gap: 9px;
}

.recruiting-preview-box {
  border: 1px solid #dfe4ec;
  background: #f8f9fb;
  padding: 12px;
  margin-bottom: 16px;
}

.recruiting-preview-box summary {
  cursor: pointer;
  font-weight: 900;
}

.recruiting-preview-box pre {
  overflow: auto;
  white-space: pre-wrap;
  background: #fff;
  border-left: 4px solid var(--nex-red);
  padding: 12px;
  max-height: 380px;
  font-family: inherit;
  line-height: 1.5;
}

.recruiting-step-editor.simplified {
  border-bottom: 1px solid #e5e9f0;
  padding-bottom: 16px;
}

.recruiting-step-editor .wide {
  grid-column: 1 / -1;
}

.recruiting-email-visual-preview {
  background: #ffffff;
  border: 1px solid #dfe4ec;
  box-shadow: 0 16px 40px rgba(17,19,24,.08);
  display: grid;
  gap: 12px;
  margin-bottom: 16px;
  padding: 24px;
}

.recruiting-email-topbar {
  align-items: center;
  background: #111318;
  border-top: 5px solid var(--nex-red);
  color: #fff;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding: 14px 16px;
}

.recruiting-email-topbar span {
  color: #d6dbe5;
  font-size: 12px;
  font-weight: 800;
}

.recruiting-email-visual-preview h3 {
  color: #111318;
  font-size: 24px;
  letter-spacing: 0;
  margin: 0;
  text-transform: none;
}

.recruiting-email-visual-preview .lead {
  color: #2c3442;
  font-size: 16px;
  font-weight: 850;
}

.recruiting-email-visual-preview button {
  background: var(--nex-red);
  border: 0;
  color: #fff;
  cursor: default;
  font: inherit;
  font-weight: 950;
  justify-self: start;
  min-height: 42px;
  padding: 11px 15px;
}

.recruiting-email-visual-preview small {
  color: #687182;
}

.recruiting-playbook {
  display: grid;
  gap: 14px;
}

.recruiting-playbook > .recruiting-panel input {
  border: 1px solid #cfd5df;
  font: inherit;
  min-height: 44px;
  padding: 10px 12px;
  width: 100%;
}

.recruiting-card-list.playbook article {
  gap: 9px;
}

.recruiting-branch-list {
  display: grid;
  gap: 8px;
}

.recruiting-branch-list div {
  background: #f8fafc;
  border-left: 3px solid var(--nex-red);
  padding: 9px 10px;
}

.recruiting-branch-list em {
  color: #111318;
  display: block;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  margin-bottom: 3px;
}

.recruiting-branch-list p,
.recruiting-branch-list small {
  margin: 0;
}

.recruiting-start-card {
  border: 1px solid #ffd1d5;
  background: #fff8f8;
  padding: 14px;
}

.recruiting-breakdown,
.recruiting-readiness {
  display: grid;
  gap: 8px;
}

.recruiting-breakdown span,
.recruiting-readiness span {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  border: 1px solid #e1e6ee;
  padding: 10px;
}

.recruiting-breakdown em,
.recruiting-readiness em {
  font-style: normal;
  color: #4d5666;
}

.recruiting-status.status-watch {
  background: #fff7ed;
  color: #9a3412;
  border-color: #fed7aa;
}

.recruiting-status.status-good {
  background: #f0fdf4;
  color: #166534;
  border-color: #bbf7d0;
}

.recruiting-status.status-hot {
  background: #fff1f2;
  color: #b91c1c;
  border-color: #fecdd3;
}

.recruiting-metric-grid.go-live .recruiting-metric strong {
  overflow-wrap: anywhere;
  font-size: clamp(18px, 2.2vw, 28px);
  line-height: 1.08;
}

.recruiting-status-list {
  display: grid;
  gap: 8px;
}

.recruiting-status-list.compact {
  margin-top: 12px;
}

.recruiting-status-list article {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  border: 1px solid #e1e6ee;
  background: #f8fafc;
  padding: 11px;
  color: #303846;
  line-height: 1.45;
}

.recruiting-status-list article.good {
  border-color: #bbf7d0;
  background: #f0fdf4;
  color: #166534;
}

.recruiting-status-list article.watch {
  border-color: #fed7aa;
  background: #fff7ed;
  color: #9a3412;
}

.recruiting-status-list article.hot {
  border-color: #fecdd3;
  background: #fff1f2;
  color: #991b1b;
}

.recruiting-go-live-table td:first-child {
  min-width: 240px;
}

.recruiting-go-live-table .recruiting-status {
  white-space: normal;
}

.recruiting-acceptance-list {
  display: grid;
  gap: 7px;
  margin: 0;
  padding: 16px 16px 16px 34px;
  color: #303846;
}

.recruiting-card-list.go-live-review article {
  grid-template-columns: minmax(0, 1fr) auto;
}

.recruiting-correction-box {
  border-top: 1px solid #e1e6ee;
  display: grid;
  gap: 12px;
  margin-top: 18px;
  padding-top: 18px;
}

.recruiting-settings-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.recruiting-settings-grid .wide {
  grid-column: span 3;
}

.recruiting-loading {
  min-height: 220px;
  display: grid;
  place-items: center;
  gap: 10px;
  background: #fff;
  border: 1px solid #dfe4ec;
}

.recruiting-loading span {
  width: 34px;
  height: 34px;
  border: 4px solid #e2e6ee;
  border-top-color: var(--nex-red);
  border-radius: 50%;
  animation: spin .9s linear infinite;
}

.recruiting-metric-grid.command {
  grid-template-columns: repeat(4, minmax(140px, 1fr));
}

.recruiting-panel-head {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  margin-bottom: 10px;
}

.recruiting-panel-head span {
  background: #111318;
  color: #ffffff;
  font-size: 11px;
  font-weight: 950;
  padding: 6px 9px;
  text-transform: uppercase;
}

.recruiting-automation-hero {
  align-items: stretch;
  background: #111318;
  border-top: 6px solid var(--nex-red);
  color: #ffffff;
  display: grid;
  gap: 20px;
  grid-template-columns: minmax(0, 1fr) 230px;
  padding: 22px;
}

.recruiting-automation-hero h3 {
  color: #ffffff;
  font-size: 30px;
  line-height: 1.08;
  margin: 2px 0 8px;
}

.recruiting-automation-hero > div > p:not(.eyebrow) {
  color: #d5dae3;
  line-height: 1.55;
  margin: 0 0 16px;
  max-width: 850px;
}

.recruiting-automation-score {
  align-content: center;
  background: #ffffff;
  border-left: 6px solid #8b95a5;
  color: #111318;
  display: grid;
  gap: 5px;
  padding: 18px;
}

.recruiting-automation-score.good {
  border-left-color: #15803d;
}

.recruiting-automation-score.watch {
  border-left-color: #d97706;
}

.recruiting-automation-score.hot {
  border-left-color: var(--nex-red);
}

.recruiting-automation-score span,
.recruiting-automation-lane-copy > span {
  color: #6b7280;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: uppercase;
}

.recruiting-automation-score strong {
  font-size: 36px;
  line-height: 1;
}

.recruiting-automation-score em,
.recruiting-automation-score small {
  font-style: normal;
  overflow-wrap: anywhere;
}

.recruiting-automation-score em {
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.recruiting-automation-score small {
  color: #6b7280;
  font-size: 11px;
}

.recruiting-automation-board > .muted-copy {
  margin: -2px 0 12px;
}

.recruiting-google-workspace,
.recruiting-google-setup {
  align-items: center;
  background: #ffffff;
  border: 1px solid #d9dee7;
  border-left: 5px solid #d97706;
  display: grid;
  gap: 16px;
  min-width: 0;
  padding: 16px;
}

.recruiting-google-workspace {
  grid-template-columns: minmax(260px, 1.2fr) minmax(280px, .8fr) auto;
}

.recruiting-google-workspace.connected,
.recruiting-google-setup.connected {
  border-left-color: #15803d;
}

.recruiting-google-workspace-main {
  align-items: center;
  display: grid;
  gap: 12px;
  grid-template-columns: 42px minmax(0, 1fr);
  min-width: 0;
}

.recruiting-google-workspace-icon {
  align-items: center;
  background: #111318;
  color: #ffffff;
  display: flex;
  height: 42px;
  justify-content: center;
  width: 42px;
}

.recruiting-google-workspace-main span {
  color: #6b7280;
  display: block;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.recruiting-google-workspace-main strong,
.recruiting-google-setup strong {
  color: #111318;
  display: block;
  font-size: 15px;
  margin: 3px 0;
  overflow-wrap: anywhere;
}

.recruiting-google-workspace-main p,
.recruiting-google-setup small {
  color: #596273;
  display: block;
  font-size: 12px;
  line-height: 1.45;
  margin: 0;
  overflow-wrap: anywhere;
}

.recruiting-google-health {
  border-left: 1px solid #e3e7ed;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  min-width: 0;
}

.recruiting-google-health > span {
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 4px 12px;
}

.recruiting-google-health strong,
.recruiting-google-health em,
.recruiting-google-health small {
  overflow-wrap: anywhere;
}

.recruiting-google-health strong {
  color: #6b7280;
  font-size: 10px;
  text-transform: uppercase;
}

.recruiting-google-health em {
  color: #111318;
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}

.recruiting-google-health small {
  color: #747d8c;
  font-size: 10px;
}

.recruiting-google-workspace-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  justify-content: flex-end;
}

.recruiting-google-workspace-actions .btn {
  min-height: 40px;
}

.recruiting-google-setup {
  grid-template-columns: minmax(0, 1fr) auto;
}

.recruiting-google-setup .recruiting-status {
  margin-bottom: 5px;
}

.recruiting-automation-lanes {
  border-bottom: 1px solid #e3e7ed;
  display: grid;
}

.recruiting-automation-lane {
  align-items: start;
  border-left: 4px solid #cfd5df;
  border-top: 1px solid #e3e7ed;
  display: grid;
  gap: 14px;
  grid-template-columns: 42px minmax(0, 1fr) minmax(150px, 190px);
  padding: 15px 12px;
}

.recruiting-automation-lane.good {
  border-left-color: #15803d;
}

.recruiting-automation-lane.watch {
  border-left-color: #d97706;
}

.recruiting-automation-lane.hot {
  border-left-color: var(--nex-red);
}

.recruiting-automation-lane-icon {
  align-items: center;
  background: #111318;
  color: #ffffff;
  display: flex;
  height: 42px;
  justify-content: center;
  width: 42px;
}

.recruiting-automation-lane-copy {
  min-width: 0;
}

.recruiting-automation-lane-copy strong {
  color: #111318;
  display: block;
  font-size: 16px;
  margin: 3px 0 4px;
  overflow-wrap: anywhere;
}

.recruiting-automation-lane-copy p {
  color: #4b5563;
  line-height: 1.45;
  margin: 0;
}

.recruiting-automation-lane-copy ul {
  display: grid;
  gap: 4px 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  list-style: none;
  margin: 10px 0 0;
  padding: 0;
}

.recruiting-automation-lane-copy li {
  color: #6b7280;
  font-size: 11px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.recruiting-automation-lane-action {
  align-items: stretch;
  display: grid;
  gap: 8px;
  justify-items: stretch;
  min-width: 0;
}

.recruiting-automation-lane-action .recruiting-status {
  line-height: 1.35;
  max-width: 100%;
  overflow-wrap: anywhere;
  text-align: center;
  white-space: normal;
}

.recruiting-automation-lane-action button {
  align-items: center;
  background: #ffffff;
  border: 1px solid #cfd5df;
  color: #111318;
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  gap: 7px;
  justify-content: center;
  min-height: 38px;
  padding: 7px 10px;
}

.recruiting-automation-lane-action button:hover {
  border-color: var(--nex-red);
  color: var(--nex-red);
}

.recruiting-automation-columns {
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr);
}

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

.recruiting-automation-columns .recruiting-panel-head {
  align-items: flex-start;
  flex-wrap: wrap;
}

.recruiting-automation-columns .recruiting-panel-head span {
  max-width: 100%;
  overflow-wrap: anywhere;
  text-align: right;
}

.recruiting-webhook-list {
  display: grid;
}

.recruiting-webhook-list article {
  border-top: 1px solid #e3e7ed;
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 14px 0;
}

.recruiting-webhook-list article > header {
  align-items: start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.recruiting-webhook-list header > div {
  min-width: 0;
}

.recruiting-webhook-list header strong,
.recruiting-webhook-list header span {
  display: block;
}

.recruiting-webhook-list header strong {
  color: #111318;
  font-size: 14px;
  margin-bottom: 3px;
}

.recruiting-webhook-list header > div > span,
.recruiting-webhook-list article > small {
  color: #667085;
  font-size: 12px;
  line-height: 1.4;
}

.recruiting-webhook-endpoint {
  align-items: center;
  background: #f5f7fa;
  border: 1px solid #dfe4ec;
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr) 38px;
  min-width: 0;
  padding: 7px;
}

.recruiting-webhook-endpoint b {
  background: #111318;
  color: #ffffff;
  font-size: 10px;
  padding: 6px 7px;
}

.recruiting-webhook-endpoint code {
  color: #252b36;
  font-size: 11px;
  line-height: 1.4;
  min-width: 0;
  overflow-wrap: anywhere;
  white-space: normal;
}

.recruiting-webhook-endpoint button {
  align-items: center;
  background: #ffffff;
  border: 1px solid #cfd5df;
  color: #111318;
  cursor: pointer;
  display: flex;
  height: 38px;
  justify-content: center;
  padding: 0;
  width: 38px;
}

.recruiting-calendar-summary,
.recruiting-production-switches {
  border-bottom: 1px solid #e3e7ed;
  border-top: 1px solid #e3e7ed;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 14px;
}

.recruiting-calendar-summary span,
.recruiting-production-switches span {
  border-bottom: 1px solid #edf0f4;
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 10px;
}

.recruiting-calendar-summary span:nth-child(odd),
.recruiting-production-switches span:nth-child(odd) {
  border-right: 1px solid #edf0f4;
}

.recruiting-calendar-summary strong,
.recruiting-production-switches strong {
  color: #111318;
  font-size: 11px;
  text-transform: uppercase;
}

.recruiting-calendar-summary em,
.recruiting-production-switches em {
  color: #596273;
  font-size: 12px;
  font-style: normal;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.recruiting-slot-list {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 14px;
}

.recruiting-slot-list > span {
  align-items: center;
  background: #f5f7fa;
  border-left: 3px solid #15803d;
  color: #343b48;
  display: flex;
  font-size: 11px;
  font-weight: 800;
  gap: 7px;
  min-width: 0;
  overflow-wrap: anywhere;
  padding: 9px;
}

@media (max-width: 900px) {
  .recruiting-automation-hero,
  .recruiting-automation-columns,
  .recruiting-automation-columns.compact,
  .recruiting-google-workspace {
    grid-template-columns: 1fr;
  }

  .recruiting-google-health {
    border-left: 0;
    border-top: 1px solid #e3e7ed;
    padding-top: 12px;
  }

  .recruiting-google-workspace-actions {
    justify-content: flex-start;
  }

  .recruiting-automation-lane {
    grid-template-columns: 42px minmax(0, 1fr);
  }

  .recruiting-automation-lane-action {
    align-items: center;
    grid-column: 2;
    grid-template-columns: minmax(0, 1fr) auto;
  }
}

@media (max-width: 560px) {
  .recruiting-automation-hero {
    padding: 16px;
  }

  .recruiting-automation-lane {
    grid-template-columns: 36px minmax(0, 1fr);
    padding: 13px 8px;
  }

  .recruiting-automation-lane-icon {
    height: 36px;
    width: 36px;
  }

  .recruiting-automation-lane-copy ul,
  .recruiting-calendar-summary,
  .recruiting-production-switches,
  .recruiting-slot-list,
  .recruiting-google-health,
  .recruiting-google-setup {
    grid-template-columns: 1fr;
  }

  .recruiting-automation-lane-action {
    align-items: stretch;
    grid-column: 1 / -1;
    grid-template-columns: 1fr;
  }

  .recruiting-webhook-list article > header {
    align-items: stretch;
    flex-direction: column;
  }

  .recruiting-webhook-endpoint {
    grid-template-columns: auto minmax(0, 1fr) 38px;
  }

  .recruiting-calendar-summary span:nth-child(odd),
  .recruiting-production-switches span:nth-child(odd) {
    border-right: 0;
  }
}

.recruiting-queue-list {
  display: grid;
  gap: 8px;
}

.recruiting-queue-list button {
  background: #ffffff;
  border: 1px solid #dfe4ec;
  border-left: 4px solid #cfd5df;
  cursor: pointer;
  display: grid;
  gap: 4px;
  padding: 12px;
  text-align: left;
}

.recruiting-queue-list button.active,
.recruiting-queue-list button:hover {
  border-color: rgb(227 6 19 / 0.44);
  border-left-color: var(--nex-red);
  box-shadow: 0 14px 28px rgb(17 19 24 / 0.08);
}

.recruiting-queue-list button span,
.recruiting-queue-list button em,
.recruiting-queue-list button small {
  color: #687182;
  font-size: 11px;
  font-style: normal;
  font-weight: 850;
}

.recruiting-queue-list button strong {
  color: #111318;
  font-size: 15px;
  font-weight: 950;
}

.recruiting-prospect-profile {
  display: grid;
  gap: 14px;
}

.recruiting-prospect-profile header {
  align-items: start;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.recruiting-prospect-profile header h3 {
  font-size: 26px;
  line-height: 1.05;
  margin: 0 0 6px;
}

.recruiting-prospect-profile header span,
.recruiting-next-action span,
.recruiting-next-action p {
  color: #596273;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.45;
}

.recruiting-score-pill {
  align-items: center;
  background: #111318;
  border-top: 4px solid var(--nex-red);
  color: #ffffff;
  display: grid;
  justify-items: center;
  min-width: 92px;
  padding: 12px;
}

.recruiting-score-pill strong {
  font-size: 34px;
  line-height: 1;
}

.recruiting-score-pill span {
  color: #ffffff;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.recruiting-score-pill.small {
  min-width: 66px;
  padding: 8px;
}

.recruiting-score-pill.small strong {
  font-size: 24px;
}

.recruiting-metric-grid.compact {
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
}

.recruiting-next-action {
  background: #f8fafc;
  border: 1px solid #e1e6ee;
  border-left: 5px solid var(--nex-red);
  display: grid;
  gap: 5px;
  padding: 13px;
}

.recruiting-next-action strong {
  color: #111318;
  font-size: 20px;
  font-weight: 950;
}

.recruiting-next-action.compact strong {
  font-size: 16px;
}

.recruiting-script-box {
  background: #ffffff;
  border: 1px solid #dfe4ec;
  border-left: 4px solid #111318;
  display: grid;
  gap: 6px;
  padding: 12px;
}

.recruiting-script-box strong,
.recruiting-brief-list strong {
  color: #111318;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.recruiting-script-box p {
  color: #303846;
  font-size: 14px;
  line-height: 1.55;
  margin: 0;
}

.recruiting-signal-strip {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.recruiting-signal-strip.mini {
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  margin-top: 6px;
}

.recruiting-signal-strip span,
.recruiting-brief-grid span,
.recruiting-brief-list span {
  background: #f8fafc;
  border: 1px solid #e1e6ee;
  color: #4d5666;
  display: grid;
  font-size: 12px;
  font-weight: 800;
  gap: 4px;
  line-height: 1.4;
  padding: 10px;
}

.recruiting-signal-strip span.hot {
  background: #fff5f6;
  border-color: #ffc4ca;
}

.recruiting-signal-strip span.warm {
  background: #fffaf0;
  border-color: #f1d08a;
}

.recruiting-signal-strip strong,
.recruiting-brief-grid strong {
  color: #111318;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.recruiting-brief-grid,
.recruiting-brief-list {
  display: grid;
  gap: 8px;
}

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

.recruiting-brief-list.warning span {
  background: #fff7f7;
  border-color: #ffd5d8;
}

.recruiting-leadership-callout {
  align-items: start;
  background: #111318;
  border-top: 4px solid var(--nex-red);
  color: #ffffff;
  display: grid;
  gap: 11px;
  grid-template-columns: 34px minmax(0, 1fr);
  padding: 13px;
}

.recruiting-leadership-callout svg {
  color: #ffffff;
}

.recruiting-leadership-callout strong,
.recruiting-leadership-callout span,
.recruiting-leadership-callout p {
  display: block;
}

.recruiting-leadership-callout strong {
  font-size: 15px;
  font-weight: 950;
}

.recruiting-leadership-callout span {
  color: #f9c9cd;
  font-size: 12px;
  font-weight: 900;
  margin-top: 2px;
}

.recruiting-leadership-callout p {
  color: #d9dde6;
  font-size: 12px;
  line-height: 1.45;
  margin: 6px 0 0;
}

.recruiting-permission-strip {
  background: #f8f9fb;
  border: 1px solid #d9dde6;
  display: grid;
  gap: 8px;
  margin: 14px 0;
  padding: 14px;
}

.recruiting-permission-strip strong {
  color: #111318;
  font-size: 12px;
  letter-spacing: .08em;
}

.recruiting-permission-strip span {
  color: #606878;
  line-height: 1.45;
}

.recruiting-permission-strip button {
  background: #ffffff;
  border: 1px solid #cfd5df;
  color: #111318;
  font-weight: 900;
  padding: 9px 10px;
  text-align: left;
}

.recruiting-sms-thread {
  display: grid;
  gap: 10px;
  margin-top: 18px;
  max-height: 420px;
  overflow: auto;
  padding-right: 4px;
}

.recruiting-sms-thread > div {
  background: #ffffff;
  border: 1px solid #d9dde6;
  max-width: 84%;
  padding: 12px;
}

.recruiting-sms-thread > div.outbound {
  background: #111318;
  border-color: #111318;
  color: #ffffff;
  justify-self: end;
}

.recruiting-sms-thread p {
  line-height: 1.45;
  margin: 6px 0;
}

.recruiting-sms-thread small {
  color: #7d8594;
}

.recruiting-why-list,
.recruiting-action-pad,
.recruiting-mini-grid,
.recruiting-source-grid,
.recruiting-scoreboard {
  display: grid;
  gap: 10px;
}

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

.recruiting-why-list span {
  align-items: center;
  background: #fff7f7;
  border: 1px solid #ffd5d8;
  color: #4b5563;
  display: flex;
  gap: 8px;
  font-size: 12px;
  font-weight: 850;
  padding: 9px 10px;
}

.recruiting-why-list strong {
  color: var(--nex-red);
  font-size: 13px;
}

.recruiting-action-pad {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.recruiting-smart-actions,
.recruiting-contact-cell-actions {
  display: grid;
  gap: 8px;
}

.recruiting-smart-actions {
  grid-template-columns: minmax(190px, 1.25fr) repeat(4, minmax(118px, .7fr));
}

.recruiting-primary-action {
  min-height: 54px;
}

.recruiting-primary-action small {
  color: rgba(255,255,255,.78);
  display: block;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.25;
}

.recruiting-smart-actions details,
.recruiting-contact-cell-actions details {
  position: relative;
}

.recruiting-smart-actions summary,
.recruiting-contact-cell-actions summary {
  align-items: center;
  background: #fff;
  border: 1px solid #d8dde6;
  color: #111318;
  cursor: pointer;
  display: flex;
  font-size: 12px;
  font-weight: 950;
  gap: 7px;
  justify-content: center;
  list-style: none;
  min-height: 42px;
  padding: 9px;
}

.recruiting-smart-actions summary::-webkit-details-marker,
.recruiting-contact-cell-actions summary::-webkit-details-marker {
  display: none;
}

.recruiting-smart-actions details[open] summary,
.recruiting-contact-cell-actions details[open] summary {
  border-color: #111318;
  box-shadow: inset 0 -3px 0 var(--nex-red);
}

.recruiting-smart-actions details button,
.recruiting-contact-cell-actions details button {
  background: #fff;
  border: 1px solid #d8dde6;
  color: #111318;
  cursor: pointer;
  display: block;
  font: inherit;
  font-size: 12px;
  font-weight: 850;
  margin-top: 6px;
  min-height: 34px;
  padding: 7px 9px;
  text-align: left;
  width: 100%;
}

.recruiting-smart-actions details button:hover,
.recruiting-contact-cell-actions details button:hover {
  border-color: var(--nex-red);
  color: var(--nex-red);
}

.recruiting-contact-cell-actions {
  min-width: 120px;
}

.recruiting-open-prospect-context {
  background: #f7f9fc;
  border: 1px solid #dfe4ec;
  margin: 0 0 14px;
  padding: 14px;
}

.recruiting-modal-backdrop {
  align-items: center;
  background: rgb(17 19 24 / 0.62);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 18px;
  position: fixed;
  z-index: 2000;
}

.recruiting-action-modal {
  background: #ffffff;
  border: 1px solid #dfe4ec;
  box-shadow: 0 28px 80px rgb(17 19 24 / 0.24);
  display: grid;
  gap: 14px;
  max-height: min(780px, calc(100vh - 32px));
  max-width: 720px;
  overflow: auto;
  padding: 18px;
  width: min(720px, 100%);
}

.recruiting-action-modal header {
  align-items: start;
  border-bottom: 1px solid #edf1f6;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding-bottom: 12px;
}

.recruiting-action-modal h3 {
  font-size: 24px;
  line-height: 1.05;
  margin: 0 0 6px;
}

.recruiting-action-modal header span,
.recruiting-confirm-row span {
  color: #596273;
  font-size: 13px;
  font-weight: 800;
}

.recruiting-confirm-row {
  align-items: start;
  background: #fff7f8;
  border: 1px solid #ffc6cc;
  display: flex;
  gap: 10px;
  padding: 12px;
}

.recruiting-confirm-row input {
  margin-top: 2px;
  width: auto;
}

.recruiting-action-pad button,
.recruiting-link-button {
  background: #ffffff;
  border: 1px solid #d8dde6;
  color: #111318;
  cursor: pointer;
  font: inherit;
  font-weight: 950;
}

.recruiting-action-pad button {
  align-items: center;
  display: inline-flex;
  gap: 7px;
  justify-content: center;
  min-height: 42px;
  padding: 9px;
}

.recruiting-action-pad button:hover,
.recruiting-link-button:hover {
  border-color: var(--nex-red);
  color: var(--nex-red);
}

.recruiting-link-button {
  border: 0;
  color: #0f55b5;
  padding: 0;
  text-align: left;
}

.recruiting-note-box {
  display: grid;
  gap: 8px;
}

.recruiting-note-box textarea {
  border: 1px solid #cfd5df;
  font: inherit;
  min-height: 88px;
  padding: 10px 12px;
  resize: vertical;
}

.recruiting-mini-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.recruiting-mini-grid label {
  color: #596273;
  display: grid;
  font-size: 12px;
  font-weight: 900;
  gap: 6px;
}

.recruiting-mini-grid input,
.recruiting-mini-grid select {
  border: 1px solid #cfd5df;
  font: inherit;
  min-height: 38px;
  padding: 8px 10px;
}

.recruiting-timeline {
  border-top: 1px solid #e5e9ef;
  display: grid;
  gap: 8px;
  padding-top: 12px;
}

.recruiting-timeline h4 {
  color: #111318;
  font-size: 15px;
  font-weight: 950;
  margin: 0;
}

.recruiting-timeline article {
  border-left: 3px solid #cfd5df;
  display: grid;
  gap: 3px;
  padding: 4px 0 8px 10px;
}

.recruiting-timeline article time,
.recruiting-timeline article span {
  color: #687182;
  font-size: 11px;
  font-weight: 850;
}

.recruiting-timeline article strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.recruiting-timeline article p {
  margin: 2px 0 0;
}

.recruiting-source-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.recruiting-opportunity-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.recruiting-opportunity-card {
  background: #ffffff;
  border: 1px solid #dfe4ec;
  border-left: 5px solid var(--nex-red);
  display: grid;
  gap: 12px;
  padding: 14px;
}

.recruiting-opportunity-card header {
  align-items: start;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.recruiting-opportunity-card header strong {
  color: #111318;
  display: block;
  font-size: 18px;
  font-weight: 950;
}

.recruiting-opportunity-card header span,
.recruiting-closer-row span {
  color: #687182;
  display: block;
  font-size: 12px;
  font-weight: 850;
}

.recruiting-opportunity-card dl {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
}

.recruiting-opportunity-card dl div {
  background: #f8fafc;
  border: 1px solid #e5e9ef;
  padding: 8px;
}

.recruiting-opportunity-card dt {
  color: #687182;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.recruiting-opportunity-card dd {
  color: #111318;
  font-size: 12px;
  font-weight: 900;
  margin: 3px 0 0;
}

.recruiting-closer-row {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) minmax(160px, 220px);
}

.recruiting-closer-row select,
.recruiting-settings-grid select {
  border: 1px solid #cfd5df;
  font: inherit;
  min-height: 38px;
  padding: 8px 10px;
}

.recruiting-source-card {
  background: #ffffff;
  border: 1px solid #dfe4ec;
  display: grid;
  gap: 9px;
  padding: 16px;
}

.recruiting-source-card header {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.recruiting-source-card header svg {
  color: var(--nex-red);
}

.recruiting-source-card header span,
.recruiting-source-card small {
  color: #687182;
  font-size: 11px;
  font-weight: 850;
}

.recruiting-source-card h3 {
  color: #111318;
  margin: 0;
}

.recruiting-source-card div {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.recruiting-source-card div strong {
  background: #111318;
  color: #ffffff;
  font-size: 11px;
  font-weight: 950;
  padding: 6px 8px;
}

.recruiting-source-card div em {
  background: #f4f6f9;
  color: #4b5563;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
  padding: 6px 8px;
}

.recruiting-setup-page {
  display: grid;
  gap: 16px;
}

.recruiting-activation-hero {
  align-items: center;
  background: linear-gradient(135deg, #111318 0%, #1d232e 68%, #e30613 100%);
  color: #ffffff;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 22px;
}

.recruiting-activation-hero h3 {
  color: #ffffff;
  font-size: clamp(28px, 4vw, 44px);
  letter-spacing: 0;
  margin: 0 0 6px;
  text-transform: none;
}

.recruiting-activation-hero p {
  color: #eef2f7;
  font-size: 15px;
  margin: 0;
  max-width: 720px;
}

.activation-progress {
  background: #ffffff;
  border: 1px solid #dfe4ec;
  display: grid;
  gap: 0;
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

.activation-progress button {
  background: #ffffff;
  border: 0;
  border-right: 1px solid #e6ebf2;
  color: #111318;
  cursor: pointer;
  display: grid;
  gap: 5px;
  min-height: 92px;
  padding: 12px;
  text-align: left;
}

.activation-progress button:last-child {
  border-right: 0;
}

.activation-progress button:hover,
.activation-progress button:focus,
.activation-progress button.active {
  box-shadow: inset 0 5px 0 var(--nex-red);
  outline: none;
}

.activation-progress span {
  align-items: center;
  background: #111318;
  color: #ffffff;
  display: inline-grid;
  font-size: 11px;
  font-weight: 950;
  height: 24px;
  justify-content: center;
  width: 24px;
}

.activation-progress strong {
  font-size: 13px;
  line-height: 1.2;
}

.activation-progress em {
  color: #687182;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  line-height: 1.2;
  text-transform: uppercase;
}

.activation-workspace {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(220px, 300px) minmax(0, 1fr);
}

.activation-step-sidebar,
.activation-section {
  background: #ffffff;
  border: 1px solid #dfe4ec;
  display: grid;
  gap: 12px;
  padding: 16px;
}

.activation-step-sidebar {
  border-top: 5px solid var(--nex-red);
  position: sticky;
  top: 12px;
}

.activation-step-sidebar h3,
.activation-section h4 {
  margin: 0;
}

.activation-step-sidebar p,
.activation-section p {
  color: #596273;
  line-height: 1.5;
  margin: 0;
}

.activation-step-status {
  align-items: center;
  background: #111318;
  color: #ffffff;
  display: flex;
  gap: 8px;
  font-size: 12px;
  font-weight: 950;
  padding: 10px;
  text-transform: uppercase;
}

.activation-step-actions {
  display: grid;
  gap: 8px;
}

.activation-step-main {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.activation-section-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.activation-section header {
  align-items: start;
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr);
}

.activation-section details {
  background: #f8fafc;
  border: 1px solid #e5e9ef;
  padding: 10px;
}

.activation-section summary {
  cursor: pointer;
  font-weight: 950;
}

.activation-business {
  border-left: 5px solid #111318;
}

.activation-toggle {
  align-items: start;
  background: #f8fafc;
  border: 1px solid #dfe4ec;
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr);
  padding: 11px;
}

.activation-toggle input {
  margin-top: 3px;
}

.activation-toggle strong,
.activation-toggle small {
  display: block;
}

.activation-toggle small {
  color: #687182;
  font-size: 12px;
  line-height: 1.4;
  margin-top: 3px;
}

.activation-final-test {
  display: grid;
  gap: 12px;
}

.activation-test-list,
.activation-fix-list {
  display: grid;
  gap: 8px;
}

.activation-test-list article {
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  display: grid;
  gap: 4px;
  padding: 10px;
}

.activation-test-list strong {
  color: #111318;
}

.activation-test-list span,
.activation-test-list small {
  color: #596273;
  font-size: 12px;
}

.activation-fix-list button {
  align-items: center;
  background: #fff5f5;
  border: 1px solid #fecaca;
  color: #991b1b;
  cursor: pointer;
  display: flex;
  font: inherit;
  font-weight: 900;
  gap: 8px;
  justify-content: flex-start;
  padding: 10px;
  text-align: left;
}

.recruiting-setup-hero {
  align-items: center;
  background: #111318;
  border-top: 6px solid var(--nex-red);
  color: #fff;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 20px;
}

.recruiting-setup-hero h3 {
  color: #fff;
  font-size: clamp(24px, 3vw, 34px);
  letter-spacing: 0;
  text-transform: none;
}

.recruiting-setup-hero p {
  color: #d9dde6;
  margin: 0;
}

.recruiting-setup-steps {
  display: grid;
  gap: 12px;
}

.recruiting-setup-step {
  background: #fff;
  border: 1px solid #dfe4ec;
  display: grid;
  gap: 12px;
  padding: 16px;
}

.recruiting-setup-step header {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: 70px minmax(0, 1fr) minmax(150px, auto);
}

.recruiting-setup-step header span,
.recruiting-setup-step header em {
  color: #687182;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  text-transform: uppercase;
}

.recruiting-setup-step header strong {
  color: #111318;
  font-size: 20px;
  font-weight: 950;
}

.recruiting-setup-details {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.recruiting-setup-details div {
  background: #f8fafc;
  border: 1px solid #e5e9ef;
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 10px;
}

.recruiting-setup-details strong {
  color: #687182;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.recruiting-setup-details code {
  background: #fff;
  border: 1px solid #dfe4ec;
  color: #111318;
  display: block;
  font-size: 12px;
  overflow-wrap: anywhere;
  padding: 6px 7px;
}

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

@media (max-width: 900px) {
  .recruiting-admin-shell {
    padding: 10px;
  }

  .recruiting-hero,
  .recruiting-workspace-nav,
  .recruiting-operator-workspace,
  .recruiting-morning-plan,
  .recruiting-call-block-strip,
  .recruiting-activation-hero,
  .activation-workspace,
  .activation-section-grid,
  .recruiting-setup-hero,
  .recruiting-setup-step header,
  .recruiting-setup-details,
  .recruiting-prospect-facts,
  .recruiting-day-start,
  .recruiting-daily-workbench,
  .recruiting-command-center,
  .recruiting-two-column,
  .recruiting-two-column.wide-left,
  .recruiting-import-grid,
  .recruiting-table-tools,
  .recruiting-form-row,
  .recruiting-form-row.compact,
  .recruiting-settings-grid {
    grid-template-columns: 1fr;
  }

  .recruiting-metric-grid.command,
  .recruiting-source-grid,
  .recruiting-opportunity-grid,
  .recruiting-opportunity-card dl,
  .recruiting-closer-row,
  .recruiting-action-pad,
  .recruiting-smart-actions,
  .recruiting-signal-strip,
  .recruiting-brief-grid,
  .recruiting-ai-grid,
  .recruiting-call-blocks,
  .recruiting-fast-disposition-bar,
  .recruiting-disposition-buttons,
  .recruiting-ratio-strip,
  .recruiting-mini-grid {
    grid-template-columns: 1fr;
  }

  .recruiting-focus-card header,
  .recruiting-prospect-profile header {
    grid-template-columns: 1fr;
  }

  .recruiting-open-prospect-context,
  .recruiting-action-modal {
    padding: 12px;
  }

  .recruiting-modal-backdrop {
    align-items: stretch;
    padding: 10px;
  }

  .recruiting-action-modal header,
  .recruiting-row-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .recruiting-score-pill {
    justify-items: start;
    min-width: 0;
  }

  .recruiting-metric-grid,
  .recruiting-import-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .recruiting-settings-grid .wide {
    grid-column: auto;
  }

  .recruiting-command-actions {
    width: 100%;
  }

  .recruiting-command-actions .btn {
    flex: 1 1 160px;
  }

  .recruiting-ai-prompt-bank {
    grid-template-columns: 1fr;
  }

  .recruiting-command-center.go-live {
    background: #111318;
  }

  .recruiting-card-list.go-live-review article {
    grid-template-columns: 1fr;
  }

  .recruiting-next-up-panel,
  .recruiting-nia-panel,
  .activation-step-sidebar {
    position: static;
  }

  .forge-flow-topbar {
    align-items: stretch;
    flex-direction: column;
    position: static;
  }

  .activation-progress {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
  }

  .activation-progress button {
    border-right: 1px solid #e6ebf2;
    flex: 0 0 190px;
    scroll-snap-align: start;
  }

  .recruiting-morning-plan span,
  .recruiting-prospect-facts span,
  .recruiting-system-strip span {
    border-right: 0;
    border-bottom: 1px solid #e8ecf2;
  }

  .recruiting-morning-plan span:last-child,
  .recruiting-prospect-facts span:last-child,
  .recruiting-system-strip span:last-child {
    border-bottom: 0;
  }

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

  .recruiting-section-nav button {
    flex: 1 1 145px;
  }

  .recruiting-email-topbar {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 560px) {
  .recruiting-hero {
    padding: 18px;
  }

  .recruiting-metric-grid,
  .recruiting-import-summary {
    grid-template-columns: 1fr;
  }

  .recruiting-tabs button {
    min-width: 132px;
  }

  .recruiting-area-nav {
    grid-template-columns: 1fr;
  }

  .recruiting-section-nav {
    display: grid;
    grid-template-columns: 1fr;
  }

  .recruiting-system-strip {
    grid-template-columns: 1fr;
  }

  .recruiting-day-start {
    padding: 16px;
  }

  .recruiting-activation-hero,
  .activation-step-sidebar,
  .activation-section {
    padding: 14px;
  }

  .activation-progress button {
    flex-basis: 168px;
    min-height: 84px;
  }

  .recruiting-call-now {
    font-size: 18px;
    min-height: 58px;
  }

  .recruiting-action-pad button,
  .recruiting-smart-actions summary {
    justify-content: flex-start;
  }
}

.discovery-public-page {
  min-height: 100vh;
  background: #f3f5f8;
  display: grid;
  grid-template-columns: minmax(280px, .8fr) minmax(320px, 1fr);
  color: #111318;
}

.discovery-public-hero {
  background: #111318;
  color: #fff;
  padding: clamp(28px, 6vw, 72px);
  display: grid;
  align-content: center;
  gap: 18px;
  border-top: 8px solid var(--nex-red);
}

.discovery-public-logo {
  width: 190px;
  max-width: 70vw;
}

.discovery-public-hero h1 {
  margin: 0;
  font-size: clamp(38px, 7vw, 76px);
  line-height: .96;
  letter-spacing: 0;
}

.discovery-public-hero p {
  max-width: 620px;
  color: #d9dde6;
  line-height: 1.6;
  font-size: 18px;
}

.discovery-public-panel {
  display: grid;
  align-content: center;
  padding: clamp(18px, 5vw, 64px);
}

.discovery-public-panel form,
.discovery-confirmation {
  background: #fff;
  border: 1px solid #dde3ec;
  padding: clamp(20px, 4vw, 36px);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  box-shadow: 0 24px 70px rgba(12, 16, 24, .12);
}

.discovery-public-panel form > div,
.discovery-public-panel .wide,
.discovery-public-panel button,
.discovery-status,
.discovery-confirmation {
  grid-column: 1 / -1;
}

.discovery-public-panel h2 {
  margin: 0 0 8px;
  font-size: 30px;
  letter-spacing: 0;
}

.discovery-public-panel label {
  display: grid;
  gap: 6px;
  color: #4d5666;
  font-size: 12px;
  font-weight: 900;
}

.discovery-public-panel input,
.discovery-public-panel select,
.discovery-public-panel textarea {
  width: 100%;
  min-height: 44px;
  border: 1px solid #cfd5df;
  padding: 11px 12px;
  font: inherit;
}

.discovery-public-panel textarea {
  min-height: 130px;
  resize: vertical;
}

.discovery-status {
  margin: 0;
  color: #647084;
  font-weight: 800;
}

.discovery-confirmation {
  text-align: center;
  justify-items: center;
}

.discovery-confirmation svg {
  color: #159447;
}

@media (max-width: 820px) {
  .discovery-public-page,
  .discovery-public-panel form {
    grid-template-columns: 1fr;
  }

  .discovery-public-hero {
    min-height: 44vh;
  }
}

.rewards-network-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #f4f6f8;
  color: #555d6c;
  font-size: 10px;
  text-transform: uppercase;
}

.rewards-network-table code {
  font-size: 10px;
}

.rewards-agent-cell {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-weight: 800;
}

.rewards-next-action {
  display: flex;
  gap: 15px;
  align-items: flex-start;
  border-left: 4px solid var(--rewards-red);
  background: linear-gradient(120deg, #fff 0%, #fff6f7 100%);
}

.rewards-tree {
  display: grid;
  gap: 8px;
}

.rewards-tree article {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin-left: calc(min(var(--tree-depth), 7) * 18px);
  border: 1px solid #dfe4eb;
  border-left: 3px solid var(--rewards-red);
  background: #fff;
  padding: 11px 13px;
}

.rewards-tree article > span {
  color: var(--rewards-red);
  font-weight: 900;
}

.rewards-tree article small,
.rewards-tree article em {
  display: block;
  color: #687181;
  font-size: 11px;
  font-style: normal;
}

.rewards-candidate-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  margin: 12px 0;
  max-height: 330px;
  overflow-y: auto;
}

.rewards-candidate-list button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 5px 12px;
  border: 1px solid #d9dee6;
  background: #fff;
  padding: 12px;
  text-align: left;
  cursor: pointer;
}

.rewards-candidate-list button.selected {
  border-color: var(--rewards-red);
  box-shadow: inset 3px 0 var(--rewards-red);
}

.rewards-candidate-list button:disabled {
  opacity: .58;
  cursor: not-allowed;
}

.rewards-candidate-list span,
.rewards-candidate-list small,
.rewards-candidate-list em {
  color: #626b79;
  font-size: 11px;
  font-style: normal;
}

.rewards-candidate-list em {
  grid-column: 1 / -1;
}

.rewards-preview-chain {
  display: grid;
  gap: 9px;
  margin-top: 18px;
  border-top: 1px solid #e0e4ea;
  padding-top: 18px;
}

.rewards-preview-chain > article {
  display: grid;
  grid-template-columns: 80px minmax(150px, .8fr) minmax(180px, 1fr) minmax(170px, 1fr);
  gap: 12px;
  align-items: center;
  border: 1px solid #dfe4eb;
  background: #f9fafb;
  padding: 11px 13px;
}

.rewards-preview-chain b {
  color: var(--rewards-red);
}

.rewards-preview-chain span,
.rewards-preview-chain em {
  color: #626b79;
  font-size: 11px;
  font-style: normal;
}

.rewards-profile-card {
  border-left: 3px solid var(--nex-red);
  background: linear-gradient(135deg, #fff 0%, #fff7f8 100%);
}

.rewards-profile-assignment {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(150px, 190px);
  gap: 10px;
  margin-top: 14px;
}

.rewards-profile-assignment select {
  grid-column: 1 / -1;
  width: 100%;
  min-height: 44px;
  border: 1px solid #cfd5df;
  background: #fff;
  padding: 10px 12px;
}

.rewards-profile-assignment .btn {
  justify-self: start;
}

.rewards-profile-preview {
  display: grid;
  gap: 6px;
  margin-top: 12px;
  border: 1px solid #f0b7bd;
  background: #fff;
  padding: 12px;
}

.rewards-profile-preview span,
.rewards-profile-preview small {
  color: #626b79;
  overflow-wrap: anywhere;
}

@media (max-width: 720px) {
  .rewards-network-intro,
  .rewards-explorer-controls {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .rewards-candidate-list {
    grid-template-columns: 1fr;
  }

  .rewards-tree article {
    grid-template-columns: 38px minmax(0, 1fr);
    margin-left: calc(min(var(--tree-depth), 3) * 10px);
  }

  .rewards-tree article em {
    grid-column: 2;
  }

  .rewards-preview-chain > article {
    grid-template-columns: 64px minmax(0, 1fr);
  }

  .rewards-preview-chain > article span,
  .rewards-preview-chain > article em {
    grid-column: 2;
  }

  .rewards-profile-assignment {
    grid-template-columns: 1fr;
  }
}

.rewards-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(250px, .7fr);
  align-items: end;
  min-height: 300px;
  padding: 42px;
  color: #fff;
  background: linear-gradient(112deg, #111318 0%, #20242b 56%, #750914 100%);
  border-left: 5px solid var(--rewards-red);
}

.rewards-hero::after {
  content: "NEX";
  position: absolute;
  z-index: -1;
  right: -18px;
  bottom: -75px;
  color: rgba(255,255,255,.045);
  font-size: 270px;
  font-weight: 950;
  line-height: 1;
  letter-spacing: 0;
}

.rewards-hero h1 {
  max-width: 760px;
  margin: 6px 0 12px;
  color: #fff;
  font-size: 64px;
  line-height: .98;
  letter-spacing: 0;
}

.rewards-hero > div:first-child > p:last-child {
  max-width: 720px;
  margin: 0;
  color: #e7e9ed;
  font-size: 16px;
  line-height: 1.55;
}

.rewards-hero-mark {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 10px 12px;
  align-items: center;
  justify-self: end;
  min-width: 250px;
  padding: 22px;
  background: rgba(255,255,255,.09);
  border: 1px solid rgba(255,255,255,.18);
  backdrop-filter: blur(10px);
}

.rewards-hero-mark svg { grid-row: 1 / 4; width: 30px; height: 30px; color: #ff2634; }
.rewards-hero-mark span { font-size: 15px; font-weight: 900; text-transform: uppercase; }
.rewards-hero-mark strong { color: #ff2634; }

.rewards-readonly-ribbon,
.rewards-data-notice {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 14px 16px;
  background: #fff6f6;
  border: 1px solid #f2c3c7;
  border-left: 4px solid var(--rewards-red);
  color: #3b171a;
}

.rewards-readonly-ribbon svg,
.rewards-data-notice svg { flex: 0 0 auto; color: var(--rewards-red); }
.rewards-readonly-ribbon span,
.rewards-data-notice p { line-height: 1.45; }
.rewards-data-notice p { margin: 4px 0 0; color: #59616d; }
.rewards-data-notice.danger { background: #fff0f0; }

.rewards-tabs {
  display: flex;
  gap: 4px;
  overflow-x: auto;
  padding: 5px;
  background: #eef1f4;
  border-bottom: 1px solid #d8dde3;
}

.rewards-tabs button {
  flex: 0 0 auto;
  min-height: 42px;
  padding: 0 18px;
  border: 0;
  background: transparent;
  color: #515967;
  font-weight: 850;
  cursor: pointer;
}

.rewards-tabs button.active { color: #fff; background: var(--rewards-ink); box-shadow: inset 0 -3px 0 var(--rewards-red); }
.rewards-tab-stack { display: grid; gap: 16px; }
.rewards-inner-tabs { display: flex; gap: 5px; overflow-x: auto; padding: 5px; background: #fff; border: 1px solid #dce1e6; }
.rewards-inner-tabs button { flex: 0 0 auto; min-height: 40px; padding: 0 15px; border: 0; color: #59616d; background: #f1f3f5; font-weight: 850; cursor: pointer; }
.rewards-inner-tabs button.active { color: #fff; background: var(--rewards-ink); box-shadow: inset 0 -3px 0 var(--rewards-red); }
.rewards-how-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.rewards-how-grid article { display: grid; gap: 8px; padding: 18px; background: #f5f7f9; border-top: 3px solid #242830; }
.rewards-how-grid svg { color: var(--rewards-red); }
.rewards-how-grid p { margin: 0; color: #626b77; line-height: 1.5; }

.rewards-status-panel {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
  gap: 28px;
  padding: 26px;
  background: #fff;
  border: 1px solid #dce1e6;
}

.rewards-status-panel h2 { margin: 4px 0 12px; font-size: 30px; }
.rewards-status-panel p { max-width: 760px; color: #5c6470; line-height: 1.55; }
.rewards-eligibility-badge { display: inline-flex; gap: 7px; align-items: center; padding: 8px 10px; font-size: 12px; font-weight: 900; text-transform: uppercase; }
.rewards-eligibility-badge.eligible { color: #075b3c; background: #e9f8f1; border: 1px solid #a8dfc7; }
.rewards-eligibility-badge.ineligible { color: #8c1019; background: #fff0f1; border: 1px solid #f1b9be; }
.rewards-service-meter { display: grid; align-content: center; gap: 8px; padding: 20px; background: var(--rewards-soft); border-left: 3px solid var(--rewards-red); }
.rewards-service-meter span,.rewards-service-meter small { color: #606875; }
.rewards-service-meter strong { font-size: 28px; }
.rewards-service-meter .progress-track { height: 8px; background: #d5dae0; }
.rewards-service-meter .progress-track > div { height: 100%; background: var(--rewards-red); }

.rewards-metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.rewards-metric { min-height: 106px; display: grid; align-content: space-between; gap: 8px; padding: 18px; background: #fff; border: 1px solid #dce1e6; border-top: 3px solid #c7cdd4; }
.rewards-metric span { color: #626b77; font-size: 12px; font-weight: 850; text-transform: uppercase; }
.rewards-metric strong { font-size: 25px; overflow-wrap: anywhere; }
.rewards-metric.positive { border-top-color: #029b68; }
.rewards-metric.warning { border-top-color: #d99100; }
.rewards-metric.dark { color: #fff; background: var(--rewards-ink); border-color: var(--rewards-ink); border-top-color: var(--rewards-red); }
.rewards-metric.dark span { color: #d9dde2; }

.rewards-program-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.rewards-program-grid article { padding: 24px; background: #fff; border: 1px solid #dce1e6; }
.rewards-program-grid svg { color: var(--rewards-red); }
.rewards-program-grid h3 { margin: 3px 0 9px; font-size: 22px; }
.rewards-program-grid p:last-child { margin: 0; color: #626b77; line-height: 1.5; }

.rewards-status-rail { display: grid; gap: 9px; align-content: center; }
.rewards-status-rail > div { display: grid; gap: 4px; padding: 16px 18px; background: var(--rewards-soft); border-left: 3px solid var(--rewards-red); }
.rewards-status-rail span,.rewards-status-rail small { color: #606875; }
.rewards-status-rail span { font-size: 11px; font-weight: 900; text-transform: uppercase; }
.rewards-status-rail strong { font-size: 21px; }
.rewards-money-section { display: grid; gap: 14px; padding: 21px; background: #fff; border: 1px solid #dce1e6; }
.rewards-money-section.powershare { border-left: 4px solid var(--rewards-red); }
.rewards-money-section.revenue { border-left: 4px solid #111318; }
.rewards-money-section .rewards-section-heading { margin-bottom: 0; }
.rewards-vesting-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.rewards-vesting-pair > article { display: flex; gap: 16px; min-height: 190px; padding: 23px; background: #fff; border: 1px solid #dce1e6; }
.rewards-vesting-pair > article:first-child { color: #fff; background: var(--rewards-ink); border-color: var(--rewards-ink); }
.rewards-vesting-pair svg { flex: 0 0 auto; color: var(--rewards-red); }
.rewards-vesting-pair h3 { margin: 4px 0 10px; font-size: 27px; }
.rewards-vesting-pair strong { display: block; margin-bottom: 10px; }
.rewards-vesting-pair p:last-child { margin: 0; color: #626b77; line-height: 1.5; }
.rewards-vesting-pair > article:first-child p:last-child { color: #d8dde3; }
.rewards-bank-hero { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(260px, .7fr); gap: 18px; padding: 25px; color: #fff; background: linear-gradient(110deg, #15181e 0 64%, #6d0b18 100%); border-left: 5px solid var(--rewards-red); }
.rewards-bank-hero h2 { margin: 4px 0 8px; color: #fff; font-size: 40px; }
.rewards-bank-hero p { margin: 0; color: #d5dae1; }
.rewards-bank-hero > div:last-child { display: grid; align-content: center; gap: 6px; padding: 17px; background: rgba(255,255,255,.08); }
.rewards-bank-hero > div:last-child strong { font-size: 22px; }
.rewards-bank-hero small { color: #d5dae1; }
.rewards-vesting-timeline { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.rewards-vesting-timeline::before { content: ""; position: absolute; top: 27px; right: 8%; left: 8%; height: 3px; background: #d7dce2; }
.rewards-vesting-timeline article { position: relative; z-index: 1; display: grid; gap: 5px; min-height: 108px; padding: 14px; background: #f4f6f8; border-top: 4px solid #9da5af; }
.rewards-vesting-timeline article.reached { background: #eefaf4; border-top-color: #029b68; }
.rewards-vesting-timeline span,.rewards-vesting-timeline small { color: #626b77; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.rewards-vesting-timeline strong { font-size: 23px; }
.rewards-bank-awards { display: grid; gap: 10px; }
.rewards-bank-awards > article { padding: 17px; background: #f7f8fa; border: 1px solid #dce1e6; border-left: 4px solid #20242b; }
.rewards-bank-awards header { display: flex; justify-content: space-between; gap: 12px; }
.rewards-bank-awards header > div { display: grid; gap: 3px; }
.rewards-bank-awards header span,.rewards-bank-awards dt { color: #626b77; font-size: 11px; font-weight: 850; text-transform: uppercase; }
.rewards-bank-awards header strong { font-size: 24px; }
.rewards-bank-awards em { align-self: start; padding: 6px 8px; color: #6f111b; background: #ffe9eb; font-size: 10px; font-style: normal; font-weight: 900; text-transform: uppercase; }
.rewards-bank-awards > article > p,.rewards-bank-awards > article > small { color: #626b77; }
.rewards-bank-awards dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 14px 0; }
.rewards-bank-awards dl > div { padding: 10px; background: #fff; }
.rewards-bank-awards dt,.rewards-bank-awards dd { margin: 0; }
.rewards-bank-awards dd { margin-top: 4px; font-weight: 800; overflow-wrap: anywhere; }

.rewards-power-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.rewards-power-summary > div { display: grid; grid-template-columns: 1fr auto; gap: 5px 18px; padding: 22px; color: #fff; background: var(--rewards-ink); border-left: 4px solid var(--rewards-red); }
.rewards-power-summary span { font-weight: 850; }
.rewards-power-summary strong { grid-row: 1 / 3; grid-column: 2; font-size: 36px; color: #fff; }
.rewards-power-summary small { max-width: 560px; color: #cbd0d7; line-height: 1.45; }

.rewards-section { padding: 22px; background: #fff; border: 1px solid #dce1e6; }
.rewards-section-heading { display: flex; justify-content: space-between; gap: 16px; align-items: center; margin-bottom: 18px; }
.rewards-section-heading h3 { margin: 2px 0 0; font-size: 23px; }
.rewards-section-heading > span { color: #68717d; font-weight: 750; }
.rewards-level-grid { display: grid; grid-template-columns: repeat(7, minmax(92px, 1fr)); gap: 8px; }
.rewards-level-grid article { display: grid; gap: 7px; min-height: 118px; padding: 14px; background: var(--rewards-soft); border-top: 4px solid #9ca4ae; }
.rewards-level-grid article.unlocked { background: #effbf5; border-top-color: #029b68; }
.rewards-level-grid article.locked { opacity: .76; }
.rewards-level-grid span,.rewards-level-grid small { color: #646d78; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.rewards-level-grid strong { font-size: 23px; }

.rewards-recruit-list,.rewards-history-list { display: grid; gap: 8px; }
.rewards-recruit-list article { display: flex; align-items: center; gap: 12px; padding: 13px; background: var(--rewards-soft); }
.rewards-recruit-list article div { display: grid; gap: 3px; }
.rewards-recruit-list span { color: #646d78; font-size: 12px; }
.rewards-history-list article { display: grid; grid-template-columns: 140px 1fr auto; gap: 12px; padding: 13px 0; border-bottom: 1px solid #e4e7eb; }
.rewards-history-list small { color: #646d78; }

.rewards-award-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.rewards-award-grid article { display: flex; gap: 12px; min-height: 112px; padding: 16px; background: var(--rewards-soft); border: 1px solid #dfe3e7; }
.rewards-award-grid article.achieved { background: #effbf5; border-color: #a8dfc7; }
.rewards-award-grid svg { flex: 0 0 auto; color: #8b939e; }
.rewards-award-grid .achieved svg { color: #029b68; }
.rewards-award-grid article > div { display: grid; gap: 5px; }
.rewards-award-grid span { font-size: 18px; font-weight: 850; }
.rewards-award-grid small { color: #626b77; }

.rewards-education-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.rewards-education-grid > article { display: flex; gap: 16px; padding: 22px; background: #fff; border: 1px solid #dce1e6; }
.rewards-education-grid > article > span { color: var(--rewards-red); font-size: 30px; font-weight: 950; }
.rewards-education-grid h3 { margin: 2px 0 8px; }
.rewards-education-grid p { margin: 0; color: #626b77; line-height: 1.5; }
.rewards-disclaimer-card { grid-column: 1 / -1; display: flex; gap: 14px; padding: 20px; color: #fff; background: var(--rewards-ink); border-left: 4px solid var(--rewards-red); }
.rewards-disclaimer-card svg { flex: 0 0 auto; color: #ff2533; }
.rewards-disclaimer-card p { color: #d9dde2; }

.rewards-admin-list { display: grid; gap: 6px; }
.rewards-admin-list article { display: grid; grid-template-columns: minmax(230px, 1fr) 150px minmax(240px, auto); gap: 14px; align-items: center; padding: 12px; background: var(--rewards-soft); }
.rewards-admin-list article > div { display: grid; }
.rewards-admin-list span { color: #616a76; }
.rewards-admin-list em { justify-self: end; padding: 7px 9px; font-style: normal; font-size: 11px; font-weight: 900; text-transform: uppercase; }
.rewards-admin-list em.eligible { color: #075b3c; background: #dff6eb; }
.rewards-admin-list em.ineligible { color: #8c1019; background: #ffe7e9; }
.rewards-disclaimer { display: flex; gap: 10px; align-items: flex-start; padding: 15px; color: #626b77; background: #f1f3f5; border-top: 1px solid #d6dbe0; }
.rewards-disclaimer svg { flex: 0 0 auto; }
.rewards-disclaimer p { margin: 0; line-height: 1.45; }
.rewards-loading { min-height: 360px; display: grid; place-content: center; justify-items: center; gap: 16px; background: #f4f6f8; }
.rewards-loading span { width: 38px; height: 38px; border: 4px solid #d8dde3; border-top-color: var(--nex-red, #e30613); border-radius: 50%; animation: spin 1s linear infinite; }

.rewards-top-five-widget { border-top: 4px solid #e30613; }
.rewards-ranking-list { display: grid; gap: 5px; margin: 12px 0; }
.rewards-ranking-list > div { display: grid; grid-template-columns: 24px 36px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 8px; background: #f3f5f7; }
.rewards-ranking-list b { color: #e30613; font-size: 18px; text-align: center; }
.rewards-ranking-list em { color: #111318; font-style: normal; font-weight: 900; }
.rewards-ranking-avatar { width: 36px; height: 36px; display: grid; place-items: center; overflow: hidden; color: #fff; background: #111318; border-radius: 50%; font-size: 11px; font-weight: 900; }
.rewards-ranking-avatar img { width: 100%; height: 100%; object-fit: cover; }
.rewards-ranking-empty { min-height: 130px; display: grid; place-content: center; justify-items: center; gap: 6px; padding: 14px; text-align: center; }
.rewards-ranking-empty svg { color: #e30613; }
.rewards-ranking-empty span { max-width: 360px; color: #626b77; font-size: 12px; line-height: 1.4; }
.rewards-ranking-loading { min-height: 130px; display: grid; place-items: center; color: #626b77; }

.rewards-sponsor-path { display: grid; gap: 8px; }
.rewards-sponsor-path article { display: grid; grid-template-columns: 68px 38px minmax(0, 1fr) auto; gap: 12px; align-items: center; min-width: 0; padding: 12px 14px; background: #f7f8fa; border: 1px solid #e1e4e8; border-left: 4px solid #20242b; }
.rewards-sponsor-path article.same-team { background: #fff6f6; border-left-color: var(--rewards-red); }
.rewards-sponsor-path > article > span { font-size: 11px; font-weight: 900; text-transform: uppercase; }
.rewards-sponsor-path > article > div { display: grid; min-width: 0; }
.rewards-sponsor-path strong,.rewards-sponsor-path small { overflow-wrap: anywhere; }
.rewards-sponsor-path small { color: #626b77; }
.rewards-sponsor-path em { color: #59616d; font-size: 11px; font-style: normal; font-weight: 800; text-align: right; }

@media (max-width: 1100px) {
  .rewards-metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rewards-level-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .rewards-award-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 700px) {
  .nex-rewards-shell { gap: 11px; }
  .rewards-hero { grid-template-columns: 1fr; min-height: 0; padding: 26px 20px; }
  .rewards-hero > div:first-child { min-width: 0; }
  .rewards-hero h1 { font-size: 42px; }
  .rewards-hero > div:first-child > p:last-child { max-width: 100%; overflow-wrap: anywhere; }
  .rewards-hero::after { font-size: 160px; bottom: -35px; }
  .rewards-hero-mark { justify-self: stretch; min-width: 0; margin-top: 22px; padding: 16px; }
  .rewards-readonly-ribbon { font-size: 12px; }
  .rewards-tabs { margin-inline: -2px; }
  .rewards-tabs button { min-height: 46px; padding: 0 14px; }
  .rewards-status-panel,.rewards-power-summary,.rewards-program-grid,.rewards-education-grid,.rewards-vesting-pair,.rewards-bank-hero { grid-template-columns: 1fr; }
  .rewards-status-panel { gap: 16px; padding: 18px; }
  .rewards-status-panel h2 { font-size: 25px; }
  .rewards-metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rewards-metric { min-height: 96px; padding: 14px; }
  .rewards-metric strong { font-size: 19px; }
  .rewards-section { padding: 16px; }
  .rewards-section-heading { align-items: flex-start; flex-direction: column; }
  .rewards-level-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rewards-award-grid { grid-template-columns: 1fr; }
  .rewards-history-list article { grid-template-columns: 1fr; gap: 4px; }
  .rewards-disclaimer-card { grid-column: auto; }
  .rewards-admin-list article { grid-template-columns: 1fr; }
  .rewards-admin-list em { justify-self: start; }
  .rewards-sponsor-path article { grid-template-columns: 52px 34px minmax(0, 1fr); gap: 8px; padding: 11px; }
  .rewards-sponsor-path em { grid-column: 3; text-align: left; }
  .rewards-ranking-list > div { grid-template-columns: 22px 32px minmax(0, 1fr); }
  .rewards-ranking-list em { grid-column: 3; }
  .rewards-vesting-timeline { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rewards-vesting-timeline::before { display: none; }
  .rewards-bank-awards dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rewards-how-grid { grid-template-columns: 1fr; }
}

@media (max-width: 390px) {
  .rewards-bank-awards dl,.rewards-vesting-timeline { grid-template-columns: 1fr; }
  .rewards-hero { padding: 23px 16px; }
  .rewards-hero h1 { font-size: 36px; overflow-wrap: anywhere; }
  .rewards-hero-mark { grid-template-columns: 28px minmax(0, 1fr); }
  .rewards-hero-mark span { min-width: 0; overflow-wrap: anywhere; }
  .rewards-metric-grid { grid-template-columns: 1fr 1fr; gap: 7px; }
  .rewards-metric { min-width: 0; padding: 12px; }
  .rewards-metric span { font-size: 10px; }
  .rewards-metric strong { font-size: 17px; }
  .rewards-level-grid { gap: 7px; }
}

/* Marketing Studio V3 automation command layer. */
.marketing-v3-library-hero.marketing-v3-command-hero {
  align-items: center;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(360px, 0.8fr);
  min-height: 390px;
  padding: clamp(30px, 4vw, 58px);
  background:
    linear-gradient(105deg, rgba(17, 19, 24, 0.98), rgba(31, 35, 43, 0.94) 57%, rgba(133, 11, 24, 0.9)),
    radial-gradient(circle at 84% 16%, rgba(227, 6, 19, 0.42), transparent 36%);
}

.marketing-v3-library-hero.marketing-v3-command-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(112deg, transparent 0 84px, rgba(255, 255, 255, 0.025) 84px 85px);
  pointer-events: none;
}

.marketing-v3-command-copy {
  max-width: 790px;
}

.marketing-v3-command-copy .marketing-v3-header-actions {
  flex-wrap: wrap;
  margin-top: 22px;
}

.marketing-v3-command-copy .btn.quiet {
  border: 0;
  color: rgba(255, 255, 255, 0.72);
  background: transparent;
}

.marketing-v3-hero-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}

.marketing-v3-hero-pills span {
  align-items: center;
  display: inline-flex;
  gap: 6px;
  padding: 7px 10px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  color: rgba(255, 255, 255, 0.82);
  background: rgba(255, 255, 255, 0.05);
  font-size: 0.68rem;
  font-weight: 850;
}

.marketing-v3-hero-pills svg {
  width: 14px;
  height: 14px;
  color: #ff3442;
}

.marketing-v3-nia-desk {
  position: relative;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 14px;
  padding: 22px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #fff;
  background: rgba(255, 255, 255, 0.09);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.24);
  backdrop-filter: blur(18px);
}

.marketing-v3-nia-avatar {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  color: #fff;
  background: var(--v3-red);
  box-shadow: 0 0 0 7px rgba(227, 6, 19, 0.14);
}

.marketing-v3-nia-copy h2,
.marketing-v3-nia-copy p {
  margin: 0;
}

.marketing-v3-nia-copy h2 {
  margin: 3px 0 8px;
  color: inherit;
  font-size: 1.2rem;
}

.marketing-v3-nia-copy > p:not(.eyebrow) {
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.76rem;
  line-height: 1.55;
}

.marketing-v3-nia-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 14px;
}

.marketing-v3-nia-actions button,
.marketing-v3-nia-response button,
.marketing-v3-caption-helper,
.marketing-v3-auto-fix {
  align-items: center;
  display: inline-flex;
  gap: 6px;
  min-height: 34px;
  padding: 7px 9px;
  border: 1px solid currentColor;
  color: inherit;
  background: transparent;
  font-size: 0.64rem;
  font-weight: 850;
  cursor: pointer;
}

.marketing-v3-nia-actions svg,
.marketing-v3-nia-response svg,
.marketing-v3-caption-helper svg,
.marketing-v3-auto-fix svg {
  width: 14px;
  height: 14px;
}

.marketing-v3-nia-thinking,
.marketing-v3-inline-error {
  align-items: center;
  display: flex;
  gap: 8px;
  margin-top: 12px;
  font-size: 0.68rem;
}

.marketing-v3-inline-error {
  color: #ffbac0;
}

.marketing-v3-nia-response {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(255, 255, 255, 0.16);
}

.marketing-v3-nia-response p {
  max-height: 180px;
  overflow-y: auto;
  white-space: pre-wrap;
  font-size: 0.72rem;
  line-height: 1.55;
}

.marketing-v3-nia-response > div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 10px;
}

.marketing-v3-review-panel > .marketing-v3-nia-desk.compact {
  grid-template-columns: 34px minmax(0, 1fr);
  padding: 14px;
  border: 0;
  border-bottom: 1px solid var(--v3-line);
  color: var(--v3-ink);
  background: linear-gradient(145deg, #fff, #fff2f3);
  box-shadow: none;
  backdrop-filter: none;
}

.marketing-v3-nia-desk.compact .marketing-v3-nia-avatar {
  width: 34px;
  height: 34px;
}

.marketing-v3-nia-desk.compact .marketing-v3-nia-copy > p:not(.eyebrow) {
  color: var(--v3-muted);
}

.marketing-v3-nia-desk.compact .marketing-v3-nia-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.marketing-v3-nia-desk.compact .marketing-v3-nia-actions button {
  justify-content: center;
  color: #8a111b;
}

.marketing-v3-nia-desk.compact .marketing-v3-nia-response {
  border-color: var(--v3-line);
}

.marketing-v3-automation-hub {
  margin: 20px 0 4px;
  padding: clamp(22px, 3vw, 36px);
  border: 1px solid var(--v3-line);
  border-top: 4px solid var(--v3-red);
  background: #fff;
  box-shadow: 0 16px 46px rgba(17, 19, 24, 0.07);
}

.marketing-v3-automation-heading,
.marketing-v3-section-title,
.marketing-v3-final-export-heading {
  align-items: center;
  display: flex;
  justify-content: space-between;
  gap: 18px;
}

.marketing-v3-automation-heading h2,
.marketing-v3-automation-heading p,
.marketing-v3-section-title h3,
.marketing-v3-section-title span {
  margin: 0;
}

.marketing-v3-automation-heading h2 {
  margin: 4px 0 6px;
  font-size: 1.55rem;
}

.marketing-v3-automation-heading > div > p:not(.eyebrow) {
  color: var(--v3-muted);
  font-size: 0.78rem;
}

.marketing-v3-automation-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 24px 0;
  border-block: 1px solid var(--v3-line);
}

.marketing-v3-automation-stats article {
  display: grid;
  gap: 3px;
  padding: 16px;
  border-right: 1px solid var(--v3-line);
}

.marketing-v3-automation-stats article:last-child {
  border-right: 0;
}

.marketing-v3-automation-stats strong {
  font-size: 1.6rem;
}

.marketing-v3-automation-stats span {
  color: var(--v3-muted);
  font-size: 0.64rem;
  font-weight: 850;
  text-transform: uppercase;
}

.marketing-v3-automation-columns,
.marketing-v3-social-composer {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.marketing-v3-social-composer {
  margin-bottom: 26px;
  padding: 22px;
  color: #fff;
  background: #151820;
}

.marketing-v3-social-form {
  display: grid;
  gap: 12px;
}

.marketing-v3-social-composer .marketing-v3-field > span,
.marketing-v3-social-composer aside p,
.marketing-v3-social-composer aside li {
  color: rgba(255, 255, 255, 0.72);
}

.marketing-v3-social-composer aside h3 {
  margin: 6px 0 12px;
  color: #fff;
  font-size: 1.25rem;
}

.marketing-v3-social-composer aside ol {
  display: grid;
  gap: 10px;
  padding-left: 22px;
  font-size: 0.76rem;
  line-height: 1.5;
}

.marketing-v3-channel-picker {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.marketing-v3-channel-picker button {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 2px 7px;
  padding: 10px;
  border: 1px solid #434752;
  text-align: left;
  color: #fff;
  background: #222630;
  cursor: pointer;
}

.marketing-v3-channel-picker button.active {
  border-color: #ff2333;
  box-shadow: inset 3px 0 #e30613;
}

.marketing-v3-channel-picker svg {
  grid-row: 1 / 3;
  width: 17px;
}

.marketing-v3-channel-picker span {
  font-size: 0.7rem;
  font-weight: 900;
}

.marketing-v3-channel-picker em {
  color: #9ba3b1;
  font-size: 0.56rem;
  font-style: normal;
}

.marketing-v3-caption-helper {
  justify-content: center;
  color: #ff5b66;
}

.marketing-v3-review-check {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 9px;
  color: rgba(255, 255, 255, 0.78);
  font-size: 0.66rem;
  line-height: 1.45;
}

.marketing-v3-honest-note {
  align-items: flex-start;
  display: flex;
  gap: 8px;
  margin-top: 18px;
  padding: 12px;
  border-left: 3px solid var(--v3-red);
  background: rgba(255, 255, 255, 0.06);
  font-size: 0.66rem;
  line-height: 1.5;
}

.marketing-v3-honest-note svg {
  flex: 0 0 auto;
  width: 16px;
}

.marketing-v3-section-title {
  margin-bottom: 10px;
}

.marketing-v3-section-title h3 {
  font-size: 0.88rem;
}

.marketing-v3-section-title span {
  color: var(--v3-muted);
  font-size: 0.62rem;
}

.marketing-v3-provider-list,
.marketing-v3-content-queue {
  display: grid;
  gap: 7px;
}

.marketing-v3-provider-list article {
  align-items: center;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
  min-height: 58px;
  padding: 9px;
  border: 1px solid var(--v3-line);
}

.marketing-v3-provider-icon {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  color: #59606c;
  background: #eef0f4;
}

.marketing-v3-provider-icon.connected {
  color: #087a55;
  background: #e9f8f1;
}

.marketing-v3-provider-icon.setup-required {
  color: #9a6000;
  background: #fff2db;
}

.marketing-v3-provider-list article > div,
.marketing-v3-content-queue article > div {
  display: grid;
  gap: 2px;
}

.marketing-v3-provider-list strong,
.marketing-v3-content-queue strong {
  font-size: 0.7rem;
}

.marketing-v3-provider-list small,
.marketing-v3-content-queue span {
  color: var(--v3-muted);
  font-size: 0.58rem;
}

.marketing-v3-status {
  padding: 5px 7px;
  color: #656d78;
  background: #eef0f4;
  font-size: 0.55rem;
  font-weight: 900;
  text-transform: uppercase;
}

.marketing-v3-status.connected {
  color: #087a55;
  background: #e9f8f1;
}

.marketing-v3-content-queue article {
  padding: 11px;
  border: 1px solid var(--v3-line);
  border-left: 3px solid #151820;
}

.marketing-v3-content-queue article p {
  display: -webkit-box;
  margin: 8px 0;
  overflow: hidden;
  color: #4e5560;
  font-size: 0.65rem;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.marketing-v3-content-queue footer {
  align-items: center;
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.marketing-v3-content-queue footer em {
  padding: 4px 6px;
  color: #824b00;
  background: #fff1d9;
  font-size: 0.54rem;
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
}

.marketing-v3-content-queue footer em.scheduled {
  color: #087a55;
  background: #e9f8f1;
}

.marketing-v3-queue-empty {
  display: grid;
  place-items: center;
  min-height: 130px;
  padding: 16px;
  border: 1px dashed #c9ced6;
  text-align: center;
}

.marketing-v3-queue-empty svg {
  margin-bottom: 8px;
  color: var(--v3-red);
}

.marketing-v3-queue-empty p {
  margin: 4px 0 0;
  color: var(--v3-muted);
  font-size: 0.66rem;
}

.marketing-v3-project-preview > .marketing-v3-project-placeholder {
  position: relative;
  display: grid;
  place-items: start;
  align-content: end;
  width: 100%;
  height: 100%;
  padding: 24px;
  text-align: left;
  color: #fff;
  background:
    linear-gradient(140deg, rgba(17, 19, 24, 0.92), rgba(101, 8, 18, 0.9)),
    repeating-linear-gradient(112deg, transparent 0 42px, rgba(255, 255, 255, 0.04) 42px 43px);
}

.marketing-v3-project-placeholder > svg {
  position: absolute;
  top: 24px;
  left: 24px;
  width: 34px;
  height: 34px;
  color: #ff2938;
}

.marketing-v3-project-placeholder small {
  color: #ff717a;
  font-size: 0.62rem;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.marketing-v3-project-placeholder strong {
  margin: 4px 0;
  font-size: 1rem;
}

.marketing-v3-project-placeholder span {
  color: rgba(255, 255, 255, 0.66);
  font-size: 0.62rem;
}

.marketing-v3-auto-fix {
  justify-content: center;
  width: 100%;
  margin: 0 0 10px;
  color: #9a0c17;
  background: #fff;
}

.marketing-v3-export-intro {
  margin-bottom: 10px !important;
  color: var(--v3-muted);
  font-size: 0.64rem;
  line-height: 1.45;
}

.marketing-v3-proof-button {
  justify-content: center;
  width: 100%;
  min-height: 42px;
  border: 0;
  color: #fff;
  background: #151820;
}

.marketing-v3-final-export-heading {
  align-items: flex-start;
  display: grid;
  gap: 2px;
  margin: 14px 0 8px;
  padding-top: 12px;
  border-top: 1px solid var(--v3-line);
}

.marketing-v3-final-export-heading strong {
  font-size: 0.7rem;
}

.marketing-v3-final-export-heading span {
  color: var(--v3-muted);
  font-size: 0.58rem;
}

@media (max-width: 1050px) {
  .marketing-v3-library-hero.marketing-v3-command-hero {
    grid-template-columns: 1fr;
  }
  .marketing-v3-command-hero .marketing-v3-nia-desk {
    max-width: 680px;
  }
}

@media (max-width: 720px) {
  .marketing-v3-library-hero.marketing-v3-command-hero {
    min-height: 0;
    padding: 24px 18px;
  }
  .marketing-v3-library-hero.marketing-v3-command-hero h1 {
    font-size: 2.1rem;
  }
  .marketing-v3-command-hero .marketing-v3-nia-desk,
  .marketing-v3-nia-desk {
    grid-template-columns: 38px minmax(0, 1fr);
    padding: 16px;
  }
  .marketing-v3-command-hero .marketing-v3-nia-avatar {
    width: 38px;
    height: 38px;
  }
  .marketing-v3-automation-heading,
  .marketing-v3-automation-columns,
  .marketing-v3-social-composer {
    align-items: stretch;
    grid-template-columns: 1fr;
  }
  .marketing-v3-automation-heading {
    display: grid;
  }
  .marketing-v3-automation-heading .btn {
    justify-content: center;
    width: 100%;
  }
  .marketing-v3-automation-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .marketing-v3-automation-stats article:nth-child(2) {
    border-right: 0;
  }
  .marketing-v3-automation-stats article:nth-child(-n + 2) {
    border-bottom: 1px solid var(--v3-line);
  }
  .marketing-v3-channel-picker {
    grid-template-columns: 1fr;
  }
  .marketing-v3-nia-desk.compact .marketing-v3-nia-actions {
    grid-template-columns: 1fr;
  }
}

/* Marketing Studio V3 rescue: isolated, feature-flagged visual editor. */
.marketing-v3-beta {
  --v3-red: #e30613;
  --v3-ink: #111318;
  --v3-muted: #667085;
  --v3-line: #dfe3ea;
  --v3-soft: #f4f6f9;
  min-width: 0;
  color: var(--v3-ink);
}

.marketing-v3-beta button,
.marketing-v3-beta input,
.marketing-v3-beta select,
.marketing-v3-beta textarea {
  font: inherit;
}

.marketing-v3-beta-entry {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 18px;
  padding: 16px 18px;
  border: 1px solid rgba(227, 6, 19, 0.2);
  border-left: 4px solid var(--v3-red);
  background: linear-gradient(90deg, rgba(227, 6, 19, 0.06), #fff 46%);
}

.marketing-v3-beta-entry div {
  display: grid;
  gap: 3px;
}

.marketing-v3-beta-entry span {
  color: var(--v3-muted);
  font-size: 0.82rem;
}

.marketing-v3-library,
.marketing-v3-wizard {
  padding: clamp(16px, 2.4vw, 30px);
}

.marketing-v3-library-hero {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding: clamp(24px, 4vw, 48px);
  color: #fff;
  background: linear-gradient(112deg, #111318 0%, #20242c 58%, #7b1019 100%);
}

.marketing-v3-library-hero::after {
  content: "V3";
  position: absolute;
  right: 4%;
  top: -35%;
  color: rgba(255, 255, 255, 0.045);
  font-size: 18rem;
  font-weight: 950;
  line-height: 1;
  pointer-events: none;
}

.marketing-v3-library-hero > * {
  position: relative;
  z-index: 1;
}

.marketing-v3-library-hero h1 {
  max-width: 720px;
  margin: 5px 0 8px;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.6rem);
  line-height: 1;
  letter-spacing: 0;
}

.marketing-v3-library-hero p:not(.eyebrow) {
  max-width: 680px;
  margin: 0;
  color: rgba(255, 255, 255, 0.72);
  line-height: 1.55;
}

.marketing-v3-header-actions,
.marketing-v3-editor-actions,
.marketing-v3-editor-title,
.marketing-v3-project-actions,
.marketing-v3-wizard-header,
.marketing-v3-wizard-footer {
  display: flex;
  align-items: center;
  gap: 10px;
}

.marketing-v3-library-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 22px 0 16px;
  color: var(--v3-muted);
  font-size: 0.82rem;
  font-weight: 800;
}

.marketing-v3-search {
  display: flex;
  align-items: center;
  gap: 10px;
  width: min(520px, 100%);
  padding: 0 14px;
  border: 1px solid var(--v3-line);
  background: #fff;
}

.marketing-v3-search input {
  width: 100%;
  min-height: 46px;
  border: 0;
  outline: 0;
  background: transparent;
}

.marketing-v3-project-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
  gap: 16px;
}

.marketing-v3-project-card {
  display: grid;
  overflow: hidden;
  border: 1px solid var(--v3-line);
  background: #fff;
  box-shadow: 0 10px 28px rgba(17, 19, 24, 0.06);
}

.marketing-v3-project-preview {
  position: relative;
  display: grid;
  place-items: center;
  width: 100%;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  border: 0;
  color: #fff;
  background: linear-gradient(145deg, #181b21, #720d16);
  cursor: pointer;
}

.marketing-v3-project-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.marketing-v3-project-preview > div {
  display: grid;
  place-items: center;
  gap: 8px;
  color: rgba(255, 255, 255, 0.7);
  font-size: 0.75rem;
}

.marketing-v3-project-preview svg {
  width: 28px;
  height: 28px;
}

.marketing-v3-project-status {
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 5px 8px;
  color: #fff;
  background: rgba(17, 19, 24, 0.8);
  font-size: 0.64rem;
  font-weight: 900;
  text-transform: uppercase;
}

.marketing-v3-project-status.ready {
  background: #087a55;
}

.marketing-v3-project-copy {
  display: grid;
  gap: 6px;
  padding: 16px;
}

.marketing-v3-project-copy h2,
.marketing-v3-project-copy p,
.marketing-v3-project-copy small {
  margin: 0;
}

.marketing-v3-project-copy h2 {
  font-size: 1rem;
  line-height: 1.25;
}

.marketing-v3-project-copy p,
.marketing-v3-project-copy small {
  color: var(--v3-muted);
  font-size: 0.78rem;
}

.marketing-v3-project-actions {
  padding: 0 16px 16px;
}

.marketing-v3-project-actions .btn:first-child {
  flex: 1;
}

.marketing-v3-empty {
  display: grid;
  place-items: center;
  min-height: 380px;
  padding: 40px 20px;
  border: 1px dashed #cfd4dd;
  text-align: center;
  background: linear-gradient(180deg, #fff, #f7f8fa);
}

.marketing-v3-empty h2,
.marketing-v3-empty p {
  margin: 0;
}

.marketing-v3-empty p {
  max-width: 520px;
  margin: 8px 0 18px;
  color: var(--v3-muted);
}

.marketing-v3-empty-icon {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  margin-bottom: 14px;
  color: var(--v3-red);
  background: rgba(227, 6, 19, 0.08);
}

.marketing-v3-error {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 12px 0;
  padding: 11px 13px;
  border: 1px solid rgba(227, 6, 19, 0.28);
  color: #8d0912;
  background: #fff3f4;
  font-size: 0.8rem;
  font-weight: 750;
}

.marketing-v3-error button {
  margin-left: auto;
  border: 0;
  color: inherit;
  background: transparent;
  font-weight: 900;
  cursor: pointer;
}

.marketing-v3-wizard {
  max-width: 1120px;
  margin: 0 auto;
}

.marketing-v3-wizard-header {
  justify-content: space-between;
  padding: 10px 0 16px;
}

.marketing-v3-wizard-header > div {
  flex: 1;
}

.marketing-v3-wizard-header h1,
.marketing-v3-wizard-header p {
  margin: 0;
}

.marketing-v3-wizard-header h1 {
  margin-top: 4px;
  font-size: clamp(1.5rem, 3vw, 2.4rem);
}

.marketing-v3-wizard-header > span {
  color: var(--v3-muted);
  font-size: 0.78rem;
  font-weight: 850;
}

.marketing-v3-wizard-progress {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
  margin-bottom: 18px;
}

.marketing-v3-wizard-progress span {
  height: 4px;
  background: #dfe3ea;
}

.marketing-v3-wizard-progress span.active {
  background: var(--v3-red);
}

.marketing-v3-wizard-card {
  padding: clamp(18px, 3vw, 32px);
  border: 1px solid var(--v3-line);
  background: #fff;
  box-shadow: 0 18px 50px rgba(17, 19, 24, 0.08);
}

.marketing-v3-campaign-picker {
  display: grid;
  gap: 30px;
}

.marketing-v3-campaign-group {
  display: grid;
  gap: 13px;
}

.marketing-v3-campaign-group-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  border-bottom: 1px solid var(--v3-line);
  padding-bottom: 10px;
}

.marketing-v3-campaign-group-heading p,
.marketing-v3-campaign-group-heading span,
.marketing-v3-campaign-card p {
  margin: 0;
}

.marketing-v3-campaign-group-heading span {
  color: var(--v3-muted);
  font-size: 0.75rem;
}

.marketing-v3-campaign-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.marketing-v3-campaign-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: start;
  gap: 12px;
  min-height: 142px;
  border: 1px solid var(--v3-line);
  padding: 16px;
  text-align: left;
  color: var(--v3-ink);
  background: linear-gradient(145deg, #ffffff, #fafbfc);
  cursor: pointer;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.marketing-v3-campaign-card:hover,
.marketing-v3-campaign-card:focus-visible {
  border-color: rgba(227, 6, 19, 0.5);
  box-shadow: 0 14px 30px rgba(17, 19, 24, 0.09);
  transform: translateY(-2px);
  outline: 0;
}

.marketing-v3-campaign-card > svg {
  width: 17px;
  color: var(--v3-red);
}

.marketing-v3-campaign-card > div {
  display: grid;
  gap: 5px;
}

.marketing-v3-campaign-card strong {
  font-size: 0.92rem;
}

.marketing-v3-campaign-card p,
.marketing-v3-campaign-card small {
  color: var(--v3-muted);
  font-size: 0.7rem;
  line-height: 1.45;
}

.marketing-v3-campaign-card small {
  color: #343a44;
  font-weight: 800;
}

.marketing-v3-campaign-icon {
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  color: var(--v3-red);
  background: rgba(227, 6, 19, 0.08);
}

.marketing-v3-campaign-icon svg {
  width: 18px;
}

.marketing-v3-source-toggle {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  margin-bottom: 22px;
}

.marketing-v3-source-toggle button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 50px;
  border: 1px solid var(--v3-line);
  color: var(--v3-ink);
  background: #fff;
  font-weight: 850;
  cursor: pointer;
}

.marketing-v3-source-toggle button.active {
  border-color: var(--v3-red);
  color: var(--v3-red);
  background: rgba(227, 6, 19, 0.05);
}

.marketing-v3-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 14px;
}

.marketing-v3-field {
  display: grid;
  gap: 6px;
  min-width: 0;
  color: #30343c;
  font-size: 0.74rem;
  font-weight: 850;
}

.marketing-v3-field.span-2 {
  grid-column: span 2;
}

.marketing-v3-field input,
.marketing-v3-field select,
.marketing-v3-field textarea,
.marketing-v3-position-grid input {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  box-sizing: border-box;
  border: 1px solid #d8dde5;
  border-radius: 0;
  padding: 9px 10px;
  color: var(--v3-ink);
  background: #fff;
  outline: 0;
}

.marketing-v3-field input:focus,
.marketing-v3-field select:focus,
.marketing-v3-field textarea:focus,
.marketing-v3-position-grid input:focus {
  border-color: var(--v3-red);
  box-shadow: 0 0 0 3px rgba(227, 6, 19, 0.08);
}

.marketing-v3-field textarea {
  min-height: 96px;
  resize: vertical;
}

.marketing-v3-compact-upload input {
  min-height: 46px;
  padding: 10px;
  background: var(--v3-soft);
}

.marketing-v3-field small {
  color: var(--v3-muted);
  font-weight: 550;
  line-height: 1.4;
}

.marketing-v3-wizard-footer {
  justify-content: flex-end;
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid var(--v3-line);
}

.marketing-v3-wizard-footer.split {
  justify-content: space-between;
}

.marketing-v3-template-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.marketing-v3-wizard-summary {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-top: 18px;
  padding: 12px 14px;
  border-left: 3px solid var(--v3-red);
  color: var(--v3-ink);
  background: var(--v3-soft);
}

.marketing-v3-wizard-summary > svg {
  color: var(--v3-red);
}

.marketing-v3-wizard-summary div {
  display: grid;
  gap: 2px;
}

.marketing-v3-wizard-summary span {
  color: var(--v3-muted);
  font-size: 0.72rem;
}

.marketing-v3-template-card {
  position: relative;
  display: grid;
  gap: 12px;
  padding: 10px;
  border: 1px solid var(--v3-line);
  text-align: left;
  color: var(--v3-ink);
  background: #fff;
  cursor: pointer;
}

.marketing-v3-template-card.active {
  border-color: var(--v3-red);
  box-shadow: 0 0 0 2px rgba(227, 6, 19, 0.08);
}

.marketing-v3-template-card > svg {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 12;
  width: 20px;
  height: 20px;
  padding: 2px;
  border-radius: 50%;
  color: var(--v3-red);
  background: #fff;
}

.marketing-v3-template-copy {
  display: grid;
  gap: 4px;
  padding: 0 2px 2px;
}

.marketing-v3-template-copy h2,
.marketing-v3-template-copy p {
  margin: 0;
}

.marketing-v3-template-copy h2 {
  font-size: 0.95rem;
}

.marketing-v3-template-copy p {
  min-height: 38px;
  color: var(--v3-muted);
  font-size: 0.72rem;
  line-height: 1.45;
}

.marketing-v3-direction-preview {
  position: relative;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  min-height: 180px;
  border: 1px solid rgba(17, 19, 24, 0.08);
  color: #111318;
  background: #fff;
  isolation: isolate;
}

.marketing-v3-direction-media,
.marketing-v3-direction-media-placeholder,
.marketing-v3-direction-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.marketing-v3-direction-media {
  overflow: hidden;
  background: #30343c;
}

.marketing-v3-direction-media img {
  object-fit: cover;
}

.marketing-v3-direction-media-placeholder {
  display: grid;
  place-items: center;
  color: rgba(255, 255, 255, 0.38);
  background: linear-gradient(145deg, #68707c, #252930);
}

.marketing-v3-direction-media-placeholder span {
  font-size: 1.6rem;
  font-weight: 950;
  letter-spacing: 0.08em;
}

.marketing-v3-direction-media-placeholder i {
  position: absolute;
  right: 12%;
  bottom: 16%;
  width: 44%;
  height: 34%;
  border-top: 3px solid rgba(255, 255, 255, 0.22);
  border-right: 3px solid rgba(255, 255, 255, 0.22);
  transform: skew(-24deg);
}

.marketing-v3-direction-rail,
.marketing-v3-direction-brand,
.marketing-v3-direction-avatar,
.marketing-v3-direction-copy {
  position: absolute;
  z-index: 2;
}

.marketing-v3-direction-brand {
  font-size: 0.58rem;
  font-weight: 950;
  letter-spacing: 0.09em;
}

.marketing-v3-direction-brand b {
  display: block;
  margin-top: 1px;
  color: #e30613;
  font-size: 0.38rem;
  letter-spacing: 0.24em;
}

.marketing-v3-direction-copy {
  display: grid;
  align-content: start;
  gap: 4px;
}

.marketing-v3-direction-copy small {
  color: #e30613;
  font-size: 0.48rem;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.marketing-v3-direction-copy strong {
  overflow: hidden;
  display: -webkit-box;
  font-size: 0.95rem;
  line-height: 1.02;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.marketing-v3-direction-copy span,
.marketing-v3-direction-copy em {
  overflow: hidden;
  display: -webkit-box;
  font-size: 0.5rem;
  font-style: normal;
  line-height: 1.25;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.marketing-v3-direction-copy em {
  font-weight: 850;
}

.marketing-v3-direction-avatar {
  display: grid;
  place-items: center;
  border: 2px solid rgba(255, 255, 255, 0.75);
  border-radius: 50%;
  font-size: 0.82rem;
  font-weight: 950;
}

.marketing-v3-direction-preview.mood-signature .marketing-v3-direction-media {
  right: auto;
  width: 56%;
}

.marketing-v3-direction-preview.mood-signature .marketing-v3-direction-rail {
  top: 0;
  left: 55%;
  width: 4%;
  height: 100%;
  background: #e30613;
}

.marketing-v3-direction-preview.mood-signature .marketing-v3-direction-brand {
  top: 9%;
  left: 64%;
}

.marketing-v3-direction-preview.mood-signature .marketing-v3-direction-copy {
  top: 34%;
  right: 5%;
  width: 36%;
}

.marketing-v3-direction-preview.mood-signature .marketing-v3-direction-avatar {
  top: 14%;
  right: 8%;
  width: 22%;
  aspect-ratio: 1;
  color: #fff;
  background: #15181d;
}

.marketing-v3-direction-preview.mood-signature.is-agent .marketing-v3-direction-media {
  width: 28%;
  background: #f1f2f4;
}

.marketing-v3-direction-preview.mood-signature.is-agent .marketing-v3-direction-rail {
  left: 27%;
}

.marketing-v3-direction-preview.mood-signature.is-agent .marketing-v3-direction-brand,
.marketing-v3-direction-preview.mood-signature.is-agent .marketing-v3-direction-copy {
  left: 36%;
  right: auto;
  width: 57%;
}

.marketing-v3-direction-preview.mood-signature.is-agent .marketing-v3-direction-avatar {
  top: 12%;
  right: auto;
  left: 5%;
  width: 18%;
}

.marketing-v3-direction-preview.mood-editorial {
  background: #f8f5ef;
}

.marketing-v3-direction-preview.mood-editorial .marketing-v3-direction-media {
  top: 7%;
  right: 5%;
  left: auto;
  width: 47%;
  height: 57%;
}

.marketing-v3-direction-preview.mood-editorial .marketing-v3-direction-rail {
  top: 23%;
  left: 6%;
  width: 21%;
  height: 3px;
  background: #e30613;
}

.marketing-v3-direction-preview.mood-editorial .marketing-v3-direction-brand {
  top: 7%;
  left: 6%;
}

.marketing-v3-direction-preview.mood-editorial .marketing-v3-direction-copy {
  right: 7%;
  bottom: 7%;
  left: 6%;
  padding-top: 7%;
  border-top: 1px solid rgba(17, 19, 24, 0.17);
}

.marketing-v3-direction-preview.mood-editorial .marketing-v3-direction-copy strong,
.marketing-v3-direction-preview.mood-editorial .marketing-v3-direction-copy span,
.marketing-v3-direction-preview.mood-editorial .marketing-v3-direction-copy em {
  max-width: 58%;
}

.marketing-v3-direction-preview.mood-editorial .marketing-v3-direction-copy strong {
  font-weight: 720;
}

.marketing-v3-direction-preview.mood-editorial .marketing-v3-direction-avatar {
  top: 13%;
  right: 13%;
  width: 22%;
  aspect-ratio: 1;
  color: #111318;
  border-color: #e30613;
  background: #fff;
}

.marketing-v3-direction-preview.mood-contrast {
  color: #fff;
  background: #07090c;
}

.marketing-v3-direction-preview.mood-contrast::after {
  content: "";
  position: absolute;
  z-index: 0;
  inset: 0;
  background: linear-gradient(90deg, rgba(4, 5, 8, 0.94) 0%, rgba(4, 5, 8, 0.74) 52%, rgba(4, 5, 8, 0.18) 100%);
}

.marketing-v3-direction-preview.mood-contrast::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  width: 27%;
  height: 100%;
  background: linear-gradient(160deg, #ef101c, #78040b);
  clip-path: polygon(38% 0, 100% 0, 100% 100%, 0 100%);
}

.marketing-v3-direction-preview.mood-contrast .marketing-v3-direction-media {
  opacity: 0.62;
}

.marketing-v3-direction-preview.mood-contrast .marketing-v3-direction-rail {
  bottom: 15%;
  left: 7%;
  width: 24%;
  height: 4px;
  background: #ef101c;
}

.marketing-v3-direction-preview.mood-contrast .marketing-v3-direction-brand {
  top: 8%;
  left: 7%;
}

.marketing-v3-direction-preview.mood-contrast .marketing-v3-direction-brand b {
  color: #fff;
}

.marketing-v3-direction-preview.mood-contrast .marketing-v3-direction-copy {
  bottom: 23%;
  left: 7%;
  width: 64%;
}

.marketing-v3-direction-preview.mood-contrast .marketing-v3-direction-copy strong {
  font-size: 1.05rem;
}

.marketing-v3-direction-preview.mood-contrast .marketing-v3-direction-avatar {
  top: 10%;
  right: 8%;
  z-index: 3;
  width: 19%;
  aspect-ratio: 1;
  color: #fff;
  background: #0a0c10;
}

.marketing-v3-wizard-error {
  width: min(100%, 954px);
  margin: 0 auto 14px;
}

.marketing-v3-editor {
  min-height: calc(100vh - 80px);
  background: #eef1f5;
}

.marketing-v3-editor-header {
  position: sticky;
  top: 0;
  z-index: 35;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 68px;
  padding: 10px 16px;
  border-bottom: 1px solid var(--v3-line);
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(14px);
}

.marketing-v3-editor-title {
  min-width: 0;
  flex: 1;
}

.marketing-v3-editor-title > div {
  display: grid;
  min-width: 0;
}

.marketing-v3-editor-title input {
  min-width: 0;
  width: min(560px, 100%);
  border: 0;
  padding: 1px 0;
  color: var(--v3-ink);
  background: transparent;
  font-size: 1rem;
  font-weight: 900;
  outline: 0;
}

.marketing-v3-save-state {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #68707d;
  font-size: 0.7rem;
  font-weight: 850;
}

.marketing-v3-save-state.error {
  color: #a30d17;
}

.marketing-v3-save-state .loading-spinner {
  width: 13px;
  height: 13px;
}

.marketing-v3-editor-grid {
  display: grid;
  grid-template-columns: 74px minmax(286px, 340px) minmax(430px, 1fr) minmax(260px, 310px);
  min-height: calc(100vh - 150px);
}

.marketing-v3-editor-rail {
  display: grid;
  align-content: start;
  gap: 5px;
  padding: 10px 7px;
  border-right: 1px solid var(--v3-line);
  background: #fbfcfe;
}

.marketing-v3-editor-rail button {
  display: grid;
  place-items: center;
  gap: 4px;
  min-height: 58px;
  border: 1px solid transparent;
  color: #586272;
  background: transparent;
  font-size: 0.54rem;
  font-weight: 900;
  cursor: pointer;
}

.marketing-v3-editor-rail button:hover,
.marketing-v3-editor-rail button.active {
  border-color: rgba(227, 6, 19, 0.2);
  color: var(--v3-red);
  background: #fff;
  box-shadow: 0 10px 22px rgba(17, 19, 24, 0.08);
}

.marketing-v3-editor-rail svg {
  width: 19px;
  height: 19px;
}

.marketing-v3-sidebar {
  min-width: 0;
  overflow-y: auto;
  border-right: 1px solid var(--v3-line);
  background: #fff;
}

.marketing-v3-review-panel {
  border-right: 0;
  border-left: 1px solid var(--v3-line);
}

.marketing-v3-sidebar details {
  border-bottom: 1px solid var(--v3-line);
}

.marketing-v3-sidebar summary {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  padding: 0 14px;
  list-style: none;
  font-size: 0.78rem;
  font-weight: 900;
  cursor: pointer;
}

.marketing-v3-sidebar summary::-webkit-details-marker {
  display: none;
}

.marketing-v3-sidebar summary em {
  margin-left: auto;
  color: var(--v3-muted);
  font-size: 0.67rem;
  font-style: normal;
}

.marketing-v3-panel-content,
.marketing-v3-inspector,
.marketing-v3-inspector-empty,
.marketing-v3-quality,
.marketing-v3-export {
  padding: 14px;
}

.marketing-v3-panel-content {
  display: grid;
  gap: 12px;
  background: #fafbfc;
}

.marketing-v3-asset-panel {
  display: grid;
  gap: 12px;
  padding: 14px;
  border-bottom: 1px solid var(--v3-line);
  background: #fff;
}

.marketing-v3-asset-panel header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.marketing-v3-asset-panel h2,
.marketing-v3-asset-panel p {
  margin: 0;
}

.marketing-v3-asset-panel h2 {
  font-size: 1rem;
}

.marketing-v3-asset-panel header > span {
  padding: 5px 7px;
  color: #667080;
  background: #f1f3f6;
  font-size: 0.58rem;
  font-weight: 900;
}

.marketing-v3-asset-search {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 10px;
  border: 1px solid #dce1e8;
  background: #f8fafc;
}

.marketing-v3-asset-search input {
  min-width: 0;
  width: 100%;
  border: 0;
  background: transparent;
  outline: 0;
  font-size: 0.72rem;
}

.marketing-v3-asset-template-grid,
.marketing-v3-stock-grid,
.marketing-v3-resize-catalog,
.marketing-v3-mini-projects,
.marketing-v3-text-presets,
.marketing-v3-brand-kit,
.marketing-v3-upload-panel,
.marketing-v3-qr-panel {
  display: grid;
  gap: 9px;
}

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

.marketing-v3-asset-template-grid.focused {
  grid-template-columns: 1fr;
}

.marketing-v3-asset-template-grid button {
  display: grid;
  gap: 7px;
  min-height: 134px;
  padding: 9px;
  border: 1px solid #dfe4eb;
  text-align: left;
  background: #fbfcfe;
  cursor: pointer;
}

.marketing-v3-asset-template-grid button.active {
  border-color: var(--v3-red);
  box-shadow: inset 0 0 0 1px rgba(227, 6, 19, 0.24);
}

.marketing-v3-asset-template-grid.focused button {
  grid-template-columns: 96px minmax(0, 1fr);
  align-items: center;
  min-height: 92px;
}

.marketing-v3-asset-template-grid.focused button .starter-art {
  grid-row: span 2;
}

.marketing-v3-asset-template-grid strong,
.marketing-v3-stock-grid strong,
.marketing-v3-mini-projects strong {
  overflow: hidden;
  color: var(--v3-ink);
  font-size: 0.67rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.marketing-v3-asset-template-grid small,
.marketing-v3-stock-grid small,
.marketing-v3-mini-projects small,
.marketing-v3-text-presets small,
.marketing-v3-brand-type span {
  color: var(--v3-muted);
  font-size: 0.57rem;
}

.marketing-v3-quick-layer-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.marketing-v3-quick-layer-grid button,
.marketing-v3-text-presets button,
.marketing-v3-resize-catalog button,
.marketing-v3-mini-projects button {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  min-height: 40px;
  padding: 8px;
  border: 1px solid #dfe4eb;
  text-align: left;
  color: var(--v3-ink);
  background: #fff;
  cursor: pointer;
}

.marketing-v3-quick-layer-grid svg,
.marketing-v3-text-presets svg,
.marketing-v3-resize-catalog svg {
  flex: 0 0 auto;
  color: var(--v3-red);
}

.marketing-v3-stock-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-height: 410px;
  overflow: auto;
}

.marketing-v3-stock-grid.compact {
  max-height: 250px;
}

.marketing-v3-stock-grid button {
  display: grid;
  gap: 6px;
  padding: 7px;
  border: 1px solid #dfe4eb;
  text-align: left;
  background: #fff;
  cursor: pointer;
}

.marketing-v3-layer-stack {
  display: grid;
  gap: 8px;
}

.marketing-v3-layer-stack article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px;
  align-items: center;
  padding: 7px;
  border: 1px solid #dde3ec;
  background: #fff;
}

.marketing-v3-layer-stack article.active {
  border-color: var(--v3-red);
  box-shadow: inset 3px 0 0 var(--v3-red);
}

.marketing-v3-layer-select {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  min-width: 0;
  padding: 0;
  border: 0;
  text-align: left;
  color: var(--v3-ink);
  background: transparent;
  cursor: pointer;
}

.marketing-v3-layer-select > svg {
  width: 30px;
  height: 30px;
  padding: 7px;
  border: 1px solid rgba(227, 6, 19, 0.16);
  background: #fff5f6;
  color: var(--v3-red);
  box-sizing: border-box;
}

.marketing-v3-layer-select span {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.marketing-v3-layer-select strong,
.marketing-v3-layer-select small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.marketing-v3-layer-select strong {
  font-size: 0.68rem;
}

.marketing-v3-layer-select small {
  color: var(--v3-muted);
  font-size: 0.56rem;
}

.marketing-v3-layer-mini-actions {
  display: flex;
  align-items: center;
  gap: 3px;
}

.marketing-v3-layer-mini-actions button {
  display: grid;
  place-items: center;
  width: 28px;
  height: 30px;
  border: 1px solid #dfe4eb;
  color: #4d5664;
  background: #fbfcfe;
  cursor: pointer;
}

.marketing-v3-layer-mini-actions button:last-child {
  color: var(--v3-red);
}

.marketing-v3-stock-grid img,
.marketing-v3-stock-grid button > span {
  width: 100%;
  aspect-ratio: 1.3;
  object-fit: cover;
  background: #eef1f5;
}

.marketing-v3-stock-grid button.image-unavailable::before {
  display: grid;
  width: 100%;
  aspect-ratio: 1.3;
  place-items: center;
  border: 1px dashed #c8ced8;
  color: #667085;
  background: #f3f5f8;
  content: "Image unavailable";
  font-size: 0.62rem;
  font-weight: 800;
}

.marketing-v3-brand-logo-card {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid #dfe4eb;
  background: #f8fafc;
}

.marketing-v3-brand-logo-card img {
  width: 150px;
  max-width: 100%;
  max-height: 70px;
  object-fit: contain;
  object-position: left center;
}

.marketing-v3-brand-logo-card button,
.marketing-v3-qr-panel button {
  justify-content: center;
}

.marketing-v3-brand-swatches {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 7px;
}

.marketing-v3-brand-swatches button {
  width: 34px;
  height: 34px;
  border: 1px solid #cad0d9;
  box-shadow: inset 0 0 0 2px rgba(255, 255, 255, 0.65);
  cursor: pointer;
}

.marketing-v3-brand-type {
  display: grid;
  gap: 5px;
}

.marketing-v3-mini-projects button {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  align-items: center;
}

.marketing-v3-mini-projects img,
.marketing-v3-mini-projects button > span {
  grid-row: span 2;
  width: 52px;
  height: 42px;
  object-fit: cover;
  background: #eef1f5;
}

.marketing-v3-qr-panel img {
  width: min(210px, 100%);
  margin-inline: auto;
  border: 1px solid #dfe4eb;
  background: #fff;
}

.marketing-v3-inline-fields {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.marketing-v3-photo-upload {
  display: grid;
  place-items: center;
  min-height: 100px;
  padding: 14px;
  border: 1px dashed #bcc4cf;
  text-align: center;
  color: var(--v3-ink);
  background: #fff;
  cursor: pointer;
}

.marketing-v3-photo-upload input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
}

.marketing-v3-photo-upload span {
  margin-top: 5px;
  font-size: 0.76rem;
  font-weight: 900;
}

.marketing-v3-photo-upload small {
  color: var(--v3-muted);
  font-size: 0.64rem;
}

.marketing-v3-photo-list {
  display: grid;
  gap: 7px;
  max-height: 270px;
  overflow-y: auto;
}

.marketing-v3-photo-list article {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 6px;
  border: 1px solid #e1e5eb;
  background: #fff;
}

.marketing-v3-photo-list article.hero {
  border-color: rgba(227, 6, 19, 0.38);
}

.marketing-v3-photo-list img {
  width: 44px;
  height: 44px;
  object-fit: cover;
}

.marketing-v3-photo-list article > div:nth-child(2) {
  display: grid;
  min-width: 0;
}

.marketing-v3-photo-list strong,
.marketing-v3-photo-list span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.marketing-v3-photo-list strong {
  font-size: 0.67rem;
}

.marketing-v3-photo-list span {
  color: var(--v3-muted);
  font-size: 0.58rem;
}

.marketing-v3-photo-actions {
  display: flex;
  align-items: center;
}

.marketing-v3-photo-actions button {
  display: grid;
  place-items: center;
  width: 25px;
  height: 28px;
  border: 0;
  color: #58606c;
  background: transparent;
  cursor: pointer;
}

.marketing-v3-photo-actions button:disabled {
  opacity: 0.25;
}

.marketing-v3-photo-actions svg {
  width: 14px;
  height: 14px;
}

.marketing-v3-crop-controls {
  display: grid;
  gap: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--v3-line);
}

.marketing-v3-crop-controls strong {
  font-size: 0.7rem;
}

.marketing-v3-crop-controls label {
  display: grid;
  grid-template-columns: 64px 1fr;
  align-items: center;
  gap: 8px;
  color: var(--v3-muted);
  font-size: 0.62rem;
  font-weight: 750;
}

.marketing-v3-compact-templates button {
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr) auto;
  gap: 9px;
  align-items: center;
  padding: 9px;
  border: 1px solid #e0e4ea;
  text-align: left;
  color: var(--v3-ink);
  background: #fff;
  cursor: pointer;
}

.marketing-v3-compact-templates button.active {
  border-color: var(--v3-red);
}

.marketing-v3-compact-templates button > div {
  display: grid;
  gap: 2px;
}

.marketing-v3-compact-templates .marketing-v3-template-example {
  width: 82px;
}

.marketing-v3-compact-templates strong {
  font-size: 0.68rem;
}

.marketing-v3-compact-templates small {
  color: var(--v3-muted);
  font-size: 0.58rem;
  line-height: 1.35;
}

.marketing-v3-stage {
  min-width: 0;
  padding: 14px 18px 20px;
  overflow: auto;
  background: #e7eaf0;
}

.marketing-v3-free-edit-bar {
  position: sticky;
  top: 0;
  z-index: 12;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
  margin: -2px 0 12px;
  padding: 9px;
  border: 1px solid #d4dae3;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 10px 24px rgba(17, 19, 24, .08);
}

.marketing-v3-free-edit-bar button,
.marketing-v3-free-upload {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 36px;
  padding: 0 11px;
  border: 1px solid #d8dee7;
  border-radius: 6px;
  background: #fff;
  color: #1b2029;
  font: inherit;
  font-size: .68rem;
  font-weight: 900;
  cursor: pointer;
}

.marketing-v3-free-edit-bar button:hover,
.marketing-v3-free-upload:hover {
  border-color: rgba(227, 6, 19, .45);
  color: var(--v3-red);
}

.marketing-v3-free-edit-bar button.danger {
  color: #a60b15;
  background: #fff5f6;
}

.marketing-v3-free-upload input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.marketing-v3-free-edit-bar svg {
  width: 16px;
  height: 16px;
}

.marketing-v3-format-tabs {
  display: flex;
  gap: 5px;
  overflow-x: auto;
  padding: 0 0 12px;
}

.marketing-v3-format-tabs button {
  display: grid;
  min-width: 92px;
  padding: 7px 10px;
  border: 1px solid #cfd5de;
  color: #414650;
  background: rgba(255, 255, 255, 0.74);
  font-size: 0.65rem;
  font-weight: 900;
  cursor: pointer;
}

.marketing-v3-format-tabs button.active {
  border-color: var(--v3-red);
  color: var(--v3-red);
  background: #fff;
}

.marketing-v3-format-tabs small {
  margin-top: 2px;
  color: #7b828e;
  font-size: 0.5rem;
}

.marketing-v3-canvas-wrap {
  display: grid;
  place-items: start center;
  min-height: 520px;
}

.marketing-v3-canvas {
  position: relative;
  container-type: inline-size;
  overflow: hidden;
  width: min(100%, 740px);
  background: #fff;
  box-shadow: 0 18px 48px rgba(17, 19, 24, 0.18);
  user-select: none;
}

.marketing-v3-canvas-element {
  position: absolute;
  box-sizing: border-box;
  overflow: hidden;
  line-height: 1.08;
}

.marketing-v3-canvas-element.type-text {
  display: flex;
  align-items: flex-start;
  line-height: 1.12;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.marketing-v3-canvas-element.type-image img,
.marketing-v3-canvas-logo {
  width: 100%;
  height: 100%;
}

.marketing-v3-canvas-element.type-image img {
  object-fit: cover;
  transform-origin: center;
}

.marketing-v3-canvas-logo {
  object-fit: contain;
  object-position: left center;
}

.marketing-v3-canvas-element:not(.locked):hover {
  outline: 2px solid rgba(35, 120, 255, 0.58);
  cursor: move;
}

.marketing-v3-canvas-element.selected {
  outline: 3px solid #1778ff;
}

.marketing-v3-canvas-element.selected.type-text,
.marketing-v3-canvas-element.selected.type-shape {
  overflow: visible;
}

.marketing-v3-canvas-element.selected.type-image {
  overflow: hidden;
}

.marketing-v3-canvas-element.editing {
  z-index: 999 !important;
  overflow: visible;
  outline: 3px solid #e30613;
  cursor: text;
}

.marketing-v3-inline-text-editor {
  width: 100%;
  height: 100%;
  min-width: 100%;
  min-height: 100%;
  margin: 0;
  padding: 4px;
  border: 0;
  border-radius: 0;
  outline: 0;
  resize: none;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.94);
  color: inherit;
  font: inherit;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  white-space: pre-wrap;
  box-sizing: border-box;
}

.marketing-v3-resize-handle {
  position: absolute;
  right: -8px;
  bottom: -8px;
  width: 16px;
  height: 16px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: #1778ff;
  cursor: nwse-resize;
}

.marketing-v3-canvas-element.type-image .marketing-v3-resize-handle {
  right: 4px;
  bottom: 4px;
}

.marketing-v3-layer-delete-button {
  position: absolute;
  top: 6px;
  right: 6px;
  z-index: 4;
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(255, 255, 255, 0.78);
  border-radius: 999px;
  color: #fff;
  background: rgba(227, 6, 19, 0.92);
  box-shadow: 0 8px 18px rgba(17, 19, 24, 0.22);
  cursor: pointer;
}

.marketing-v3-layer-delete-button svg {
  width: 15px;
  height: 15px;
}

.marketing-v3-photo-placeholder {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 8px;
  width: 100%;
  height: 100%;
  color: rgba(255, 255, 255, 0.75);
  background: linear-gradient(145deg, #444a54, #22252b);
  font-size: 3cqw;
  font-weight: 800;
}

.marketing-v3-photo-placeholder svg {
  width: 9cqw;
  height: 9cqw;
}

.marketing-v3-canvas-help {
  max-width: 720px;
  margin: 12px auto 0;
  color: #69717d;
  text-align: center;
  font-size: 0.67rem;
}

.marketing-v3-inspector,
.marketing-v3-inspector-empty,
.marketing-v3-quality,
.marketing-v3-export {
  border-bottom: 1px solid var(--v3-line);
}

.marketing-v3-inspector h2,
.marketing-v3-inspector p,
.marketing-v3-inspector-empty h2,
.marketing-v3-inspector-empty p,
.marketing-v3-quality h2,
.marketing-v3-quality p,
.marketing-v3-export h2,
.marketing-v3-export p {
  margin: 0;
}

.marketing-v3-inspector h2,
.marketing-v3-inspector-empty h2,
.marketing-v3-quality h2,
.marketing-v3-export h2 {
  margin: 4px 0 12px;
  font-size: 0.9rem;
}

.marketing-v3-position-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 10px;
}

.marketing-v3-position-grid label {
  display: grid;
  gap: 4px;
  color: var(--v3-muted);
  font-size: 0.58rem;
  font-weight: 850;
}

.marketing-v3-position-grid input {
  min-height: 34px;
  padding: 6px 8px;
  font-size: 0.7rem;
}

.marketing-v3-color-field {
  grid-template-columns: 1fr 48px;
  align-items: center;
}

.marketing-v3-color-field input {
  min-height: 36px;
  padding: 2px;
}

.marketing-v3-layer-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  margin-top: 10px;
}

.marketing-v3-layer-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 36px;
  border: 1px solid #d9dee7;
  color: var(--v3-ink);
  background: #fff;
  font-size: 0.64rem;
  font-weight: 900;
  cursor: pointer;
}

.marketing-v3-layer-actions button:last-child {
  color: var(--v3-red);
}

.marketing-v3-layer-order {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.marketing-v3-layer-order button {
  min-width: 0;
}

.marketing-v3-inspector-crop {
  margin-top: 12px;
}

.marketing-v3-inspector-empty {
  display: grid;
  place-items: center;
  min-height: 142px;
  text-align: center;
}

.marketing-v3-inspector-empty svg {
  color: var(--v3-red);
}

.marketing-v3-inspector-empty p {
  color: var(--v3-muted);
  font-size: 0.7rem;
  line-height: 1.45;
}

.marketing-v3-quality.ready {
  background: #f2fbf7;
}

.marketing-v3-quality.blocked {
  background: #fff8f8;
}

.marketing-v3-quality-heading {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.marketing-v3-quality-heading > svg {
  color: var(--v3-red);
}

.marketing-v3-quality.ready .marketing-v3-quality-heading > svg {
  color: #087a55;
}

.marketing-v3-issue-list {
  display: grid;
  gap: 6px;
}

.marketing-v3-issue-list button,
.marketing-v3-issue-list p {
  display: flex;
  align-items: flex-start;
  gap: 7px;
  width: 100%;
  padding: 7px;
  border: 1px solid rgba(227, 6, 19, 0.15);
  text-align: left;
  color: #5e2428;
  background: #fff;
  font-size: 0.64rem;
  line-height: 1.4;
}

.marketing-v3-issue-list button {
  cursor: pointer;
}

.marketing-v3-issue-list svg {
  flex: 0 0 auto;
  width: 14px;
  height: 14px;
}

.marketing-v3-quality.ready .marketing-v3-issue-list p {
  border-color: rgba(8, 122, 85, 0.2);
  color: #086244;
}

.marketing-v3-export-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 7px;
}

.marketing-v3-export small {
  display: block;
  margin-top: 9px;
  color: var(--v3-muted);
  font-size: 0.59rem;
  line-height: 1.45;
}

.marketing-v3-history > div {
  display: grid;
  gap: 7px;
  padding: 0 12px 12px;
}

.marketing-v3-history article {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px;
  border: 1px solid #e2e5ea;
}

.marketing-v3-history article > div {
  display: grid;
  min-width: 0;
}

.marketing-v3-history strong {
  font-size: 0.64rem;
}

.marketing-v3-history small {
  color: var(--v3-muted);
  font-size: 0.55rem;
}

.marketing-v3-history article button,
.marketing-v3-archive-link {
  border: 0;
  color: var(--v3-red);
  background: transparent;
  font-size: 0.62rem;
  font-weight: 900;
  cursor: pointer;
}

.marketing-v3-archive-link {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 12px;
}

.marketing-v3-mobile-tabs {
  display: none;
}

.marketing-v3-mobile-workflow {
  display: none;
}

.marketing-v3-tool-drawer,
.marketing-v3-detail-drawer {
  display: contents;
}

.marketing-v3-canvas-action-strip {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: min(100%, 720px);
  margin: 10px auto 0;
  padding: 8px;
  border: 1px solid #d7dde6;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 12px 24px rgba(17, 19, 24, 0.12);
}

.marketing-v3-canvas-action-strip span {
  min-width: 0;
  max-width: 220px;
  overflow: hidden;
  color: var(--v3-ink);
  font-size: 0.68rem;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.marketing-v3-canvas-action-strip button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid #d8dee8;
  color: var(--v3-ink);
  background: #fff;
  font-size: 0.64rem;
  font-weight: 900;
  cursor: pointer;
}

.marketing-v3-canvas-action-strip button.danger {
  border-color: rgba(227, 6, 19, 0.24);
  color: var(--v3-red);
  background: #fff7f8;
}

@media (max-width: 1180px) {
  .marketing-v3-editor-grid {
    grid-template-columns: 66px 270px minmax(390px, 1fr) 270px;
  }
  .marketing-v3-editor-rail span {
    font-size: 0.48rem;
  }
  .marketing-v3-stage {
    padding-inline: 12px;
  }
}

@media (max-width: 900px) {
  .marketing-v3-library-hero {
    align-items: flex-start;
    flex-direction: column;
  }
  .marketing-v3-template-grid {
    grid-template-columns: 1fr;
  }
  .marketing-v3-campaign-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .marketing-v3-editor-header {
    position: relative;
  }
  .marketing-v3-editor-actions .btn span,
  .marketing-v3-save-state {
    display: none;
  }
  .marketing-v3-mobile-tabs {
    position: sticky;
    top: 0;
    z-index: 30;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border-bottom: 1px solid var(--v3-line);
    background: #fff;
  }
  .marketing-v3-mobile-tabs button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 45px;
    border: 0;
    border-bottom: 3px solid transparent;
    color: #656d78;
    background: transparent;
    font-size: 0.68rem;
    font-weight: 900;
  }
  .marketing-v3-mobile-tabs button.active {
    border-color: var(--v3-red);
    color: var(--v3-red);
  }
  .marketing-v3-mobile-workflow {
    display: grid;
    grid-template-columns: repeat(4, minmax(132px, 1fr));
    gap: 8px;
    overflow-x: auto;
    padding: 10px;
    border-bottom: 1px solid var(--v3-line);
    background: #f7f9fc;
  }
  .marketing-v3-mobile-workflow button {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr);
    align-items: center;
    gap: 8px;
    min-height: 58px;
    padding: 9px;
    border: 1px solid #dce2ec;
    text-align: left;
    color: var(--v3-ink);
    background: #fff;
    box-shadow: 0 8px 18px rgba(17, 19, 24, 0.06);
  }
  .marketing-v3-mobile-workflow button.active {
    border-color: var(--v3-red);
    box-shadow: inset 3px 0 0 var(--v3-red), 0 10px 20px rgba(17, 19, 24, 0.08);
  }
  .marketing-v3-mobile-workflow svg {
    width: 19px;
    height: 19px;
    color: var(--v3-red);
  }
  .marketing-v3-mobile-workflow span {
    display: grid;
    min-width: 0;
    gap: 2px;
  }
  .marketing-v3-mobile-workflow strong {
    overflow: hidden;
    font-size: 0.68rem;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .marketing-v3-mobile-workflow small {
    color: var(--v3-muted);
    font-size: 0.56rem;
  }
  .marketing-v3-editor-grid {
    display: block;
    min-height: 0;
  }
  .marketing-v3-editor-rail {
    display: none;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    min-height: 0;
    border-right: 0;
    border-bottom: 1px solid var(--v3-line);
  }
  .marketing-v3-editor-rail.mobile-active {
    display: grid;
  }
  .marketing-v3-editor-rail button {
    min-height: 48px;
  }
  .marketing-v3-sidebar,
  .marketing-v3-stage {
    display: none;
    min-height: calc(100vh - 170px);
    border: 0;
  }
  .marketing-v3-sidebar.mobile-active,
  .marketing-v3-stage.mobile-active {
    display: block;
  }
  .marketing-v3-editor[data-mobile-panel="design"] .marketing-v3-detail-drawer,
  .marketing-v3-editor[data-mobile-panel="details"] .marketing-v3-tool-drawer {
    display: none;
  }
  .marketing-v3-editor[data-mobile-panel="details"] .marketing-v3-editor-rail {
    display: none;
  }
  .marketing-v3-stage {
    overflow-x: auto;
  }
}

@media (max-width: 600px) {
  .marketing-v3-beta-entry,
  .marketing-v3-library-hero,
  .marketing-v3-header-actions,
  .marketing-v3-library-toolbar,
  .marketing-v3-wizard-header {
    align-items: stretch;
    flex-direction: column;
  }
  .marketing-v3-beta-entry .btn,
  .marketing-v3-header-actions .btn {
    width: 100%;
  }
  .marketing-v3-library-hero {
    padding: 24px 20px;
  }
  .marketing-v3-library-hero h1 {
    font-size: 2rem;
  }
  .marketing-v3-library-toolbar > span {
    display: none;
  }
  .marketing-v3-project-grid {
    grid-template-columns: 1fr;
  }
  .marketing-v3-source-toggle,
  .marketing-v3-form-grid,
  .marketing-v3-campaign-grid {
    grid-template-columns: 1fr;
  }
  .marketing-v3-campaign-group-heading {
    align-items: flex-start;
    flex-direction: column;
  }
  .marketing-v3-campaign-card {
    min-height: 0;
  }
  .marketing-v3-field.span-2 {
    grid-column: auto;
  }
  .marketing-v3-wizard-footer.split {
    align-items: stretch;
    flex-direction: column-reverse;
  }
  .marketing-v3-wizard-footer .btn {
    width: 100%;
  }
  .marketing-v3-editor-header {
    gap: 8px;
    padding: 8px;
  }
  .marketing-v3-editor-title input {
    font-size: 0.78rem;
  }
  .marketing-v3-editor-actions {
    gap: 4px;
  }
  .marketing-v3-editor-actions .btn {
    min-width: 38px;
    padding-inline: 8px;
  }
  .marketing-v3-format-tabs button {
    min-width: 82px;
  }
  .marketing-v3-canvas-wrap {
    min-height: 0;
  }
  .marketing-v3-stage.mobile-active {
    padding: 10px 8px 130px;
  }
  .marketing-v3-canvas {
    width: min(100%, calc(100vw - 18px));
    max-height: calc(100vh - 255px);
  }
  .marketing-v3-canvas-action-strip {
    position: sticky;
    bottom: 78px;
    z-index: 24;
    justify-content: flex-start;
    overflow-x: auto;
    width: calc(100vw - 18px);
    margin-top: 8px;
  }
  .marketing-v3-canvas-action-strip span {
    flex: 0 0 116px;
    max-width: 116px;
  }
  .marketing-v3-canvas-action-strip button {
    flex: 0 0 auto;
    min-height: 40px;
    padding-inline: 12px;
  }
  .marketing-v3-asset-template-grid.focused button {
    grid-template-columns: 112px minmax(0, 1fr);
  }
  .marketing-v3-stock-grid {
    max-height: none;
  }
  .marketing-v3-review-panel.mobile-active {
    padding-bottom: 130px;
  }
  .marketing-v3-canvas-help {
    padding: 0 10px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .marketing-v3-beta * {
    scroll-behavior: auto !important;
    transition: none !important;
  }
}


/* Isolated internal feature previews. These classes are not used by the live navigation. */
.feature-preview-shell {
  min-height: calc(100vh - 88px);
  padding: 22px;
  background: #f5f6f8;
  color: #111318;
}

.feature-preview-hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  padding: 24px 26px;
  border: 1px solid #dfe2e8;
  border-left: 5px solid #ed111c;
  background: #fff;
}

.feature-preview-hero h1 {
  margin: 4px 0 8px;
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.05;
  letter-spacing: 0;
}

.feature-preview-hero p {
  max-width: 760px;
  margin: 0;
  color: #596273;
}

.feature-preview-hero-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 0 0 auto;
}

.feature-preview-badge {
  padding: 7px 10px;
  border: 1px solid #f4aeb2;
  border-radius: 999px;
  background: #fff4f4;
  color: #a20d16;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.feature-preview-grid {
  display: grid;
  gap: 18px;
  margin-top: 18px;
}

.feature-preview-panel {
  min-width: 0;
  padding: 22px;
  border: 1px solid #dfe2e8;
  border-radius: 8px;
  background: #fff;
}

.feature-preview-panel h2 {
  margin: 4px 0 18px;
  font-size: 22px;
  letter-spacing: 0;
}

.feature-preview-panel label {
  display: grid;
  gap: 7px;
  margin-bottom: 14px;
  color: #313744;
  font-size: 13px;
  font-weight: 800;
}

.feature-preview-panel input {
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid #cfd4dc;
  border-radius: 6px;
  background: #fff;
  color: #111318;
  font: inherit;
}

.feature-preview-primary {
  width: 100%;
  margin-top: 5px;
}

.feature-preview-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 380px;
  color: #596273;
  font-weight: 700;
}

.feature-preview-error {
  margin: 14px 0 0;
  padding: 10px 12px;
  border-left: 3px solid #ed111c;
  background: #fff1f2;
  color: #8f0d15;
  font-weight: 700;
}

.feature-preview-score-row,
.feature-preview-panel-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.feature-preview-score-row strong {
  display: block;
  margin-top: 2px;
  font-size: 64px;
  line-height: 1;
}

.feature-preview-status {
  padding: 7px 10px;
  border-radius: 999px;
  background: #eceff3;
  color: #4f5868;
  font-size: 12px;
  font-weight: 800;
  text-transform: capitalize;
}

.feature-preview-status.ready {
  background: #e4f7ed;
  color: #12673a;
}

.feature-preview-status.blocked {
  background: #ffe4e6;
  color: #9c111b;
}

.feature-preview-status.needs-review {
  background: #fff2d4;
  color: #795000;
}

.feature-preview-success,
.feature-preview-empty {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 16px;
  border: 1px solid #b8e2cb;
  border-radius: 6px;
  background: #effaf4;
  color: #12673a;
  font-weight: 800;
}

.feature-preview-issue {
  display: flex;
  gap: 11px;
  margin-top: 10px;
  padding: 12px;
  border-left: 3px solid #d4a100;
  background: #fffaf0;
}

.feature-preview-issue.critical {
  border-left-color: #ed111c;
  background: #fff1f2;
}

.feature-preview-issue.error {
  border-left-color: #e56c00;
  background: #fff6ed;
}

.feature-preview-issue strong {
  text-transform: capitalize;
}

.feature-preview-issue p {
  margin: 3px 0 0;
  color: #596273;
  font-size: 13px;
}

.feature-preview-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}

.feature-preview-metrics article {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 92px;
  padding: 16px;
  border: 1px solid #dfe2e8;
  border-radius: 7px;
  background: #fff;
}

.feature-preview-metrics article > svg {
  color: #ed111c;
}

.feature-preview-metrics span {
  display: block;
  color: #687182;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.feature-preview-metrics strong {
  display: block;
  margin-top: 4px;
  font-size: 28px;
}

.feature-preview-note {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 20px 0 0;
  padding: 12px;
  background: #f2f4f7;
  color: #596273;
  font-size: 12px;
  line-height: 1.5;
}

@media (max-width: 760px) {
  .feature-preview-shell {
    padding: 12px;
  }

  .feature-preview-hero,
  .feature-preview-hero-actions,
  .feature-preview-score-row {
    align-items: stretch;
    flex-direction: column;
  }

  .feature-preview-hero {
    padding: 20px;
  }

  .feature-preview-hero-actions .btn {
    width: 100%;
  }

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

  .feature-preview-panel {
    padding: 17px;
  }
}


.marketing-v3-workspace-grid {
  grid-template-columns: minmax(230px, 0.62fr) minmax(320px, 0.9fr) minmax(340px, 1.08fr);
  align-items: start;
}

.marketing-v3-projects {
  position: sticky;
  top: 16px;
}

.marketing-v3-project-list {
  display: grid;
  gap: 8px;
}

.marketing-v3-project-row {
  width: 100%;
  padding: 12px;
  border: 1px solid #dfe2e8;
  border-radius: 6px;
  background: #f8f9fb;
  color: #111318;
  text-align: left;
}

.marketing-v3-project-row:hover,
.marketing-v3-project-row.active {
  border-color: #ed111c;
  background: #fff3f4;
}

.marketing-v3-project-row strong,
.marketing-v3-project-row span {
  display: block;
  overflow-wrap: anywhere;
}

.marketing-v3-project-row span {
  margin-top: 5px;
  color: #687182;
  font-size: 12px;
  text-transform: capitalize;
}

.marketing-v3-save-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  margin-top: 5px;
}

.marketing-v3-unsaved {
  margin: 10px 0 0;
  color: #9c111b;
  font-size: 12px;
  font-weight: 800;
}

.marketing-v3-status-stack {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
}

.feature-preview-status.approved {
  background: #111318;
  color: #fff;
}

.feature-preview-status.draft {
  background: #e7edf8;
  color: #29415f;
}

.marketing-v3-approval {
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid #e2e5ea;
}

.marketing-v3-approval .btn {
  width: 100%;
}

.marketing-v3-approval p {
  display: flex;
  align-items: flex-start;
  gap: 7px;
  margin: 10px 0 0;
  color: #687182;
  font-size: 12px;
  line-height: 1.5;
}

@media (max-width: 1180px) {
  .marketing-v3-workspace-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .marketing-v3-projects {
    position: static;
    grid-column: 1 / -1;
  }

  .marketing-v3-project-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .marketing-v3-workspace-grid,
  .marketing-v3-project-list,
  .marketing-v3-save-actions {
    grid-template-columns: 1fr;
  }

  .marketing-v3-projects {
    grid-column: auto;
  }

  .marketing-v3-status-stack {
    justify-content: flex-start;
  }
}
.lead-machine-preview-grid {
  grid-template-columns: minmax(0, 1.65fr) minmax(280px, 0.65fr);
}

.lead-machine-view-tabs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 16px 0;
  padding: 6px;
  border: 1px solid #dfe2e8;
  border-radius: 7px;
  background: #fff;
}

.lead-machine-view-tabs button {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  min-height: 46px;
  padding: 9px 12px;
  border: 1px solid transparent;
  border-radius: 5px;
  background: transparent;
  color: #4e5767;
  font: inherit;
  font-size: 13px;
  font-weight: 850;
  text-align: left;
  cursor: pointer;
}

.lead-machine-view-tabs button:hover,
.lead-machine-view-tabs button.active {
  border-color: #efb6ba;
  background: #fff1f2;
  color: #9f1018;
}

.lead-machine-view-tabs button strong {
  display: grid;
  min-width: 25px;
  height: 25px;
  place-items: center;
  border-radius: 50%;
  background: #eef1f5;
  color: #313744;
  font-size: 11px;
}

.lead-machine-view-tabs button.active strong {
  background: #ed111c;
  color: #fff;
}

.lead-machine-feedback {
  margin-bottom: 14px;
  padding: 11px 14px;
  border: 1px solid #b7dfca;
  border-radius: 6px;
  background: #edf9f2;
  color: #246144;
  font-size: 13px;
  font-weight: 800;
}

.lead-machine-feedback.error {
  border-color: #f2b5b8;
  background: #fff1f2;
  color: #9f1018;
}

.lead-machine-action {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 72px;
  gap: 12px;
  align-items: start;
  padding: 15px 0;
  border-top: 1px solid #e5e7eb;
}

.lead-machine-rank {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 50%;
  background: #151820;
  color: #fff;
  font-size: 12px;
  font-weight: 900;
}

.lead-machine-action-copy > div {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.lead-machine-action-copy > div span {
  color: #7a8290;
  font-size: 11px;
  font-weight: 800;
}

.lead-machine-action-copy p {
  margin: 5px 0 8px;
  color: #596273;
  font-size: 13px;
}

.lead-machine-action-copy small {
  display: block;
  margin: -2px 0 9px;
  color: #7a8290;
  font-size: 11px;
  font-weight: 750;
}

.lead-machine-action-copy button {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #bd0d17;
  font-weight: 900;
  cursor: pointer;
}

.lead-machine-action-copy button:disabled {
  cursor: wait;
  opacity: 0.55;
}

.lead-machine-task-actions {
  display: flex;
  justify-content: flex-start !important;
  gap: 14px !important;
}

.lead-machine-task-actions button {
  min-height: 30px;
}

.lead-machine-task-actions .secondary-action {
  color: #4e5767;
}

.lead-machine-score {
  padding: 8px 6px;
  border-radius: 6px;
  background: #eef1f5;
  text-align: center;
}

.lead-machine-score strong,
.lead-machine-score span {
  display: block;
}

.lead-machine-score strong {
  font-size: 20px;
}

.lead-machine-score span {
  margin-top: 2px;
  color: #596273;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.lead-machine-score.hot {
  background: #ffe3e5;
  color: #a40d16;
}

.lead-machine-score.warm {
  background: #fff1d4;
  color: #7b5000;
}

.lead-machine-breakdown,
.lead-machine-source-list {
  display: grid;
  gap: 8px;
}

.lead-machine-breakdown > div,
.lead-machine-source-list > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid #e1e4e9;
  border-radius: 5px;
  color: #414958;
  text-transform: capitalize;
}

.lead-machine-insights h3 {
  margin: 24px 0 10px;
  font-size: 14px;
  text-transform: uppercase;
}

.feature-preview-empty {
  flex-wrap: wrap;
  margin-top: 12px;
}

.feature-preview-empty p {
  flex-basis: 100%;
  margin: 0;
  color: #44715a;
}

@media (max-width: 980px) {
  .lead-machine-preview-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .lead-machine-view-tabs {
    grid-template-columns: 1fr;
  }

  .lead-machine-view-tabs button {
    min-height: 44px;
  }

  .lead-machine-action {
    grid-template-columns: 30px minmax(0, 1fr);
  }

  .lead-machine-score {
    grid-column: 2;
    justify-self: start;
    min-width: 72px;
  }

  .lead-machine-action-copy > div {
    align-items: flex-start;
    flex-direction: column;
    gap: 3px;
  }

  .lead-machine-task-actions {
    width: 100%;
    gap: 9px !important;
  }

  .lead-machine-task-actions button {
    width: 100%;
    justify-content: center;
    padding: 7px 9px;
    border: 1px solid #e2e5ea;
    border-radius: 4px;
  }
}

.lead-growth-center {
  --lead-red: #e30613;
  --lead-ink: #151820;
  --lead-muted: #626b79;
  --lead-line: #dfe3e9;
}

.lead-growth-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
  padding: 30px 32px;
  border: 1px solid #282d36;
  border-left: 5px solid var(--lead-red);
  border-radius: 8px;
  background: var(--lead-ink);
  color: #fff;
}

.lead-growth-hero > div:first-child {
  max-width: 780px;
}

.lead-growth-hero .eyebrow {
  color: #ff767e;
}

.lead-growth-hero h1 {
  max-width: 720px;
  margin: 5px 0 9px;
  color: #fff;
  font-size: clamp(30px, 4vw, 50px);
  line-height: 1.02;
  letter-spacing: 0;
}

.lead-growth-hero p:last-child {
  max-width: 720px;
  margin: 0;
  color: #d8dbe1;
  font-size: 15px;
  line-height: 1.55;
}

.lead-growth-hero-actions {
  display: flex;
  flex: 0 0 auto;
  gap: 9px;
}

.lead-growth-hero-actions .btn.secondary {
  border-color: #656c78;
  background: #fff;
}

.lead-growth-truth-band {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 10px;
  padding: 10px 14px;
  border: 1px solid #efb6ba;
  border-radius: 6px;
  background: #fff5f6;
  color: #791119;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}

.lead-growth-truth-band svg {
  flex: 0 0 auto;
  color: var(--lead-red);
}

.lead-growth-metrics {
  margin-top: 14px;
}

.lead-growth-tabs {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.lead-growth-section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 16px;
}

.lead-growth-section-heading h2,
.lead-growth-section-heading h3 {
  margin: 3px 0 0;
  font-size: 22px;
  line-height: 1.15;
}

.lead-growth-section-heading p:not(.eyebrow) {
  max-width: 660px;
  margin: 7px 0 0;
  color: var(--lead-muted);
  font-size: 13px;
  line-height: 1.5;
}

.lead-growth-launch {
  padding: 20px 0 8px;
}

.lead-growth-starter {
  margin-bottom: 22px;
  overflow: hidden;
  border: 1px solid #2c313a;
  border-radius: 8px;
  background: var(--lead-ink);
  color: #fff;
}

.lead-growth-starter-intro {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr) auto;
  gap: 15px;
  align-items: center;
  padding: 18px;
}

.lead-growth-starter-intro > span {
  display: grid;
  width: 50px;
  height: 50px;
  place-items: center;
  border: 1px solid #ff747d;
  border-radius: 7px;
  background: var(--lead-red);
}

.lead-growth-starter-intro .eyebrow {
  color: #ff7c84;
}

.lead-growth-starter-intro h2 {
  margin: 4px 0 5px;
  color: #fff;
  font-size: 21px;
}

.lead-growth-starter-intro p:last-child {
  max-width: 720px;
  margin: 0;
  color: #cdd1d8;
  font-size: 12px;
  line-height: 1.45;
}

.lead-growth-finder {
  padding: 18px;
  border-top: 1px solid #3c424e;
  background: #fff;
  color: var(--lead-ink);
}

.lead-growth-finder-fields {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 9px;
}

.lead-growth-finder label {
  display: grid;
  gap: 5px;
  color: #414958;
  font-size: 10px;
  font-weight: 900;
}

.lead-growth-finder select {
  width: 100%;
  min-height: 40px;
  padding: 7px 9px;
  border: 1px solid #ced3db;
  border-radius: 5px;
  background: #fff;
  color: var(--lead-ink);
  font: inherit;
  font-size: 12px;
}

.lead-growth-finder-checks {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #e2e5ea;
}

.lead-growth-finder-checks label {
  display: flex;
  min-width: 0;
  flex: 1;
  align-items: flex-start;
  gap: 7px;
  line-height: 1.35;
}

.lead-growth-finder-checks input {
  width: 17px;
  height: 17px;
  flex: 0 0 auto;
  margin: 0;
  accent-color: var(--lead-red);
}

.lead-growth-finder-checks .btn {
  flex: 0 0 auto;
}

.lead-growth-recommendations {
  display: grid;
  gap: 8px;
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px solid #e2e5ea;
}

.lead-growth-recommendations article {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 11px;
  align-items: center;
  padding: 12px;
  border: 1px solid #dfe2e8;
  border-radius: 6px;
  background: #f8f9fb;
}

.lead-growth-recommendation-rank {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border-radius: 50%;
  background: var(--lead-ink);
  color: #fff;
  font-size: 12px;
  font-weight: 950;
}

.lead-growth-recommendation-copy > span {
  color: var(--lead-red);
  font-size: 9px;
  font-weight: 950;
  text-transform: uppercase;
}

.lead-growth-recommendation-copy h3 {
  margin: 3px 0 6px;
  font-size: 16px;
}

.lead-growth-recommendation-copy p {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin: 0 10px 4px 0;
  color: #535d6d;
  font-size: 10px;
  font-weight: 750;
}

.lead-growth-recommendation-copy p svg {
  color: #2c835b;
}

.lead-growth-recommendation-copy small {
  display: block;
  margin-top: 3px;
  color: #7a8390;
  font-size: 9px;
}

.lead-growth-playbook-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.lead-growth-playbook {
  display: flex;
  min-height: 330px;
  flex-direction: column;
  padding: 19px;
  border: 1px solid var(--lead-line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 10px 24px rgb(21 24 32 / 0.07);
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.lead-growth-playbook:hover {
  transform: translateY(-3px);
  border-color: #ee9399;
  box-shadow: 0 16px 34px rgb(21 24 32 / 0.11);
}

.lead-growth-playbook-icon,
.lead-growth-builder-icon {
  display: grid;
  width: 46px;
  height: 46px;
  place-items: center;
  border: 1px solid #ffc5c9;
  border-radius: 7px;
  background: #fff0f1;
  color: var(--lead-red);
}

.lead-growth-playbook-copy {
  flex: 1;
  padding: 16px 0;
}

.lead-growth-playbook-copy > span {
  color: var(--lead-red);
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.lead-growth-playbook-copy h3 {
  margin: 5px 0 8px;
  color: var(--lead-ink);
  font-size: 20px;
}

.lead-growth-playbook-copy p {
  margin: 0 0 13px;
  color: #535d6d;
  font-size: 13px;
  line-height: 1.55;
}

.lead-growth-playbook-copy small {
  display: block;
  color: #747d8b;
  font-size: 11px;
  line-height: 1.45;
}

.lead-growth-playbook-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding-top: 14px;
  border-top: 1px solid #e8eaee;
}

.lead-growth-playbook-footer > span {
  display: flex;
  align-items: center;
  gap: 5px;
  color: #737c89;
  font-size: 11px;
  font-weight: 800;
}

.lead-machine-embedded-queues {
  padding: 0;
}

.lead-machine-embedded-queues .lead-machine-view-tabs {
  margin-top: 0;
}

.lead-growth-campaign-layout {
  display: grid;
  grid-template-columns: minmax(250px, 0.32fr) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}

.lead-growth-campaign-list,
.lead-growth-campaign-workspace,
.lead-growth-results > section {
  border: 1px solid var(--lead-line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 10px 24px rgb(21 24 32 / 0.06);
}

.lead-growth-campaign-list {
  position: sticky;
  top: 16px;
  display: grid;
  gap: 8px;
  padding: 15px;
}

.lead-growth-campaign-list .lead-growth-section-heading {
  margin-bottom: 5px;
}

.lead-growth-campaign-list button:not(.btn) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  width: 100%;
  padding: 12px;
  border: 1px solid #e0e3e8;
  border-radius: 6px;
  background: #fff;
  color: var(--lead-ink);
  font: inherit;
  text-align: left;
  cursor: pointer;
}

.lead-growth-campaign-list button.active,
.lead-growth-campaign-list button:hover {
  border-color: #ee9298;
  background: #fff5f6;
}

.lead-growth-campaign-list button > div {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 8px;
}

.lead-growth-campaign-list button > div svg {
  flex: 0 0 auto;
  color: var(--lead-red);
}

.lead-growth-campaign-list button > div span,
.lead-growth-campaign-list button > div strong,
.lead-growth-campaign-list button > div small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lead-growth-campaign-list button > div strong {
  font-size: 12px;
}

.lead-growth-campaign-list button > div small,
.lead-growth-campaign-list button > span {
  color: #737c89;
  font-size: 10px;
  font-weight: 850;
}

.lead-growth-campaign-list button > i {
  grid-column: 1 / -1;
  height: 4px;
  overflow: hidden;
  border-radius: 4px;
  background: #e7e9ed;
}

.lead-growth-campaign-list button > i em {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--lead-red);
}

.lead-growth-campaign-workspace {
  padding: 20px;
}

.lead-growth-campaign-workspace > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 17px;
  border-bottom: 1px solid #e4e6ea;
}

.lead-growth-campaign-workspace > header h2 {
  margin: 4px 0 5px;
  font-size: 26px;
}

.lead-growth-campaign-workspace > header p:last-child {
  margin: 0;
  color: var(--lead-muted);
  font-size: 12px;
}

.lead-growth-campaign-facts {
  display: grid;
  grid-template-columns: 1.5fr repeat(2, minmax(120px, 0.5fr));
  gap: 9px;
  padding: 14px 0;
}

.lead-growth-campaign-facts > div {
  padding: 11px 12px;
  border: 1px solid #e1e4e9;
  border-radius: 6px;
  background: #f8f9fb;
}

.lead-growth-campaign-facts span,
.lead-growth-campaign-facts strong {
  display: block;
}

.lead-growth-campaign-facts span {
  margin-bottom: 3px;
  color: #7b8492;
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
}

.lead-growth-campaign-facts strong {
  overflow-wrap: anywhere;
  font-size: 12px;
}

.lead-growth-action-plan {
  padding: 16px 0;
}

.lead-growth-campaign-kit {
  display: grid;
  grid-template-columns: minmax(190px, 0.4fr) minmax(0, 1fr);
  gap: 14px;
  padding: 14px;
  border: 1px solid #efb6ba;
  border-radius: 6px;
  background: #fff5f6;
}

.lead-growth-campaign-kit h3 {
  margin: 4px 0 0;
  font-size: 16px;
}

.lead-growth-campaign-kit > div:last-child {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.lead-growth-campaign-kit span {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #4e5767;
  font-size: 11px;
  font-weight: 800;
}

.lead-growth-campaign-kit span svg {
  flex: 0 0 auto;
  color: var(--lead-red);
}

.lead-growth-action-plan > label {
  display: grid;
  grid-template-columns: 18px 30px minmax(0, 1fr) 18px;
  gap: 10px;
  align-items: start;
  padding: 13px 0;
  border-top: 1px solid #e5e7eb;
  cursor: pointer;
}

.lead-growth-action-plan > label input {
  margin: 7px 0 0;
  accent-color: var(--lead-red);
}

.lead-growth-action-plan > label.completed {
  opacity: 0.65;
}

.lead-growth-action-plan > label.completed strong {
  text-decoration: line-through;
}

.lead-growth-action-order {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border-radius: 50%;
  background: var(--lead-ink);
  color: #fff;
  font-size: 11px;
  font-weight: 900;
}

.lead-growth-action-plan label > span:nth-child(3) strong,
.lead-growth-action-plan label > span:nth-child(3) small {
  display: block;
}

.lead-growth-action-plan label > span:nth-child(3) strong {
  font-size: 13px;
}

.lead-growth-action-plan label > span:nth-child(3) small {
  margin-top: 3px;
  color: #7b8492;
  font-size: 10px;
  font-weight: 800;
}

.lead-growth-action-plan label > span:nth-child(3) p {
  margin: 6px 0 0;
  color: #586273;
  font-size: 12px;
  line-height: 1.45;
}

.lead-growth-campaign-support {
  display: grid;
  grid-template-columns: minmax(250px, 0.8fr) minmax(0, 1.2fr);
  gap: 12px;
}

.lead-growth-compliance,
.lead-growth-nia {
  padding: 16px;
  border: 1px solid #dfe2e8;
  border-radius: 7px;
  background: #f8f9fb;
}

.lead-growth-compliance h3,
.lead-growth-nia h3 {
  margin: 4px 0 12px;
  font-size: 17px;
}

.lead-growth-compliance > p:not(.eyebrow) {
  display: flex;
  align-items: flex-start;
  gap: 7px;
  margin: 9px 0;
  color: #535d6d;
  font-size: 11px;
  line-height: 1.45;
}

.lead-growth-compliance > p svg {
  flex: 0 0 auto;
  color: var(--lead-red);
}

.lead-growth-compliance > small {
  display: block;
  margin-top: 8px;
  color: #7a8390;
  text-align: center;
}

.lead-growth-nia {
  background: #fff;
}

.lead-growth-nia-prompts {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 10px;
}

.lead-growth-nia-prompts button {
  padding: 7px 9px;
  border: 1px solid #dfe2e8;
  border-radius: 5px;
  background: #f7f8fa;
  color: #3f4755;
  font: inherit;
  font-size: 10px;
  font-weight: 800;
  text-align: left;
  cursor: pointer;
}

.lead-growth-nia-prompts button:hover {
  border-color: #ef9fa4;
  color: #a10e17;
}

.lead-growth-nia form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: end;
}

.lead-growth-nia textarea,
.lead-growth-builder input,
.lead-growth-builder textarea,
.lead-growth-zip-form input,
.lead-growth-zip-form select {
  width: 100%;
  border: 1px solid #cfd4dc;
  border-radius: 5px;
  background: #fff;
  color: var(--lead-ink);
  font: inherit;
  font-size: 13px;
}

.lead-growth-nia textarea,
.lead-growth-builder textarea {
  padding: 10px 11px;
  resize: vertical;
}

.lead-growth-nia > article {
  margin-top: 10px;
  padding: 12px;
  border-left: 3px solid var(--lead-red);
  background: #fff5f6;
}

.lead-growth-nia > article p {
  margin: 5px 0 0;
  color: #4e5767;
  font-size: 12px;
  line-height: 1.55;
  white-space: pre-wrap;
}

.lead-growth-provider {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 13px;
  padding: 13px;
  border: 1px solid #dfe2e8;
  border-radius: 6px;
}

.lead-growth-provider > div {
  display: flex;
  align-items: center;
  gap: 10px;
}

.lead-growth-provider > div svg {
  color: var(--lead-red);
}

.lead-growth-provider strong,
.lead-growth-provider small {
  display: block;
}

.lead-growth-provider small {
  margin-top: 3px;
  color: #737c89;
}

.lead-growth-results {
  display: grid;
  grid-template-columns: minmax(330px, 0.72fr) minmax(0, 1.28fr);
  gap: 16px;
  align-items: start;
}

.lead-growth-results > section {
  padding: 18px;
}

.lead-growth-zip-form form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.lead-growth-zip-form label,
.lead-growth-builder label {
  display: grid;
  gap: 5px;
  color: #414958;
  font-size: 11px;
  font-weight: 850;
}

.lead-growth-zip-form input,
.lead-growth-zip-form select,
.lead-growth-builder input {
  min-height: 40px;
  padding: 8px 10px;
}

.lead-growth-confirm {
  grid-column: 1 / -1;
  display: flex !important;
  align-items: flex-start;
  gap: 8px !important;
  padding: 9px;
  border: 1px solid #efb6ba;
  border-radius: 5px;
  background: #fff5f6;
}

.lead-growth-confirm input,
.lead-growth-builder footer label input {
  width: 17px;
  min-height: 17px;
  margin: 0;
  accent-color: var(--lead-red);
}

.lead-growth-zip-form .btn {
  grid-column: 1 / -1;
}

.lead-growth-zip-results {
  display: grid;
  gap: 10px;
}

.lead-growth-zip-results > article {
  padding: 13px;
  border: 1px solid #e0e3e8;
  border-radius: 6px;
  background: #fff;
}

.lead-growth-zip-head {
  display: flex;
  align-items: center;
  gap: 8px;
}

.lead-growth-zip-head > strong {
  margin-right: auto;
  font-size: 21px;
}

.lead-growth-zip-head span,
.lead-growth-zip-head em {
  padding: 5px 7px;
  border-radius: 4px;
  background: #edf9f2;
  color: #246144;
  font-size: 9px;
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
}

.lead-growth-zip-head span.limited {
  background: #fff1d4;
  color: #74500c;
}

.lead-growth-zip-head em {
  background: var(--lead-ink);
  color: #fff;
}

.lead-growth-zip-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
  margin: 11px 0;
}

.lead-growth-zip-metrics > div {
  padding: 8px;
  border: 1px solid #e4e6ea;
  border-radius: 4px;
  background: #f8f9fb;
}

.lead-growth-zip-metrics span,
.lead-growth-zip-metrics strong {
  display: block;
}

.lead-growth-zip-metrics span {
  color: #7a8390;
  font-size: 9px;
  font-weight: 850;
  text-transform: uppercase;
}

.lead-growth-zip-metrics strong {
  margin-top: 3px;
  font-size: 12px;
}

.lead-growth-zip-results article > p {
  display: flex;
  align-items: flex-start;
  gap: 7px;
  margin: 0;
  color: #566070;
  font-size: 11px;
  line-height: 1.45;
}

.lead-growth-zip-results article > p svg {
  flex: 0 0 auto;
  color: var(--lead-red);
}

.lead-growth-modal-backdrop {
  position: fixed;
  z-index: 5000;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgb(10 12 16 / 0.72);
}

.lead-growth-builder {
  display: flex;
  width: min(920px, 100%);
  max-height: min(90vh, 820px);
  overflow: hidden;
  flex-direction: column;
  border: 1px solid #dfe2e8;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 26px 70px rgb(0 0 0 / 0.28);
}

.lead-growth-builder > header {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto;
  gap: 13px;
  align-items: start;
  padding: 18px 20px;
  border-bottom: 1px solid #e0e3e8;
}

.lead-growth-builder > header h2 {
  margin: 3px 0 4px;
  font-size: 23px;
}

.lead-growth-builder > header p:last-child {
  margin: 0;
  color: var(--lead-muted);
  font-size: 12px;
}

.lead-growth-builder-body {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, 0.65fr);
  gap: 18px;
  overflow: auto;
  padding: 20px;
}

.lead-growth-builder-body h3 {
  margin: 0 0 13px;
  font-size: 17px;
}

.lead-growth-builder-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px;
}

.lead-growth-builder-fields .wide {
  grid-column: 1 / -1;
}

.lead-growth-builder-body > aside {
  padding: 15px;
  border-left: 3px solid var(--lead-red);
  background: #f7f8fa;
}

.lead-growth-builder-body > aside > p:not(.eyebrow) {
  display: flex;
  align-items: flex-start;
  gap: 7px;
  margin: 9px 0;
  color: #535d6d;
  font-size: 11px;
  line-height: 1.45;
}

.lead-growth-builder-body > aside > p svg {
  flex: 0 0 auto;
  color: var(--lead-red);
}

.lead-growth-builder-output {
  display: grid;
  gap: 6px;
  margin-top: 15px;
  padding-top: 13px;
  border-top: 1px solid #d9dde3;
}

.lead-growth-builder-output span {
  color: #5d6675;
  font-size: 11px;
}

.lead-growth-builder > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 14px 20px;
  border-top: 1px solid #e0e3e8;
  background: #fff;
}

.lead-growth-builder > footer > label {
  display: flex;
  max-width: 560px;
  align-items: flex-start;
  gap: 8px;
  color: #4e5767;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.4;
}

.lead-growth-builder > footer > div {
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
}

@media (max-width: 1080px) {
  .lead-growth-playbook-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lead-growth-campaign-support,
  .lead-growth-campaign-kit,
  .lead-growth-results {
    grid-template-columns: 1fr;
  }

  .lead-growth-finder-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .lead-growth-hero,
  .lead-growth-campaign-workspace > header,
  .lead-growth-builder > footer {
    align-items: stretch;
    flex-direction: column;
  }

  .lead-growth-hero-actions,
  .lead-growth-builder > footer > div {
    width: 100%;
  }

  .lead-growth-hero-actions .btn,
  .lead-growth-builder > footer > div .btn {
    flex: 1;
  }

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

  .lead-growth-campaign-layout,
  .lead-growth-builder-body {
    grid-template-columns: 1fr;
  }

  .lead-growth-campaign-list {
    position: static;
  }

  .lead-growth-campaign-facts {
    grid-template-columns: 1fr;
  }

  .lead-growth-starter-intro {
    grid-template-columns: 50px minmax(0, 1fr);
  }

  .lead-growth-starter-intro > .btn {
    grid-column: 1 / -1;
    width: 100%;
  }

  .lead-growth-finder-checks {
    align-items: stretch;
    flex-direction: column;
  }

  .lead-growth-finder-checks .btn {
    width: 100%;
  }

  .lead-growth-builder-body > aside {
    border-top: 3px solid var(--lead-red);
    border-left: 0;
  }
}

@media (max-width: 620px) {
  .lead-growth-hero {
    padding: 22px 18px;
  }

  .lead-growth-hero h1 {
    font-size: 33px;
  }

  .lead-growth-hero-actions,
  .lead-growth-playbook-footer,
  .lead-growth-section-heading,
  .lead-growth-provider,
  .lead-growth-builder > footer > div {
    align-items: stretch;
    flex-direction: column;
  }

  .lead-growth-playbook-grid,
  .lead-growth-tabs,
  .lead-growth-finder-fields,
  .lead-growth-zip-form form,
  .lead-growth-builder-fields,
  .lead-growth-nia form,
  .lead-growth-campaign-kit > div:last-child {
    grid-template-columns: 1fr;
  }

  .lead-growth-playbook {
    min-height: 0;
  }

  .lead-growth-starter-intro {
    grid-template-columns: 42px minmax(0, 1fr);
    padding: 15px;
  }

  .lead-growth-starter-intro > span {
    width: 40px;
    height: 40px;
  }

  .lead-growth-finder {
    padding: 14px;
  }

  .lead-growth-recommendations article {
    grid-template-columns: 30px minmax(0, 1fr);
  }

  .lead-growth-recommendations article > .btn {
    grid-column: 2;
    width: 100%;
  }

  .lead-growth-campaign-workspace {
    padding: 14px;
  }

  .lead-growth-campaign-support {
    grid-template-columns: minmax(0, 1fr);
  }

  .lead-growth-action-plan > label {
    grid-template-columns: 18px 28px minmax(0, 1fr);
  }

  .lead-growth-action-plan > label > svg {
    grid-column: 3;
  }

  .lead-growth-nia form .btn,
  .lead-growth-zip-form .btn,
  .lead-growth-provider .btn {
    width: 100%;
  }

  .lead-growth-zip-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .lead-growth-modal-backdrop {
    padding: 0;
  }

  .lead-growth-builder {
    width: 100%;
    height: 100%;
    max-height: none;
    border: 0;
    border-radius: 0;
  }

  .lead-growth-builder-body {
    padding: 16px;
  }

  .lead-growth-builder > header,
  .lead-growth-builder > footer {
    padding: 13px 15px;
  }
}

* {
  box-sizing: border-box;
}

html,
body,
#root {
  min-height: 100%;
}

html {
  min-height: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  background:
    linear-gradient(135deg, rgb(255 255 255 / 0.92), rgb(244 245 247 / 0.98)),
    linear-gradient(90deg, rgb(227 6 19 / 0.04), transparent 34%, rgb(201 162 74 / 0.06));
  color: #17191d;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  letter-spacing: 0;
  overscroll-behavior-y: none;
}

button,
input,
select,
textarea {
  font: inherit;
}

button {
  cursor: pointer;
}

button:disabled,
input:disabled,
textarea:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.app-shell {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr) 380px;
  min-height: 100vh;
}

.app-shell.portal-shell {
  grid-template-columns: 280px minmax(0, 1fr);
}

.sidebar {
  position: sticky;
  top: 0;
  display: flex;
  height: 100vh;
  flex-direction: column;
  gap: 24px;
  overflow-y: auto;
  background: #060607;
  padding: 22px;
  color: white;
}

.brand-lockup {
  display: grid;
  gap: 8px;
  align-items: start;
}

.brand-mark {
  display: grid;
  height: 46px;
  width: 46px;
  place-items: center;
  border: 1px solid rgb(255 255 255 / 0.18);
  background: var(--nex-red);
  color: white;
  font-size: 28px;
  font-weight: 950;
  line-height: 1;
}

.brand-lockup h1 {
  margin: 2px 0 0;
  font-size: 17px;
  font-weight: 850;
  line-height: 1.1;
}

.brand-lockup p {
  margin: 0;
  color: rgb(255 255 255 / 0.58);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.brand-logo {
  display: block;
  width: 150px;
  height: auto;
  max-width: 100%;
  max-height: 68px;
  aspect-ratio: auto;
  object-fit: contain;
  object-position: left center;
  flex: 0 0 auto;
}

.agent-website-hero {
  background:
    radial-gradient(circle at top right, rgba(227, 6, 19, 0.18), transparent 34%),
    linear-gradient(135deg, #111318, #24272d);
  color: #ffffff;
}

.agent-website-hero .eyebrow,
.agent-website-hero p {
  color: rgba(255, 255, 255, 0.78);
}

.agent-website-status {
  min-width: 260px;
  display: grid;
  gap: 8px;
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.08);
}

.agent-website-status span,
.agent-website-status small {
  color: rgba(255, 255, 255, 0.72);
  font-weight: 800;
}

.agent-website-status strong {
  font-size: 26px;
}

.agent-website-page .module-hero h3 {
  max-width: 920px;
  font-size: clamp(38px, 4vw, 58px);
  line-height: 0.98;
}

.agent-website-page .module-hero p {
  max-width: 760px;
}

.agent-website-grid {
  display: grid;
  grid-template-columns: minmax(360px, 0.95fr) minmax(420px, 1.05fr);
  gap: 20px;
}

.agent-website-command-layout {
  display: grid;
  grid-template-columns: minmax(300px, 360px) minmax(0, 1fr) minmax(300px, 380px);
  gap: 18px;
  align-items: start;
}

.agent-website-command-sidebar,
.agent-website-editor.command,
.agent-website-preview-panel.command {
  min-width: 0;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background: #ffffff;
  padding: 16px;
  box-shadow: 0 18px 48px rgba(17, 19, 24, 0.08);
}

.agent-website-command-sidebar {
  position: sticky;
  top: 16px;
  display: grid;
  gap: 14px;
}

.agent-website-admin-notice {
  display: grid;
  gap: 18px;
  max-width: 1180px;
  margin: 0 auto;
  padding: 22px;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 18px 48px rgba(17, 19, 24, 0.08);
}

.agent-website-admin-copy {
  display: flex;
  align-items: flex-start;
  gap: 14px;
}

.agent-website-admin-copy > svg {
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  padding: 10px;
  border-radius: 14px;
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red);
}

.agent-website-admin-copy h3 {
  margin: 0 0 8px;
  font-size: clamp(24px, 3vw, 38px);
  line-height: 1.05;
}

.agent-website-admin-copy p:not(.eyebrow) {
  max-width: 820px;
  margin: 0;
  color: #647084;
  font-weight: 750;
  line-height: 1.55;
}

.agent-website-admin-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.agent-setup-score,
.agent-service-picker-head,
.agent-command-field {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 14px;
  border: 1px solid #e5e7eb;
  border-radius: 15px;
  background: #f8fafc;
}

.agent-setup-score meter {
  width: 100%;
  height: 10px;
}

.agent-setup-score span,
.agent-service-picker-head span,
.agent-command-field small {
  color: #647084;
  line-height: 1.45;
  font-size: 13px;
  font-weight: 750;
}

.agent-website-step-list {
  display: grid;
  gap: 8px;
}

.agent-website-step-list button {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  border: 1px solid #e5e7eb;
  border-radius: 13px;
  background: #f8fafc;
  color: #172033;
  padding: 11px 12px;
  text-align: left;
  font-weight: 900;
}

.agent-website-step-list button.active {
  border-color: rgb(227 6 19 / 0.36);
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red);
}

.agent-website-studio-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: -4px 0 16px;
  padding: 8px;
  border: 1px solid #e3e7ef;
  border-radius: 18px;
  background:
    linear-gradient(135deg, #ffffff, #f7f9fc);
  box-shadow: 0 16px 42px rgb(17 19 24 / 0.06);
}

.agent-website-studio-tabs button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  border: 1px solid transparent;
  border-radius: 13px;
  background: transparent;
  color: #3c4656;
  padding: 9px 12px;
  font-size: 12px;
  font-weight: 950;
}

.agent-website-studio-tabs button.active {
  border-color: rgb(227 6 19 / 0.25);
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.11), rgb(201 162 74 / 0.08));
  color: #111318;
  box-shadow: inset 0 -2px 0 var(--nex-red);
}

.agent-website-tool-stack,
.agent-website-studio-body,
.agent-managed-page-list,
.agent-content-builder {
  display: grid;
  gap: 12px;
}

.agent-website-tool-stack article,
.agent-studio-summary-grid article,
.agent-lead-intent-grid article {
  display: grid;
  gap: 5px;
  padding: 13px;
  border: 1px solid #e5e8ef;
  border-radius: 14px;
  background:
    linear-gradient(135deg, #ffffff, #f8fafc);
}

.agent-website-tool-stack svg,
.agent-studio-summary-grid svg {
  color: var(--nex-red);
}

.agent-website-tool-stack strong,
.agent-studio-summary-grid strong,
.agent-lead-intent-grid strong {
  color: #111318;
  font-size: 16px;
  font-weight: 950;
  line-height: 1.08;
}

.agent-website-tool-stack span,
.agent-studio-summary-grid span,
.agent-lead-intent-grid span {
  color: #647084;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}

.agent-website-template-grid,
.agent-website-widget-grid,
.agent-studio-summary-grid,
.agent-lead-intent-grid,
.agent-qr-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.agent-website-template-grid button,
.agent-website-widget-grid button {
  display: grid;
  gap: 9px;
  min-height: 170px;
  align-content: start;
  border: 1px solid #e2e6ee;
  border-radius: 18px;
  background:
    radial-gradient(circle at 92% 0%, rgb(227 6 19 / 0.10), transparent 34%),
    #ffffff;
  color: #111318;
  padding: 15px;
  text-align: left;
  box-shadow: 0 14px 34px rgb(17 19 24 / 0.055);
}

.agent-website-template-grid button.selected,
.agent-website-widget-grid button.enabled {
  border-color: rgb(227 6 19 / 0.38);
  box-shadow: 0 20px 48px rgb(17 19 24 / 0.10);
}

.agent-website-template-grid button > span,
.agent-website-widget-grid em {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: fit-content;
  border-radius: 999px;
  background: rgb(227 6 19 / 0.09);
  color: var(--nex-red);
  padding: 6px 9px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.agent-website-template-grid strong,
.agent-website-widget-grid strong,
.agent-managed-page-head strong {
  color: #111318;
  font-size: 18px;
  font-weight: 950;
}

.agent-website-template-grid small,
.agent-website-widget-grid span,
.agent-managed-page-head span {
  color: #647084;
  font-size: 12px;
  font-weight: 780;
  line-height: 1.45;
}

.agent-website-template-grid em {
  margin-top: auto;
  color: var(--nex-red);
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
}

.agent-managed-page-list > article,
.agent-content-builder,
.agent-personal-site-panel,
.agent-testimonial-editor,
.agent-qr-grid article,
.agent-embed-code {
  padding: 14px;
  border: 1px solid #e3e7ef;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 12px 30px rgb(17 19 24 / 0.045);
}

.agent-managed-page-head,
.agent-qr-grid article {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.agent-managed-page-head {
  margin-bottom: 12px;
}

.agent-managed-page-head > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.agent-qr-grid article {
  align-items: start;
}

.agent-qr-grid img {
  width: 92px;
  height: 92px;
  border: 1px solid #e5e8ef;
  border-radius: 12px;
  background: #fff;
}

.marketing-v3-quick-inspector {
  display: grid;
  gap: 12px;
  padding: 13px;
  border: 1px solid #dfe5ee;
  border-left: 4px solid var(--v3-red);
  background: #fff;
  box-shadow: 0 12px 24px rgba(17, 19, 24, 0.06);
}

.marketing-v3-quick-inspector > div {
  display: grid;
  gap: 3px;
}

.marketing-v3-quick-inspector strong,
.marketing-v3-quick-inspector span {
  overflow: hidden;
  text-overflow: ellipsis;
}

.marketing-v3-quick-inspector strong {
  font-size: 0.9rem;
}

.marketing-v3-quick-inspector span,
.marketing-v3-quick-inspector em {
  color: var(--v3-muted);
  font-size: 0.68rem;
  font-style: normal;
}

.marketing-v3-quick-inspector label {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) 42px;
  align-items: center;
  gap: 8px;
}

.marketing-v3-quick-inspector input[type="color"] {
  width: 100%;
  min-height: 34px;
  padding: 2px;
}

.marketing-v3-quick-inspector input[type="range"] {
  width: 100%;
}

.marketing-v3-quick-inspector select {
  grid-column: 2 / -1;
  min-width: 0;
  min-height: 34px;
  border: 1px solid #d8dde5;
  border-radius: 6px;
  background: #fff;
  color: var(--v3-ink);
  font: inherit;
  font-size: 0.75rem;
}

.agent-qr-grid article div {
  display: grid;
  gap: 4px;
  min-width: 0;
  flex: 1;
}

.agent-qr-grid span,
.agent-embed-code textarea {
  overflow-wrap: anywhere;
  color: #536173;
  font-size: 12px;
  line-height: 1.45;
}

.agent-embed-code textarea {
  font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;
}

.agent-next-action-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 12px 0 16px;
  padding: 12px;
  border-radius: 13px;
  background: #111318;
  color: #ffffff;
  font-weight: 850;
}

.agent-website-step-body {
  display: grid;
  gap: 16px;
}

.agent-command-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.agent-command-field span {
  color: #687386;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.agent-command-field strong {
  overflow-wrap: anywhere;
  color: #111318;
}

.agent-publish-toggle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: fit-content;
  border: 1px solid #dfe3ea;
  border-radius: 999px;
  background: #ffffff;
  padding: 7px 12px 7px 8px;
  color: #111318;
}

.agent-publish-toggle i {
  width: 28px;
  height: 16px;
  border-radius: 999px;
  background: #cbd5e1;
  box-shadow: inset 0 0 0 3px #ffffff;
}

.agent-publish-toggle.on {
  border-color: rgb(22 129 74 / 0.26);
  background: rgb(22 129 74 / 0.08);
  color: #107044;
}

.agent-publish-toggle.on i {
  background: #16a34a;
}

.agent-website-form-grid.simplified {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.agent-website-form-grid.simplified.advanced {
  padding-top: 12px;
  border-top: 1px solid #edf0f4;
}

.agent-selected-area-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.agent-selected-area-row em {
  border-radius: 999px;
  background: #eef2f7;
  color: #253044;
  padding: 7px 10px;
  font-style: normal;
  font-size: 12px;
  font-weight: 850;
}

.agent-advanced-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: fit-content;
  border: 1px solid #dfe3ea;
  border-radius: 999px;
  background: #ffffff;
  padding: 9px 13px;
  color: #111318;
  font-weight: 900;
}

.agent-step-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  padding-top: 14px;
  border-top: 1px solid #edf0f4;
}

.agent-step-actions.sticky {
  position: sticky;
  bottom: 0;
  z-index: 3;
  margin: 16px -16px -16px;
  padding: 12px 16px;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(12px);
  border-radius: 0 0 18px 18px;
}

.status-badge.green { background: rgb(22 129 74 / 0.11); color: #107044; }
.status-badge.amber { background: rgb(217 119 6 / 0.12); color: #9a5a08; }
.status-badge.blue { background: rgb(37 99 235 / 0.11); color: #1d4ed8; }
.status-badge.muted { background: #eef2f7; color: #536173; }

.agent-site-preview-card {
  --agent-site-accent: #e30613;
  min-height: 430px;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) 250px;
  gap: 22px;
  align-items: end;
  margin-top: 16px;
  padding: 28px;
  border: 1px solid rgba(17, 19, 24, 0.1);
  border-radius: 24px;
  background: linear-gradient(135deg, #ffffff, #f7f8fb);
  background-size: cover;
  background-position: center;
  overflow: hidden;
  box-shadow: 0 24px 58px rgba(17, 19, 24, 0.12);
}

.agent-site-preview-card.theme-luxury,
.agent-site-preview-card.theme-luxury-black,
.custom-agent-hero.theme-luxury,
.custom-agent-hero.theme-luxury-black {
  background-color: #121318;
  color: #ffffff;
}

.agent-site-preview-card.theme-coastal,
.agent-site-preview-card.theme-florida-coastal,
.custom-agent-hero.theme-coastal,
.custom-agent-hero.theme-florida-coastal {
  background-color: #eef8fb;
}

.agent-site-preview-card.theme-urban,
.agent-site-preview-card.theme-nex-dark,
.custom-agent-hero.theme-urban,
.custom-agent-hero.theme-nex-dark {
  background-color: #17191f;
  color: #ffffff;
}

.agent-site-preview-card.theme-red-accent,
.custom-agent-hero.theme-red-accent {
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.10), transparent 45%),
    #ffffff;
}

.agent-site-preview-card.theme-urban {
  background-color: #f1f3f6;
}

.agent-site-preview-card.theme-minimal,
.agent-site-preview-card.theme-clean-white,
.custom-agent-hero.theme-minimal,
.custom-agent-hero.theme-clean-white {
  background-color: #ffffff;
}

.agent-site-preview-copy {
  display: grid;
  gap: 14px;
}

.agent-site-preview-copy > span {
  width: fit-content;
  padding: 8px 12px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--agent-site-accent) 13%, white);
  color: var(--agent-site-accent);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.agent-site-preview-copy h2 {
  margin: 0;
  color: inherit;
  font-size: clamp(32px, 4vw, 54px);
  line-height: 0.98;
  letter-spacing: 0;
}

.agent-site-preview-copy p {
  max-width: 620px;
  color: #4b5563;
  font-weight: 700;
  line-height: 1.55;
}

.agent-site-preview-card.theme-luxury .agent-site-preview-copy p {
  color: rgba(255, 255, 255, 0.74);
}

.agent-site-preview-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.agent-site-preview-tags em {
  padding: 8px 10px;
  border-radius: 999px;
  background: rgba(17, 19, 24, 0.08);
  color: inherit;
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
}

.agent-site-preview-copy button {
  width: fit-content;
  border: 0;
  border-radius: 999px;
  padding: 12px 18px;
  background: var(--agent-site-accent);
  color: #ffffff;
  font-weight: 950;
}

.agent-site-preview-agent {
  display: grid;
  justify-items: center;
  gap: 8px;
  padding: 20px;
  border: 1px solid rgba(17, 19, 24, 0.1);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.88);
  color: #111318;
  text-align: center;
}

.agent-site-preview-agent strong {
  font-size: 18px;
}

.agent-site-preview-agent span,
.agent-site-preview-agent small {
  color: #5b6472;
  font-weight: 800;
}

.agent-website-link-box,
.agent-website-readiness {
  display: grid;
  gap: 12px;
  margin-top: 16px;
}

.agent-website-link-box {
  grid-template-columns: 1fr;
  align-items: stretch;
  padding: 14px;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  background: #ffffff;
}

.agent-website-link-box div,
.agent-website-readiness span {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.agent-website-link-box span,
.agent-website-readiness span {
  color: #5b6472;
  font-weight: 750;
  overflow-wrap: anywhere;
}

.agent-website-link-box > .btn {
  width: 100%;
  justify-content: center;
  min-height: 42px;
}

.agent-website-link-box div > span {
  display: block;
  margin-top: 8px;
  padding: 10px;
  border-radius: 12px;
  background: #f8fafc;
  color: #253044;
  font-size: 12px;
  line-height: 1.45;
}

.agent-website-readiness {
  grid-template-columns: 1fr;
}

.agent-website-readiness span {
  padding: 14px;
  border-radius: 16px;
  background: #f8fafc;
  border: 1px solid #e5e7eb;
}

.agent-website-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.agent-website-form-grid .field:has(textarea),
.agent-website-form-grid .check-field {
  grid-column: 1 / -1;
}

.agent-website-headshot-upload {
  margin-top: 16px;
}

.nested-heading {
  margin-top: 18px;
}

.agent-website-style-panel,
.agent-recent-leads {
  display: grid;
  gap: 12px;
  margin-top: 16px;
  padding: 14px;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  background: #ffffff;
}

.agent-theme-options,
.agent-accent-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.agent-theme-options button,
.agent-accent-options button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  border: 1px solid #dfe3ea;
  border-radius: 999px;
  background: #f8fafc;
  padding: 7px 11px;
  color: #111318;
  font-size: 12px;
  font-weight: 900;
}

.agent-theme-options button.selected,
.agent-accent-options button.selected {
  border-color: rgb(227 6 19 / 0.36);
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red);
}

.theme-swatch,
.agent-accent-options button span {
  width: 18px;
  height: 18px;
  border: 1px solid rgb(17 19 24 / 0.14);
  border-radius: 999px;
}

.theme-swatch.clean-white { background: #ffffff; }
.theme-swatch.nex-dark { background: #17191f; }
.theme-swatch.florida-coastal { background: #a8d7df; }
.theme-swatch.luxury-black { background: #050505; }
.theme-swatch.red-accent { background: #e30613; }

.agent-recent-lead-list {
  display: grid;
  gap: 8px;
}

.agent-recent-lead-list article {
  display: grid;
  gap: 3px;
  padding: 10px;
  border: 1px solid #eceff4;
  border-radius: 12px;
  background: #f8fafc;
}

.agent-website-preview-panel .agent-site-preview-card {
  min-height: 0;
  grid-template-columns: 1fr;
  align-items: start;
  gap: 18px;
  padding: 24px;
  border-radius: 24px;
}

.agent-website-preview-panel .agent-site-preview-copy h2 {
  font-size: clamp(32px, 2.6vw, 44px);
  line-height: 1.04;
}

.agent-website-preview-panel .agent-site-preview-copy p {
  margin: 0;
  max-width: 100%;
  font-size: 14px;
}

.agent-website-preview-panel .agent-site-preview-copy button {
  width: 100%;
  justify-content: center;
  border-radius: 14px;
}

.agent-website-preview-panel .agent-site-preview-agent {
  width: 100%;
  align-self: stretch;
  padding: 16px;
}

.agent-website-preview-panel .agent-site-preview-card {
  position: relative;
  overflow: hidden;
  border: 1px solid rgb(255 255 255 / 0.18);
  background:
    radial-gradient(circle at 86% 10%, color-mix(in srgb, var(--agent-site-accent, #e30613) 24%, transparent), transparent 30%),
    linear-gradient(135deg, #080a0f 0%, #151922 52%, #2a0609 100%);
  color: #fff;
}

.agent-website-preview-panel .agent-site-preview-card::after {
  content: "NEX";
  position: absolute;
  right: -8px;
  bottom: -22px;
  color: rgb(255 255 255 / 0.06);
  font-size: 94px;
  font-weight: 950;
  letter-spacing: 0.04em;
  pointer-events: none;
}

.agent-website-preview-panel .agent-site-preview-copy {
  position: relative;
  z-index: 1;
}

.agent-website-preview-panel .agent-site-preview-copy > span {
  background: rgb(255 255 255 / 0.12);
  color: rgb(255 255 255 / 0.88);
}

.agent-website-preview-panel .agent-site-preview-copy h2,
.agent-website-preview-panel .agent-site-preview-copy p {
  color: #fff;
}

.agent-website-preview-panel .agent-site-preview-copy p {
  color: rgb(255 255 255 / 0.78);
}

.agent-website-preview-panel .agent-site-preview-tags em {
  border-color: rgb(255 255 255 / 0.16);
  background: rgb(255 255 255 / 0.11);
  color: #fff;
}

.agent-website-preview-panel .agent-site-preview-agent {
  position: relative;
  z-index: 1;
  border-color: rgb(255 255 255 / 0.18);
  background: rgb(255 255 255 / 0.93);
}

.agent-website-preview-panel .agent-site-preview-card.theme-clean-white,
.agent-website-preview-panel .agent-site-preview-card.theme-florida-coastal,
.agent-website-preview-panel .agent-site-preview-card.theme-red-accent {
  border-color: rgb(17 19 24 / 0.10);
  color: #111318;
}

.agent-website-preview-panel .agent-site-preview-card.theme-clean-white {
  background:
    radial-gradient(circle at 86% 10%, color-mix(in srgb, var(--agent-site-accent, #e30613) 13%, transparent), transparent 30%),
    linear-gradient(135deg, #ffffff, #f6f8fb);
}

.agent-website-preview-panel .agent-site-preview-card.theme-florida-coastal {
  background:
    radial-gradient(circle at 84% 8%, rgb(36 124 138 / 0.22), transparent 32%),
    linear-gradient(135deg, #f7fcfd, #e8f6f8);
}

.agent-website-preview-panel .agent-site-preview-card.theme-red-accent {
  background:
    radial-gradient(circle at 86% 10%, color-mix(in srgb, var(--agent-site-accent, #e30613) 18%, transparent), transparent 30%),
    linear-gradient(135deg, #ffffff, #fff4f5);
}

.agent-website-preview-panel .agent-site-preview-card.theme-clean-white::after,
.agent-website-preview-panel .agent-site-preview-card.theme-florida-coastal::after,
.agent-website-preview-panel .agent-site-preview-card.theme-red-accent::after {
  color: rgb(17 19 24 / 0.045);
}

.agent-website-preview-panel .agent-site-preview-card.theme-clean-white .agent-site-preview-copy > span,
.agent-website-preview-panel .agent-site-preview-card.theme-florida-coastal .agent-site-preview-copy > span,
.agent-website-preview-panel .agent-site-preview-card.theme-red-accent .agent-site-preview-copy > span {
  background: color-mix(in srgb, var(--agent-site-accent, #e30613) 10%, #ffffff);
  color: var(--agent-site-accent, var(--nex-red));
}

.agent-website-preview-panel .agent-site-preview-card.theme-clean-white .agent-site-preview-copy h2,
.agent-website-preview-panel .agent-site-preview-card.theme-clean-white .agent-site-preview-copy p,
.agent-website-preview-panel .agent-site-preview-card.theme-florida-coastal .agent-site-preview-copy h2,
.agent-website-preview-panel .agent-site-preview-card.theme-florida-coastal .agent-site-preview-copy p,
.agent-website-preview-panel .agent-site-preview-card.theme-red-accent .agent-site-preview-copy h2,
.agent-website-preview-panel .agent-site-preview-card.theme-red-accent .agent-site-preview-copy p {
  color: #111318;
}

.agent-website-preview-panel .agent-site-preview-card.theme-clean-white .agent-site-preview-copy p,
.agent-website-preview-panel .agent-site-preview-card.theme-florida-coastal .agent-site-preview-copy p,
.agent-website-preview-panel .agent-site-preview-card.theme-red-accent .agent-site-preview-copy p {
  color: #536173;
}

.agent-website-preview-panel .agent-site-preview-card.theme-clean-white .agent-site-preview-tags em,
.agent-website-preview-panel .agent-site-preview-card.theme-florida-coastal .agent-site-preview-tags em,
.agent-website-preview-panel .agent-site-preview-card.theme-red-accent .agent-site-preview-tags em {
  background: #fff;
  color: #303846;
}

.custom-agent-hero {
  --agent-site-accent: #e30613;
  background-size: cover;
  background-position: center;
  border-color: color-mix(in srgb, var(--agent-site-accent) 28%, #e5e7eb);
  box-shadow: 0 24px 64px rgba(17, 19, 24, 0.12);
}

.custom-agent-hero .btn.primary,
.public-profile-actions .btn.primary {
  background: var(--agent-site-accent, #e30613);
  border-color: var(--agent-site-accent, #e30613);
}

@media (max-width: 1020px) {
  .agent-website-command-layout,
  .agent-website-grid,
  .agent-site-preview-card,
  .agent-website-readiness,
  .agent-command-grid,
  .agent-website-form-grid,
  .agent-website-template-grid,
  .agent-website-widget-grid,
  .agent-studio-summary-grid,
  .agent-lead-intent-grid,
  .agent-qr-grid {
    grid-template-columns: 1fr;
  }

  .agent-website-command-sidebar {
    position: static;
  }

  .agent-website-link-box {
    grid-template-columns: 1fr;
  }

  .agent-website-status {
    min-width: 0;
  }
}

.agent-success-dashboard {
  display: grid;
  gap: 14px;
  margin-top: 8px;
  padding: 14px;
  border: 1px solid rgb(17 24 39 / 0.06);
  border-radius: 10px;
  background:
    radial-gradient(circle at 88% 0%, rgb(227 6 19 / 0.075), transparent 26%),
    linear-gradient(180deg, #f8fafc 0%, #eef2f7 100%);
}

.launchpad-page {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.launchpad-loading {
  min-height: 320px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 18px;
  background: linear-gradient(135deg, #ffffff 0%, #fff5f5 48%, #f8fafc 100%);
  color: #111827;
  font-weight: 800;
}

.launchpad-hero {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(280px, 0.75fr);
  gap: 18px;
  padding: clamp(22px, 3vw, 34px);
  border: 1px solid rgba(227, 6, 19, 0.14);
  border-radius: 24px;
  background:
    radial-gradient(circle at 12% 10%, rgba(227, 6, 19, 0.16), transparent 32%),
    linear-gradient(135deg, #ffffff 0%, #fff7f7 46%, #f8fafc 100%);
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.1);
}

.launchpad-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, transparent, rgba(227, 6, 19, 0.1), transparent),
    repeating-linear-gradient(135deg, rgba(227, 6, 19, 0.06) 0 1px, transparent 1px 18px);
  opacity: 0.55;
  pointer-events: none;
}

.launchpad-hero-copy,
.launchpad-status-panel {
  position: relative;
  z-index: 1;
}

.launchpad-hero h3 {
  margin: 5px 0 10px;
  max-width: 760px;
  color: #09090b;
  font-size: clamp(2.1rem, 4vw, 4.2rem);
  line-height: 0.95;
  font-weight: 950;
}

.launchpad-hero-copy > p:not(.eyebrow) {
  max-width: 760px;
  margin: 0;
  color: #4b5563;
  font-size: 1rem;
  line-height: 1.7;
}

.launchpad-progress-track {
  width: min(620px, 100%);
  height: 10px;
  margin: 20px 0 16px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.08);
}

.launchpad-progress-track span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #e30613, #fb7185, #111827);
  box-shadow: 0 0 20px rgba(227, 6, 19, 0.25);
  transition: width 0.35s ease;
}

.launchpad-hero-actions,
.launchpad-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.launchpad-status-panel {
  display: grid;
  gap: 10px;
  padding: 16px;
  border: 1px solid rgba(255, 255, 255, 0.8);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8), 0 18px 45px rgba(15, 23, 42, 0.09);
  backdrop-filter: blur(16px);
}

.launchpad-status-panel strong {
  display: block;
  margin-top: 8px;
  color: #111827;
  font-size: 2rem;
  line-height: 1;
}

.launchpad-status-panel p,
.launchpad-stat-mini span,
.launchpad-admin-row em {
  margin: 0;
  color: #6b7280;
  font-size: 0.82rem;
}

.launchpad-stat-mini {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 14px;
  background: rgba(248, 250, 252, 0.9);
}

.launchpad-stat-mini strong {
  margin: 0;
  font-size: 1rem;
}

.launchpad-certificate {
  display: flex;
  gap: 14px;
  align-items: center;
  padding: 18px;
  border: 1px solid rgba(22, 163, 74, 0.18);
  border-radius: 18px;
  background: linear-gradient(135deg, #f0fdf4, #ffffff);
  color: #14532d;
}

.launchpad-certificate svg {
  color: #16a34a;
}

.launchpad-certificate h3,
.launchpad-certificate p {
  margin: 0;
}

.launchpad-day-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(150px, 1fr));
  gap: 10px;
}

.launchpad-day-card {
  min-height: 132px;
  padding: 14px;
  text-align: left;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 18px;
  background: #ffffff;
  color: #111827;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.launchpad-day-card:hover,
.launchpad-day-card.active {
  transform: translateY(-2px);
  border-color: rgba(227, 6, 19, 0.28);
  box-shadow: 0 18px 40px rgba(227, 6, 19, 0.1);
}

.launchpad-day-card.complete {
  background: linear-gradient(135deg, #ffffff, #f0fdf4);
  border-color: rgba(22, 163, 74, 0.22);
}

.launchpad-day-card.locked {
  opacity: 0.62;
  cursor: not-allowed;
  background: #f1f5f9;
}

.launchpad-day-card span,
.launchpad-day-card em {
  display: block;
  color: #6b7280;
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.launchpad-day-card strong {
  display: block;
  margin: 8px 0 14px;
  font-size: 0.95rem;
  line-height: 1.3;
}

.launchpad-workspace {
  display: grid;
  grid-template-columns: minmax(250px, 320px) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.launchpad-chapter-list,
.launchpad-classroom-panel,
.launchpad-admin-panel {
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 22px;
  background: #ffffff;
  box-shadow: 0 18px 55px rgba(15, 23, 42, 0.07);
}

.launchpad-chapter-list {
  position: sticky;
  top: 18px;
  display: grid;
  gap: 10px;
  padding: 16px;
}

.launchpad-chapter-list h3,
.launchpad-classroom-head h3,
.launchpad-quiz-card h3,
.launchpad-homework-card h3,
.launchpad-coach-card h3,
.launchpad-admin-panel h3 {
  margin: 0;
  color: #111827;
}

.launchpad-chapter-list > p:not(.eyebrow) {
  margin: 0 0 8px;
  color: #6b7280;
  font-size: 0.9rem;
  line-height: 1.5;
}

.launchpad-chapter-button {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  width: 100%;
  padding: 12px;
  text-align: left;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 14px;
  background: #f8fafc;
  color: #111827;
}

.launchpad-chapter-button.active {
  border-color: rgba(227, 6, 19, 0.32);
  background: #fff5f5;
}

.launchpad-chapter-button.complete {
  border-color: rgba(22, 163, 74, 0.24);
  background: #f0fdf4;
}

.launchpad-chapter-button.review {
  border-color: rgba(245, 158, 11, 0.3);
  background: #fffbeb;
}

.launchpad-chapter-button svg {
  flex: 0 0 auto;
  margin-top: 2px;
}

.launchpad-chapter-button span,
.launchpad-chapter-button em {
  display: block;
}

.launchpad-chapter-button em {
  margin-top: 5px;
  color: #6b7280;
  font-size: 0.76rem;
  font-style: normal;
}

.launchpad-classroom-panel {
  display: grid;
  gap: 16px;
  padding: clamp(16px, 2vw, 24px);
}

.launchpad-classroom-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}

.launchpad-classroom-head p:not(.eyebrow) {
  margin: 8px 0 0;
  color: #4b5563;
  line-height: 1.65;
}

.launchpad-video-placeholder {
  display: flex;
  gap: 14px;
  align-items: center;
  padding: 18px;
  border: 1px dashed rgba(227, 6, 19, 0.35);
  border-radius: 18px;
  background: linear-gradient(135deg, #111827, #3f0f16);
  color: #ffffff;
}

.launchpad-video-placeholder p {
  margin: 4px 0 0;
  color: rgba(255, 255, 255, 0.74);
}

.launchpad-nia-breakdown {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 16px;
  padding: 18px;
  border: 1px solid rgba(227, 6, 19, 0.18);
  border-radius: 20px;
  background:
    radial-gradient(circle at 8% 0%, rgba(227, 6, 19, 0.16), transparent 34%),
    linear-gradient(135deg, #ffffff, #fff5f5 52%, #f8fafc);
  color: #111827;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.launchpad-nia-orb {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 16px;
  background: #111827;
  color: #ffffff;
  box-shadow: 0 16px 28px rgba(227, 6, 19, 0.18);
}

.launchpad-nia-breakdown h3 {
  margin: 0;
  color: #111827;
}

.launchpad-nia-breakdown p {
  margin: 8px 0 0;
  color: #4b5563;
  line-height: 1.6;
}

.launchpad-nia-breakdown ul {
  display: grid;
  gap: 6px;
  margin: 12px 0 0;
  padding-left: 20px;
  color: #374151;
}

.launchpad-nia-breakdown blockquote {
  margin: 14px 0 0;
  padding: 12px 14px;
  border-left: 4px solid #e30613;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.78);
}

.launchpad-nia-breakdown blockquote strong,
.launchpad-nia-breakdown blockquote span {
  display: block;
}

.launchpad-nia-breakdown blockquote span {
  margin-top: 5px;
  color: #374151;
}

.launchpad-micro-actions,
.launchpad-coach-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.launchpad-section-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.8fr);
  gap: 12px;
}

.launchpad-lesson-card,
.launchpad-quiz-card,
.launchpad-homework-card,
.launchpad-coach-card {
  padding: 16px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 18px;
  background: #f8fafc;
}

.launchpad-lesson-card.accent {
  background: linear-gradient(135deg, #fff5f5, #ffffff);
  border-color: rgba(227, 6, 19, 0.16);
}

.launchpad-lesson-card ul {
  margin: 10px 0 0;
  padding-left: 20px;
  color: #4b5563;
  line-height: 1.6;
}

.launchpad-lesson-card h4,
.launchpad-lesson-card p {
  margin: 0;
}

.launchpad-lesson-card h4 {
  color: #111827;
  line-height: 1.4;
}

.launchpad-lesson-card p {
  margin-top: 8px;
  color: #6b7280;
}

.launchpad-requirements {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.launchpad-requirements span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 10px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 999px;
  background: #ffffff;
  color: #6b7280;
  font-size: 0.82rem;
  font-weight: 800;
}

.launchpad-requirements span.met {
  border-color: rgba(22, 163, 74, 0.24);
  background: #f0fdf4;
  color: #166534;
}

.launchpad-quiz-card,
.launchpad-homework-card,
.launchpad-coach-card {
  display: grid;
  gap: 14px;
  background: #ffffff;
}

.launchpad-question {
  display: grid;
  gap: 10px;
  padding: 12px;
  border-radius: 14px;
  background: #f8fafc;
}

.launchpad-question p {
  margin: 0;
  color: #6b7280;
  font-size: 0.84rem;
}

.launchpad-options {
  display: grid;
  gap: 8px;
}

.launchpad-options label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 12px;
  background: #ffffff;
  color: #374151;
  font-size: 0.9rem;
  line-height: 1.4;
}

.launchpad-homework-card textarea,
.launchpad-coach-card textarea,
.launchpad-simulator-card textarea {
  width: 100%;
  resize: vertical;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 14px;
  padding: 12px;
  background: #f8fafc;
  color: #111827;
}

.launchpad-homework-card p,
.launchpad-coach-card p,
.launchpad-simulator-card p {
  margin: 5px 0 0;
  color: #6b7280;
}

.launchpad-simulator-card {
  display: grid;
  gap: 14px;
  padding: 16px;
  border: 1px solid rgba(227, 6, 19, 0.14);
  border-radius: 18px;
  background:
    linear-gradient(135deg, rgba(227, 6, 19, 0.06), transparent 42%),
    #ffffff;
}

.launchpad-simulator-fields {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 12px;
}

.launchpad-simulator-fields label {
  display: grid;
  gap: 7px;
  color: #111827;
  font-size: 0.86rem;
  font-weight: 850;
}

.launchpad-simulator-note {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  padding: 11px 12px;
  border: 1px solid rgba(245, 158, 11, 0.25);
  border-radius: 14px;
  background: #fffbeb;
  color: #92400e;
  font-size: 0.82rem;
  font-weight: 750;
  line-height: 1.45;
}

.launchpad-coach-card {
  background: linear-gradient(135deg, #111827, #2d1014);
  color: #ffffff;
}

.launchpad-coach-card h3 {
  color: #ffffff;
}

.launchpad-coach-card textarea {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.16);
  color: #ffffff;
}

.launchpad-coach-card textarea::placeholder {
  color: rgba(255, 255, 255, 0.55);
}

.launchpad-coach-feed {
  display: grid;
  gap: 10px;
}

.launchpad-coach-feed > p {
  color: rgba(255, 255, 255, 0.68);
}

.launchpad-coach-feed article {
  padding: 12px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.08);
}

.launchpad-coach-feed span {
  display: block;
  font-weight: 900;
}

.launchpad-coach-feed article p {
  color: rgba(255, 255, 255, 0.72);
}

.launchpad-nia-field-guide {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 12px;
}

.launchpad-nia-field-guide section {
  display: grid;
  gap: 5px;
  padding: 10px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.08);
}

.launchpad-nia-field-guide strong {
  color: #ffffff;
  font-size: 0.76rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.launchpad-nia-field-guide p {
  margin: 0;
}

.launchpad-coach-feed em {
  display: inline-flex;
  margin-top: 8px;
  color: #fecaca;
  font-size: 0.8rem;
  font-style: normal;
  font-weight: 800;
}

.launchpad-rubric {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.launchpad-rubric em {
  margin: 0;
  padding: 5px 7px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.82);
  font-size: 0.7rem;
}

.launchpad-admin-panel {
  padding: 16px;
}

.launchpad-admin-table {
  display: grid;
  gap: 8px;
  overflow-x: auto;
}

.launchpad-admin-row {
  display: grid;
  grid-template-columns: minmax(210px, 1.45fr) minmax(150px, 1fr) 0.65fr 0.55fr 0.55fr 0.55fr 0.45fr 0.65fr 0.75fr 0.6fr;
  gap: 10px;
  align-items: center;
  min-width: 1180px;
  padding: 12px;
  border-radius: 14px;
  background: #f8fafc;
  color: #111827;
  font-size: 0.9rem;
}

.launchpad-admin-row.header {
  background: #111827;
  color: #ffffff;
  font-weight: 900;
}

.launchpad-admin-row span {
  min-width: 0;
}

.launchpad-admin-row strong,
.launchpad-admin-row em {
  display: block;
}

@media (max-width: 1050px) {
  .launchpad-hero,
  .launchpad-workspace,
  .launchpad-section-grid {
    grid-template-columns: 1fr;
  }

  .launchpad-day-grid {
    display: flex;
    overflow-x: auto;
    padding-bottom: 4px;
  }

  .launchpad-day-card {
    min-width: 210px;
  }

  .launchpad-chapter-list {
    position: static;
  }
}

@media (max-width: 680px) {
  .launchpad-hero {
    padding: 18px;
    border-radius: 20px;
  }

  .launchpad-hero h3 {
    font-size: 2.15rem;
  }

  .launchpad-classroom-head {
    flex-direction: column;
  }

  .launchpad-status-panel strong {
    font-size: 1.55rem;
  }

  .launchpad-video-placeholder,
  .launchpad-certificate {
    align-items: flex-start;
  }
}

.launchpad-home-hero {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(300px, 0.55fr);
  gap: clamp(18px, 3vw, 34px);
  padding: clamp(24px, 4vw, 42px);
  border: 1px solid rgba(227, 6, 19, 0.16);
  border-radius: 28px;
  background:
    radial-gradient(circle at 14% 8%, rgba(227, 6, 19, 0.16), transparent 24%),
    radial-gradient(circle at 88% 18%, rgba(17, 24, 39, 0.08), transparent 26%),
    linear-gradient(135deg, #ffffff 0%, #fff7f7 52%, #f8fafc 100%);
  box-shadow: 0 28px 80px rgba(15, 23, 42, 0.11);
}

.launchpad-home-hero::before {
  content: "NEX LAUNCHPAD  NEX LAUNCHPAD  NEX LAUNCHPAD";
  position: absolute;
  right: -12%;
  bottom: -18px;
  color: rgba(227, 6, 19, 0.06);
  font-size: clamp(3.4rem, 9vw, 9rem);
  font-weight: 950;
  letter-spacing: 0.02em;
  white-space: nowrap;
  pointer-events: none;
}

.launchpad-home-copy,
.launchpad-resume-card,
.launchpad-home-strip,
.launchpad-coach-callout,
.launchpad-roadmap-section,
.launchpad-player-topbar,
.launchpad-player-shell,
.launchpad-certificate-page {
  position: relative;
  z-index: 1;
}

.launchpad-home-copy h3 {
  margin: 5px 0 10px;
  max-width: 780px;
  color: #09090b;
  font-size: clamp(2.3rem, 5vw, 4.8rem);
  line-height: 0.92;
  font-weight: 950;
}

.launchpad-home-copy > p:not(.eyebrow) {
  max-width: 760px;
  margin: 0;
  color: #4b5563;
  font-size: 1.03rem;
  line-height: 1.7;
}

.launchpad-home-actions,
.launchpad-roadmap-footer,
.launchpad-player-topbar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.launchpad-home-actions {
  margin-top: 20px;
}

.launchpad-resume-card {
  display: grid;
  gap: 16px;
  align-content: start;
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, 0.78);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 22px 54px rgba(15, 23, 42, 0.12);
  backdrop-filter: blur(16px);
}

.launchpad-resume-ring {
  display: grid;
  place-items: center;
  width: 148px;
  height: 148px;
  margin: 0 auto;
  border-radius: 999px;
  background:
    radial-gradient(circle at center, #ffffff 0 58%, transparent 59%),
    conic-gradient(#e30613 var(--launchpad-progress, 0%), rgba(15, 23, 42, 0.09) 0);
}

.launchpad-resume-ring strong,
.launchpad-resume-ring span {
  grid-area: 1 / 1;
}

.launchpad-resume-ring strong {
  color: #111827;
  font-size: 2rem;
  font-weight: 950;
}

.launchpad-resume-ring span {
  margin-top: 48px;
  color: #6b7280;
  font-size: 0.75rem;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.launchpad-resume-card h4,
.launchpad-resume-card p {
  margin: 0;
}

.launchpad-resume-card h4 {
  color: #111827;
  font-size: 1.08rem;
}

.launchpad-resume-card p:not(.eyebrow) {
  margin-top: 5px;
  color: #6b7280;
  line-height: 1.5;
}

.launchpad-home-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.launchpad-home-strip article,
.launchpad-coach-callout,
.launchpad-roadmap-section,
.launchpad-player-sidebar,
.launchpad-main-stage,
.launchpad-certificate-page {
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 22px;
  background: #ffffff;
  box-shadow: 0 18px 50px rgba(15, 23, 42, 0.07);
}

.launchpad-home-strip article {
  display: flex;
  gap: 12px;
  align-items: center;
  min-height: 88px;
  padding: 14px;
}

.launchpad-home-strip svg {
  width: 38px;
  height: 38px;
  padding: 9px;
  border-radius: 14px;
  background: #fff1f2;
  color: #e30613;
}

.launchpad-home-strip strong,
.launchpad-home-strip em {
  display: block;
}

.launchpad-home-strip strong {
  color: #111827;
  font-size: 1.15rem;
}

.launchpad-home-strip em {
  color: #6b7280;
  font-size: 0.8rem;
  font-style: normal;
  font-weight: 750;
  line-height: 1.35;
}

.launchpad-coach-callout {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 18px;
  background:
    radial-gradient(circle at 0% 0%, rgba(227, 6, 19, 0.1), transparent 30%),
    linear-gradient(135deg, #ffffff, #f8fafc);
}

.launchpad-coach-callout h3,
.launchpad-coach-callout p {
  margin: 0;
}

.launchpad-coach-callout p:not(.eyebrow) {
  margin-top: 5px;
  color: #6b7280;
  line-height: 1.5;
}

.launchpad-roadmap-section {
  display: grid;
  gap: 14px;
  padding: 16px;
}

.launchpad-roadmap {
  display: grid;
  grid-template-columns: repeat(7, minmax(150px, 1fr));
  gap: 10px;
}

.launchpad-roadmap-card {
  display: grid;
  gap: 12px;
  min-height: 210px;
  padding: 14px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 18px;
  background:
    linear-gradient(180deg, #ffffff, #f8fafc);
  color: #111827;
  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.launchpad-roadmap-card:hover {
  transform: translateY(-2px);
  border-color: rgba(227, 6, 19, 0.24);
  box-shadow: 0 18px 38px rgba(227, 6, 19, 0.1);
}

.launchpad-roadmap-card.complete {
  border-color: rgba(22, 163, 74, 0.2);
  background: linear-gradient(180deg, #ffffff, #f0fdf4);
}

.launchpad-roadmap-card.locked {
  opacity: 0.68;
  background: #f1f5f9;
}

.launchpad-roadmap-card span,
.launchpad-roadmap-card em,
.launchpad-roadmap-card small {
  display: block;
  color: #6b7280;
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.launchpad-roadmap-card strong {
  display: block;
  margin: 6px 0;
  font-size: 0.95rem;
  line-height: 1.25;
}

.launchpad-roadmap-card p {
  margin: 0;
  color: #6b7280;
  font-size: 0.82rem;
  line-height: 1.4;
}

.launchpad-roadmap-footer {
  justify-content: space-between;
  align-self: end;
}

.launchpad-mini-progress {
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.08);
}

.launchpad-mini-progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #e30613, #fb7185);
}

.launchpad-player-page {
  gap: 14px;
  max-width: 100%;
  overflow-x: hidden;
}

.launchpad-page,
.launchpad-page *,
.launchpad-player-page,
.launchpad-player-page * {
  box-sizing: border-box;
}

.launchpad-player-shell,
.launchpad-main-stage,
.launchpad-course-workspace,
.launchpad-course-main,
.launchpad-tab-panel,
.launchpad-workspace-grid,
.launchpad-task-grid,
.launchpad-objective-grid,
.launchpad-practice-grid,
.launchpad-sales-grid,
.launchpad-sales-drills,
.launchpad-objection-clinic,
.launchpad-conversation-ladder,
.launchpad-decision-tree,
.launchpad-admin-qa-panel {
  max-width: 100%;
  min-width: 0;
}

.launchpad-tab-panel,
.launchpad-course-section,
.launchpad-practice-card,
.launchpad-sales-grid article,
.launchpad-sales-drills article,
.launchpad-decision-tree article,
.launchpad-objection-clinic article {
  overflow-wrap: anywhere;
}

.launchpad-player-topbar {
  justify-content: space-between;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.06);
}

.launchpad-roadmap-toggle {
  display: none;
}

.launchpad-day-stepper {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 2px;
}

.launchpad-day-stepper button {
  display: grid;
  min-width: 74px;
  gap: 3px;
  place-items: center;
  padding: 9px 10px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 14px;
  background: #f8fafc;
  color: #111827;
}

.launchpad-day-stepper button.active {
  border-color: rgba(227, 6, 19, 0.28);
  background: #fff1f2;
}

.launchpad-day-stepper button.complete {
  border-color: rgba(22, 163, 74, 0.22);
  background: #f0fdf4;
}

.launchpad-day-stepper button.locked {
  opacity: 0.55;
}

.launchpad-day-stepper span {
  display: grid;
  width: 24px;
  height: 24px;
  place-items: center;
  border-radius: 999px;
  background: #111827;
  color: #ffffff;
  font-size: 0.78rem;
  font-weight: 900;
}

.launchpad-day-stepper em {
  color: #6b7280;
  font-size: 0.68rem;
  font-style: normal;
  font-weight: 850;
  text-transform: uppercase;
}

.launchpad-player-shell {
  display: grid;
  grid-template-columns: minmax(250px, 310px) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}

.launchpad-player-sidebar {
  position: sticky;
  top: 12px;
  display: grid;
  gap: 12px;
  padding: 16px;
}

.launchpad-player-sidebar h3,
.launchpad-player-sidebar p,
.launchpad-lesson-header h3,
.launchpad-lesson-header p {
  margin: 0;
}

.launchpad-player-sidebar p:not(.eyebrow) {
  color: #6b7280;
  font-size: 0.9rem;
  line-height: 1.5;
}

.launchpad-lesson-rail {
  display: grid;
  gap: 8px;
}

.launchpad-rail-item {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  overflow: hidden;
  width: 100%;
  padding: 11px;
  text-align: left;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 14px;
  background: #f8fafc;
  color: #111827;
}

.launchpad-rail-item::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: var(--lesson-progress, 0%);
  background: linear-gradient(90deg, rgba(227, 6, 19, 0.12), rgba(227, 6, 19, 0.035));
  pointer-events: none;
}

.launchpad-rail-item.active {
  border-color: rgba(227, 6, 19, 0.3);
  background: #fff1f2;
}

.launchpad-rail-item.started:not(.complete):not(.active) {
  border-color: rgba(227, 6, 19, 0.16);
  background: #fffafa;
}

.launchpad-rail-item.complete {
  border-color: rgba(22, 163, 74, 0.32);
  background: #f0fdf4;
  box-shadow: 0 10px 26px rgba(22, 163, 74, 0.08);
}

.launchpad-rail-item.complete::before {
  width: 100%;
  background: linear-gradient(90deg, rgba(22, 163, 74, 0.16), rgba(22, 163, 74, 0.045));
}

.launchpad-rail-item.locked {
  opacity: 0.58;
}

.launchpad-rail-item.review {
  border-color: rgba(245, 158, 11, 0.28);
  background: #fffbeb;
}

.launchpad-rail-item > span,
.launchpad-rail-item > div {
  position: relative;
  z-index: 1;
}

.launchpad-rail-number {
  display: grid;
  width: 26px;
  height: 26px;
  place-items: center;
  border-radius: 999px;
  background: #111827;
  color: #ffffff;
  font-size: 0.76rem;
  font-weight: 900;
}

.launchpad-rail-item.started:not(.complete) .launchpad-rail-number {
  background: rgba(227, 6, 19, 0.88);
}

.launchpad-rail-item.complete .launchpad-rail-number {
  background: #16a34a;
  box-shadow: 0 0 0 5px rgba(22, 163, 74, 0.13);
}

.launchpad-rail-item strong,
.launchpad-rail-item em {
  display: block;
  min-width: 0;
}

.launchpad-rail-item strong {
  font-size: 0.88rem;
  line-height: 1.28;
}

.launchpad-rail-item em {
  margin-top: 4px;
  color: #6b7280;
  font-size: 0.72rem;
  font-style: normal;
}

.launchpad-rail-item small {
  display: block;
  margin-top: 5px;
  color: #475569;
  font-size: 0.72rem;
  line-height: 1.35;
}

.launchpad-current-label {
  width: fit-content;
  margin: 0 0 6px;
  padding: 4px 7px;
  border-radius: 999px;
  background: #111827;
  color: #ffffff !important;
  font-size: 0.64rem !important;
  font-weight: 950;
  text-transform: uppercase;
}

.launchpad-complete-label,
.launchpad-progress-label {
  display: inline-flex !important;
  width: fit-content;
  align-items: center;
  gap: 5px;
  margin: 0 0 6px !important;
  padding: 4px 8px;
  border-radius: 999px;
  font-size: 0.66rem !important;
  font-weight: 950;
  text-transform: uppercase;
}

.launchpad-complete-label {
  background: rgba(22, 163, 74, 0.12);
  color: #166534 !important;
}

.launchpad-progress-label {
  background: rgba(227, 6, 19, 0.10);
  color: #b91c1c !important;
}

.launchpad-main-stage {
  display: grid;
  gap: 14px;
  padding: clamp(15px, 2vw, 22px);
}

.launchpad-lesson-header,
.launchpad-requirement-panel {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
}

.launchpad-lesson-header h3 {
  color: #111827;
  font-size: clamp(1.45rem, 2vw, 2rem);
}

.launchpad-lesson-header p {
  margin-top: 6px;
  max-width: 840px;
  color: #4b5563;
  line-height: 1.6;
}

.launchpad-requirement-panel {
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(227, 6, 19, 0.12);
  border-radius: 18px;
  background: linear-gradient(135deg, #fff7f7, #ffffff);
}

.launchpad-requirement-panel h4 {
  margin: 0;
  color: #111827;
}

.launchpad-details {
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 18px;
  background: #ffffff;
}

.launchpad-details summary {
  cursor: pointer;
  padding: 14px 16px;
  color: #111827;
  font-weight: 900;
}

.launchpad-details[open] summary {
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
}

.launchpad-details .launchpad-section-grid {
  padding: 14px;
}

.launchpad-task-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.82fr);
  gap: 14px;
}

.launchpad-course-workspace {
  display: grid;
  gap: 12px;
}

.launchpad-focus-toolbar {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  padding: 10px 12px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 16px;
  background: #f8fafc;
}

.launchpad-focus-toolbar > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #475569;
  font-size: 0.82rem;
  font-weight: 900;
}

.launchpad-guided-path {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 16px;
  background: linear-gradient(135deg, #ffffff, #f8fafc);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.05);
}

.launchpad-guided-path strong,
.launchpad-guided-path span,
.launchpad-guided-progress span,
.launchpad-guided-progress em {
  display: block;
}

.launchpad-guided-path strong {
  color: #111827;
  font-size: 1rem;
}

.launchpad-guided-path span {
  margin-top: 3px;
  color: #64748b;
  font-size: 0.84rem;
  font-weight: 750;
  line-height: 1.4;
}

.launchpad-guided-progress {
  display: grid;
  min-width: 190px;
  gap: 3px;
  padding: 10px 12px;
  border-radius: 14px;
  background: #111827;
  color: #ffffff;
  text-align: right;
}

.launchpad-guided-progress span {
  color: #ffffff;
  font-weight: 950;
}

.launchpad-guided-progress em {
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.73rem;
  font-style: normal;
  font-weight: 800;
}

.launchpad-workspace-tabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 6px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 18px;
  background: #ffffff;
}

.launchpad-workspace-tabs button {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 40px;
  padding: 9px 12px;
  white-space: nowrap;
  border: 1px solid transparent;
  border-radius: 14px;
  background: transparent;
  color: #475569;
  font-size: 0.84rem;
  font-weight: 900;
}

.launchpad-workspace-tabs button.active {
  border-color: rgba(227, 6, 19, 0.22);
  background: #fff1f2;
  color: #b91c1c;
}

.launchpad-workspace-tabs button.done {
  border-color: rgba(22, 163, 74, 0.18);
  background: #f0fdf4;
  color: #166534;
}

.launchpad-workspace-tabs button.required:not(.active) {
  border-color: rgba(227, 6, 19, 0.2);
  background: #fff7f7;
  color: #b91c1c;
}

.launchpad-step-status {
  margin-left: 2px;
  color: currentColor;
  font-size: 0.68rem;
  font-style: normal;
  font-weight: 950;
  text-transform: uppercase;
}

.launchpad-workspace-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, 300px);
  gap: 14px;
  align-items: start;
}

.launchpad-workspace-grid.focus-mode {
  grid-template-columns: minmax(0, 1fr);
}

.launchpad-course-main,
.launchpad-tab-panel,
.launchpad-side-panel {
  min-width: 0;
}

.launchpad-tab-panel {
  display: grid;
  gap: 14px;
}

.launchpad-objective-grid,
.launchpad-practice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.launchpad-objective-grid article,
.launchpad-practice-card,
.launchpad-action-checklist,
.launchpad-script-practice,
.launchpad-decision-tree,
.launchpad-course-section,
.launchpad-side-panel section {
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.05);
}

.launchpad-objective-grid article,
.launchpad-practice-card,
.launchpad-action-checklist,
.launchpad-script-practice,
.launchpad-decision-tree {
  padding: 15px;
}

.launchpad-objective-grid h4,
.launchpad-objective-grid p,
.launchpad-practice-card h4,
.launchpad-practice-card p,
.launchpad-action-checklist h4,
.launchpad-script-practice h4,
.launchpad-decision-tree h4 {
  margin: 0;
}

.launchpad-objective-grid h4,
.launchpad-practice-card h4,
.launchpad-action-checklist h4,
.launchpad-script-practice h4,
.launchpad-decision-tree h4 {
  color: #111827;
  line-height: 1.35;
}

.launchpad-objective-grid p,
.launchpad-practice-card p {
  color: #4b5563;
  line-height: 1.55;
}

.launchpad-course-section-list {
  display: grid;
  gap: 10px;
}

.launchpad-course-section summary {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  cursor: pointer;
  padding: 13px 14px;
  color: #111827;
  font-weight: 900;
}

.launchpad-course-section summary em {
  color: #b91c1c;
  font-size: 0.72rem;
  font-style: normal;
  text-transform: uppercase;
}

.launchpad-course-section p,
.launchpad-course-section ul {
  margin: 0;
  padding: 0 14px 14px;
  color: #4b5563;
  line-height: 1.55;
}

.launchpad-course-section ul {
  display: grid;
  gap: 7px;
  padding-left: 32px;
}

.launchpad-action-checklist {
  display: grid;
  gap: 12px;
}

.launchpad-activity-engine,
.launchpad-readiness-section,
.launchpad-client-section,
.launchpad-library-section,
.launchpad-admin-analytics {
  display: grid;
  gap: 12px;
  padding: 15px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
}

.launchpad-activity-engine h4,
.launchpad-readiness-section h3,
.launchpad-client-section h3,
.launchpad-library-section h3 {
  margin: 0;
  color: #111827;
}

.launchpad-client-thread {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  padding: 12px;
  border-radius: 14px;
  background: #111827;
  color: #ffffff;
}

.launchpad-client-thread strong,
.launchpad-client-thread p {
  display: block;
  margin: 0;
  line-height: 1.45;
}

.launchpad-client-thread p {
  margin-top: 3px;
  color: rgba(255, 255, 255, 0.78);
}

.launchpad-activity-list {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
}

.launchpad-activity-list article {
  display: grid;
  gap: 7px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 13px;
  background: #f8fafc;
}

.launchpad-activity-list article.complete {
  border-color: rgba(22, 163, 74, 0.22);
  background: #f0fdf4;
}

.launchpad-activity-list article > span {
  display: grid;
  width: 25px;
  height: 25px;
  place-items: center;
  border-radius: 999px;
  background: #111827;
  color: #ffffff;
  font-size: 0.72rem;
  font-weight: 950;
}

.launchpad-activity-list article.complete > span {
  background: #16a34a;
}

.launchpad-activity-list strong,
.launchpad-activity-list p,
.launchpad-activity-list em,
.launchpad-activity-list small {
  display: block;
  margin: 0;
  min-width: 0;
  overflow-wrap: anywhere;
}

.launchpad-activity-list strong {
  color: #111827;
  font-size: 0.82rem;
}

.launchpad-activity-list p,
.launchpad-activity-list em,
.launchpad-activity-list small {
  color: #64748b;
  font-size: 0.74rem;
  font-style: normal;
  line-height: 1.35;
}

.launchpad-skill-grid,
.launchpad-client-grid,
.launchpad-field-tools,
.launchpad-library-results,
.launchpad-admin-analytics {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 10px;
}

.launchpad-skill-grid article,
.launchpad-client-grid article,
.launchpad-field-tools button,
.launchpad-library-results button,
.launchpad-admin-analytics span {
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 14px;
  background: #f8fafc;
  text-align: left;
}

.launchpad-skill-grid article {
  display: grid;
  gap: 8px;
}

.launchpad-skill-grid article > div {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
}

.launchpad-skill-grid strong {
  color: #e30613;
  font-size: 1.2rem;
}

.launchpad-skill-grid span,
.launchpad-skill-grid em,
.launchpad-skill-grid small,
.launchpad-client-grid strong,
.launchpad-client-grid em,
.launchpad-client-grid p,
.launchpad-field-tools strong,
.launchpad-field-tools em,
.launchpad-library-results strong,
.launchpad-library-results em,
.launchpad-library-results span,
.launchpad-admin-analytics strong,
.launchpad-admin-analytics em {
  display: block;
  margin: 0;
  min-width: 0;
  overflow-wrap: anywhere;
}

.launchpad-skill-grid em,
.launchpad-skill-grid small,
.launchpad-client-grid em,
.launchpad-client-grid p,
.launchpad-field-tools em,
.launchpad-library-results em,
.launchpad-library-results span,
.launchpad-admin-analytics em {
  color: #64748b;
  font-size: 0.76rem;
  font-style: normal;
  line-height: 1.35;
}

.launchpad-field-tools button,
.launchpad-library-results button {
  display: grid;
  gap: 7px;
  cursor: pointer;
}

.launchpad-field-tools button {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
}

.launchpad-library-search {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: min(360px, 100%);
  padding: 9px 11px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 999px;
  background: #f8fafc;
}

.launchpad-library-search input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: #111827;
  font-weight: 750;
}

.launchpad-checklist-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.launchpad-checklist-grid label {
  display: flex;
  gap: 9px;
  align-items: flex-start;
  padding: 10px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 12px;
  background: #f8fafc;
  color: #374151;
  font-size: 0.86rem;
  font-weight: 750;
  line-height: 1.35;
}

.launchpad-checklist-grid label.checked {
  border-color: rgba(22, 163, 74, 0.24);
  background: #f0fdf4;
  color: #166534;
}

.launchpad-practice-card.accent {
  border-color: rgba(227, 6, 19, 0.16);
  background: #fff7f7;
}

.launchpad-decision-tree {
  display: grid;
  gap: 10px;
}

.launchpad-decision-tree article {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  padding: 10px;
  border-radius: 12px;
  background: #f8fafc;
}

.launchpad-decision-tree article > span {
  display: grid;
  width: 26px;
  height: 26px;
  place-items: center;
  border-radius: 999px;
  background: #111827;
  color: #ffffff;
  font-size: 0.75rem;
  font-weight: 900;
}

.launchpad-decision-tree strong,
.launchpad-decision-tree p {
  display: block;
  margin: 0;
  color: #374151;
  line-height: 1.45;
}

.launchpad-decision-tree strong {
  color: #111827;
}

.launchpad-script-practice {
  display: grid;
  gap: 11px;
}

.launchpad-script-practice textarea {
  width: 100%;
  resize: vertical;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 14px;
  color: #111827;
  line-height: 1.5;
}

.launchpad-sales-lab {
  display: grid;
  gap: 12px;
  padding: 15px;
  border: 1px solid rgba(227, 6, 19, 0.16);
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #fff7f7 100%);
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.06);
}

.launchpad-sales-lab-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}

.launchpad-sales-lab-head h4,
.launchpad-sales-lab-head p,
.launchpad-sales-grid p,
.launchpad-sales-details p,
.launchpad-sales-details blockquote,
.launchpad-sales-details ul {
  margin: 0;
}

.launchpad-sales-lab-head h4 {
  color: #111827;
}

.launchpad-sales-lab-head p,
.launchpad-sales-grid p,
.launchpad-sales-details p,
.launchpad-sales-details small {
  color: #4b5563;
  line-height: 1.5;
}

.launchpad-sales-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.launchpad-sales-grid article,
.launchpad-sales-details {
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.86);
}

.launchpad-sales-grid article {
  padding: 12px;
}

.launchpad-sales-grid ul,
.launchpad-sales-details ul {
  display: grid;
  gap: 7px;
  margin-top: 8px;
  padding-left: 20px;
  color: #374151;
  line-height: 1.45;
}

.launchpad-sales-details {
  overflow: hidden;
}

.launchpad-sales-details summary {
  cursor: pointer;
  padding: 12px;
  color: #111827;
  font-weight: 950;
}

.launchpad-sales-drills,
.launchpad-objection-clinic {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  padding: 0 12px 12px;
}

.launchpad-sales-drills article,
.launchpad-objection-clinic article {
  display: grid;
  gap: 6px;
  padding: 11px;
  border-radius: 12px;
  background: #f8fafc;
}

.launchpad-sales-drills strong,
.launchpad-objection-clinic strong,
.launchpad-conversation-ladder strong {
  color: #111827;
}

.launchpad-sales-drills em {
  width: fit-content;
  padding: 3px 8px;
  border-radius: 999px;
  background: rgba(227, 6, 19, 0.1);
  color: #b91c1c;
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 900;
}

.launchpad-conversation-ladder {
  display: grid;
  gap: 9px;
  padding: 0 12px 12px;
}

.launchpad-conversation-ladder article {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  padding: 10px;
  border-radius: 12px;
  background: #f8fafc;
}

.launchpad-conversation-ladder article > span {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border-radius: 999px;
  background: #e30613;
  color: #ffffff;
  font-size: 0.75rem;
  font-weight: 950;
}

.launchpad-conversation-ladder blockquote {
  margin-top: 6px;
  padding: 9px 10px;
  border-left: 3px solid #e30613;
  border-radius: 8px;
  background: #ffffff;
  color: #111827;
  line-height: 1.45;
}

.launchpad-scorecard-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0 12px 12px;
}

.launchpad-scorecard-list span {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  padding: 7px 9px;
  border-radius: 999px;
  background: #111827;
  color: #ffffff;
  font-size: 0.78rem;
  font-weight: 850;
}

.launchpad-confidence-check {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.launchpad-confidence-check label {
  display: grid;
  flex: 1;
  gap: 5px;
  color: #475569;
  font-size: 0.84rem;
  font-weight: 850;
}

.launchpad-coach-mode-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.launchpad-readiness-rubric {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.launchpad-readiness-rubric span {
  padding: 7px 9px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: 0.75rem;
  font-weight: 850;
}

.launchpad-nia-breakdown.compact {
  box-shadow: none;
}

.launchpad-coach-topbar,
.launchpad-coach-continue {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.launchpad-coach-topbar h3 {
  margin: 0;
  color: #111827;
}

.launchpad-coach-loading {
  border-color: rgba(227, 6, 19, 0.18) !important;
  background: #fff7f7 !important;
}

.launchpad-coach-loading span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.launchpad-coach-feed ul {
  margin: 8px 0 0;
  padding-left: 18px;
  color: #4b5563;
}

.launchpad-coach-feed blockquote {
  display: grid;
  gap: 6px;
  margin: 10px 0 0;
  padding: 10px 12px;
  border-left: 3px solid #e30613;
  border-radius: 10px;
  background: #fff7f7;
}

.launchpad-coach-feed blockquote strong,
.launchpad-coach-feed blockquote span {
  color: #111827;
  line-height: 1.45;
}

.launchpad-side-panel {
  position: sticky;
  top: 12px;
  display: grid;
  gap: 10px;
}

.launchpad-side-panel-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: start;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 16px;
  background: #ffffff;
}

.launchpad-side-panel-head strong {
  display: block;
  margin-top: 2px;
  color: #111827;
}

.launchpad-side-panel details {
  overflow: hidden;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.05);
}

.launchpad-side-panel details.warning {
  border-color: rgba(245, 158, 11, 0.24);
  background: #fffbeb;
}

.launchpad-side-panel summary {
  cursor: pointer;
  padding: 12px;
  color: #111827;
  font-size: 0.86rem;
  font-weight: 950;
}

.launchpad-side-panel section {
  display: grid;
  gap: 7px;
  padding: 12px;
}

.launchpad-side-panel span {
  display: block;
  padding: 8px 9px;
  border-radius: 10px;
  background: #f8fafc;
  color: #475569;
  font-size: 0.8rem;
  font-weight: 750;
  line-height: 1.35;
}

.launchpad-side-panel details.warning span {
  background: rgba(255, 255, 255, 0.78);
  color: #92400e;
}

.launchpad-inline-alert {
  padding: 10px 12px;
  border-radius: 14px;
  font-size: 0.84rem;
  font-weight: 800;
}

.launchpad-inline-alert.warning {
  border: 1px solid rgba(245, 158, 11, 0.28);
  background: #fffbeb;
  color: #92400e;
}

.launchpad-preview-banner,
.launchpad-admin-qa-panel {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(227, 6, 19, 0.16);
  border-radius: 18px;
  background: #fff7f7;
  color: #111827;
}

.launchpad-preview-banner {
  margin-bottom: 14px;
}

.launchpad-preview-banner > svg {
  flex: 0 0 auto;
  color: #e30613;
}

.launchpad-preview-banner strong,
.launchpad-preview-banner span,
.launchpad-admin-qa-panel h4,
.launchpad-admin-qa-grid strong,
.launchpad-admin-qa-grid em {
  display: block;
}

.launchpad-preview-banner span,
.launchpad-admin-qa-grid em {
  color: #64748b;
  font-size: 0.78rem;
  font-weight: 750;
  line-height: 1.35;
}

.launchpad-preview-selectors {
  display: grid;
  grid-template-columns: minmax(150px, 220px) minmax(220px, 1fr);
  gap: 10px;
  align-items: end;
  min-width: min(520px, 100%);
}

.launchpad-preview-selectors label {
  display: grid;
  gap: 5px;
}

.launchpad-preview-selectors label > span {
  color: #64748b;
  font-size: 0.72rem;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.launchpad-preview-selectors select {
  width: 100%;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 12px;
  background: #ffffff;
  padding: 9px 10px;
  color: #111827;
  font-weight: 800;
}

.launchpad-admin-qa-panel {
  margin-bottom: 12px;
  align-items: start;
}

.launchpad-admin-qa-panel h4 {
  margin: 2px 0 0;
  color: #111827;
}

.launchpad-admin-qa-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(90px, 1fr));
  gap: 8px;
  flex: 1;
}

.launchpad-admin-qa-grid span {
  padding: 9px;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.06);
}

.launchpad-admin-qa-grid strong {
  color: #111827;
  font-size: 1rem;
  font-weight: 950;
}

.launchpad-simulator-steps {
  display: flex;
  gap: 8px;
  overflow-x: auto;
}

.launchpad-simulator-steps button {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  white-space: nowrap;
  padding: 8px 10px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 999px;
  background: #f8fafc;
  color: #374151;
  font-size: 0.8rem;
  font-weight: 850;
}

.launchpad-simulator-steps button.active {
  border-color: rgba(227, 6, 19, 0.26);
  background: #fff1f2;
  color: #b91c1c;
}

.launchpad-simulator-steps button.done {
  border-color: rgba(22, 163, 74, 0.22);
  background: #f0fdf4;
  color: #166534;
}

.launchpad-simulator-steps span {
  display: grid;
  width: 20px;
  height: 20px;
  place-items: center;
  border-radius: 999px;
  background: currentColor;
  color: #ffffff;
  font-size: 0.68rem;
}

.launchpad-simulator-stage {
  display: grid;
  gap: 10px;
  padding: 14px;
  border-radius: 16px;
  background: #f8fafc;
}

.launchpad-simulator-stage h4,
.launchpad-simulator-stage p,
.launchpad-simulator-stage ul {
  margin: 0;
}

.launchpad-simulator-stage h4 {
  color: #111827;
  line-height: 1.4;
}

.launchpad-simulator-stage p,
.launchpad-simulator-stage li {
  color: #6b7280;
  line-height: 1.5;
}

.launchpad-simulator-stage select {
  width: 100%;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 14px;
  background: #ffffff;
  color: #111827;
  font-weight: 750;
}

.launchpad-flow-controls {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 14px 36px rgba(15, 23, 42, 0.06);
}

.launchpad-flow-controls .btn {
  justify-content: center;
  width: 100%;
}

.launchpad-sticky-complete {
  position: sticky;
  bottom: 12px;
  z-index: 3;
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 18px 46px rgba(15, 23, 42, 0.14);
  backdrop-filter: blur(16px);
}

.launchpad-sticky-complete strong,
.launchpad-sticky-complete span {
  display: block;
}

.launchpad-sticky-complete strong {
  color: #111827;
}

.launchpad-sticky-complete span {
  margin-top: 2px;
  color: #6b7280;
  font-size: 0.8rem;
}

.launchpad-locked-state {
  display: grid;
  place-items: center;
  min-height: 420px;
  padding: 24px;
  text-align: center;
  color: #111827;
}

.launchpad-locked-state svg {
  width: 54px;
  height: 54px;
  padding: 13px;
  border-radius: 18px;
  background: #f1f5f9;
  color: #6b7280;
}

.launchpad-locked-state h3,
.launchpad-locked-state p {
  margin: 0;
}

.launchpad-locked-state p {
  max-width: 460px;
  color: #6b7280;
}

.launchpad-certificate-page {
  display: grid;
  gap: 16px;
  place-items: center;
  padding: clamp(28px, 5vw, 56px);
  text-align: center;
  background:
    radial-gradient(circle at 50% 0%, rgba(22, 163, 74, 0.13), transparent 30%),
    linear-gradient(135deg, #ffffff, #f8fafc);
}

.launchpad-certificate-seal {
  display: grid;
  width: 82px;
  height: 82px;
  place-items: center;
  border-radius: 28px;
  background: #f0fdf4;
  color: #16a34a;
}

.launchpad-certificate-page h3,
.launchpad-certificate-page p {
  margin: 0;
}

.launchpad-certificate-page h3 {
  max-width: 780px;
  color: #111827;
  font-size: clamp(2rem, 4vw, 3.6rem);
  line-height: 1;
}

.launchpad-certificate-page p:not(.eyebrow) {
  max-width: 680px;
  color: #6b7280;
  line-height: 1.6;
}

.launchpad-certificate-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(130px, 1fr));
  gap: 10px;
  width: min(760px, 100%);
}

.launchpad-certificate-metrics span {
  display: grid;
  gap: 4px;
  padding: 14px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 16px;
  background: #ffffff;
}

.launchpad-certificate-metrics strong {
  color: #111827;
  font-size: 1.05rem;
}

.launchpad-certificate-metrics em {
  color: #6b7280;
  font-size: 0.75rem;
  font-style: normal;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.launchpad-fireworks {
  position: fixed;
  inset: 0;
  z-index: 1200;
  pointer-events: none;
  display: grid;
  place-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 50%, rgba(227, 6, 19, 0.18), transparent 34%),
    linear-gradient(135deg, rgba(2, 6, 23, 0.9), rgba(15, 23, 42, 0.78) 52%, rgba(127, 29, 29, 0.82));
}

.launchpad-fireworks::before,
.launchpad-fireworks::after {
  content: "";
  position: absolute;
  inset: -12%;
  background:
    radial-gradient(circle at 18% 22%, rgba(227, 6, 19, 0.42), transparent 10%),
    radial-gradient(circle at 82% 18%, rgba(255, 255, 255, 0.32), transparent 9%),
    radial-gradient(circle at 76% 72%, rgba(212, 175, 55, 0.34), transparent 11%),
    radial-gradient(circle at 26% 78%, rgba(14, 165, 233, 0.24), transparent 9%);
  filter: blur(24px);
  opacity: 0;
  animation: launchpadSkyPulse 4.4s ease forwards;
}

.launchpad-fireworks::after {
  animation-delay: 0.6s;
  transform: rotate(180deg);
}

.launchpad-fireworks-card {
  position: relative;
  z-index: 2;
  display: grid;
  place-items: center;
  gap: 10px;
  width: min(520px, calc(100vw - 32px));
  padding: 42px 32px;
  border: 1px solid rgba(227, 6, 19, 0.34);
  border-radius: 28px;
  background:
    linear-gradient(155deg, rgba(17, 24, 39, 0.98), rgba(15, 23, 42, 0.96) 58%, rgba(127, 29, 29, 0.96)),
    #111827;
  color: #ffffff;
  text-align: center;
  box-shadow: 0 48px 130px rgba(15, 23, 42, 0.46);
  animation: launchpadPop 4.2s ease forwards;
}

.launchpad-fireworks-glow {
  position: absolute;
  z-index: 1;
  width: min(680px, 82vw);
  aspect-ratio: 1;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.28), rgba(227, 6, 19, 0.14) 28%, transparent 62%);
  animation: launchpadGlowWin 4.2s ease forwards;
}

.launchpad-fireworks-card svg {
  width: 64px;
  height: 64px;
  padding: 12px;
  border-radius: 22px;
  background: #e30613;
  color: #ffffff;
  box-shadow: 0 12px 30px rgba(227, 6, 19, 0.26);
}

.launchpad-fireworks-card strong {
  color: #ffffff;
  font-size: clamp(2rem, 5vw, 3.6rem);
  font-weight: 950;
  letter-spacing: 0;
  line-height: 0.95;
}

.launchpad-fireworks-card em {
  color: #fecdd3;
  font-size: 1rem;
  font-style: normal;
  font-weight: 850;
}

.launchpad-fireworks-card small {
  padding: 9px 12px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
  font-size: 0.86rem;
  font-weight: 900;
}

.launchpad-firework {
  position: absolute;
  z-index: 1;
  left: calc(8vw + ((var(--i) * 17vw) % 84vw));
  top: calc(10vh + ((var(--i) * 23vh) % 70vh));
  width: 7px;
  height: 7px;
  border-radius: 999px;
  color: #e30613;
  opacity: 0;
  box-shadow:
    0 -72px 0 0 currentColor,
    51px -51px 0 0 #ffffff,
    72px 0 0 0 #d4af37,
    51px 51px 0 0 #e30613,
    0 72px 0 0 #ffffff,
    -51px 51px 0 0 #d4af37,
    -72px 0 0 0 #e30613,
    -51px -51px 0 0 #0ea5e9,
    0 -42px 0 0 #ffffff,
    42px 0 0 0 #e30613,
    0 42px 0 0 #d4af37,
    -42px 0 0 0 #ffffff;
  animation: launchpadFireworkBoom 4.2s ease forwards;
  animation-delay: calc((var(--i) % 7) * 0.24s);
}

.launchpad-firework:nth-child(3n) {
  color: #ffffff;
}

.launchpad-firework:nth-child(4n) {
  color: #d4af37;
}

@keyframes launchpadFireworkBoom {
  0%, 11% { transform: scale(0.08); opacity: 0; filter: blur(1px); }
  18% { opacity: 1; }
  48% { transform: scale(1); opacity: 0.92; filter: blur(0); }
  100% { transform: scale(1.25); opacity: 0; filter: blur(2px); }
}

@keyframes launchpadGlowWin {
  0% { transform: scale(0.55); opacity: 0; }
  15%, 76% { transform: scale(1); opacity: 1; }
  100% { transform: scale(1.18); opacity: 0; }
}

@keyframes launchpadSkyPulse {
  0% { opacity: 0; transform: scale(0.96); }
  20%, 72% { opacity: 1; transform: scale(1); }
  100% { opacity: 0; transform: scale(1.04); }
}

@keyframes launchpadPop {
  0% { transform: translateY(18px) scale(0.94); opacity: 0; }
  12%, 78% { transform: translateY(0) scale(1); opacity: 1; }
  100% { transform: translateY(-14px) scale(0.98); opacity: 0; }
}

.launchpad-day-review-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1190;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(15, 23, 42, 0.42);
}

.launchpad-day-review-modal {
  display: grid;
  gap: 16px;
  width: min(1040px, 100%);
  max-height: min(860px, calc(100vh - 48px));
  overflow: auto;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 30px 90px rgba(15, 23, 42, 0.28);
}

.launchpad-day-review-modal > header,
.launchpad-day-review-modal > footer {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  padding: 18px;
}

.launchpad-day-review-modal > header {
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
}

.launchpad-day-review-modal > footer {
  border-top: 1px solid rgba(15, 23, 42, 0.08);
}

.launchpad-day-review-modal h3,
.launchpad-day-review-modal h4,
.launchpad-day-review-modal p {
  margin: 0;
}

.launchpad-day-review-modal h3 {
  color: #111827;
  font-size: clamp(1.45rem, 3vw, 2.2rem);
}

.launchpad-day-review-modal > header p:not(.eyebrow) {
  margin-top: 5px;
  color: #64748b;
  line-height: 1.45;
}

.launchpad-day-review-download-note {
  display: flex;
  gap: 10px;
  align-items: center;
  margin: 0 18px;
  padding: 12px 14px;
  border: 1px solid rgba(227, 6, 19, 0.14);
  border-radius: 12px;
  background: #fff7f7;
  color: #991b1b;
  font-weight: 850;
  line-height: 1.4;
}

.launchpad-day-review-download-note svg {
  flex: 0 0 auto;
}

.launchpad-day-score-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  padding: 0 18px;
}

.launchpad-day-score-grid span {
  display: grid;
  gap: 4px;
  min-height: 82px;
  padding: 14px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 12px;
  background: #f8fafc;
}

.launchpad-day-score-grid strong {
  color: #111827;
  font-size: 1.35rem;
}

.launchpad-day-score-grid em,
.launchpad-review-list span {
  color: #64748b;
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.launchpad-review-columns {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 14px;
  padding: 0 18px 4px;
}

.launchpad-review-columns > article {
  display: grid;
  align-content: start;
  gap: 10px;
}

.launchpad-review-list {
  display: grid;
  gap: 10px;
}

.launchpad-review-list section {
  display: grid;
  gap: 6px;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-left: 4px solid #cbd5e1;
  border-radius: 10px;
  background: #ffffff;
}

.launchpad-review-list section.correct {
  border-left-color: #16a34a;
}

.launchpad-review-list section.missed {
  border-left-color: #e30613;
}

.launchpad-review-list strong {
  color: #111827;
}

.launchpad-review-list p,
.launchpad-review-list em {
  color: #475569;
  font-style: normal;
  line-height: 1.45;
}

@media (max-width: 1180px) {
  .launchpad-roadmap {
    display: flex;
    overflow-x: auto;
    padding-bottom: 4px;
  }

  .launchpad-roadmap-card {
    min-width: 220px;
  }
}

@media (max-width: 980px) {
  .launchpad-nia-prompt-grid,
  .launchpad-nia-field-guide,
  .launchpad-day-score-grid,
  .launchpad-review-columns {
    grid-template-columns: 1fr;
  }

  .launchpad-day-review-backdrop {
    align-items: end;
    padding: 10px;
  }

  .launchpad-day-review-modal {
    max-height: calc(100vh - 20px);
    border-radius: 16px 16px 0 0;
  }

  .launchpad-day-review-modal > header,
  .launchpad-day-review-modal > footer {
    align-items: stretch;
  }

  .launchpad-day-review-modal > footer {
    display: grid;
    grid-template-columns: 1fr;
  }

  .launchpad-home-hero,
  .launchpad-player-shell,
  .launchpad-workspace-grid,
  .launchpad-task-grid,
  .launchpad-objective-grid,
  .launchpad-practice-grid,
  .launchpad-sales-grid,
  .launchpad-sales-drills,
  .launchpad-objection-clinic,
  .launchpad-coach-callout,
  .launchpad-preview-banner,
  .launchpad-admin-qa-panel,
  .launchpad-activity-list,
  .launchpad-skill-grid,
  .launchpad-client-grid,
  .launchpad-field-tools,
  .launchpad-library-results,
  .launchpad-admin-analytics {
    grid-template-columns: 1fr;
  }

  .launchpad-preview-banner,
  .launchpad-admin-qa-panel {
    display: grid;
    align-items: stretch;
  }

  .launchpad-preview-selectors {
    grid-template-columns: 1fr;
    min-width: 0;
  }

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

  .launchpad-library-section .panel-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .launchpad-roadmap-toggle {
    display: inline-flex;
  }

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

  .launchpad-player-sidebar {
    position: fixed;
    z-index: 30;
    right: 12px;
    bottom: 12px;
    left: 12px;
    display: none;
    max-height: min(78vh, 720px);
    overflow: auto;
    box-shadow: 0 28px 70px rgba(15, 23, 42, 0.24);
  }

  .launchpad-player-sidebar.open {
    display: grid;
  }

  .launchpad-side-panel {
    position: static;
  }

  .launchpad-lesson-rail {
    display: grid;
  }

  .launchpad-rail-item {
    min-width: 0;
  }

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

@media (max-width: 680px) {
  .launchpad-player-page {
    gap: 10px;
    padding-inline: 0;
    padding-bottom: calc(108px + env(safe-area-inset-bottom));
  }

  .launchpad-home-hero {
    padding: 18px;
    border-radius: 22px;
  }

  .launchpad-home-copy h3 {
    font-size: 2.25rem;
  }

  .launchpad-home-strip,
  .launchpad-certificate-metrics,
  .launchpad-checklist-grid,
  .launchpad-admin-qa-grid,
  .launchpad-activity-list {
    grid-template-columns: 1fr;
  }

  .launchpad-player-topbar,
  .launchpad-lesson-header,
  .launchpad-requirement-panel,
  .launchpad-guided-path,
  .launchpad-sales-lab-head,
  .launchpad-confidence-check,
  .launchpad-focus-toolbar,
  .launchpad-coach-topbar,
  .launchpad-coach-continue,
  .launchpad-sticky-complete {
    align-items: stretch;
    flex-direction: column;
  }

  .launchpad-player-topbar {
    position: sticky;
    top: 0;
    z-index: 25;
    gap: 10px;
    border-radius: 16px;
    padding: 10px;
  }

  .launchpad-day-stepper {
    width: 100%;
    padding-bottom: 4px;
  }

  .launchpad-main-stage {
    border-radius: 18px;
    padding: 12px;
    overflow: hidden;
  }

  .launchpad-lesson-header h3 {
    font-size: clamp(1.35rem, 7vw, 1.8rem);
    overflow-wrap: anywhere;
  }

  .launchpad-requirements {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .launchpad-requirements span {
    width: 100%;
  }

  .launchpad-workspace-tabs {
    max-width: 100%;
    overflow-x: auto;
    scroll-snap-type: x proximity;
  }

  .launchpad-workspace-tabs button {
    flex: 0 0 auto;
    min-width: max-content;
    padding: 8px 10px;
    scroll-snap-align: start;
  }

  .launchpad-course-section summary,
  .launchpad-tab-panel,
  .launchpad-tab-panel li,
  .launchpad-tab-panel p,
  .launchpad-activity-list article,
  .launchpad-field-tools button,
  .launchpad-library-results button {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .launchpad-guided-progress {
    min-width: 0;
    width: 100%;
    text-align: left;
  }

  .launchpad-flow-controls {
    position: static;
    grid-template-columns: 1fr;
    margin-bottom: calc(80px + env(safe-area-inset-bottom));
    border-radius: 16px;
    padding: 10px;
  }

  .launchpad-flow-controls .btn {
    min-height: 42px;
  }

  .launchpad-sticky-complete {
    bottom: 8px;
  }

  .launchpad-day-stepper button {
    flex: 0 0 66px;
    min-width: 66px;
  }

  .launchpad-resume-ring {
    width: 128px;
    height: 128px;
  }
}

.launchpad-course-home,
.launchpad-module-header,
.launchpad-module-objectives,
.launchpad-module-lessons,
.launchpad-course-step {
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.06);
}

.launchpad-course-home {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  gap: 18px;
  align-items: stretch;
  padding: clamp(18px, 3vw, 32px);
}

.launchpad-course-home h3,
.launchpad-course-home p,
.launchpad-current-lesson-card h4,
.launchpad-current-lesson-card p,
.launchpad-module-header h3,
.launchpad-module-header p,
.launchpad-module-objectives h4,
.launchpad-course-step h3,
.launchpad-course-step p {
  margin: 0;
}

.launchpad-course-home h3 {
  max-width: 720px;
  color: #111827;
  font-size: clamp(1.8rem, 3vw, 3rem);
  line-height: 1.05;
}

.launchpad-course-home p:not(.eyebrow),
.launchpad-module-header p:not(.eyebrow) {
  margin-top: 10px;
  max-width: 680px;
  color: #4b5563;
  font-size: 1rem;
  line-height: 1.6;
}

.launchpad-current-lesson-card {
  display: grid;
  align-content: start;
  gap: 12px;
  padding: 18px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 8px;
  background: #f8fafc;
}

.launchpad-current-lesson-card h4 {
  color: #111827;
  font-size: 1.18rem;
  line-height: 1.3;
}

.launchpad-current-lesson-card p:not(.eyebrow) {
  color: #64748b;
  line-height: 1.5;
}

.launchpad-module-header {
  display: grid;
  gap: 12px;
  padding: clamp(18px, 3vw, 30px);
}

.launchpad-module-header h3 {
  max-width: 780px;
  color: #111827;
  font-size: clamp(1.7rem, 2.8vw, 2.6rem);
  line-height: 1.08;
}

.launchpad-module-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.launchpad-module-meta span {
  padding: 6px 9px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: 0.78rem;
  font-weight: 850;
}

.agent-site-preview-search {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  min-height: 46px;
  border: 1px solid rgb(255 255 255 / 0.22);
  border-radius: 14px;
  background: rgb(255 255 255 / 0.94);
  color: #111318;
  padding: 8px 8px 8px 12px;
  box-shadow: 0 18px 42px rgb(0 0 0 / 0.18);
}

.agent-site-preview-search svg {
  color: var(--agent-site-accent, var(--nex-red));
}

.agent-site-preview-search span {
  min-width: 0;
  overflow: hidden;
  color: #647084;
  font-size: 12px;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-site-preview-search strong {
  border-radius: 10px;
  background: var(--agent-site-accent, var(--nex-red));
  color: #fff;
  padding: 9px 12px;
  font-size: 12px;
  font-weight: 950;
}

.launchpad-module-objectives,
.launchpad-module-lessons {
  display: grid;
  gap: 12px;
  padding: 18px;
}

.launchpad-module-objectives h4 {
  color: #111827;
  font-size: 1.05rem;
}

.launchpad-module-objectives ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding-left: 22px;
  color: #4b5563;
  line-height: 1.55;
}

.launchpad-module-lesson {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  width: 100%;
  padding: 13px 14px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 8px;
  background: #ffffff;
  color: #111827;
  text-align: left;
}

.launchpad-module-lesson span {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: 0.78rem;
  font-weight: 950;
}

.launchpad-module-lesson strong,
.launchpad-module-lesson em {
  min-width: 0;
  overflow-wrap: anywhere;
}

.launchpad-module-lesson strong {
  font-size: 0.95rem;
}

.launchpad-module-lesson em {
  color: #64748b;
  font-size: 0.78rem;
  font-style: normal;
  font-weight: 800;
}

.launchpad-module-lesson.current {
  border-color: rgba(227, 6, 19, 0.22);
  background: #fff7f7;
}

.launchpad-module-lesson.current span,
.launchpad-module-lesson.complete span {
  background: #111827;
  color: #ffffff;
}

.launchpad-module-lesson.complete {
  border-color: rgba(22, 163, 74, 0.22);
}

.launchpad-breadcrumb {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
  color: #64748b;
  font-size: 0.82rem;
  font-weight: 850;
}

.launchpad-breadcrumb button {
  border: 0;
  background: transparent;
  color: #475569;
  font: inherit;
  cursor: pointer;
}

.launchpad-breadcrumb span {
  color: #111827;
}

.launchpad-player-topbar {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  border-radius: 8px;
  box-shadow: none;
}

.launchpad-player-shell {
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
  gap: 18px;
}

.launchpad-main-stage {
  max-width: 900px;
  margin: 0 auto;
  padding: clamp(12px, 2vw, 18px);
}

.launchpad-player-sidebar {
  border-radius: 8px;
  box-shadow: none;
}

.launchpad-player-sidebar h3 {
  line-height: 1.2;
}

.launchpad-lesson-rail {
  gap: 4px;
}

.launchpad-rail-item {
  border-color: transparent;
  border-radius: 8px;
  background: transparent;
  box-shadow: none;
}

.launchpad-rail-item::before {
  content: none;
}

.launchpad-rail-item.active {
  background: #f8fafc;
  border-color: rgba(15, 23, 42, 0.08);
}

.launchpad-rail-item.complete {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

.launchpad-rail-number {
  width: 24px;
  height: 24px;
  background: #e5e7eb;
  color: #111827;
}

.launchpad-rail-item.active .launchpad-rail-number {
  background: #111827;
  color: #ffffff;
}

.launchpad-rail-item.complete .launchpad-rail-number {
  background: #16a34a;
  color: #ffffff;
  box-shadow: none;
}

.launchpad-lesson-header {
  align-items: center;
  margin-bottom: 2px;
}

.launchpad-lesson-header h3 {
  max-width: 760px;
}

.launchpad-step-workspace {
  gap: 14px;
}

.launchpad-step-progress {
  display: flex;
  gap: 8px;
  align-items: center;
  padding: 4px 0;
}

.launchpad-step-progress span {
  display: block;
  flex: 1 1 0;
  min-width: 18px;
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #e5e7eb;
}

.launchpad-step-progress span.done,
.launchpad-step-progress span.active {
  background: #111827;
}

.launchpad-step-progress em {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}

.launchpad-course-step {
  display: grid;
  gap: 18px;
  padding: clamp(20px, 4vw, 42px);
}

.launchpad-course-step > div:first-child span {
  display: inline-block;
  margin-top: 7px;
  color: #64748b;
  font-size: 0.82rem;
  font-weight: 900;
  text-transform: uppercase;
}

.launchpad-course-step h3 {
  color: #111827;
  font-size: clamp(1.45rem, 2.5vw, 2.1rem);
  line-height: 1.12;
}

.launchpad-step-intro,
.launchpad-step-prose,
.launchpad-try-panel,
.launchpad-scenario-panel,
.launchpad-nia-step,
.launchpad-assignment-panel,
.launchpad-complete-panel {
  display: grid;
  gap: 16px;
  color: #374151;
  font-size: 1rem;
  line-height: 1.65;
}

.launchpad-step-intro ul,
.launchpad-step-prose ul,
.launchpad-assignment-panel ul,
.launchpad-complete-panel ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding-left: 22px;
}

.launchpad-end-of-day-note {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(227, 6, 19, 0.18);
  border-radius: 12px;
  background: linear-gradient(135deg, #fff7f7, #ffffff);
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
}

.launchpad-end-of-day-note > svg {
  width: 42px;
  height: 42px;
  padding: 9px;
  border-radius: 14px;
  background: #111827;
  color: #ffffff;
}

.launchpad-end-of-day-note strong,
.launchpad-end-of-day-note span {
  display: block;
}

.launchpad-end-of-day-note strong {
  color: #111827;
  font-size: 1.05rem;
  line-height: 1.2;
}

.launchpad-end-of-day-note span {
  margin-top: 3px;
  color: #475569;
  line-height: 1.45;
}

.launchpad-example-panel,
.launchpad-step-callouts aside,
.launchpad-step-feedback,
.launchpad-nia-result,
.launchpad-lesson-requirements {
  border-radius: 8px;
}

.launchpad-example-panel {
  display: grid;
  gap: 13px;
  padding: 18px;
  background: #f8fafc;
}

.launchpad-example-panel > span {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  color: #475569;
  font-size: 0.82rem;
  font-weight: 900;
}

.launchpad-example-panel blockquote {
  margin: 0;
  padding-left: 14px;
  border-left: 3px solid #e30613;
  color: #111827;
  font-weight: 700;
}

.launchpad-step-callouts {
  display: grid;
  gap: 10px;
}

.launchpad-step-callouts aside {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  padding: 13px;
  background: #f0f9ff;
  color: #0f172a;
}

.launchpad-step-callouts aside.warning {
  background: #fff7ed;
}

.launchpad-step-callouts strong,
.launchpad-step-callouts em {
  display: block;
  font-style: normal;
}

.launchpad-step-callouts em {
  margin-top: 3px;
  color: #475569;
  line-height: 1.5;
}

.launchpad-choice-list {
  display: grid;
  gap: 10px;
}

.launchpad-choice-list button {
  width: 100%;
  padding: 13px 14px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #ffffff;
  color: #111827;
  text-align: left;
  line-height: 1.4;
}

.launchpad-choice-list button.selected {
  border-color: #111827;
  background: #f8fafc;
  box-shadow: inset 0 0 0 1px #111827;
}

.launchpad-scenario-fields,
.launchpad-assignment-panel label,
.launchpad-try-panel label {
  display: grid;
  gap: 8px;
}

.launchpad-scenario-fields {
  gap: 12px;
}

.launchpad-scenario-fields span,
.launchpad-assignment-panel label span,
.launchpad-try-panel label span {
  color: #111827;
  font-size: 0.84rem;
  font-weight: 900;
}

.launchpad-scenario-fields textarea,
.launchpad-assignment-panel textarea,
.launchpad-try-panel textarea,
.launchpad-nia-step textarea {
  width: 100%;
  resize: vertical;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  padding: 12px;
  color: #111827;
  font: inherit;
  line-height: 1.5;
}

.launchpad-nia-step > div:first-child {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 15px;
  border-radius: 8px;
  background: #111827;
  color: #ffffff;
}

.launchpad-nia-step strong,
.launchpad-nia-step em {
  display: block;
  font-style: normal;
}

.launchpad-nia-step em {
  margin-top: 4px;
  color: rgba(255, 255, 255, 0.76);
}

.launchpad-nia-guidance {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(227, 6, 19, 0.12);
  border-radius: 10px;
  background: #fff7f7;
}

.launchpad-nia-guidance strong,
.launchpad-nia-guidance span {
  display: block;
}

.launchpad-nia-guidance strong {
  color: #111827;
}

.launchpad-nia-guidance span {
  margin-top: 2px;
  color: #64748b;
  font-size: 0.82rem;
  line-height: 1.35;
}

.launchpad-nia-prompt-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.launchpad-nia-prompt-grid button {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  border: 1px solid rgba(227, 6, 19, 0.2);
  border-radius: 8px;
  background: #ffffff;
  color: #9f1239;
  font-weight: 900;
  cursor: pointer;
}

.launchpad-nia-prompt-grid button:hover {
  border-color: rgba(227, 6, 19, 0.45);
  background: #fff1f2;
}

.launchpad-nia-result,
.launchpad-step-feedback {
  padding: 12px;
  background: #f8fafc;
}

.launchpad-nia-result p {
  margin: 6px 0 0;
}

.launchpad-nia-step-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.launchpad-nia-step-actions > span {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  color: #166534;
  font-size: 0.86rem;
  font-weight: 900;
}

.launchpad-nia-result ul {
  display: grid;
  gap: 6px;
  margin: 10px 0 0;
  padding-left: 20px;
}

.launchpad-nia-result blockquote {
  display: grid;
  gap: 4px;
  margin: 12px 0 0;
  padding: 12px;
  border-left: 3px solid #e30613;
  background: #ffffff;
  color: #111827;
}

.launchpad-step-quiz {
  border: 0;
  box-shadow: none;
  padding: 0;
}

.launchpad-step-quiz .launchpad-question {
  border-radius: 8px;
}

.launchpad-step-quiz legend {
  color: #111827;
  font-weight: 900;
}

.launchpad-complete-panel > svg {
  width: 44px;
  height: 44px;
  color: #16a34a;
}

.launchpad-lesson-requirements {
  display: grid;
  gap: 8px;
  padding: 14px;
  background: #f8fafc;
}

.launchpad-lesson-requirements span {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  color: #64748b;
  font-weight: 800;
}

.launchpad-lesson-requirements span.met {
  color: #166534;
}

.launchpad-flow-controls {
  grid-template-columns: minmax(130px, 180px) minmax(180px, 1fr);
  max-width: 900px;
  margin: 0 auto;
  border-radius: 8px;
}

.launchpad-flow-controls .btn.primary {
  justify-content: center;
}

@media (max-width: 900px) {
  .launchpad-course-home,
  .launchpad-player-shell {
    grid-template-columns: 1fr;
  }

  .launchpad-player-topbar {
    grid-template-columns: 1fr auto;
  }

  .launchpad-player-topbar > .btn:first-child,
  .launchpad-breadcrumb {
    grid-column: 1 / -1;
  }

  .launchpad-player-sidebar {
    position: fixed;
    z-index: 40;
    inset: 0 auto 0 0;
    width: min(86vw, 340px);
    max-height: none;
    overflow: auto;
    transform: translateX(-110%);
    border-radius: 0;
  }

  .launchpad-player-sidebar.open {
    transform: translateX(0);
  }

  .launchpad-roadmap-toggle {
    display: inline-flex;
  }
}

@media (max-width: 680px) {
  .launchpad-course-home,
  .launchpad-module-header,
  .launchpad-module-objectives,
  .launchpad-module-lessons,
  .launchpad-course-step {
    padding: 16px;
  }

  .launchpad-module-lesson {
    grid-template-columns: 32px minmax(0, 1fr);
  }

  .launchpad-module-lesson em {
    grid-column: 2;
  }

  .launchpad-flow-controls {
    position: sticky;
    bottom: 0;
    z-index: 20;
    grid-template-columns: 1fr 1.3fr;
    margin-bottom: 0;
    border-radius: 8px 8px 0 0;
    background: #ffffff;
  }
}

.success-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 230px;
  justify-content: space-between;
  gap: 20px;
  align-items: stretch;
  overflow: hidden;
  border: 1px solid rgb(255 255 255 / 0.08);
  border-radius: 8px;
  background:
    radial-gradient(circle at 92% 16%, rgb(227 6 19 / 0.38), transparent 32%),
    radial-gradient(circle at 18% -12%, rgb(255 255 255 / 0.13), transparent 30%),
    linear-gradient(135deg, #050506 0%, #111827 54%, #250a0f 100%);
  padding: 22px;
  box-shadow: 0 24px 58px rgb(18 22 30 / 0.24);
}

.success-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgb(255 255 255 / 0.06) 1px, transparent 1px),
    linear-gradient(180deg, rgb(255 255 255 / 0.045) 1px, transparent 1px);
  background-size: 52px 52px;
  mask-image: linear-gradient(110deg, black, transparent 70%);
}

.success-hero > * {
  position: relative;
  z-index: 1;
}

.success-hero-main {
  display: grid;
  gap: 13px;
  min-width: 0;
}

.success-hero h1 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(28px, 3.5vw, 42px);
  font-weight: 950;
  letter-spacing: 0;
  line-height: 0.98;
}

.success-hero p:not(.eyebrow) {
  max-width: 760px;
  margin: 0;
  color: rgb(255 255 255 / 0.72);
  font-size: 15px;
  font-weight: 750;
  line-height: 1.45;
}

.success-hero .eyebrow {
  color: rgb(255 255 255 / 0.56);
}

.success-hero-command-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.success-hero-command-row button,
.success-hero-action-strip button {
  border: 1px solid rgb(255 255 255 / 0.12);
  border-radius: 8px;
  background: rgb(255 255 255 / 0.085);
  color: white;
  text-align: left;
  backdrop-filter: blur(14px);
  transition: border-color 140ms ease, background 140ms ease, transform 140ms ease;
}

.success-hero-command-row button {
  display: grid;
  gap: 3px;
  padding: 9px 10px;
}

.success-hero-command-row button span {
  color: rgb(255 255 255 / 0.62);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.success-hero-command-row button strong {
  font-size: 23px;
  font-weight: 950;
  line-height: 1;
}

.success-hero-command-row button.hot {
  border-color: rgb(227 6 19 / 0.38);
  background: rgb(227 6 19 / 0.18);
}

.success-hero-command-row button.live {
  border-color: rgb(36 212 129 / 0.28);
}

.success-hero-action-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.success-hero-action-strip button {
  display: inline-flex;
  min-height: 34px;
  gap: 7px;
  align-items: center;
  padding: 8px 10px;
  font-size: 11px;
  font-weight: 950;
}

.success-hero-command-row button:hover,
.success-hero-action-strip button:hover {
  border-color: rgb(255 255 255 / 0.22);
  background: rgb(255 255 255 / 0.12);
  transform: translateY(-1px);
}

.success-hero-status {
  align-self: stretch;
  display: grid;
  min-width: 210px;
  gap: 8px;
  align-content: center;
  border: 1px solid rgb(255 255 255 / 0.1);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgb(255 255 255 / 0.11), rgb(255 255 255 / 0.065));
  padding: 13px;
  backdrop-filter: blur(16px);
}

.success-hero-avatar {
  justify-self: start;
  margin-bottom: 4px;
}

.success-hero-status span {
  display: flex;
  gap: 8px;
  align-items: center;
  color: rgb(255 255 255 / 0.78);
  font-size: 12px;
  font-weight: 900;
}

.success-hero-status i,
.success-message-alert i,
.deadline-dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #22c55e;
  box-shadow: 0 0 0 4px rgb(34 197 94 / 0.14);
}

.success-hero-market-strip {
  grid-column: 1 / -1;
  display: grid;
  gap: 8px;
  overflow: hidden;
  border: 1px solid rgb(255 255 255 / 0.12);
  border-radius: 8px;
  background:
    linear-gradient(90deg, rgb(255 255 255 / 0.09), rgb(255 255 255 / 0.04));
  padding: 10px;
  backdrop-filter: blur(16px);
}

.success-hero-market-head {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
}

.success-hero-market-head span {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  color: rgb(255 255 255 / 0.82);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.success-hero-market-head svg {
  color: var(--nex-red);
  filter: drop-shadow(0 0 8px rgb(227 6 19 / 0.42));
}

.success-hero-market-head button {
  border: 1px solid rgb(255 255 255 / 0.16);
  border-radius: 999px;
  background: rgb(255 255 255 / 0.08);
  color: #ffffff;
  min-height: 28px;
  padding: 0 10px;
  font-size: 10px;
  font-weight: 950;
}

.success-hero-market-strip .market-pulse-ticker {
  min-height: 42px;
  border: 1px solid rgb(255 255 255 / 0.1);
  border-radius: 8px;
  background:
    linear-gradient(90deg, #070708 0%, #111318 46%, #220b10 100%);
  padding-inline: 12px;
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / 0.04);
}

.success-message-alert {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 12px;
  align-items: center;
  border: 1px solid rgb(227 6 19 / 0.18);
  border-radius: 12px;
  background:
    linear-gradient(120deg, rgb(227 6 19 / 0.08), transparent 38%),
    #ffffff;
  padding: 14px;
  box-shadow: 0 14px 32px rgb(18 22 30 / 0.05);
}

.success-message-alert > div {
  display: flex;
  gap: 12px;
  align-items: center;
  min-width: 0;
}

.success-message-alert svg {
  color: var(--nex-red);
  flex: 0 0 auto;
}

.success-message-alert strong {
  display: block;
  color: #101217;
  font-size: 15px;
  font-weight: 950;
}

.success-message-alert p {
  margin: 2px 0 0;
  color: #596170;
  font-size: 13px;
  font-weight: 750;
  overflow-wrap: anywhere;
}

.success-stat-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.success-stat {
  display: flex;
  gap: 12px;
  align-items: start;
  border: 1px solid rgb(17 24 39 / 0.075);
  border-radius: 8px;
  background:
    linear-gradient(180deg, #ffffff, #fbfcfe);
  padding: 12px;
  box-shadow: 0 12px 28px rgb(18 22 30 / 0.045);
}

.success-stat > span {
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 8px;
  background: #111318;
  color: white;
}

.success-stat.red > span {
  background: var(--nex-red);
}

.success-stat.gold > span {
  background: #b88a22;
}

.success-stat strong {
  display: block;
  color: #101217;
  font-size: 22px;
  font-weight: 950;
  line-height: 1;
}

.success-stat p {
  margin: 5px 0 0;
  color: #303540;
  font-size: 12px;
  font-weight: 900;
}

.success-stat em {
  display: block;
  margin-top: 5px;
  color: #737b88;
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
}

.success-grid {
  display: grid;
  gap: 14px;
}

.success-grid.top {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.success-grid.middle {
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.75fr);
}

.success-grid.lower {
  grid-template-columns: minmax(300px, 0.9fr) minmax(0, 1fr) minmax(300px, 0.85fr);
}

.success-widget {
  position: relative;
  overflow: hidden;
  border: 1px solid rgb(17 24 39 / 0.075);
  border-radius: 8px;
  background:
    linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%);
  padding: 14px;
  box-shadow: 0 12px 28px rgb(18 22 30 / 0.042);
  transition: border-color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
}

.success-widget::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, var(--nex-red), transparent 60%);
  opacity: 0.65;
}

.success-widget.is-clickable {
  cursor: pointer;
}

.success-widget.is-clickable:focus-visible {
  outline: 3px solid rgb(227 6 19 / 0.22);
  outline-offset: 2px;
}

.success-widget.is-minimized {
  padding-bottom: 12px;
}

.success-widget-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: start;
  margin-bottom: 11px;
}

.success-widget-head h2 {
  margin: 3px 0 0;
  color: #101217;
  font-size: 22px;
  font-weight: 950;
  letter-spacing: 0;
}

.success-widget-actions {
  display: flex;
  gap: 7px;
  align-items: center;
}

.btn.compact {
  min-height: 34px;
  padding: 8px 10px;
  font-size: 11px;
}

.success-soft-badge {
  border: 1px solid rgb(227 6 19 / 0.18);
  border-radius: 999px;
  background: rgb(227 6 19 / 0.07);
  color: var(--nex-red);
  padding: 7px 9px;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.success-progress-main {
  display: grid;
  gap: 12px;
}

.success-progress-main > div:first-child {
  display: flex;
  gap: 10px;
  align-items: baseline;
}

.success-progress-main strong {
  color: var(--nex-red);
  font-size: 52px;
  font-weight: 950;
  line-height: 0.9;
}

.success-progress-main span {
  color: #596170;
  font-size: 13px;
  font-weight: 900;
}

.success-progress-track {
  overflow: hidden;
  height: 10px;
  border-radius: 999px;
  background: #eef1f5;
}

.success-progress-track.small {
  height: 8px;
  margin-top: 12px;
}

.success-progress-track i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--nex-red), #111318);
}

.success-kpi-grid,
.commission-grid,
.pipeline-snapshot,
.followup-summary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  margin-top: 14px;
}

.pipeline-snapshot {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.success-kpi-grid div,
.commission-grid div,
.pipeline-snapshot div,
.followup-summary div {
  display: grid;
  gap: 4px;
  border: 1px solid #edf0f4;
  border-radius: 10px;
  background: #fafbfc;
  padding: 11px;
}

.success-kpi-grid span,
.commission-grid span,
.pipeline-snapshot span,
.followup-summary span {
  color: #737b88;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.success-kpi-grid strong,
.commission-grid strong,
.pipeline-snapshot strong,
.followup-summary strong {
  color: #101217;
  font-size: 20px;
  font-weight: 950;
}

.success-insight,
.success-empty-line {
  margin: 13px 0 0;
  border-left: 3px solid var(--nex-red);
  border-radius: 8px;
  background: #fafbfc;
  color: #505866;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}

.success-deadline-list,
.followup-list,
.success-activity-list {
  display: grid;
  gap: 9px;
}

.success-deadline-list button,
.followup-list button,
.success-activity-list button {
  display: grid;
  gap: 8px;
  align-items: center;
  border: 1px solid #e8ebf1;
  border-radius: 10px;
  background: #fbfcfd;
  color: #101217;
  padding: 11px;
  text-align: left;
}

.success-deadline-list button {
  grid-template-columns: auto minmax(0, 1fr) auto;
}

.success-deadline-list strong,
.followup-list span,
.success-activity-list strong {
  color: #101217;
  font-size: 13px;
  font-weight: 950;
}

.success-deadline-list p,
.followup-list em {
  margin: 3px 0 0;
  color: #69707d;
  font-size: 12px;
  font-style: normal;
  font-weight: 750;
  line-height: 1.35;
}

.success-deadline-list em {
  display: grid;
  gap: 3px;
  color: #596170;
  font-size: 12px;
  font-style: normal;
  font-weight: 950;
  text-align: right;
}

.success-deadline-list em small {
  color: #8a929f;
  font-size: 10px;
  font-weight: 850;
}

.deadline-dot.overdue,
.success-deadline-list em.overdue {
  color: var(--nex-red);
}

.deadline-dot.overdue {
  background: var(--nex-red);
  box-shadow: 0 0 0 4px rgb(227 6 19 / 0.12);
}

.deadline-dot.today {
  background: #111318;
  box-shadow: 0 0 0 4px rgb(17 19 24 / 0.12);
}

.success-deadline-list em.today {
  color: #111318;
}

.deadline-dot.soon {
  background: #f59e0b;
  box-shadow: 0 0 0 4px rgb(245 158 11 / 0.16);
}

.success-deadline-list em.soon,
.success-deadline-list em.upcoming {
  color: #9a6500;
}

.deadline-dot.upcoming {
  background: #b88a22;
  box-shadow: 0 0 0 4px rgb(184 138 34 / 0.14);
}

.deadline-dot.later {
  background: #9aa2af;
  box-shadow: 0 0 0 4px rgb(154 162 175 / 0.13);
}

.followup-list button {
  grid-template-columns: auto minmax(0, 1fr);
}

.followup-list svg {
  color: var(--nex-red);
}

.followup-list em {
  grid-column: 2;
}

.success-activity-list button {
  grid-template-columns: auto minmax(0, 1fr) auto;
}

.success-activity-list span {
  border: 1px solid #e0e4eb;
  border-radius: 999px;
  background: white;
  color: var(--nex-red);
  padding: 5px 7px;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.success-activity-list em {
  color: #8a929f;
  font-size: 10px;
  font-style: normal;
  font-weight: 850;
  text-align: right;
}

.dashboard-chat-widget {
  display: flex;
  flex-direction: column;
  min-height: 100%;
}

.dashboard-chat-widget.has-unread {
  border-color: rgb(227 6 19 / 0.28);
  box-shadow: 0 18px 46px rgb(227 6 19 / 0.09);
}

.dashboard-chat-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid #dfe4ec;
  border-radius: 999px;
  background: #f8fafc;
  color: #596170;
  padding: 7px 9px;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
  white-space: nowrap;
}

.dashboard-chat-badge.unread {
  border-color: rgb(227 6 19 / 0.22);
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red);
}

.dashboard-chat-list {
  display: grid;
  gap: 9px;
  flex: 1;
}

.dashboard-chat-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border: 1px solid #e8ebf1;
  border-radius: 11px;
  background: #fbfcfd;
  color: #101217;
  padding: 10px;
  text-align: left;
  transition: border-color 140ms ease, background 140ms ease, transform 140ms ease;
}

.dashboard-chat-item:hover {
  border-color: rgb(227 6 19 / 0.28);
  background: #ffffff;
  transform: translateY(-1px);
}

.dashboard-chat-item.unread {
  border-color: rgb(227 6 19 / 0.22);
  background: linear-gradient(90deg, rgb(227 6 19 / 0.08), #ffffff 34%);
}

.dashboard-chat-avatar {
  width: 36px;
  height: 36px;
}

.dashboard-chat-copy {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.dashboard-chat-copy strong {
  display: flex;
  min-width: 0;
  gap: 7px;
  align-items: baseline;
  color: #101217;
  font-size: 13px;
  font-weight: 950;
}

.dashboard-chat-copy strong > em {
  overflow: hidden;
  color: #747c89;
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.dashboard-chat-copy small {
  overflow: hidden;
  color: #596170;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dashboard-chat-meta {
  display: grid;
  justify-items: end;
  gap: 4px;
  color: #8a929f;
  font-size: 10px;
  font-weight: 850;
  text-align: right;
}

.dashboard-chat-meta i {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: var(--nex-red);
  box-shadow: 0 0 0 4px rgb(227 6 19 / 0.12);
}

.dashboard-chat-meta time {
  font-size: 10px;
}

.dashboard-chat-meta b {
  border-radius: 999px;
  background: rgb(17 19 24 / 0.08);
  color: #111318;
  padding: 3px 6px;
  font-size: 9px;
  font-weight: 950;
}

.dashboard-chat-empty {
  display: grid;
  place-items: center;
  min-height: 150px;
  border: 1px dashed #dfe4ec;
  border-radius: 8px;
  background: #fbfcfd;
  color: #69707d;
  padding: 18px;
  text-align: center;
}

.dashboard-chat-empty svg {
  color: var(--nex-red);
  margin-bottom: 6px;
}

.dashboard-chat-empty strong {
  color: #101217;
  font-size: 14px;
  font-weight: 950;
}

.dashboard-chat-empty span,
.dashboard-chat-error {
  color: #69707d;
  font-size: 12px;
  font-weight: 800;
}

.dashboard-chat-error {
  margin: 0;
  border-left: 3px solid var(--nex-red);
  border-radius: 8px;
  background: rgb(227 6 19 / 0.06);
  padding: 9px 10px;
}

.dashboard-chat-actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  margin-top: 14px;
}

.success-actions-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.success-actions-grid button {
  display: flex;
  min-height: 54px;
  gap: 9px;
  align-items: center;
  border: 1px solid #e5e8ef;
  border-radius: 10px;
  background: #fbfcfd;
  color: #101217;
  padding: 12px;
  font-size: 12px;
  font-weight: 950;
  text-align: left;
}

.success-actions-grid svg {
  color: var(--nex-red);
}

.success-stat:hover,
.success-widget:hover,
.success-deadline-list button:hover,
.followup-list button:hover,
.success-activity-list button:hover,
.success-actions-grid button:hover {
  border-color: rgb(227 6 19 / 0.22);
  box-shadow: 0 16px 36px rgb(18 22 30 / 0.075);
}

.success-soft-badge {
  cursor: pointer;
}

.success-progress-main {
  gap: 10px;
}

.success-progress-main strong {
  font-size: 42px;
}

.success-kpi-grid,
.commission-grid,
.pipeline-snapshot,
.followup-summary {
  margin-top: 10px;
}

.success-kpi-grid div,
.commission-grid div,
.pipeline-snapshot div,
.followup-summary div {
  border-radius: 8px;
  padding: 9px;
}

.success-kpi-grid strong,
.commission-grid strong,
.pipeline-snapshot strong,
.followup-summary strong {
  font-size: 18px;
}

.success-insight,
.success-empty-line {
  margin-top: 10px;
  padding: 9px 10px;
}

.success-deadline-list button,
.followup-list button,
.success-activity-list button {
  border-radius: 8px;
  padding: 9px;
}

.success-widget.is-clickable:hover {
  transform: translateY(-1px);
}

.command-hub-dashboard {
  position: relative;
  gap: 16px;
  overflow: hidden;
  border: 1px solid rgb(227 6 19 / 0.08);
  border-radius: 20px;
  background:
    linear-gradient(120deg, rgb(227 6 19 / 0.055), transparent 34%),
    linear-gradient(180deg, #ffffff 0%, #f4f7fb 52%, #ffffff 100%);
  padding: clamp(12px, 2vw, 18px);
  box-shadow:
    0 20px 60px rgb(15 23 42 / 0.075),
    inset 0 1px 0 rgb(255 255 255 / 0.9);
}

.command-hub-dashboard::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgb(15 23 42 / 0.032) 1px, transparent 1px),
    linear-gradient(180deg, rgb(15 23 42 / 0.026) 1px, transparent 1px),
    linear-gradient(125deg, transparent 0 55%, rgb(227 6 19 / 0.085) 55% 56%, transparent 56% 100%);
  background-size: 42px 42px, 42px 42px, 100% 100%;
  mask-image: linear-gradient(180deg, black, rgb(0 0 0 / 0.52) 58%, transparent);
}

.command-hub-dashboard > * {
  position: relative;
  z-index: 1;
}

.premium-command-hero {
  grid-template-columns: minmax(0, 1fr) minmax(178px, 218px);
  gap: 14px;
  min-height: 0;
  border-radius: 22px;
  border: 1px solid rgb(227 6 19 / 0.16);
  background:
    linear-gradient(118deg, rgb(227 6 19 / 0.13), transparent 30%),
    linear-gradient(156deg, transparent 0 64%, rgb(17 19 24 / 0.05) 64% 100%),
    linear-gradient(135deg, #ffffff 0%, #fffefe 36%, #fff3f4 68%, #f6f8fc 100%);
  color: #111318;
  padding: clamp(16px, 2.4vw, 28px);
  box-shadow:
    0 30px 76px rgb(18 22 30 / 0.13),
    0 0 0 8px rgb(255 255 255 / 0.58),
    inset 0 1px 0 rgb(255 255 255 / 0.95);
}

.premium-command-hero::before {
  content:
    "NEX REALTY     NEX REALTY     NEX REALTY     NEX REALTY     NEX REALTY     NEX REALTY\A"
    "NEX REALTY     NEX REALTY     NEX REALTY     NEX REALTY     NEX REALTY     NEX REALTY\A"
    "NEX REALTY     NEX REALTY     NEX REALTY     NEX REALTY     NEX REALTY     NEX REALTY";
  position: absolute;
  inset: 10px auto auto 0;
  z-index: 0;
  width: max-content;
  min-width: 220%;
  pointer-events: none;
  color: var(--nex-red);
  font-size: clamp(54px, 9vw, 128px);
  font-weight: 1000;
  letter-spacing: 0.08em;
  line-height: 0.98;
  opacity: 0.055;
  text-transform: uppercase;
  white-space: pre;
  mix-blend-mode: multiply;
  animation: nexWordmarkDrift 54s linear infinite;
}

.premium-command-hero::after {
  content: "";
  position: absolute;
  inset: auto 18px 16px;
  height: 3px;
  border-radius: 999px;
  background:
    linear-gradient(90deg, var(--nex-red), rgb(227 6 19 / 0.58), rgb(17 19 24 / 0.16), transparent);
  box-shadow: 0 0 24px rgb(227 6 19 / 0.26);
  opacity: 0.9;
}

@keyframes nexWordmarkDrift {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-50%, 0, 0);
  }
}

.premium-command-hero .success-hero-main {
  position: relative;
  align-content: center;
  gap: 11px;
}

.premium-command-hero .success-hero-main::before {
  content: "";
  position: absolute;
  inset: -8px auto 8px -12px;
  width: 3px;
  border-radius: 999px;
  background:
    linear-gradient(180deg, transparent, var(--nex-red) 18%, rgb(227 6 19 / 0.35) 64%, transparent);
  box-shadow: 0 0 28px rgb(227 6 19 / 0.22);
}

.premium-command-hero .eyebrow {
  width: max-content;
  border: 1px solid rgb(227 6 19 / 0.20);
  border-radius: 999px;
  background:
    linear-gradient(90deg, rgb(227 6 19 / 0.10), rgb(255 255 255 / 0.72));
  color: var(--nex-red);
  padding: 5px 9px;
  letter-spacing: 0;
  box-shadow: 0 10px 22px rgb(227 6 19 / 0.08);
}

.premium-command-hero h1 {
  max-width: 720px;
  background: linear-gradient(90deg, #111318 0%, #111318 55%, #b40610 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  font-size: clamp(34px, 4.8vw, 58px);
  line-height: 0.94;
}

.premium-command-hero p:not(.eyebrow) {
  max-width: 850px;
  color: #4b5563;
  font-size: clamp(14px, 1.18vw, 16px);
  line-height: 1.42;
}

.premium-command-hero .success-hero-command-row {
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  max-width: 850px;
  gap: 8px;
}

.premium-command-hero .eyebrow,
.premium-command-hero h1,
.premium-command-hero p:not(.eyebrow),
.premium-command-hero .success-hero-command-row button,
.premium-command-hero .success-hero-action-strip button,
.premium-command-hero .success-hero-status,
.premium-command-hero .success-hero-market-strip {
  animation: commandHubRise 640ms cubic-bezier(0.2, 0.8, 0.2, 1) backwards;
}

.premium-command-hero h1 {
  animation-delay: 60ms;
}

.premium-command-hero p:not(.eyebrow) {
  animation-delay: 110ms;
}

.premium-command-hero .success-hero-command-row button:nth-child(1) {
  animation-delay: 160ms;
}

.premium-command-hero .success-hero-command-row button:nth-child(2) {
  animation-delay: 210ms;
}

.premium-command-hero .success-hero-command-row button:nth-child(3) {
  animation-delay: 260ms;
}

.premium-command-hero .success-hero-command-row button:nth-child(4) {
  animation-delay: 310ms;
}

.premium-command-hero .success-hero-action-strip button {
  animation-delay: 360ms;
}

.premium-command-hero .success-hero-status {
  animation-delay: 220ms;
}

.premium-command-hero .success-hero-market-strip {
  animation-delay: 410ms;
}

@keyframes commandHubRise {
  from {
    opacity: 0;
    transform: translateY(10px) scale(0.985);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.premium-command-hero .success-hero-command-row button {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  align-items: center;
  column-gap: 9px;
  row-gap: 3px;
  min-height: 66px;
  overflow: hidden;
  border-color: rgb(15 23 42 / 0.07);
  border-radius: 16px;
  background:
    linear-gradient(145deg, rgb(255 255 255 / 0.94), rgb(255 255 255 / 0.70)),
    linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  color: #111318;
  padding: 11px 12px;
  box-shadow:
    0 16px 34px rgb(15 23 42 / 0.08),
    inset 0 1px 0 rgb(255 255 255 / 0.95);
}

.premium-command-hero .success-hero-command-row button::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  border-radius: inherit;
  background: #d8dee8;
}

.premium-command-hero .success-hero-command-row button::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(115deg, transparent 0 46%, rgb(255 255 255 / 0.70) 50%, transparent 55% 100%);
  transform: translateX(-130%);
  transition: transform 520ms ease;
}

.premium-command-hero .success-hero-command-row button.hot::before {
  background: var(--nex-red);
}

.premium-command-hero .success-hero-command-row button.live::before {
  background: #16a34a;
}

.premium-command-hero .success-hero-command-row button.active::before {
  background: #334155;
}

.premium-command-hero .success-hero-command-row button:hover {
  border-color: rgb(227 6 19 / 0.20);
  background: #ffffff;
  box-shadow:
    0 22px 44px rgb(15 23 42 / 0.12),
    0 0 0 4px rgb(227 6 19 / 0.045);
}

.premium-command-hero .success-hero-command-row button:hover::after {
  transform: translateX(120%);
}

.premium-command-hero .command-metric-icon {
  position: relative;
  display: inline-grid;
  grid-row: 1 / span 2;
  width: 34px;
  height: 34px;
  place-items: center;
  border-radius: 12px;
  background: #111318;
  color: #ffffff;
  box-shadow: 0 10px 20px rgb(17 19 24 / 0.14);
}

.premium-command-hero .command-metric-icon::after {
  content: "";
  position: absolute;
  inset: -5px;
  border-radius: 16px;
  border: 1px solid rgb(17 19 24 / 0.08);
  opacity: 0.55;
}

.premium-command-hero .success-hero-command-row button.hot .command-metric-icon {
  background: var(--nex-red);
}

.premium-command-hero .success-hero-command-row button.live .command-metric-icon {
  background: #0f766e;
}

.premium-command-hero .success-hero-command-row button.active .command-metric-icon {
  background: #334155;
}

.premium-command-hero .command-metric-label {
  grid-column: 2;
  color: #647084;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: uppercase;
}

.premium-command-hero .success-hero-command-row button strong {
  grid-column: 2;
  color: #111318;
  font-size: 30px;
  line-height: 0.95;
}

.premium-command-hero .success-hero-action-strip {
  gap: 9px;
  margin-top: 0;
}

.premium-command-hero .success-hero-action-strip button {
  position: relative;
  isolation: isolate;
  min-height: 38px;
  border-color: rgb(15 23 42 / 0.08);
  border-radius: 999px;
  background: #111318;
  color: #ffffff;
  padding: 8px 12px;
  letter-spacing: 0;
  box-shadow: 0 14px 28px rgb(17 19 24 / 0.16);
}

.premium-command-hero .success-hero-action-strip button::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: inherit;
  background: linear-gradient(120deg, rgb(255 255 255 / 0.22), transparent 48%);
  opacity: 0.65;
}

.premium-command-hero .success-hero-action-strip button:nth-child(even) {
  background:
    linear-gradient(180deg, #ffffff, #f8fafc);
  color: #111318;
}

.premium-command-hero .success-hero-action-strip button:first-child {
  border-color: rgb(227 6 19 / 0.25);
  background: var(--nex-red);
}

.premium-command-hero .success-hero-action-strip button:hover {
  border-color: rgb(227 6 19 / 0.22);
  box-shadow: 0 16px 30px rgb(17 19 24 / 0.14);
}

.premium-command-hero .success-hero-status {
  position: relative;
  align-self: stretch;
  min-height: 0;
  align-content: start;
  overflow: hidden;
  border-radius: 18px;
  border-color: rgb(227 6 19 / 0.14);
  background:
    linear-gradient(150deg, rgb(255 255 255 / 0.92), rgb(255 255 255 / 0.72)),
    linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%);
  padding: 14px;
  box-shadow:
    0 22px 44px rgb(15 23 42 / 0.10),
    inset 0 1px 0 rgb(255 255 255 / 0.95);
}

.premium-command-hero .success-hero-status::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  background: linear-gradient(90deg, var(--nex-red), rgb(227 6 19 / 0.28), transparent);
}

.premium-command-hero .success-hero-status::after {
  content: "";
  position: absolute;
  inset: auto -32px -48px auto;
  width: 124px;
  height: 124px;
  border-radius: 999px;
  background: radial-gradient(circle, rgb(227 6 19 / 0.13), transparent 68%);
  pointer-events: none;
}

.premium-command-hero .success-hero-avatar {
  position: relative;
  z-index: 1;
  width: 58px;
  height: 58px;
  margin-bottom: 4px;
  border: 3px solid #ffffff;
  box-shadow:
    0 12px 26px rgb(227 6 19 / 0.18),
    0 0 0 1px rgb(227 6 19 / 0.16);
}

.premium-command-hero .success-hero-status span {
  position: relative;
  z-index: 1;
  color: #3f4652;
  font-size: 11px;
}

.premium-command-hero .success-hero-status i {
  animation: liveDot 1.8s ease-in-out infinite;
}

.premium-command-hero .success-hero-status button {
  position: relative;
  z-index: 1;
  justify-self: start;
  min-height: 32px;
  margin-top: 2px;
  border: 1px solid rgb(227 6 19 / 0.16);
  border-radius: 999px;
  background: rgb(227 6 19 / 0.07);
  color: var(--nex-red);
  padding: 0 10px;
  font-size: 11px;
  font-weight: 950;
}

.premium-command-hero .success-hero-status button.success-website-link {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 1px 8px;
  width: 100%;
  max-width: 198px;
  min-height: 48px;
  border-radius: 16px;
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.10), rgb(227 6 19 / 0.04)),
    #ffffff;
  padding: 8px 10px;
  text-align: left;
}

.premium-command-hero .success-hero-status button.success-website-link svg {
  grid-row: 1 / span 2;
  color: var(--nex-red);
}

.premium-command-hero .success-hero-status button.success-website-link span {
  color: #991b1b;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

.premium-command-hero .success-hero-status button.success-website-link small {
  min-width: 0;
  overflow: hidden;
  color: #465061;
  font-size: 10px;
  font-weight: 850;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.premium-command-hero .success-hero-market-strip {
  position: relative;
  gap: 8px;
  overflow: hidden;
  border-radius: 16px;
  border-color: rgb(227 6 19 / 0.12);
  background:
    linear-gradient(120deg, rgb(255 255 255 / 0.92), rgb(255 255 255 / 0.70)),
    linear-gradient(90deg, rgb(227 6 19 / 0.08), transparent 42%);
  padding: 10px;
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 0.9),
    0 16px 32px rgb(15 23 42 / 0.06);
}

.premium-command-hero .success-hero-market-strip::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 4px;
  background: linear-gradient(180deg, var(--nex-red), rgb(227 6 19 / 0.12));
}

.premium-command-hero .success-hero-market-head span {
  color: #111318;
  letter-spacing: 0;
}

.premium-command-hero .success-hero-market-head button {
  border-color: rgb(15 23 42 / 0.08);
  background: #ffffff;
  color: #111318;
}

.premium-command-hero .success-hero-market-strip .market-pulse-ticker {
  min-height: 44px;
  border-radius: 14px;
  border-color: rgb(227 6 19 / 0.16);
  background:
    linear-gradient(90deg, #111318 0%, #181b24 42%, #321016 100%);
  box-shadow:
    inset 0 1px 0 rgb(255 255 255 / 0.08),
    0 14px 26px rgb(17 19 24 / 0.12);
}

.premium-command-hero .market-pulse-marquee span {
  border-color: rgb(255 255 255 / 0.10);
  background: rgb(255 255 255 / 0.10);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.06);
}

.premium-command-hero .market-pulse-marquee > div {
  animation-duration: 96s;
}

@media (prefers-reduced-motion: reduce) {
  .premium-command-hero::before,
  .premium-command-hero .eyebrow,
  .premium-command-hero h1,
  .premium-command-hero p:not(.eyebrow),
  .premium-command-hero .success-hero-command-row button,
  .premium-command-hero .success-hero-action-strip button,
  .premium-command-hero .success-hero-status,
  .premium-command-hero .success-hero-market-strip {
    animation: none;
  }
}

.success-priority-strip {
  display: grid;
  grid-template-columns: minmax(230px, 0.28fr) minmax(0, 1fr);
  gap: 12px;
  align-items: stretch;
  border: 1px solid rgb(15 23 42 / 0.07);
  border-radius: 16px;
  background:
    linear-gradient(90deg, #ffffff 0%, #fbfcfe 100%);
  padding: 12px;
  box-shadow: 0 16px 40px rgb(15 23 42 / 0.055);
}

.success-section-heading {
  display: grid;
  align-content: center;
  gap: 5px;
  min-width: 0;
  border-radius: 12px;
  background:
    linear-gradient(135deg, #111318 0%, #1f2937 100%);
  color: #ffffff;
  padding: 14px;
}

.success-section-heading span {
  color: rgb(255 255 255 / 0.56);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0;
  text-transform: uppercase;
}

.success-section-heading strong {
  max-width: 260px;
  font-size: 17px;
  font-weight: 950;
  line-height: 1.2;
}

.success-priority-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.success-priority-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  gap: 9px;
  align-items: center;
  min-height: 88px;
  border: 1px solid #e5e9f0;
  border-radius: 14px;
  background: #ffffff;
  color: #111318;
  padding: 12px;
  text-align: left;
  transition: border-color 140ms ease, transform 140ms ease, box-shadow 140ms ease;
}

.success-priority-card:hover {
  border-color: rgb(227 6 19 / 0.24);
  box-shadow: 0 18px 36px rgb(15 23 42 / 0.08);
  transform: translateY(-1px);
}

.success-priority-icon {
  display: grid;
  grid-row: 1 / span 2;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 12px;
  background: #111318;
  color: #ffffff;
}

.success-priority-copy {
  display: grid;
  grid-row: 1 / span 2;
  min-width: 0;
  gap: 4px;
}

.success-priority-copy strong {
  color: #111318;
  font-size: 14px;
  font-weight: 950;
}

.success-priority-copy small {
  color: #647084;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.success-priority-card b {
  grid-column: 3;
  grid-row: 1;
  justify-self: end;
  color: #111318;
  font-size: 26px;
  font-weight: 950;
  line-height: 1;
}

.success-priority-card > svg:last-child {
  grid-column: 3;
  grid-row: 2;
  justify-self: end;
  color: #7c8492;
}

.success-priority-card.hot {
  border-color: rgb(227 6 19 / 0.28);
  background: linear-gradient(135deg, #ffffff 0%, rgb(227 6 19 / 0.055) 100%);
}

.success-priority-card.hot .success-priority-icon {
  background: var(--nex-red);
}

.success-priority-card.live .success-priority-icon {
  background: #0f766e;
}

.success-priority-card.active .success-priority-icon {
  background: #1f2937;
}

.success-performance-strip {
  padding: 4px;
  border: 1px solid rgb(15 23 42 / 0.06);
  border-radius: 16px;
  background: rgb(255 255 255 / 0.62);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.8);
}

.success-performance-strip .success-stat {
  border-radius: 12px;
  box-shadow: none;
}

.success-command-grid {
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  align-items: stretch;
}

.success-priority-panels {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.success-utility-panels {
  grid-template-columns: minmax(280px, 0.85fr) minmax(0, 1fr) minmax(300px, 0.9fr);
}

.command-hub-dashboard .success-widget {
  border-radius: 16px;
  background:
    linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%);
  padding: 16px;
  box-shadow: 0 18px 44px rgb(15 23 42 / 0.065);
}

.command-hub-dashboard .success-widget::before {
  height: 0;
}

.command-hub-dashboard .success-widget-head {
  margin-bottom: 12px;
}

.command-hub-dashboard .success-widget-head h2 {
  font-size: 19px;
  line-height: 1.05;
}

.success-widget-feature {
  background:
    linear-gradient(135deg, #ffffff 0%, #fff7f7 100%);
}

.success-widget-feature .success-progress-main strong {
  font-size: 56px;
}

.success-widget-money,
.success-widget-pipeline {
  background:
    linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.success-widget-growth {
  background:
    linear-gradient(135deg, #ffffff 0%, #fbf7ea 100%);
}

.success-widget-launchpad {
  background:
    radial-gradient(circle at 92% 8%, rgb(227 6 19 / 0.11), transparent 30%),
    linear-gradient(140deg, #ffffff, #fff7f8 64%, #ffffff);
}

.dashboard-launchpad-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px;
  align-items: center;
}

.dashboard-launchpad-ring {
  display: grid;
  width: 90px;
  height: 90px;
  place-items: center;
  border-radius: 999px;
  background:
    radial-gradient(circle, #ffffff 57%, transparent 58%),
    conic-gradient(var(--nex-red) var(--launchpad-progress, 0%), rgb(15 23 42 / 0.1) 0);
  box-shadow: inset 0 0 0 1px rgb(15 23 42 / 0.08), 0 14px 30px rgb(227 6 19 / 0.1);
}

.dashboard-launchpad-ring strong,
.dashboard-launchpad-ring span {
  grid-area: 1 / 1;
  display: block;
  text-align: center;
}

.dashboard-launchpad-ring strong {
  margin-top: -8px;
  color: #101217;
  font-size: 1.35rem;
  font-weight: 950;
}

.dashboard-launchpad-ring span {
  margin-top: 28px;
  color: #6b7280;
  font-size: 0.62rem;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.dashboard-launchpad-card h3,
.dashboard-launchpad-card p {
  margin: 0;
}

.dashboard-launchpad-card h3 {
  margin-top: 8px;
  color: #101217;
  font-size: 1rem;
  font-weight: 950;
  line-height: 1.25;
}

.dashboard-launchpad-card p {
  margin-top: 5px;
  color: #596170;
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1.45;
}

.dashboard-launchpad-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 14px;
}

.dashboard-launchpad-stats span {
  display: grid;
  gap: 3px;
  border: 1px solid rgb(227 6 19 / 0.09);
  border-radius: 10px;
  background: rgb(255 255 255 / 0.74);
  padding: 10px;
}

.dashboard-launchpad-stats strong {
  color: #101217;
  font-size: 0.96rem;
  font-weight: 950;
}

.dashboard-launchpad-stats em {
  color: #737b88;
  font-size: 0.66rem;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.success-widget-priority,
.success-widget-leads {
  border-color: rgb(15 23 42 / 0.08);
  background:
    linear-gradient(180deg, #ffffff 0%, #f9fbff 100%);
}

.command-hub-dashboard .success-widget.success-widget-command-palette,
.success-widget-command-palette {
  background:
    linear-gradient(135deg, #111318 0%, #202735 100%);
  color: #ffffff;
}

.command-hub-dashboard .success-widget.success-widget-command-palette .success-widget-head h2,
.command-hub-dashboard .success-widget.success-widget-command-palette .success-insight,
.success-widget-command-palette .success-widget-head h2,
.success-widget-command-palette .success-insight {
  color: #ffffff;
}

.command-hub-dashboard .success-widget.success-widget-command-palette .eyebrow,
.success-widget-command-palette .eyebrow {
  color: rgb(255 255 255 / 0.58);
}

.command-hub-dashboard .success-widget.success-widget-command-palette .success-insight,
.success-widget-command-palette .success-insight {
  border-color: rgb(255 255 255 / 0.18);
  background: rgb(255 255 255 / 0.08);
}

.command-hub-dashboard .success-kpi-grid div,
.command-hub-dashboard .commission-grid div,
.command-hub-dashboard .pipeline-snapshot div,
.command-hub-dashboard .followup-summary div {
  border-color: #e8edf4;
  border-radius: 12px;
  background:
    linear-gradient(180deg, #ffffff, #f8fafc);
}

.command-hub-dashboard .pipeline-snapshot {
  grid-template-columns: repeat(5, minmax(72px, 1fr));
}

.command-hub-dashboard .success-deadline-list,
.command-hub-dashboard .followup-list,
.command-hub-dashboard .success-activity-list {
  gap: 8px;
}

.command-hub-dashboard .success-deadline-list button,
.command-hub-dashboard .followup-list button,
.command-hub-dashboard .success-activity-list button,
.command-hub-dashboard .dashboard-chat-item {
  min-height: 54px;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: none;
}

.command-hub-dashboard .success-deadline-list button:hover,
.command-hub-dashboard .followup-list button:hover,
.command-hub-dashboard .success-activity-list button:hover,
.command-hub-dashboard .dashboard-chat-item:hover {
  transform: translateY(-1px);
}

.success-widget-leads .followup-summary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

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

.command-hub-dashboard .success-widget.success-widget-command-palette .success-actions-grid button,
.success-widget-command-palette .success-actions-grid button {
  min-height: 50px;
  border-color: rgb(255 255 255 / 0.1);
  background: rgb(255 255 255 / 0.08);
  color: #ffffff;
}

.command-hub-dashboard .success-widget.success-widget-command-palette .success-actions-grid svg,
.success-widget-command-palette .success-actions-grid svg {
  color: #ffffff;
}

.command-hub-dashboard .success-widget.success-widget-command-palette .success-actions-grid button:hover,
.success-widget-command-palette .success-actions-grid button:hover {
  border-color: rgb(255 255 255 / 0.22);
  background: rgb(255 255 255 / 0.12);
}

.stofel-dashboard.command-hub-dashboard {
  border-color: rgb(31 141 192 / 0.14);
  background:
    linear-gradient(120deg, rgb(31 141 192 / 0.07), transparent 34%),
    linear-gradient(180deg, #ffffff 0%, #f3f8fb 52%, #ffffff 100%);
}

.stofel-dashboard.command-hub-dashboard::before {
  background:
    linear-gradient(90deg, rgb(31 141 192 / 0.035) 1px, transparent 1px),
    linear-gradient(180deg, rgb(58 58 60 / 0.028) 1px, transparent 1px),
    linear-gradient(125deg, transparent 0 55%, rgb(31 141 192 / 0.09) 55% 56%, transparent 56% 100%);
  background-size: 42px 42px, 42px 42px, 100% 100%;
}

.stofel-dashboard .premium-command-hero {
  border-color: rgb(31 141 192 / 0.22);
  background:
    linear-gradient(118deg, rgb(31 141 192 / 0.16), transparent 32%),
    linear-gradient(156deg, transparent 0 64%, rgb(58 58 60 / 0.07) 64% 100%),
    linear-gradient(135deg, #ffffff 0%, #fbfdff 38%, #eef8fc 70%, #f7f8fa 100%);
}

.stofel-dashboard .premium-command-hero::before {
  content:
    "STOFEL CENTRAL     STOFEL CENTRAL     STOFEL CENTRAL     STOFEL CENTRAL\A"
    "STOFEL CENTRAL     STOFEL CENTRAL     STOFEL CENTRAL     STOFEL CENTRAL\A"
    "STOFEL CENTRAL     STOFEL CENTRAL     STOFEL CENTRAL     STOFEL CENTRAL";
  color: var(--nex-red);
}

.stofel-dashboard .premium-command-hero::after,
.stofel-dashboard .premium-command-hero .success-hero-main::before {
  background: linear-gradient(90deg, var(--nex-red), rgb(31 141 192 / 0.42), rgb(58 58 60 / 0.18), transparent);
  box-shadow: 0 0 24px rgb(31 141 192 / 0.22);
}

.stofel-dashboard .premium-command-hero h1 {
  background: linear-gradient(90deg, #1d2227 0%, #3a3a3c 48%, var(--nex-red) 100%);
  -webkit-background-clip: text;
  background-clip: text;
}

.stofel-dashboard .premium-command-hero .eyebrow,
.stofel-dashboard .success-soft-badge {
  border-color: rgb(31 141 192 / 0.22);
  background: linear-gradient(90deg, rgb(31 141 192 / 0.11), rgb(255 255 255 / 0.76));
  color: var(--nex-red);
}

.stofel-dashboard .premium-command-hero .success-hero-command-row button.hot::before,
.stofel-dashboard .premium-command-hero .success-hero-command-row button.hot .command-metric-icon,
.stofel-dashboard .success-priority-card.hot .success-priority-icon,
.stofel-dashboard .success-stat.red > span {
  background: var(--nex-red);
}

.stofel-dashboard .premium-command-hero .success-hero-command-row button:hover,
.stofel-dashboard .success-priority-card:hover {
  border-color: rgb(31 141 192 / 0.24);
  box-shadow:
    0 22px 44px rgb(15 23 42 / 0.10),
    0 0 0 4px rgb(31 141 192 / 0.055);
}

.stofel-dashboard .success-section-heading {
  background: linear-gradient(135deg, #3a3a3c 0%, #1e2b33 100%);
}

.stofel-dashboard .success-widget-feature {
  background: linear-gradient(135deg, #ffffff 0%, #eef8fc 100%);
}

.stofel-dashboard .success-widget-growth {
  background: linear-gradient(135deg, #ffffff 0%, #f4f7f8 100%);
}

.stofel-service-card {
  grid-template-columns: auto minmax(0, 1fr) auto;
}

.stofel-dashboard-service-icon {
  display: grid;
  width: 58px;
  height: 58px;
  place-items: center;
  border-radius: 16px;
  background: var(--nex-red);
  color: #ffffff;
  box-shadow: 0 16px 30px rgb(31 141 192 / 0.22);
}

.stofel-dashboard-service-icon svg {
  width: 26px;
  height: 26px;
}

.success-widget-launch-readiness {
  background:
    linear-gradient(135deg, #ffffff 0%, #eef8fc 62%, #f7f8fa 100%);
}

.success-widget-launch-readiness::before {
  background: linear-gradient(90deg, var(--nex-red), rgb(31 141 192 / 0.66), transparent 70%);
}

.stofel-launch-readiness-meter {
  --launch-ready: 0%;
  display: grid;
  gap: 10px;
}

.stofel-launch-readiness-meter > div {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 12px;
}

.stofel-launch-readiness-meter strong {
  color: #111318;
  font-size: 44px;
  font-weight: 950;
  line-height: 0.95;
}

.stofel-launch-readiness-meter span {
  color: #5b6470;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-align: right;
  text-transform: uppercase;
}

.stofel-launch-readiness-meter i {
  display: block;
  overflow: hidden;
  height: 10px;
  border-radius: 999px;
  background: #dfe8ee;
}

.stofel-launch-readiness-meter i::before {
  content: "";
  display: block;
  width: var(--launch-ready);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #1f8dc0, #3a3a3c);
}

.stofel-launch-readiness-counts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 12px;
}

.stofel-launch-readiness-counts span {
  display: grid;
  gap: 3px;
  min-width: 0;
  border: 1px solid #e5ebf0;
  border-radius: 8px;
  background: #ffffff;
  padding: 9px;
}

.stofel-launch-readiness-counts strong {
  color: #111318;
  font-size: 20px;
  font-weight: 950;
  line-height: 1;
}

.stofel-launch-readiness-counts em {
  overflow: hidden;
  color: #68717d;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.04em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.stofel-launch-readiness-counts .pass strong {
  color: #0f7b43;
}

.stofel-launch-readiness-counts .warn strong {
  color: #946200;
}

.stofel-launch-readiness-counts .fail strong {
  color: #b42318;
}

.stofel-launch-check-list {
  display: grid;
  gap: 7px;
  margin-top: 12px;
}

.stofel-launch-check-list span {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  min-height: 34px;
  border: 1px solid #e6edf2;
  border-radius: 8px;
  background: rgb(255 255 255 / 0.78);
  padding: 7px 8px;
}

.stofel-launch-check-list svg {
  width: 16px;
  height: 16px;
  color: #1f8dc0;
}

.stofel-launch-check-list span.warn svg {
  color: #b77900;
}

.stofel-launch-check-list span.fail svg {
  color: #b42318;
}

.stofel-launch-check-list b {
  overflow: hidden;
  color: #17202a;
  font-size: 12px;
  font-weight: 900;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.stofel-launch-check-list em {
  border-radius: 999px;
  background: #eef8fc;
  color: #1f6f96;
  padding: 4px 7px;
  font-size: 9px;
  font-style: normal;
  font-weight: 950;
  text-transform: uppercase;
  white-space: nowrap;
}

.stofel-launch-check-list span.warn em {
  background: #fff6dd;
  color: #7a5200;
}

.stofel-launch-check-list span.fail em {
  background: #fff1f1;
  color: #981b1b;
}

@media (max-width: 1160px) {
  .success-stat-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .success-priority-strip,
  .success-priority-grid,
  .success-command-grid,
  .success-priority-panels,
  .success-utility-panels {
    grid-template-columns: 1fr 1fr;
  }

  .premium-command-hero {
    grid-template-columns: 1fr;
  }

  .success-grid.top,
  .success-grid.middle,
  .success-grid.lower {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .agent-success-dashboard {
    gap: 13px;
    padding-top: 10px;
  }

  .success-priority-strip,
  .success-priority-grid,
  .success-command-grid,
  .success-priority-panels,
  .success-utility-panels {
    grid-template-columns: 1fr;
  }

  .dashboard-launchpad-card {
    grid-template-columns: 1fr;
  }

  .dashboard-launchpad-ring {
    width: 82px;
    height: 82px;
  }

  .dashboard-launchpad-stats {
    grid-template-columns: 1fr;
  }

  .premium-command-hero h1 {
    font-size: clamp(34px, 13vw, 52px);
  }

  .premium-command-hero .success-hero-command-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .success-hero {
    display: grid;
    grid-template-columns: 1fr;
    padding: 18px;
  }

  .success-hero-command-row,
  .success-hero-action-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .success-hero-market-head {
    display: grid;
    align-items: stretch;
  }

  .success-hero-market-head button {
    width: 100%;
  }

  .success-hero-action-strip {
    display: grid;
  }

  .success-hero-action-strip button {
    justify-content: center;
    text-align: center;
  }

  .success-hero-status {
    min-width: 0;
    grid-template-columns: 1fr;
  }

  .premium-command-hero .success-hero-status button.success-website-link {
    max-width: none;
  }

  .success-message-alert {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .success-message-alert .btn {
    grid-column: 1 / -1;
    justify-content: center;
  }

  .success-stat-row,
  .success-kpi-grid,
  .commission-grid,
  .pipeline-snapshot,
  .followup-summary,
  .success-actions-grid {
    grid-template-columns: 1fr 1fr;
  }

  .success-stat {
    padding: 13px;
  }

  .success-stat strong {
    font-size: 21px;
  }

  .success-widget {
    padding: 14px;
  }

  .success-widget-head {
    align-items: start;
  }

  .success-widget-head h2 {
    font-size: 19px;
  }

  .success-widget-actions .btn span {
    display: none;
  }

  .success-progress-main strong {
    font-size: 36px;
  }

  .success-deadline-list button {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .success-deadline-list em {
    grid-column: 2;
    text-align: left;
  }

  .success-activity-list button {
    grid-template-columns: 1fr;
  }

  .success-activity-list em {
    text-align: left;
  }
}

@media (max-width: 480px) {
  .success-stat-row,
  .success-kpi-grid,
  .commission-grid,
  .pipeline-snapshot,
  .followup-summary,
  .success-actions-grid,
  .success-hero-command-row,
  .success-hero-action-strip,
  .calculator-market-detail-grid {
    grid-template-columns: 1fr;
  }
}

.brand-logo-compact {
  width: 118px;
  max-height: 46px;
}

.platform-logo {
  width: 190px;
  max-height: 98px;
}

.nav-list {
  display: grid;
  gap: 7px;
}

.nav-groups {
  align-content: start;
  gap: 5px;
}

.nav-group {
  position: relative;
}

.nav-group-trigger {
  position: relative;
  display: grid;
  width: 100%;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  border: 1px solid transparent;
  background: transparent;
  color: rgb(255 255 255 / 0.76);
  padding: 12px;
  text-align: left;
  transition: background 160ms ease, border-color 160ms ease, color 160ms ease;
}

.nav-group-trigger > span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.25;
}

.nav-group-trigger:hover,
.nav-group-trigger:focus-visible,
.nav-group.active > .nav-group-trigger,
.nav-group.open > .nav-group-trigger {
  border-color: rgb(255 255 255 / 0.12);
  background: rgb(255 255 255 / 0.075);
  color: #fff;
}

.nav-group.active > .nav-group-trigger {
  box-shadow: inset 3px 0 0 var(--nex-red);
}

.nav-group-chevron {
  transition: transform 160ms ease;
}

.nav-group.open .nav-group-chevron {
  transform: rotate(180deg);
}

.nav-submenu {
  display: grid;
  gap: 4px;
  margin: 5px 0 7px 15px;
  padding: 3px 0 3px 9px;
  border-left: 1px solid rgb(255 255 255 / 0.14);
}

.nav-submenu[hidden] {
  display: none;
}

.nav-submenu .nav-item {
  min-height: 40px;
  padding: 9px 10px;
}

.nav-submenu .nav-item span {
  font-size: 12px;
  line-height: 1.2;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nav-item {
  position: relative;
  display: grid;
  grid-template-columns: 22px 1fr auto;
  align-items: center;
  gap: 10px;
  border: 1px solid transparent;
  background: transparent;
  color: rgb(255 255 255 / 0.72);
  padding: 11px 12px;
  text-align: left;
  transition: 160ms ease;
  cursor: pointer;
}

.nav-item span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 14px;
  font-weight: 700;
}

.nav-item:hover,
.nav-item.active {
  border-color: rgb(255 255 255 / 0.12);
  background: rgb(255 255 255 / 0.08);
  color: white;
}

.nav-item.active {
  box-shadow: inset 3px 0 0 var(--nex-red);
}

@media (hover: none), (pointer: coarse) {
  .nav-group:hover > .nav-submenu[hidden] {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .nav-group-trigger,
  .nav-group-chevron,
  .nav-item,
  .nav-submenu {
    animation: none;
    transition: none;
  }
}

.mobile-signout-nav {
  display: none;
}

.nav-unread-badge {
  position: absolute;
  top: 7px;
  right: 8px;
  display: inline-grid;
  min-width: 20px;
  height: 20px;
  place-items: center;
  background: var(--nex-red);
  color: white;
  padding: 0 6px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
}

.role-card {
  margin-top: auto;
  border: 1px solid rgb(255 255 255 / 0.12);
  background: rgb(255 255 255 / 0.06);
  padding: 14px;
}

.role-toggle {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px;
  margin-top: 10px;
  background: rgb(255 255 255 / 0.08);
  padding: 4px;
}

.role-toggle button {
  border: 0;
  background: transparent;
  color: rgb(255 255 255 / 0.72);
  padding: 8px 10px;
  font-size: 13px;
  font-weight: 800;
}

.role-toggle button.selected {
  background: white;
  color: var(--nex-black);
}

.signed-in-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  margin-top: 10px;
  background: rgb(255 255 255 / 0.08);
  padding: 11px;
}

.signed-in-card > div {
  display: grid;
  gap: 2px;
}

.user-avatar {
  display: inline-grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgb(227 6 19 / 0.24);
  border-radius: 999px;
  background: #ffffff;
  box-shadow: 0 10px 24px rgb(18 22 30 / 0.08);
}

.user-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.user-avatar-sm {
  width: 42px;
  height: 42px;
}

.user-avatar-md {
  width: 48px;
  height: 48px;
}

.user-avatar-lg {
  width: 68px;
  height: 68px;
}

.signed-in-card strong,
.signed-in-card span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.signed-in-card strong {
  color: white;
  font-size: 13px;
  font-weight: 900;
}

.signed-in-card span {
  color: rgb(255 255 255 / 0.58);
  font-size: 12px;
  font-weight: 800;
}

.tenant-switcher {
  display: grid;
  gap: 6px;
  margin-top: 12px;
}

.tenant-switcher span {
  color: rgb(255 255 255 / 0.55);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.tenant-switcher select {
  width: 100%;
  min-height: 38px;
  border: 1px solid rgb(255 255 255 / 0.16);
  background: #111318;
  color: #ffffff;
  padding: 8px 10px;
}

.logout-btn {
  display: inline-flex;
  width: 100%;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid rgb(255 255 255 / 0.16);
  background: transparent;
  color: white;
  margin-top: 12px;
  font-size: 12px;
  font-weight: 850;
}

.main-area {
  min-width: 0;
  padding: 22px;
}

.topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border-bottom: 1px solid var(--nex-line);
  padding-bottom: 18px;
}

.topbar h2 {
  margin: 2px 0 0;
  font-size: clamp(24px, 4vw, 34px);
  font-weight: 900;
  line-height: 1;
}

.topbar-actions,
.hero-actions,
.button-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.eyebrow {
  margin: 0;
  color: #747985;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.btn,
.icon-btn {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 1px solid transparent;
  padding: 0 14px;
  font-size: 13px;
  font-weight: 850;
  line-height: 1;
  text-decoration: none;
  transition: 160ms ease;
}

.btn.primary {
  background: var(--nex-red);
  color: white;
}

.btn.secondary {
  border-color: #d8dae0;
  background: white;
  color: #191b20;
}

.btn.dark {
  background: #111318;
  color: white;
}

.btn.light {
  border-color: rgb(255 255 255 / 0.32);
  background: rgb(255 255 255 / 0.14);
  color: white;
}

.btn.danger-soft {
  border-color: rgb(227 6 19 / 0.25);
  background: rgb(227 6 19 / 0.08);
  color: #9b111c;
}

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

.icon-btn {
  min-height: 38px;
  width: 38px;
  border-color: #d8dae0;
  background: white;
  color: #1e2128;
  padding: 0;
}

.icon-btn.small {
  min-height: 30px;
  width: 30px;
}

.small-btn {
  min-height: 36px;
}

.install-app-btn {
  border-color: rgb(227 6 19 / 0.22);
  color: var(--nex-red);
}

.spin {
  animation: spin 1s linear infinite;
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

.dashboard-grid {
  display: grid;
  gap: 18px;
  padding-top: 22px;
}

.command-dashboard,
.portal-page {
  display: grid;
  gap: 18px;
  padding-top: 22px;
}

.command-hero,
.module-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: end;
  min-height: 280px;
  overflow: hidden;
  border: 1px solid rgb(255 255 255 / 0.16);
  background:
    linear-gradient(100deg, rgb(0 0 0 / 0.92), rgb(0 0 0 / 0.58)),
    linear-gradient(135deg, var(--nex-red), var(--nex-charcoal));
  color: white;
  padding: 34px;
  box-shadow: 0 24px 70px rgb(5 5 5 / 0.18);
}

.command-hero h3,
.module-hero h3 {
  max-width: 760px;
  margin: 8px 0;
  font-size: clamp(34px, 5vw, 58px);
  font-weight: 950;
  line-height: 0.96;
}

.command-hero p:not(.eyebrow),
.module-hero p:not(.eyebrow) {
  max-width: 720px;
  color: rgb(255 255 255 / 0.76);
  font-size: 16px;
  line-height: 1.6;
}

.hero-brand-card {
  display: grid;
  min-width: 220px;
  justify-items: end;
  gap: 12px;
  border: 1px solid rgb(255 255 255 / 0.16);
  background: rgb(255 255 255 / 0.08);
  padding: 18px;
}

.hero-brand-card .brand-logo,
.module-hero .brand-logo {
  width: 210px;
  max-height: 120px;
}

.hero-brand-card span {
  color: rgb(255 255 255 / 0.64);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.alert-row,
.quick-action-grid,
.module-card-grid,
.resource-grid,
.quick-links-grid,
.announcement-grid {
  display: grid;
  gap: 14px;
}

.alert-row {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.alert-card,
.announcement-card,
.resource-card,
.module-card,
.quick-action-card,
.quick-link-card,
.ticket-list article,
.feed-list article,
.mini-project-row article {
  border: 1px solid var(--nex-line);
  background: white;
  padding: 16px;
  box-shadow: 0 16px 44px rgb(18 22 30 / 0.05);
}

.alert-card {
  border-left: 5px solid var(--nex-gold);
}

.alert-card.urgent,
.announcement-card.urgent,
.feed-list article.urgent {
  border-left: 5px solid var(--nex-red);
}

.alert-card span,
.announcement-meta span,
.feed-list span,
.resource-card span,
.quick-link-card em,
.ticket-list span,
.mini-project-row span,
.guide-list button span {
  color: #717987;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.alert-card strong,
.feed-list strong,
.mini-project-row strong {
  display: block;
  margin-top: 7px;
  color: #14171d;
  font-size: 17px;
  font-weight: 950;
}

.alert-card p,
.feed-list p,
.resource-card p,
.announcement-card p,
.quick-link-card span,
.ticket-list p {
  margin: 8px 0 0;
  color: #5f6673;
  font-size: 13px;
  line-height: 1.5;
}

.quick-action-grid,
.module-card-grid,
.quick-links-grid,
.resource-grid,
.announcement-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.dashboard-chat-preview {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  border: 1px solid rgb(227 6 19 / 0.16);
  background:
    linear-gradient(120deg, rgb(227 6 19 / 0.08), transparent 42%),
    #ffffff;
  color: #111318;
  padding: 16px;
  text-align: left;
  box-shadow: 0 18px 48px rgb(18 22 30 / 0.06);
}

.dashboard-chat-preview .chat-preview-icon {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  background: #111318;
  color: white;
}

.dashboard-chat-preview > span:not(.chat-preview-icon) {
  min-width: 0;
}

.dashboard-chat-preview em {
  display: block;
  color: var(--nex-red);
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.dashboard-chat-preview strong,
.dashboard-chat-preview p {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dashboard-chat-preview strong {
  margin-top: 4px;
  font-size: 15px;
  font-weight: 950;
}

.dashboard-chat-preview p {
  margin: 4px 0 0;
  color: #5f6673;
  font-size: 13px;
  font-weight: 750;
}

.dashboard-chat-preview small {
  color: #717987;
  font-size: 11px;
  font-weight: 850;
  text-align: right;
}

.quick-action-card,
.module-card,
.quick-link-card > button {
  display: grid;
  min-height: 150px;
  align-content: start;
  gap: 10px;
  border: 1px solid var(--nex-line);
  background: white;
  color: #17191d;
  padding: 16px;
  text-align: left;
}

.quick-action-card svg,
.module-card svg,
.quick-link-card svg,
.resource-card svg {
  color: var(--nex-red);
}

.quick-action-card strong,
.module-card strong,
.quick-link-card strong,
.resource-card h3,
.announcement-card h3 {
  margin: 0;
  color: #111318;
  font-size: 18px;
  font-weight: 950;
  line-height: 1.05;
}

.quick-link-sections {
  display: grid;
  gap: 22px;
}

.quick-link-section {
  display: grid;
  gap: 10px;
}

.quick-link-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.quick-link-section-head h3 {
  margin: 0;
  color: #111318;
  font-size: 16px;
  font-weight: 950;
}

.quick-link-section-head span {
  color: #717987;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.quick-link-card {
  overflow: hidden;
}

.quick-link-card > button {
  min-height: 128px;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  width: 100%;
}

.nex-dashboard {
  display: grid;
  gap: 18px;
  padding-top: 22px;
}

.nex-hero {
  position: relative;
  overflow: hidden;
  border: 1px solid rgb(255 255 255 / 0.14);
  background:
    radial-gradient(circle at 82% 20%, rgb(227 6 19 / 0.34), transparent 28%),
    radial-gradient(circle at 16% 8%, rgb(201 162 74 / 0.13), transparent 24%),
    linear-gradient(135deg, #050505 0%, #111318 52%, #23262d 100%);
  color: white;
  box-shadow: 0 28px 80px rgb(5 5 5 / 0.22);
}

.nex-hero-glow {
  position: absolute;
  inset: auto -90px -150px auto;
  width: 360px;
  height: 360px;
  border-radius: 999px;
  background: rgb(227 6 19 / 0.34);
  filter: blur(72px);
  animation: nexPulseGlow 4.8s ease-in-out infinite;
}

@keyframes nexPulseGlow {
  0%,
  100% {
    opacity: 0.45;
    transform: scale(0.96);
  }

  50% {
    opacity: 0.85;
    transform: scale(1.04);
  }
}

.nex-hero-content {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 270px;
  gap: 28px;
  align-items: stretch;
  min-height: 360px;
  padding: 34px;
}

.nex-hero-copy {
  display: grid;
  align-content: center;
  gap: 18px;
}

.nex-hero h1 {
  max-width: 780px;
  margin: 0;
  color: white;
  font-size: clamp(42px, 6vw, 76px);
  font-weight: 950;
  line-height: 0.92;
}

.nex-hero p:not(.eyebrow) {
  max-width: 760px;
  margin: 0;
  color: rgb(255 255 255 / 0.76);
  font-size: 17px;
  line-height: 1.6;
}

.nex-status-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.nex-status-row span,
.live-badge,
.urgent-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: max-content;
  border: 1px solid rgb(255 255 255 / 0.12);
  background: rgb(255 255 255 / 0.07);
  color: rgb(255 255 255 / 0.78);
  padding: 7px 10px;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.nex-status-row i,
.live-badge i {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #27d17f;
  box-shadow: 0 0 0 5px rgb(39 209 127 / 0.12);
  animation: liveDot 1.8s ease-in-out infinite;
}

@keyframes liveDot {
  0%,
  100% {
    transform: scale(0.86);
  }

  50% {
    transform: scale(1.12);
  }
}

.nex-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.nex-hero-agent {
  display: grid;
  align-content: space-between;
  justify-items: start;
  gap: 18px;
  border: 1px solid rgb(255 255 255 / 0.14);
  background: rgb(255 255 255 / 0.08);
  padding: 22px;
  backdrop-filter: blur(18px);
}

.nex-hero-agent .brand-logo {
  width: 178px;
  max-height: 104px;
}

.nex-avatar {
  display: grid;
  width: 74px;
  height: 74px;
  place-items: center;
  border: 1px solid rgb(255 255 255 / 0.2);
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.92), rgb(17 19 24 / 0.72));
  color: white;
  font-size: 24px;
  font-weight: 950;
}

.nex-hero-agent strong {
  color: white;
  font-size: 22px;
  font-weight: 950;
  line-height: 1;
}

.nex-hero-agent span {
  color: rgb(255 255 255 / 0.62);
  font-size: 12px;
  font-weight: 850;
}

.nex-ai-bar {
  display: grid;
  grid-template-columns: auto minmax(260px, 1fr);
  gap: 12px;
  align-items: center;
  border: 1px solid rgb(227 6 19 / 0.18);
  background:
    linear-gradient(120deg, rgb(227 6 19 / 0.09), transparent 44%),
    white;
  padding: 14px;
  box-shadow: 0 16px 42px rgb(18 22 30 / 0.06);
}

.nex-ai-bar > svg {
  color: var(--nex-red);
}

.nex-ai-bar > button {
  border: 0;
  background: transparent;
  color: #111318;
  padding: 8px 0;
  font-size: 17px;
  font-weight: 900;
  text-align: left;
}

.nex-ai-bar > div {
  grid-column: 1 / -1;
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 2px;
}

.nex-ai-bar > div button {
  flex: 0 0 auto;
  border: 1px solid #dfe2e8;
  background: #f8f9fb;
  color: #3b4049;
  padding: 8px 10px;
  font-size: 11px;
  font-weight: 900;
}

.nex-dashboard-command-strip {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  align-items: stretch;
}

.nex-dashboard-command-market,
.nex-dashboard-lender-card {
  min-width: 0;
  border-radius: 8px;
  border: 1px solid #e3e7ef;
  background:
    radial-gradient(circle at 92% 0%, rgb(227 6 19 / 0.1), transparent 28%),
    linear-gradient(135deg, #ffffff 0%, #f8fafc 58%, #ffffff 100%);
  box-shadow: 0 14px 34px rgb(18 22 30 / 0.055);
}

.nex-dashboard-command-market {
  display: grid;
  gap: 10px;
  padding: 13px;
}

.nex-command-strip-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.nex-command-strip-head span,
.nex-dashboard-lender-card > div > span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--nex-red);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.nex-command-strip-head button {
  border: 1px solid #dfe2e8;
  background: #fff;
  color: #2f3541;
  padding: 7px 10px;
  font-size: 11px;
  font-weight: 950;
}

.nex-dashboard-command-market .market-pulse-ticker {
  min-height: 44px;
  border-radius: 8px;
  border: 1px solid rgb(17 19 24 / 0.08);
  box-shadow: inset 0 -1px 0 rgb(255 255 255 / 0.08);
}

.nex-dashboard-lender-card {
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 13px;
}

.nex-dashboard-lender-card > img {
  width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 8px;
  border: 1px solid rgb(17 19 24 / 0.08);
  background: #fff;
  object-fit: cover;
  object-position: center 22%;
}

.nex-dashboard-lender-card > div {
  min-width: 0;
}

.nex-dashboard-lender-card strong {
  display: block;
  margin-top: 5px;
  color: #111318;
  font-size: 18px;
  font-weight: 950;
  line-height: 1.05;
}

.nex-dashboard-lender-card p {
  margin: 6px 0 0;
  color: #5b6471;
  font-size: 12px;
  font-weight: 760;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.nex-dashboard-lender-actions {
  grid-column: auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, auto));
  justify-content: end;
  gap: 8px;
}

.nex-dashboard-lender-actions .btn {
  width: 100%;
  min-width: 0;
  justify-content: center;
}

@media (max-width: 1040px) {
  .nex-dashboard-lender-card {
    grid-template-columns: minmax(120px, 180px) minmax(0, 1fr);
  }

  .nex-dashboard-lender-actions {
    grid-column: 1 / -1;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    justify-content: stretch;
  }
}

@media (max-width: 680px) {
  .nex-dashboard-command-market,
  .nex-dashboard-lender-card {
    padding: 11px;
  }

  .nex-command-strip-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .nex-command-strip-head button {
    width: 100%;
  }

  .nex-dashboard-lender-card {
    grid-template-columns: 1fr;
  }

  .nex-dashboard-lender-card > img {
    width: min(100%, 280px);
  }

  .nex-dashboard-lender-actions {
    grid-template-columns: 1fr;
  }
}

.nex-market-pulse-widget {
  display: grid;
  gap: 14px;
  border: 1px solid #e5e8ef;
  background:
    radial-gradient(circle at 88% 12%, rgb(227 6 19 / 0.09), transparent 30%),
    linear-gradient(135deg, #ffffff, #f7f9fc);
  padding: 12px;
  box-shadow: 0 12px 34px rgb(18 22 30 / 0.05);
}

.nex-market-command-widget {
  border-color: rgb(17 19 24 / 0.09);
  background:
    radial-gradient(circle at 92% 0%, rgb(227 6 19 / 0.13), transparent 30%),
    linear-gradient(135deg, #ffffff 0%, #f7f9fc 56%, #ffffff 100%);
}

.nex-market-command-widget .nex-widget-head h2 {
  font-size: clamp(18px, 2vw, 25px);
}

.nex-market-pulse-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: end;
}

.nex-market-pulse-body {
  display: grid;
  gap: 12px;
}

.market-pulse-central {
  border: 1px solid rgb(255 255 255 / 0.10);
  border-radius: 16px;
  padding-inline: 14px;
}

.nex-market-rate-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.nex-market-signal-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.nex-market-rate-grid article,
.nex-market-signal-grid article {
  display: grid;
  gap: 6px;
  min-height: 104px;
  padding: 13px;
  border: 1px solid rgb(17 19 24 / 0.08);
  background: #fff;
}

.nex-market-signal-grid article {
  border-radius: 16px;
  background:
    linear-gradient(180deg, #ffffff, #fbfcfd);
}

.nex-market-rate-grid span,
.nex-market-signal-grid span {
  color: var(--nex-red);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.nex-market-rate-grid strong,
.nex-market-signal-grid strong {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #111318;
  font-size: 27px;
  line-height: 1;
}

.nex-market-rate-grid small,
.nex-market-signal-grid small,
.nex-market-disclaimer {
  color: #68717d;
  line-height: 1.45;
  font-size: 12px;
}

.nex-market-rate-grid small b,
.nex-market-signal-grid small b,
.calculator-market-card-grid small b {
  color: #111318;
  font-weight: 950;
}

.nex-market-rate-grid small i,
.nex-market-signal-grid small i,
.calculator-market-card-grid small i {
  display: inline-flex;
  margin-right: 3px;
  border-radius: 999px;
  background: rgb(17 19 24 / 0.07);
  color: #4b5563;
  padding: 2px 5px;
  font-size: 9px;
  font-style: normal;
  font-weight: 950;
  text-transform: uppercase;
}

.pulse-card-indicator {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 21px;
  height: 21px;
  border-radius: 999px;
  background: #eef2f7;
  color: #64748b;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
}

.pulse-card-indicator.up {
  background: rgb(239 68 68 / 0.12);
  color: #dc2626;
}

.pulse-card-indicator.down {
  background: rgb(34 197 94 / 0.14);
  color: #16a34a;
}

.nex-market-housing-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.nex-market-housing-row span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 999px;
  background: #fff;
}

.nex-market-housing-row strong {
  color: #111318;
  font-size: 14px;
}

.nex-market-housing-row em {
  color: #69707b;
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
}

.nex-metrics-row {
  display: grid;
  grid-template-columns: repeat(8, minmax(160px, 1fr));
  gap: 12px;
  overflow-x: auto;
  padding-bottom: 2px;
}

.nex-metric-card {
  position: relative;
  display: grid;
  min-height: 156px;
  align-content: space-between;
  gap: 10px;
  overflow: hidden;
  border: 1px solid var(--nex-line);
  background: white;
  color: #111318;
  padding: 15px;
  text-align: left;
  box-shadow: 0 16px 42px rgb(18 22 30 / 0.05);
  transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.nex-metric-card:hover,
.nex-launchpad-grid button:hover,
.nex-activity-feed button:hover,
.bulletin-card-list button:hover,
.momentum-template-row button:hover {
  border-color: rgb(227 6 19 / 0.32);
  box-shadow: 0 22px 54px rgb(18 22 30 / 0.1);
  transform: translateY(-2px);
}

.nex-metric-card::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 100%;
  height: 4px;
  background: var(--nex-red);
}

.nex-metric-card.gold::before {
  background: var(--nex-gold);
}

.metric-icon {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  background: #111318;
  color: white;
}

.nex-metric-card.red .metric-icon {
  background: var(--nex-red);
}

.nex-metric-card.gold .metric-icon {
  background: var(--nex-gold);
}

.metric-status {
  position: absolute;
  top: 12px;
  right: 12px;
  color: var(--nex-red);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.nex-metric-card strong {
  color: #111318;
  font-size: 34px;
  font-weight: 950;
  line-height: 1;
}

.nex-metric-card em {
  color: #69707d;
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
  line-height: 1.25;
}

.nex-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(320px, 0.75fr) minmax(0, 1.25fr);
  gap: 16px;
}

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

.nex-widget,
.nex-launchpad {
  border: 1px solid var(--nex-line);
  background: white;
  padding: 18px;
  box-shadow: 0 18px 52px rgb(18 22 30 / 0.06);
}

.nex-widget.dark {
  background: #111318;
  color: white;
}

.nex-widget-head,
.nex-section-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: start;
  margin-bottom: 14px;
}

.nex-widget-head h2,
.nex-section-head h2 {
  margin: 3px 0 0;
  color: #111318;
  font-size: 24px;
  font-weight: 950;
  line-height: 1;
}

.nex-widget-head > span {
  color: var(--nex-red);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.nex-widget-head > .dashboard-chat-badge {
  display: inline-flex;
  color: #596170;
}

.nex-widget-head > .dashboard-chat-badge.unread {
  color: var(--nex-red);
}

.nex-progress-track {
  overflow: hidden;
  height: 8px;
  background: #edf0f4;
  margin-bottom: 14px;
}

.nex-progress-track i {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--nex-red), var(--nex-gold));
}

.nex-focus-list {
  display: grid;
  gap: 8px;
}

.nex-focus-list label {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border: 1px solid #e4e7ee;
  background: #fbfcfd;
  margin: 0;
  padding: 10px;
}

.nex-focus-list label.complete {
  border-color: rgb(39 209 127 / 0.3);
  background: rgb(39 209 127 / 0.08);
}

.nex-focus-list input {
  width: auto;
  accent-color: var(--nex-red);
}

.nex-focus-list span {
  color: #303540;
  font-size: 13px;
  font-weight: 850;
}

.nex-focus-list button {
  border: 1px solid #dfe2e8;
  background: white;
  color: var(--nex-red);
  padding: 6px 8px;
  font-size: 10px;
  font-weight: 950;
}

.nex-activity-feed,
.bulletin-card-list,
.nexu-mini-list,
.recent-project-mini {
  display: grid;
  gap: 9px;
}

.nex-activity-feed button,
.bulletin-card-list button,
.nexu-mini-list button,
.recent-project-mini button {
  display: grid;
  gap: 5px;
  border: 1px solid #e4e7ee;
  background: #fbfcfd;
  color: #111318;
  padding: 11px;
  text-align: left;
}

.nex-activity-feed button {
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
}

.nex-activity-feed em {
  grid-row: span 2;
  border: 1px solid #dfe2e8;
  background: white;
  color: #596170;
  padding: 5px 7px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  text-transform: uppercase;
}

.nex-activity-feed em.live,
.live-badge {
  border-color: rgb(39 209 127 / 0.24);
  background: rgb(39 209 127 / 0.1);
  color: #168a4a;
}

.nex-activity-feed em.urgent,
.urgent-pill {
  border-color: rgb(227 6 19 / 0.24);
  background: rgb(227 6 19 / 0.1);
  color: var(--nex-red);
}

.nex-activity-feed em.new {
  border-color: rgb(201 162 74 / 0.28);
  background: rgb(201 162 74 / 0.12);
  color: #8a6a16;
}

.nex-activity-feed strong,
.bulletin-card-list strong,
.nexu-mini-list strong,
.recent-project-mini strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
  overflow-wrap: anywhere;
}

.nex-activity-feed span,
.bulletin-card-list p,
.recent-project-mini p {
  color: #69707d;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.35;
}

.nex-activity-feed small {
  grid-row: span 2;
  color: #8a929f;
  font-size: 10px;
  font-weight: 850;
  text-align: right;
}

.nex-launchpad-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(205px, 1fr));
  gap: 12px;
}

.nex-launchpad-grid button {
  display: grid;
  min-height: 178px;
  align-content: start;
  gap: 10px;
  border: 1px solid #e0e4eb;
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.05), transparent 50%),
    #ffffff;
  color: #111318;
  padding: 16px;
  text-align: left;
  transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.nex-launchpad-grid svg {
  color: var(--nex-red);
}

.nex-launchpad-grid button > span {
  width: max-content;
  border: 1px solid rgb(227 6 19 / 0.2);
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red);
  padding: 5px 7px;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.nex-launchpad-grid strong {
  color: #111318;
  font-size: 18px;
  font-weight: 950;
}

.nex-launchpad-grid p {
  margin: 0;
  color: #69707d;
  font-size: 13px;
  line-height: 1.45;
}

.nex-pulse-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.nex-pulse-grid div,
.support-snapshot-grid div {
  display: grid;
  gap: 5px;
  background: #f7f8fa;
  padding: 12px;
}

.nex-pulse-grid span,
.support-snapshot-grid span,
.nexu-mini-list span,
.bulletin-card-list span,
.momentum-template-row span,
.recent-project-mini span {
  color: #747c89;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.nex-pulse-grid strong,
.support-snapshot-grid strong {
  color: #111318;
  font-size: 20px;
  font-weight: 950;
}

.nex-pulse-grid em {
  color: #69707d;
  font-size: 11px;
  font-style: normal;
  line-height: 1.3;
}

.nex-chat-card {
  cursor: pointer;
}

.nex-chat-card p {
  min-height: 82px;
  margin: 0;
  color: #303540;
  font-size: 18px;
  font-weight: 850;
  line-height: 1.35;
}

.nex-chat-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.nex-chat-meta span,
.nex-chat-meta strong,
.nex-chat-meta em {
  border: 1px solid #dfe2e8;
  background: #f8f9fb;
  color: #3b4049;
  padding: 7px 9px;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.support-snapshot-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 14px;
}

.bulletin-card-list button.urgent {
  border-left: 4px solid var(--nex-red);
}

.bulletin-card-list em {
  color: #8a929f;
  font-size: 10px;
  font-style: normal;
  font-weight: 850;
}

.momentum-template-row {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding-bottom: 2px;
}

.momentum-template-row button {
  flex: 0 0 155px;
  display: grid;
  min-height: 118px;
  align-content: end;
  gap: 6px;
  border: 1px solid #e0e4eb;
  background:
    linear-gradient(135deg, rgb(17 19 24 / 0.94), rgb(17 19 24 / 0.62)),
    linear-gradient(135deg, var(--accent), #ffffff);
  color: white;
  padding: 12px;
  text-align: left;
}

.momentum-template-row span {
  color: var(--accent);
}

.momentum-template-row strong {
  color: white;
  font-size: 15px;
  font-weight: 950;
  line-height: 1;
}

.nex-dashboard {
  gap: 16px;
  padding-top: 18px;
}

.nex-hero {
  border-color: rgb(255 255 255 / 0.1);
  background:
    radial-gradient(circle at 78% 18%, rgb(227 6 19 / 0.18), transparent 24%),
    radial-gradient(circle at 18% 8%, rgb(201 162 74 / 0.08), transparent 20%),
    linear-gradient(135deg, #07080b 0%, #111318 58%, #1b1f27 100%);
  box-shadow: 0 22px 58px rgb(5 5 5 / 0.18);
}

.nex-hero-glow {
  width: 300px;
  height: 300px;
  background: rgb(227 6 19 / 0.2);
  filter: blur(82px);
  animation-duration: 7s;
}

.nex-hero-content {
  grid-template-columns: minmax(0, 1fr) 240px;
  gap: 22px;
  min-height: 310px;
  padding: 30px;
}

.nex-hero-copy {
  gap: 14px;
}

.nex-hero h1 {
  font-size: clamp(38px, 4.8vw, 62px);
  line-height: 0.98;
}

.nex-hero p:not(.eyebrow) {
  max-width: 720px;
  color: rgb(255 255 255 / 0.72);
  font-size: 15px;
}

.nex-status-row span {
  border-color: rgb(255 255 255 / 0.1);
  background: rgb(255 255 255 / 0.05);
  padding: 6px 9px;
}

.nex-hero-actions {
  gap: 8px;
}

.nex-hero-actions .btn {
  min-height: 38px;
  padding: 9px 12px;
  font-size: 12px;
}

.nex-hero-agent {
  gap: 14px;
  border-color: rgb(255 255 255 / 0.1);
  background: rgb(255 255 255 / 0.055);
  padding: 18px;
}

.nex-hero-agent .brand-logo {
  width: 150px;
  max-height: 84px;
}

.nex-avatar {
  width: 64px;
  height: 64px;
  font-size: 21px;
}

.nex-hero-agent strong {
  font-size: 20px;
}

.nex-ai-bar {
  border-color: rgb(227 6 19 / 0.12);
  background:
    linear-gradient(120deg, rgb(227 6 19 / 0.055), transparent 38%),
    #ffffff;
  padding: 12px;
  box-shadow: 0 10px 28px rgb(18 22 30 / 0.045);
}

.nex-ai-bar > button {
  font-size: 15px;
}

.nex-metrics-row {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  overflow: visible;
}

.nex-metric-card {
  min-height: 122px;
  gap: 8px;
  padding: 14px;
  box-shadow: 0 10px 26px rgb(18 22 30 / 0.045);
}

.nex-metric-card:hover,
.nex-launchpad-grid button:hover,
.nex-activity-feed button:hover,
.bulletin-card-list button:hover,
.momentum-template-row button:hover {
  box-shadow: 0 16px 36px rgb(18 22 30 / 0.08);
  transform: translateY(-1px);
}

.metric-icon {
  width: 34px;
  height: 34px;
}

.metric-status {
  top: 11px;
  right: 11px;
}

.nex-metric-card strong {
  font-size: 28px;
}

.nex-widget,
.nex-launchpad {
  border-color: #e5e8ef;
  padding: 16px;
  box-shadow: 0 12px 34px rgb(18 22 30 / 0.05);
}

.nex-widget-head h2,
.nex-section-head h2 {
  font-size: 22px;
}

.nex-dashboard-grid {
  grid-template-columns: minmax(300px, 0.84fr) minmax(0, 1.16fr);
  gap: 14px;
}

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

.nex-dashboard-grid.three.lower .nex-widget:last-child {
  grid-column: 1 / -1;
}

.nex-launchpad-grid {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 10px;
}

.nex-launchpad-grid button {
  min-height: 136px;
  gap: 8px;
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.035), transparent 45%),
    #ffffff;
  padding: 14px;
}

.nex-launchpad-grid strong {
  font-size: 16px;
}

.nex-launchpad-grid p {
  font-size: 12px;
}

.nex-chat-card p {
  min-height: 58px;
  font-size: 16px;
}

.nex-pulse-grid div,
.support-snapshot-grid div,
.nex-focus-list label,
.nex-activity-feed button,
.bulletin-card-list button,
.nexu-mini-list button,
.recent-project-mini button,
.nex-launchpad-grid button,
.nex-metric-card,
.nex-widget,
.nex-launchpad,
.nex-ai-bar {
  border-radius: 8px;
}

.quick-link-icon {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red);
  margin: 0;
}

.quick-link-icon img {
  width: 100%;
  max-width: 34px;
  max-height: 28px;
  object-fit: contain;
}

.quick-link-copy {
  display: grid;
  min-width: 0;
  gap: 6px;
  margin: 0;
}

.quick-link-copy span {
  margin: 0;
}

.quick-link-card > button em {
  grid-column: 1 / -1;
  width: fit-content;
  border: 1px solid #dfe2e8;
  background: #f7f8fa;
  color: #555e6c;
  padding: 5px 8px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.quick-link-card.type-external > button em {
  border-color: rgb(227 6 19 / 0.2);
  background: rgb(227 6 19 / 0.06);
  color: #9f1119;
}

.quick-link-card.type-needs-url > button em {
  border-color: rgb(201 162 74 / 0.34);
  background: rgb(201 162 74 / 0.1);
  color: #84621f;
}

.link-admin-controls {
  border-top: 1px solid var(--nex-line);
  background: #fafafb;
}

.link-admin-controls summary {
  cursor: pointer;
  color: #4d535f;
  padding: 10px 12px;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.link-admin-controls > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr) 72px auto;
  gap: 8px;
  padding: 0 12px 12px;
}

.portal-two-column,
.support-layout,
.transaction-layout,
.agent-assist-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
  gap: 18px;
}

.agent-assist-layout {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.36fr);
  gap: 14px;
  align-items: start;
}

.nex-chat-app {
  grid-template-columns: minmax(320px, 390px) minmax(0, 1fr);
  gap: 0;
  min-height: calc(100vh - 120px);
  padding-top: 0;
  overflow: hidden;
  border: 1px solid #dfe4ee;
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.12);
}

.nex-chat-app .nex-chat-sidebar {
  gap: 0;
  padding: 0;
  overflow: auto;
  border: 0;
  border-right: 1px solid #e4e8f0;
  background: #ffffff;
  box-shadow: none;
}

.nex-chat-topbar {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 44px;
  gap: 10px;
  align-items: center;
  padding: 18px 18px 14px;
  background: linear-gradient(135deg, #111827, #25304a 62%, #e30613);
  color: #ffffff;
}

.nex-chat-brand {
  display: grid;
  justify-items: center;
  min-width: 0;
  text-align: center;
}

.nex-chat-brand strong {
  font-size: 20px;
  font-weight: 950;
}

.nex-chat-brand small {
  color: rgba(255, 255, 255, 0.72);
  font-size: 11px;
  font-weight: 850;
}

.nex-chat-icon-button {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  border: 0;
  background: rgba(255, 255, 255, 0.12);
  color: #ffffff;
}

.nex-chat-icon-button.is-static {
  cursor: default;
}

.nex-chat-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  background: #25304a;
}

.nex-chat-tabs button {
  display: grid;
  min-height: 58px;
  place-items: center;
  gap: 4px;
  border: 0;
  border-bottom: 3px solid transparent;
  background: transparent;
  color: rgba(255, 255, 255, 0.7);
  font-size: 12px;
  font-weight: 900;
}

.nex-chat-tabs button.active {
  border-bottom-color: #ffffff;
  color: #ffffff;
}

.nex-chat-tabs svg {
  width: 19px;
  height: 19px;
}

.nex-chat-search {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  margin: 16px;
  border: 1px solid #d8dde8;
  background: #f8fafc;
  padding: 12px 14px;
}

.nex-chat-search svg {
  color: #8b93a1;
}

.nex-chat-search input {
  min-width: 0;
  border: 0;
  background: transparent;
  color: #111827;
  font-size: 15px;
  outline: 0;
}

.nex-chat-notification-panel {
  display: grid;
  gap: 10px;
  margin: 0 16px 14px;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(254, 242, 242, 0.82));
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
}

.nex-chat-notification-panel strong {
  display: block;
  color: #111827;
  font-size: 13px;
  font-weight: 950;
}

.nex-chat-notification-panel small,
.nex-chat-ios-note {
  display: block;
  margin-top: 3px;
  color: #6b7280;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.35;
}

.nex-chat-preference-row,
.nex-chat-preference-selects {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.nex-chat-preference-row label {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 28px;
  padding: 5px 8px;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 999px;
  background: #fff;
  color: #374151;
  font-size: 11px;
  font-weight: 850;
}

.nex-chat-preference-selects label {
  display: grid;
  flex: 1 1 120px;
  gap: 4px;
  color: #6b7280;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.nex-chat-preference-selects select {
  min-height: 34px;
  width: 100%;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 6px;
  background: #fff;
  color: #111827;
  padding: 0 8px;
  font-size: 12px;
  font-weight: 850;
}

.nex-chat-app .nex-chat-section-heading {
  padding: 11px 18px;
  background: #edf2ff;
  color: #7a8495;
  letter-spacing: 0.06em;
}

.nex-chat-app .soft-heading {
  margin-top: 8px;
  background: #f5f7fb;
}

.chat-list-modern {
  gap: 0;
}

.nex-chat-list-row {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 74px;
  width: 100%;
  border: 0;
  border-bottom: 1px solid #edf0f5;
  background: #ffffff;
  color: #1f2937;
  padding: 12px 16px;
  text-align: left;
}

.nex-chat-room-list .nex-chat-list-row {
  border-radius: 0;
}

.nex-chat-list-row.active {
  background: #fff5f6;
  box-shadow: inset 4px 0 0 var(--nex-red);
}

.nex-chat-list-row.unread {
  background: linear-gradient(135deg, rgba(227, 6, 19, 0.08), #ffffff 68%);
}

.nex-chat-list-row.unread .nex-chat-row-copy strong {
  color: #111827;
}

.nex-chat-list-row.unread .nex-chat-row-copy small {
  color: #374151;
  font-weight: 850;
}

.nex-chat-list-row.admin-only {
  background: linear-gradient(90deg, #ffffff, #fff9fa);
}

.nex-chat-row-icon,
.nex-chat-list-row .mini-avatar {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 50%;
  background: #111827;
  color: #ffffff;
}

.nex-chat-list-row.admin-only .nex-chat-row-icon {
  background: var(--nex-red);
}

.nex-chat-row-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.nex-chat-row-copy strong {
  min-width: 0;
  overflow: hidden;
  color: #1f2937;
  font-size: 16px;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nex-chat-row-copy small {
  min-width: 0;
  overflow: hidden;
  color: #8a93a3;
  font-size: 12px;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nex-chat-row-meta {
  display: grid;
  justify-items: end;
  gap: 4px;
  min-width: 50px;
}

.nex-chat-row-meta small {
  color: #969daa;
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}

.nex-chat-row-meta em {
  display: inline-grid;
  min-width: 24px;
  height: 24px;
  place-items: center;
  border-radius: 999px;
  background: var(--nex-red);
  color: #ffffff;
  padding: 0 7px;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
}

.nex-chat-row-meta b {
  border: 1px solid rgba(227, 6, 19, 0.2);
  border-radius: 999px;
  background: rgba(227, 6, 19, 0.08);
  color: var(--nex-red);
  padding: 3px 7px;
  font-size: 10px;
  font-weight: 950;
}

.nex-chat-empty-list {
  margin: 0;
  padding: 18px;
  color: #8a93a3;
  font-size: 13px;
  font-weight: 800;
}

.nex-chat-app .chat-dm-filter {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 12px 16px;
}

.nex-chat-app .chat-dm-filter button {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  background: #f8fafc;
  white-space: nowrap;
}

.nex-chat-app .chat-dm-filter button.active {
  border-color: rgba(227, 6, 19, 0.35);
  background: #fff5f6;
  color: var(--nex-red);
}

.nex-chat-app .nex-channel-create {
  padding: 12px 16px;
}

.nex-chat-app .nex-channel-create input {
  min-height: 38px;
  border-radius: 0;
}

.nex-chat-app .nex-channel-create button {
  min-height: 38px;
}

.nex-chat-app .nex-chat-main {
  border: 0;
  background: #f5f7fb;
  box-shadow: none;
}

.nex-chat-app .nex-chat-header {
  min-height: 92px;
  background: #ffffff;
}

.nex-chat-app .nex-chat-header h3 {
  font-size: clamp(22px, 3vw, 30px);
}

.nex-chat-app .nex-chat-stream {
  min-height: 460px;
  background: linear-gradient(180deg, #f7f9fc, #eef2f7);
}

.nex-chat-readonly-note {
  display: flex;
  gap: 9px;
  align-items: center;
  border: 1px solid rgba(227, 6, 19, 0.18);
  background: #fff5f6;
  color: #8f1019;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 850;
}

.nex-chat-composer.composer-disabled textarea,
.nex-chat-composer.composer-disabled .chat-attach-button,
.nex-chat-composer.composer-disabled .emoji-row button {
  opacity: 0.55;
  cursor: not-allowed;
}

.agent-intel-page {
  display: grid;
  gap: 16px;
}

.agent-intel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background:
    linear-gradient(120deg, rgba(227, 6, 19, 0.08), transparent 34%),
    #ffffff;
  padding: 18px;
  box-shadow: 0 16px 42px rgba(17, 19, 24, 0.06);
}

.agent-intel-header h2 {
  margin: 0;
  color: #101217;
  font-size: clamp(25px, 4vw, 38px);
  font-weight: 950;
  line-height: 1;
}

.agent-intel-header p:not(.eyebrow) {
  max-width: 820px;
  margin: 7px 0 0;
  color: #5d6674;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.45;
}

.agent-intel-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.agent-intel-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(155px, 1fr));
  gap: 10px;
}

.agent-intel-summary-card {
  display: grid;
  gap: 7px;
  min-height: 122px;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background: #ffffff;
  padding: 14px;
  box-shadow: 0 12px 28px rgba(17, 19, 24, 0.045);
}

.agent-intel-summary-card svg {
  color: var(--nex-red);
}

.agent-intel-summary-card span,
.agent-intel-summary-card small {
  color: #657081;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.agent-intel-summary-card strong {
  color: #101217;
  font-size: 27px;
  font-weight: 950;
  line-height: 1;
}

.agent-intel-summary-card small {
  letter-spacing: 0;
  text-transform: none;
}

.agent-intel-filter-shell,
.agent-intel-table-shell {
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 16px 36px rgba(17, 19, 24, 0.055);
}

.agent-intel-filter-shell {
  display: grid;
  gap: 12px;
  padding: 14px;
}

.agent-intel-preset-row,
.agent-intel-toggle-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.agent-intel-preset-row button {
  min-height: 34px;
  border: 1px solid rgba(17, 19, 24, 0.1);
  border-radius: 999px;
  background: #f8fafc;
  color: #343b47;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 900;
}

.agent-intel-preset-row button.active {
  border-color: rgba(227, 6, 19, 0.34);
  background: #fff4f5;
  color: var(--nex-red);
}

.agent-intel-filter-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 10px;
}

.agent-intel-filter-grid .field {
  min-width: 0;
}

.agent-intel-advanced-filters {
  border-top: 1px solid rgba(17, 19, 24, 0.08);
  padding-top: 10px;
}

.agent-intel-advanced-filters summary {
  width: fit-content;
  cursor: pointer;
  color: #111318;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.agent-intel-advanced-filters[open] summary {
  margin-bottom: 12px;
}

.agent-intel-toggle-row label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 999px;
  background: #f8fafc;
  padding: 8px 11px;
  color: #3c4450;
  font-size: 12px;
  font-weight: 850;
}

.agent-intel-table-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-bottom: 1px solid rgba(17, 19, 24, 0.08);
  padding: 13px 16px;
}

.agent-intel-table-head div {
  display: flex;
  align-items: baseline;
  gap: 7px;
}

.agent-intel-table-head strong {
  color: #101217;
  font-size: 22px;
  font-weight: 950;
}

.agent-intel-table-head span,
.agent-intel-table-head small {
  color: #6a7381;
  font-size: 12px;
  font-weight: 850;
}

.agent-intel-table-scroll {
  overflow-x: auto;
  padding-bottom: 4px;
}

.agent-intel-table {
  width: 100%;
  min-width: 2050px;
  border-collapse: collapse;
}

.agent-intel-table th,
.agent-intel-table td {
  border-bottom: 1px solid rgba(17, 19, 24, 0.075);
  padding: 10px 11px;
  text-align: left;
  vertical-align: middle;
}

.agent-intel-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #f8fafc;
}

.agent-intel-table th button {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border: 0;
  background: transparent;
  color: #596273;
  padding: 0;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.agent-intel-table td {
  color: #242b36;
  font-size: 12px;
  font-weight: 780;
  line-height: 1.35;
}

.agent-intel-table tbody tr:hover {
  background: #fffafb;
}

.agent-intel-click-row {
  cursor: pointer;
}

.agent-intel-click-row:hover td:first-child {
  box-shadow: inset 4px 0 0 var(--nex-red);
}

.agent-intel-agent-cell {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  min-width: 230px;
  align-items: center;
  gap: 10px;
}

.agent-intel-agent-cell span {
  display: grid;
  gap: 2px;
}

.agent-intel-agent-cell strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.agent-intel-agent-cell small {
  overflow: hidden;
  color: #667081;
  font-size: 11px;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.agent-intel-badge,
.agent-intel-soft-badge {
  display: inline-flex;
  min-height: 25px;
  align-items: center;
  gap: 5px;
  border-radius: 999px;
  padding: 4px 9px;
  font-size: 11px;
  font-weight: 950;
  white-space: nowrap;
}

.agent-intel-badge small {
  font-size: 10px;
  opacity: 0.75;
}

.agent-intel-soft-badge {
  border: 1px solid rgba(17, 19, 24, 0.08);
  background: #f4f6f8;
  color: #303844;
}

.agent-intel-badge.status-active,
.agent-intel-badge.cap-over-cap,
.agent-intel-soft-badge.level-high {
  border: 1px solid rgba(20, 132, 84, 0.22);
  background: #eefaf5;
  color: #0f7a4d;
}

.agent-intel-badge.status-pending,
.agent-intel-badge.cap-near-cap,
.agent-intel-soft-badge.level-medium {
  border: 1px solid rgba(201, 162, 74, 0.28);
  background: #fff9e9;
  color: #8a6819;
}

.agent-intel-badge.status-inactive,
.agent-intel-badge.status-offboarded,
.agent-intel-soft-badge.level-none {
  border: 1px solid rgba(95, 103, 116, 0.2);
  background: #f2f4f7;
  color: #596273;
}

.agent-intel-badge.cap-no-cap,
.agent-intel-badge.cap-in-progress,
.agent-intel-soft-badge.level-low {
  border: 1px solid rgba(227, 6, 19, 0.16);
  background: #fff5f6;
  color: var(--nex-red);
}

.agent-intel-staff-shell {
  overflow: hidden;
}

.agent-intel-staff-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 10px;
  padding: 14px;
}

.agent-intel-staff-grid article {
  display: grid;
  gap: 9px;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background: #ffffff;
  padding: 12px;
}

.agent-intel-staff-grid article.online {
  border-color: rgba(20, 132, 84, 0.22);
  background: linear-gradient(135deg, rgba(20, 132, 84, 0.07), transparent 45%), #ffffff;
}

.agent-intel-staff-grid article > div {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 9px;
}

.agent-intel-staff-grid span {
  display: grid;
  gap: 2px;
}

.agent-intel-staff-grid strong {
  color: #111318;
  font-weight: 950;
}

.agent-intel-staff-grid small,
.agent-intel-staff-grid p {
  margin: 0;
  color: #667081;
  font-size: 12px;
  font-weight: 780;
  line-height: 1.42;
}

.agent-intel-staff-grid p strong {
  display: block;
  color: #2c3440;
  font-size: 11px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.agent-intel-detail-drawer {
  position: fixed;
  inset: 0;
  z-index: 85;
  display: flex;
  justify-content: flex-end;
}

.agent-intel-detail-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(17, 19, 24, 0.42);
  backdrop-filter: blur(3px);
}

.agent-intel-detail-panel {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  width: min(760px, 100%);
  max-height: 100vh;
  background: #f7f9fc;
  box-shadow: -20px 0 55px rgba(17, 19, 24, 0.22);
}

.agent-intel-detail-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid rgba(17, 19, 24, 0.08);
  background: #ffffff;
  padding: 18px;
}

.agent-intel-detail-scroll {
  display: grid;
  gap: 12px;
  overflow-y: auto;
  padding: 14px;
}

.agent-intel-report-section {
  display: grid;
  gap: 12px;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background: #ffffff;
  padding: 14px;
  box-shadow: 0 14px 30px rgba(17, 19, 24, 0.045);
}

.agent-intel-report-title h3,
.agent-intel-report-title h4 {
  margin: 0;
  color: #101217;
  font-weight: 950;
  line-height: 1.05;
}

.agent-intel-report-title h3 {
  font-size: 24px;
}

.agent-intel-report-title h4 {
  font-size: 16px;
}

.agent-intel-report-title span {
  display: block;
  margin-top: 6px;
  color: #667081;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}

.agent-intel-report-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 10px;
}

.agent-intel-report-grid article {
  display: grid;
  gap: 6px;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background: #f8fafc;
  padding: 12px;
}

.agent-intel-report-grid svg {
  color: var(--nex-red);
}

.agent-intel-report-grid span {
  color: #667081;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.agent-intel-report-grid strong {
  color: #111318;
  font-size: 18px;
  font-weight: 950;
}

.agent-intel-report-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.agent-intel-report-list span,
.agent-intel-next-actions span,
.agent-intel-next-actions em {
  display: block;
  border: 1px solid rgba(17, 19, 24, 0.07);
  border-radius: 8px;
  background: #fbfcfd;
  padding: 9px 10px;
  color: #404856;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.42;
}

.agent-intel-report-list strong,
.agent-intel-next-actions strong {
  display: block;
  color: #111318;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.agent-intel-next-actions {
  display: grid;
  gap: 8px;
}

.agent-intel-next-actions > strong {
  margin-top: 2px;
}

.agent-intel-next-actions em {
  border-color: rgba(227, 6, 19, 0.16);
  background: #fff5f6;
  color: #8f1019;
  font-style: normal;
}

.agent-intel-detail-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

@media (max-width: 980px) {
  .agent-intel-header {
    align-items: flex-start;
    flex-direction: column;
  }

  .agent-intel-actions {
    justify-content: flex-start;
  }

  .agent-intel-report-list {
    grid-template-columns: 1fr;
  }

  .nex-chat-app {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .nex-chat-app .nex-chat-sidebar {
    max-height: none;
    border-right: 0;
    border-bottom: 1px solid #e4e8f0;
  }

  .nex-chat-app .nex-chat-main {
    min-height: 620px;
  }

  .nex-chat-app .nex-chat-stream {
    min-height: 360px;
  }
}

@media (max-width: 620px) {
  .agent-intel-header,
  .agent-intel-filter-shell,
  .agent-intel-table-head {
    padding: 12px;
  }

  .agent-intel-actions .btn {
    width: 100%;
  }

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

  .agent-intel-summary-card {
    min-height: 112px;
  }

  .agent-intel-detail-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .agent-intel-table-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .nex-chat-app {
    border-radius: 0;
  }

  .nex-chat-topbar {
    padding-top: 16px;
  }

  .nex-chat-tabs button {
    min-height: 52px;
    font-size: 11px;
  }

  .nex-chat-list-row {
    min-height: 68px;
    grid-template-columns: 38px minmax(0, 1fr) auto;
  }

  .nex-chat-row-icon,
  .nex-chat-list-row .mini-avatar {
    width: 38px;
    height: 38px;
  }

  .nex-chat-app .nex-chat-header {
    align-items: flex-start;
    flex-direction: column;
  }

  .nex-chat-app .composer-row {
    grid-template-columns: 40px minmax(0, 1fr);
  }

  .nex-chat-app .composer-row .btn {
    grid-column: 1 / -1;
    width: 100%;
  }
}

.feed-list,
.ticket-list,
.guide-list {
  display: grid;
  gap: 10px;
}

.compact-feed article {
  min-height: 116px;
}

.mini-project-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
}

.portal-toolbar,
.admin-form-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  align-items: end;
}

.nexu-external-card,
.nexu-internal-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border: 1px solid rgb(227 6 19 / 0.18);
  background:
    linear-gradient(120deg, rgb(17 19 24 / 0.96), rgb(43 47 56 / 0.92)),
    #111318;
  color: white;
  padding: 22px;
  box-shadow: 0 18px 48px rgb(18 22 30 / 0.14);
}

.nexu-external-card h3,
.nexu-internal-card h3 {
  margin: 4px 0 8px;
  color: white;
  font-size: 24px;
  font-weight: 950;
}

.nexu-external-card p:not(.eyebrow),
.nexu-internal-card p:not(.eyebrow) {
  max-width: 760px;
  margin: 0;
  color: rgb(255 255 255 / 0.7);
  font-size: 13px;
  line-height: 1.5;
}

.nexu-internal-card > span {
  flex: 0 0 auto;
  border: 1px solid rgb(39 209 127 / 0.24);
  background: rgb(39 209 127 / 0.1);
  color: #bdf4d4;
  padding: 8px 10px;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.nexu-player-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.55fr);
  gap: 16px;
}

.nexu-player-panel {
  display: grid;
  min-height: 420px;
  place-items: center;
  overflow: hidden;
  border: 1px solid #101217;
  background:
    linear-gradient(135deg, #111318, #24272d);
  box-shadow: 0 22px 58px rgb(18 22 30 / 0.18);
}

.nexu-player-panel iframe {
  width: 100%;
  height: 100%;
  min-height: 420px;
  border: 0;
  background: #050505;
}

.nexu-now-playing {
  display: grid;
  align-content: start;
  gap: 12px;
  border: 1px solid var(--nex-line);
  background: white;
  padding: 18px;
  box-shadow: 0 16px 44px rgb(18 22 30 / 0.05);
}

.nexu-now-playing h3 {
  margin: 0;
  color: #111318;
  font-size: 24px;
  font-weight: 950;
  line-height: 1.02;
}

.nexu-now-playing p:not(.eyebrow) {
  margin: 0;
  color: #5f6673;
  font-size: 13px;
  line-height: 1.55;
}

.nexu-player-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.nexu-player-meta span {
  border: 1px solid #dfe2e8;
  background: #f7f8fa;
  color: #4d535f;
  padding: 6px 8px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.bulk-video-import {
  display: grid;
  grid-column: 1 / -1;
  gap: 10px;
  border: 1px dashed rgb(227 6 19 / 0.32);
  background: rgb(227 6 19 / 0.04);
  padding: 14px;
}

.admin-form-grid .field:has(textarea),
.admin-form-grid .field textarea,
.admin-form-grid .field:nth-last-child(1) {
  grid-column: 1 / -1;
}

.admin-compose {
  display: grid;
  gap: 14px;
}

.check-field {
  display: inline-flex;
  min-height: 39px;
  align-items: center;
  gap: 8px;
  color: #4d535f;
  font-size: 12px;
  font-weight: 850;
}

.announcement-card {
  display: grid;
  gap: 8px;
}

.announcement-edit-grid {
  display: grid;
  gap: 10px;
}

.announcement-meta,
.row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.announcement-meta em,
.resource-card em,
.ticket-list em {
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red);
  padding: 5px 7px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ticket-list article {
  display: grid;
  gap: 10px;
}

.ticket-list article.selected {
  border-color: rgb(227 6 19 / 0.34);
  box-shadow: 0 0 0 3px rgb(227 6 19 / 0.08);
}

.ticket-summary-button {
  display: grid;
  gap: 7px;
  border: 0;
  background: transparent;
  color: inherit;
  padding: 0;
  text-align: left;
}

.ticket-summary-button strong {
  color: #111318;
  font-size: 16px;
  font-weight: 950;
}

.ticket-detail-card {
  display: grid;
  gap: 14px;
  margin-top: 16px;
  border: 1px solid var(--nex-line);
  background: #fafafb;
  padding: 16px;
}

.ticket-detail-head {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 12px;
}

.ticket-detail-head h3 {
  margin: 3px 0 0;
  color: #111318;
  font-size: 20px;
  font-weight: 950;
}

.ticket-detail-head > span {
  background: #111318;
  color: white;
  padding: 6px 9px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ticket-detail-card dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}

.ticket-detail-card dt {
  color: #747b87;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.ticket-detail-card dd {
  margin: 3px 0 0;
  color: #17191d;
  font-size: 13px;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.ticket-detail-description {
  border-top: 1px solid var(--nex-line);
  padding-top: 12px;
}

.ticket-detail-description strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.ticket-attachment {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 8px;
  border: 1px solid #d9dde5;
  background: white;
  padding: 8px 10px;
  color: #3d444f;
  font-size: 12px;
  font-weight: 850;
}

.category-pills,
.support-topic-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.category-pills button,
.support-topic-list span {
  border: 1px solid #d9dde5;
  background: white;
  color: #4d535f;
  padding: 8px 10px;
  font-size: 12px;
  font-weight: 850;
}

.category-pills button.selected {
  border-color: #111318;
  background: #111318;
  color: white;
}

.resource-card {
  display: grid;
  gap: 9px;
}

.resource-card.selected {
  border-color: rgb(227 6 19 / 0.38);
  box-shadow: 0 0 0 3px rgb(227 6 19 / 0.08), 0 16px 44px rgb(18 22 30 / 0.06);
}

.quick-link-card {
  position: relative;
  padding: 0;
}

.quick-link-card .icon-btn {
  position: absolute;
  right: 10px;
  top: 10px;
}

.link-admin-controls {
  border-top: 1px solid var(--nex-line);
  background: #fafafb;
}

.link-admin-controls > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr) 72px auto;
  gap: 8px;
  padding: 0 12px 12px;
}

.link-admin-controls input {
  min-width: 0;
  border: 1px solid #d9dde5;
  background: white;
  padding: 8px 9px;
  color: #17191d;
  font-size: 12px;
  font-weight: 750;
}

.quick-link-card .link-admin-controls .icon-btn {
  position: static;
}

.guide-list button {
  display: grid;
  gap: 4px;
  border: 1px solid var(--nex-line);
  background: #fafafb;
  padding: 12px;
  text-align: left;
}

.guide-list button.selected {
  border-color: var(--nex-red);
  background: rgb(227 6 19 / 0.06);
}

.guide-list button strong {
  color: #111318;
  font-size: 15px;
  font-weight: 950;
}

.guide-admin-card {
  display: grid;
  gap: 10px;
  margin-top: 10px;
  border: 1px solid rgb(227 6 19 / 0.18);
  background: rgb(227 6 19 / 0.04);
  padding: 12px;
}

.guide-admin-card h4 {
  margin: 0;
  color: #111318;
  font-size: 15px;
  font-weight: 950;
}

.guide-detail {
  display: grid;
  gap: 18px;
}

.guide-detail h3 {
  margin: 0;
  font-size: 32px;
  font-weight: 950;
}

.guide-detail h4 {
  margin: 0 0 8px;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.guide-detail ul {
  margin: 0;
  padding-left: 19px;
  color: #3d444f;
  line-height: 1.6;
}

.guide-overview-card {
  display: grid;
  gap: 14px;
  border: 1px solid rgb(227 6 19 / 0.16);
  background:
    linear-gradient(120deg, rgb(227 6 19 / 0.06), transparent 42%),
    #ffffff;
  padding: 16px;
}

.guide-overview-card p {
  margin: 0;
  color: #4e5662;
  font-size: 14px;
  line-height: 1.6;
}

.guide-priority-badge {
  display: inline-flex;
  width: fit-content;
  border-radius: 999px;
  background: #111318;
  color: white;
  padding: 7px 10px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.guide-metrics-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.guide-metrics-row span {
  display: grid;
  gap: 3px;
  border: 1px solid rgb(17 19 24 / 0.08);
  background: rgb(255 255 255 / 0.82);
  padding: 10px;
  color: #5b6471;
  font-size: 11px;
  font-weight: 850;
}

.guide-metrics-row strong {
  color: var(--nex-red);
  font-size: 22px;
  font-weight: 950;
  line-height: 1;
}

.guide-next-action,
.guide-reminder-strip {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  border: 1px solid rgb(17 19 24 / 0.08);
  background: #f8fafc;
  padding: 13px;
}

.guide-next-action svg,
.guide-reminder-strip svg {
  color: var(--nex-red);
}

.guide-next-action strong,
.guide-reminder-strip strong {
  display: block;
  margin-bottom: 4px;
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.guide-playbook-section {
  border: 1px solid var(--nex-line);
  background: #fff;
  padding: 14px;
}

.guide-step-list {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  counter-reset: guide-step;
  list-style: none;
}

.guide-step-list li {
  position: relative;
  min-height: 38px;
  padding: 8px 10px 8px 44px;
  border: 1px solid rgb(17 19 24 / 0.075);
  background: #fafafb;
  color: #333b46;
  line-height: 1.45;
}

.guide-step-list li::before {
  counter-increment: guide-step;
  content: counter(guide-step);
  position: absolute;
  left: 10px;
  top: 8px;
  display: grid;
  width: 24px;
  height: 24px;
  place-items: center;
  border-radius: 999px;
  background: var(--nex-red);
  color: white;
  font-size: 11px;
  font-weight: 950;
}

.guide-reminder-strip ul {
  margin-top: 7px;
}

.guide-callouts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 12px;
}

.guide-callouts article {
  border: 1px solid var(--nex-line);
  background: #fafafb;
  padding: 12px;
}

.guide-callouts strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.guide-callouts p {
  color: #5f6673;
  font-size: 13px;
  line-height: 1.5;
}

.crm-hero {
  background:
    linear-gradient(100deg, rgb(0 0 0 / 0.9), rgb(0 0 0 / 0.58)),
    radial-gradient(circle at 80% 12%, rgb(201 162 74 / 0.38), transparent 34%),
    linear-gradient(135deg, var(--nex-red), #111318);
}

.crm-roadmap-card {
  min-height: 170px;
}

.native-readiness-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
}

.native-readiness-list article {
  border: 1px solid var(--nex-line);
  background: #fafafb;
  padding: 14px;
}

.native-readiness-list strong,
.native-readiness-list span {
  display: block;
}

.native-readiness-list strong {
  color: #111318;
  font-size: 14px;
  font-weight: 950;
}

.native-readiness-list span {
  margin-top: 6px;
  color: #5f6673;
  font-size: 13px;
  line-height: 1.5;
}

.crm-module {
  gap: 18px;
}

.transactions-module {
  gap: 18px;
}

.transaction-hero {
  min-height: 250px;
  background:
    linear-gradient(105deg, rgb(5 5 6 / 0.92), rgb(20 22 27 / 0.72)),
    radial-gradient(circle at 82% 18%, rgb(227 6 19 / 0.44), transparent 32%),
    linear-gradient(135deg, #111318, #4a1015);
}

.transaction-metrics-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}

.transaction-metric-card,
.transaction-card,
.transaction-row-card,
.transaction-template-card {
  border: 1px solid var(--nex-line);
  background: #ffffff;
  box-shadow: 0 14px 34px rgb(5 5 5 / 0.06);
}

.transaction-metric-card {
  display: grid;
  gap: 8px;
  min-height: 112px;
  padding: 15px;
}

.transaction-metric-card svg {
  color: var(--nex-red);
}

.transaction-metric-card span,
.transaction-card small,
.transaction-row-card span,
.transaction-template-card span,
.transaction-template-card small {
  color: #69717e;
  font-size: 12px;
  font-weight: 800;
}

.transaction-metric-card strong {
  color: #111318;
  font-size: 30px;
  font-weight: 950;
}

.commission-page,
.nps-page {
  gap: 18px;
}

.commission-hero,
.nps-hero {
  min-height: 245px;
  background:
    linear-gradient(105deg, rgb(5 5 6 / 0.91), rgb(17 20 27 / 0.74)),
    radial-gradient(circle at 84% 12%, rgb(227 6 19 / 0.42), transparent 34%),
    radial-gradient(circle at 58% 86%, rgb(255 255 255 / 0.11), transparent 30%),
    linear-gradient(135deg, #101218, #3e0d12);
}

.commission-plan-card {
  display: grid;
  gap: 8px;
  min-width: 260px;
  border: 1px solid rgb(255 255 255 / 0.18);
  background: rgb(255 255 255 / 0.09);
  padding: 18px;
  color: white;
}

.commission-plan-card span,
.commission-plan-card small {
  color: rgb(255 255 255 / 0.7);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.commission-plan-card strong {
  font-size: 22px;
  font-weight: 950;
  line-height: 1.15;
}

.commission-admin-filter {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 360px);
  gap: 18px;
  align-items: end;
}

.commission-admin-filter h3,
.commission-admin-filter p {
  margin: 0;
}

.commission-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.commission-summary-card {
  display: grid;
  gap: 8px;
  min-height: 124px;
  border: 1px solid var(--nex-line);
  background: linear-gradient(135deg, #ffffff, #f8fafc);
  box-shadow: 0 14px 34px rgb(5 5 5 / 0.06);
  padding: 16px;
}

.commission-summary-card svg {
  color: var(--nex-red);
}

.commission-summary-card span {
  color: #687180;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.commission-summary-card strong {
  color: #111318;
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 950;
}

.commission-detail-grid {
  display: grid;
  grid-template-columns: minmax(280px, 0.85fr) minmax(0, 1.15fr);
  gap: 18px;
}

.commission-plan-detail,
.commission-deals-panel,
.commission-team-panel {
  overflow: hidden;
}

.progress-track.large {
  height: 14px;
  margin: 10px 0 16px;
}

.commission-plan-detail > p {
  color: #58606d;
  line-height: 1.6;
}

.commission-plan-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

.commission-plan-stats span {
  display: grid;
  gap: 4px;
  border: 1px solid var(--nex-line);
  background: #fafafb;
  padding: 12px;
  color: #111318;
  font-size: 14px;
  font-weight: 950;
}

.commission-plan-stats strong {
  color: #69717e;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.commission-deal-list {
  display: grid;
  gap: 10px;
}

.commission-deal-list article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border: 1px solid var(--nex-line);
  background: #ffffff;
  padding: 12px;
}

.commission-deal-list strong,
.commission-deal-list span {
  display: block;
  overflow-wrap: anywhere;
}

.commission-deal-list strong {
  color: #111318;
  font-size: 14px;
  font-weight: 950;
}

.commission-deal-list span {
  color: #6b7280;
  font-size: 12px;
  font-weight: 800;
  margin-top: 4px;
}

.commission-deal-list article > div:last-child {
  min-width: 150px;
  text-align: right;
}

.commission-team-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
}

.commission-team-grid button {
  display: grid;
  gap: 8px;
  border: 1px solid var(--nex-line);
  background: #fff;
  cursor: pointer;
  padding: 12px;
  text-align: left;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.commission-team-grid button:hover {
  border-color: rgb(227 6 19 / 0.28);
  box-shadow: 0 14px 30px rgb(227 6 19 / 0.08);
  transform: translateY(-1px);
}

.commission-team-grid strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.commission-team-grid span {
  color: #69717e;
  font-size: 12px;
  font-weight: 850;
}

.support-panel-copy {
  margin: 0 0 14px;
  color: #5e6674;
  font-size: 13px;
  line-height: 1.55;
}

.agent-assist-tip-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  margin-top: 16px;
  border: 1px solid rgb(227 6 19 / 0.14);
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.055), transparent 52%),
    #fff;
  padding: 14px;
}

.agent-assist-tip-card svg {
  color: var(--nex-red);
}

.agent-assist-tip-card strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.agent-assist-tip-card p {
  margin: 5px 0 0;
  color: #5d6672;
  font-size: 13px;
  line-height: 1.5;
}

.check-field.private-lead-toggle {
  align-items: flex-start;
  border: 1px solid rgb(227 6 19 / 0.18);
  border-radius: 8px;
  background: linear-gradient(135deg, rgb(227 6 19 / 0.08), #fff 55%);
  color: #171b22;
  flex-direction: column;
  gap: 4px;
  grid-column: 1 / -1;
  padding: 10px 12px 10px 36px;
  position: relative;
}

.check-field.private-lead-toggle input {
  left: 12px;
  position: absolute;
  top: 13px;
}

.check-field.private-lead-toggle span {
  color: #69717d;
  display: block;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.4;
}

.nps-disclaimer {
  display: flex;
  align-items: center;
  gap: 12px;
  border-color: rgb(227 6 19 / 0.22);
  background: linear-gradient(135deg, #fff, #fff7f7);
}

.nps-disclaimer svg {
  flex: 0 0 auto;
  color: var(--nex-red);
}

.nps-disclaimer p {
  margin: 0;
  color: #343944;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.5;
}

.nps-summary-grid .commission-summary-card:last-child strong {
  font-size: clamp(17px, 2vw, 24px);
}

.nps-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.65fr);
  gap: 18px;
}

.nps-layout.secondary {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.78fr);
}

.nps-calculator-card,
.nps-settings-card,
.nps-performance-card,
.nps-workflow-card,
.nps-agent-summary,
.nps-sponsor-map,
.nps-profile-editor,
.nps-data-model-card {
  overflow: hidden;
}

.nps-agent-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
  gap: 18px;
  align-items: end;
  background:
    linear-gradient(135deg, #ffffff, #f8fafc),
    radial-gradient(circle at 94% 14%, rgb(227 6 19 / 0.11), transparent 28%);
}

.nps-agent-summary h3,
.nps-agent-summary p,
.nps-sponsor-map h3,
.nps-sponsor-map p {
  margin: 0;
}

.nps-agent-summary p:not(.eyebrow),
.nps-sponsor-map p {
  margin-top: 7px;
  color: #5f6876;
  line-height: 1.55;
}

.nps-network-path {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 16px;
}

.nps-network-path span,
.nps-sponsor-lanes > div {
  border: 1px solid rgb(18 22 30 / 0.08);
  background: rgb(255 255 255 / 0.82);
  box-shadow: 0 10px 26px rgb(18 22 30 / 0.05);
  padding: 12px;
  color: #111318;
  font-size: 13px;
  font-weight: 900;
}

.nps-network-path strong,
.nps-sponsor-lanes strong {
  display: block;
  margin-bottom: 4px;
  color: #717987;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.nps-sponsor-map {
  display: grid;
  grid-template-columns: minmax(260px, 0.75fr) minmax(0, 1.25fr);
  gap: 18px;
  align-items: start;
  border-color: rgb(227 6 19 / 0.16);
  background:
    radial-gradient(circle at 7% 10%, rgb(227 6 19 / 0.1), transparent 27%),
    linear-gradient(135deg, #ffffff, #f9fafb);
}

.nps-sponsor-lanes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.nps-sponsor-lanes > div {
  display: grid;
  gap: 8px;
  align-content: start;
}

.nps-sponsor-lanes span {
  display: block;
  border-left: 3px solid var(--nex-red);
  background: #f7f8fa;
  padding: 8px 10px;
  color: #202631;
  font-size: 12px;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.nps-calculator-fields {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.nps-vesting-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 4px 0 16px;
}

.nps-vesting-strip span,
.nps-setting-list span,
.nps-performance-grid span,
.nps-model-chips span {
  border: 1px solid var(--nex-line);
  background: #fafafb;
  padding: 12px;
  color: #69717e;
  font-size: 12px;
  font-weight: 850;
}

.nps-vesting-strip strong,
.nps-setting-list strong,
.nps-performance-grid strong {
  display: block;
  color: #111318;
  font-size: 14px;
  font-weight: 950;
  margin-bottom: 3px;
}

.nps-tier-table {
  display: grid;
  gap: 8px;
}

.nps-tier-row {
  display: grid;
  grid-template-columns: 76px minmax(135px, 0.9fr) minmax(150px, 1.1fr) minmax(150px, 1fr) minmax(160px, 1fr);
  gap: 10px;
  align-items: center;
  border: 1px solid var(--nex-line);
  background: #ffffff;
  padding: 10px 12px;
  color: #626a76;
  font-size: 12px;
  font-weight: 850;
}

.nps-tier-row strong {
  color: #111318;
  font-weight: 950;
}

.nps-tier-row span:nth-child(3) {
  color: var(--nex-red);
  font-weight: 950;
}

.nps-setting-list,
.nps-performance-grid,
.nps-workflow-list,
.nps-model-chips {
  display: grid;
  gap: 10px;
}

.nps-workflow-list span {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  border: 1px solid var(--nex-line);
  background: #fff;
  padding: 11px 12px;
  color: #343944;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}

.nps-workflow-list svg {
  flex: 0 0 auto;
  color: var(--nex-red);
  margin-top: 1px;
}

.nps-performance-grid {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.nps-reward-form {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}

.nps-reward-form .field:nth-child(9),
.nps-reward-form .field:nth-child(10),
.nps-reward-form-actions {
  grid-column: 1 / -1;
}

.nps-reward-form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.nps-ledger-table,
.nps-reward-activity-list {
  display: grid;
  gap: 10px;
}

.nps-ledger-row {
  display: grid;
  grid-template-columns: minmax(180px, 1.3fr) minmax(110px, 0.6fr) minmax(150px, 1fr) auto;
  gap: 12px;
  align-items: center;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 16px;
  background: #ffffff;
  padding: 12px;
}

.nps-ledger-row.removed {
  opacity: 0.62;
}

.nps-ledger-row strong,
.nps-ledger-row span,
.nps-reward-activity-list strong,
.nps-reward-activity-list span,
.nps-reward-activity-list small {
  display: block;
}

.nps-ledger-row strong {
  color: #111827;
  font-size: 14px;
  font-weight: 950;
}

.nps-ledger-row span,
.nps-reward-activity-list span,
.nps-reward-activity-list small {
  color: #6b7280;
  font-size: 12px;
  font-weight: 800;
}

.nps-activity-chart {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  align-items: end;
  margin-bottom: 18px;
}

.nps-activity-chart span {
  display: grid;
  align-content: end;
  gap: 6px;
  min-height: 96px;
  border: 1px solid rgba(227, 6, 19, 0.14);
  border-radius: 14px;
  background:
    linear-gradient(to top, rgba(227, 6, 19, 0.22) calc(var(--value) * 1%), transparent calc(var(--value) * 1%)),
    #fff7f7;
  color: #7f1d1d;
  padding: 10px;
  text-align: center;
  font-size: 11px;
  font-weight: 900;
}

.nps-activity-chart strong {
  color: #111827;
  font-size: 22px;
}

.nps-reward-activity-list article {
  border-left: 3px solid var(--nex-red);
  border-radius: 12px;
  background: #f9fafb;
  padding: 10px 12px;
}

.nps-data-model-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.95fr);
  gap: 18px;
  align-items: center;
}

.nps-data-model-card h3,
.nps-data-model-card p {
  margin: 0;
}

.nps-data-model-card p:not(.eyebrow) {
  margin-top: 8px;
  color: #69717e;
  line-height: 1.55;
}

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

.nps-model-chips span {
  color: #111318;
  font-weight: 950;
  text-align: center;
}

.transaction-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 260px;
  gap: 12px;
}

.transaction-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(292px, 1fr));
  gap: 14px;
}

.transaction-card {
  transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.transaction-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 44px rgb(5 5 5 / 0.1);
}

.transaction-card > button {
  display: grid;
  width: 100%;
  gap: 13px;
  border: 0;
  background: transparent;
  padding: 16px;
  text-align: left;
  cursor: pointer;
}

.transaction-card-head {
  display: grid;
  gap: 8px;
}

.transaction-card-head strong {
  color: #111318;
  font-size: 18px;
  font-weight: 950;
  line-height: 1.1;
}

.transaction-card p,
.transaction-row-card p,
.transaction-template-card p {
  margin: 0;
  color: #4f5662;
  font-size: 13px;
  line-height: 1.5;
}

.transaction-card-grid,
.transaction-summary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.transaction-card-grid span,
.transaction-summary-grid span {
  display: grid;
  gap: 3px;
  color: #555d68;
  font-size: 12px;
}

.transaction-card-grid strong,
.transaction-summary-grid strong {
  color: #111318;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.transaction-create-form,
.transaction-detail-page,
.transaction-two-column,
.transaction-list-stack,
.transaction-checklist-stack {
  display: grid;
  gap: 14px;
}

.transaction-form-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

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

.transaction-form-grid .field:has(textarea),
.transaction-form-grid.compact .field:has(textarea) {
  grid-column: 1 / -1;
}

.transaction-detail-header {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  border: 1px solid var(--nex-line);
  background: #ffffff;
  padding: 18px;
  box-shadow: 0 16px 36px rgb(5 5 5 / 0.06);
}

.transaction-detail-header h3 {
  margin: 3px 0;
  color: #111318;
  font-size: clamp(24px, 3vw, 38px);
  font-weight: 950;
  line-height: 1;
}

.transaction-detail-header span {
  color: #626b78;
  font-size: 13px;
  font-weight: 800;
}

.transaction-detail-actions,
.transaction-row-card .row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.transaction-detail-grid,
.transaction-two-column {
  grid-template-columns: minmax(0, 1.3fr) minmax(300px, 0.7fr);
}

.transaction-two-column.wide-left {
  grid-template-columns: minmax(0, 1.45fr) minmax(300px, 0.55fr);
}

.transaction-overview-panel {
  min-height: 100%;
}

.transaction-workflow-preview {
  grid-column: 1 / -1;
}

.transaction-workflow-page {
  display: grid;
  gap: 14px;
}

.transaction-progress-chip {
  display: grid;
  min-width: 96px;
  justify-items: center;
  border: 1px solid rgb(227 6 19 / 0.16);
  background: #fff5f5;
  padding: 10px 12px;
}

.transaction-progress-chip strong,
.transaction-workflow-preview .panel-heading > strong {
  color: #111318;
  font-size: 22px;
  font-weight: 950;
}

.transaction-progress-chip span {
  color: #69717e;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.transaction-workflow-list {
  position: relative;
  display: grid;
  gap: 10px;
}

.transaction-workflow-list::before {
  content: "";
  position: absolute;
  top: 16px;
  bottom: 16px;
  left: 16px;
  width: 2px;
  background: linear-gradient(#e30613, #d8dde5);
}

.transaction-workflow-list.compact {
  margin-top: 8px;
}

.transaction-workflow-item {
  position: relative;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto auto;
  gap: 10px;
  align-items: center;
  border: 1px solid var(--nex-line);
  background: #ffffff;
  padding: 10px;
  box-shadow: 0 10px 24px rgb(5 5 5 / 0.04);
}

.transaction-workflow-item.completed {
  border-color: rgb(25 120 77 / 0.22);
  background: #f5fbf8;
}

.workflow-marker {
  position: relative;
  z-index: 1;
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 1px solid rgb(227 6 19 / 0.22);
  border-radius: 999px;
  background: #ffffff;
  color: var(--nex-red);
}

.workflow-marker input {
  width: 18px;
  height: 18px;
  accent-color: var(--nex-red);
}

.transaction-workflow-item strong,
.transaction-workflow-item span,
.transaction-workflow-item small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.transaction-workflow-item strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.transaction-workflow-item span,
.transaction-workflow-item small,
.deadline-row small {
  color: #69717e;
  font-size: 11px;
  font-weight: 800;
}

.transaction-progress-strip {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  margin-top: 16px;
}

.transaction-progress-strip span,
.transaction-progress-strip strong {
  color: #111318;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.transaction-row-card {
  display: grid;
  gap: 10px;
  padding: 14px;
}

.transaction-row-card strong {
  color: #111318;
  font-weight: 950;
}

.deadline-row,
.document-row {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.deadline-row .field {
  max-width: 210px;
}

.transaction-checklist-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border: 1px solid var(--nex-line);
  background: #ffffff;
  padding: 12px;
  box-shadow: 0 10px 24px rgb(5 5 5 / 0.04);
}

.transaction-checklist-row.completed {
  border-color: rgb(25 120 77 / 0.22);
  background: #f3fbf7;
}

.transaction-checklist-row small {
  display: block;
  color: #69717e;
  font-size: 12px;
  font-weight: 800;
}

.transaction-checklist-row .field {
  min-width: 160px;
}

.transaction-checklist-section {
  border: 1px solid var(--nex-line);
  background: #ffffff;
  box-shadow: 0 12px 28px rgb(5 5 5 / 0.045);
  overflow: hidden;
}

.transaction-checklist-section summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(160px, 260px);
  gap: 14px;
  align-items: center;
  padding: 14px 16px;
  cursor: pointer;
  list-style: none;
}

.transaction-checklist-section summary::-webkit-details-marker {
  display: none;
}

.transaction-checklist-section summary > div:first-child {
  display: grid;
  gap: 3px;
}

.transaction-checklist-section summary strong {
  color: #111318;
  font-size: 15px;
  font-weight: 950;
}

.transaction-checklist-section summary span {
  color: #69717e;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.transaction-checklist-section-items {
  display: grid;
  gap: 10px;
  border-top: 1px solid var(--nex-line);
  background: #f8f9fb;
  padding: 12px;
}

.transaction-document-requirements {
  box-shadow: none;
}

.document-requirement-list {
  display: grid;
  gap: 8px;
}

.document-requirement-list article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border: 1px solid var(--nex-line);
  background: #fafafb;
  padding: 10px;
}

.document-requirement-list article.complete {
  border-color: rgb(25 120 77 / 0.22);
  background: #f5fbf8;
}

.document-requirement-list strong,
.document-requirement-list span,
.document-requirement-list small {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.document-requirement-list strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.document-requirement-list span,
.document-requirement-list small {
  color: #69717e;
  font-size: 11px;
  font-weight: 800;
}

.transaction-template-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 12px;
}

.transaction-template-card {
  display: grid;
  gap: 8px;
  padding: 14px;
}

.transaction-template-card strong {
  color: #111318;
  font-weight: 950;
}

.transaction-document-picker {
  display: grid;
  gap: 8px;
  max-height: 220px;
  overflow: auto;
  border: 1px solid var(--nex-line);
  background: #f8f9fb;
  padding: 10px;
}

.transaction-activity-feed {
  display: grid;
  gap: 10px;
}

.transaction-activity-feed article {
  display: grid;
  gap: 4px;
  border-left: 3px solid var(--nex-red);
  background: #f8f9fb;
  padding: 10px 12px;
}

.transaction-activity-feed span {
  color: var(--nex-red);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.transaction-activity-feed strong {
  color: #111318;
}

.transaction-activity-feed small {
  color: #69717e;
  font-weight: 800;
}

.transaction-notes-block {
  white-space: pre-wrap;
}

.transaction-row-card pre {
  overflow: auto;
  max-height: 190px;
  margin: 0;
  border: 1px solid var(--nex-line);
  background: #f8f9fb;
  padding: 10px;
  color: #353b45;
  font-size: 12px;
  line-height: 1.5;
}

@media (max-width: 1100px) {
  .nps-agent-summary,
  .nps-sponsor-map,
  .nps-sponsor-lanes,
  .nps-network-path {
    grid-template-columns: 1fr;
  }

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

  .transaction-detail-grid,
  .transaction-two-column,
  .transaction-two-column.wide-left {
    grid-template-columns: 1fr;
  }

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

@media (max-width: 760px) {
  .transaction-toolbar,
  .transaction-detail-header,
  .deadline-row,
  .document-row,
  .transaction-workflow-item,
  .transaction-checklist-row,
  .transaction-checklist-section summary,
  .transaction-progress-strip {
    grid-template-columns: 1fr;
  }

  .transaction-workflow-item {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .transaction-workflow-item > .deadline-badge,
  .transaction-workflow-item > .btn {
    grid-column: 2;
    justify-self: start;
  }

  .transaction-workflow-list::before {
    left: 16px;
  }

  .transaction-detail-actions,
  .transaction-row-card .row-actions {
    justify-content: start;
  }

  .transaction-metrics-grid,
  .transaction-form-grid,
  .transaction-form-grid.compact,
  .transaction-card-grid,
  .transaction-summary-grid {
    grid-template-columns: 1fr;
  }

  .transaction-detail-header h3 {
    font-size: 28px;
  }
}

.crm-tabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 4px 2px 10px;
  scrollbar-width: none;
}

.crm-tabs::-webkit-scrollbar {
  display: none;
}

.crm-tabs button {
  border: 1px solid var(--nex-line);
  background: white;
  color: #353b45;
  padding: 10px 14px;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.crm-tabs button.active {
  border-color: var(--nex-red);
  background: #111318;
  color: white;
  box-shadow: 0 12px 26px rgb(5 5 5 / 0.14);
}

.crm-dashboard-grid,
.crm-import-grid,
.crm-settings-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.crm-dashboard-grid > .stat-card {
  min-height: 112px;
}

.crm-wide-panel {
  grid-column: span 4;
}

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

.crm-bulk-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.75fr);
  gap: 16px;
  align-items: start;
}

.crm-bulk-status {
  align-items: center;
  border: 1px solid var(--nex-line);
  color: #5f6673;
  display: inline-flex;
  gap: 7px;
  font-size: 11px;
  font-weight: 950;
  padding: 9px 11px;
  text-transform: uppercase;
}

.crm-bulk-status.live {
  background: #eefdf4;
  border-color: #b7efcb;
  color: #087b3b;
}

.crm-bulk-status.logged {
  background: #fff8ea;
  border-color: #f0d7a6;
  color: #925a06;
}

.crm-bulk-mode-tabs {
  background: #f4f6f9;
  border: 1px solid var(--nex-line);
  display: inline-flex;
  gap: 4px;
  padding: 4px;
  width: fit-content;
}

.crm-bulk-mode-tabs button {
  align-items: center;
  background: transparent;
  border: 1px solid transparent;
  color: #4f5868;
  cursor: pointer;
  display: inline-flex;
  font-size: 12px;
  font-weight: 950;
  gap: 7px;
  padding: 8px 12px;
}

.crm-bulk-mode-tabs button.active {
  background: #111318;
  border-color: #111318;
  color: #fff;
  box-shadow: 0 8px 18px rgb(16 19 26 / 0.12);
}

.crm-bulk-toolbar {
  align-items: center;
  background: #f7f8fa;
  border: 1px solid var(--nex-line);
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 14px 0;
  padding: 10px;
}

.crm-bulk-toolbar div {
  align-items: baseline;
  background: white;
  border: 1px solid var(--nex-line);
  display: inline-flex;
  gap: 7px;
  padding: 8px 10px;
}

.crm-bulk-toolbar strong {
  color: #111318;
  font-size: 18px;
  font-weight: 950;
}

.crm-bulk-toolbar span {
  color: #626977;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.crm-bulk-recipient-list {
  display: grid;
  gap: 8px;
  max-height: 580px;
  overflow: auto;
  padding-right: 4px;
}

.crm-bulk-recipient {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--nex-line);
  cursor: pointer;
  display: grid;
  gap: 12px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: 11px 12px;
}

.crm-bulk-recipient.selected {
  border-color: rgb(227 6 19 / 0.5);
  box-shadow: inset 3px 0 0 var(--nex-red);
}

.crm-bulk-recipient.disabled {
  background: #f8f8f9;
  color: #8a909b;
  cursor: not-allowed;
}

.crm-bulk-recipient span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.crm-bulk-recipient strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.crm-bulk-recipient em,
.crm-bulk-recipient small {
  font-size: 11px;
  font-style: normal;
  font-weight: 850;
}

.crm-bulk-recipient em {
  color: #636b78;
}

.crm-bulk-recipient small.ready {
  color: #087b3b;
}

.crm-bulk-recipient small.blocked {
  color: #a2410d;
}

.crm-bulk-compose {
  display: grid;
  gap: 13px;
  position: sticky;
  top: 16px;
}

.crm-bulk-compose textarea {
  min-height: 180px;
}

.crm-bulk-selected-preview {
  background: #fafafb;
  border: 1px solid var(--nex-line);
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 11px;
}

.crm-bulk-selected-preview strong {
  flex-basis: 100%;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.crm-bulk-selected-preview span,
.crm-bulk-selected-preview em {
  background: white;
  border: 1px solid var(--nex-line);
  color: #424956;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
  padding: 6px 8px;
}

.crm-bulk-consent {
  align-items: flex-start;
  background: #fff7f7;
  border: 1px solid rgb(227 6 19 / 0.22);
  padding: 10px;
}

.crm-bulk-result {
  border-top: 1px solid var(--nex-line);
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding-top: 12px;
}

.crm-bulk-result div {
  background: #f7f8fa;
  border: 1px solid var(--nex-line);
  padding: 10px;
}

.crm-bulk-result strong {
  color: #111318;
  display: block;
  font-size: 21px;
  font-weight: 950;
}

.crm-bulk-result span,
.crm-bulk-result p {
  color: #5f6673;
  font-size: 12px;
  font-weight: 850;
}

.crm-bulk-result p {
  grid-column: 1 / -1;
  margin: 0;
}

.crm-duplicates-layout {
  display: grid;
  gap: 16px;
}

.crm-duplicate-overview {
  background:
    linear-gradient(135deg, rgba(227, 6, 19, 0.08), transparent 38%),
    #ffffff;
}

.crm-duplicate-stats {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 12px;
}

.crm-duplicate-stats article {
  background: #f7f8fa;
  border: 1px solid var(--nex-line);
  padding: 12px;
}

.crm-duplicate-stats strong {
  color: #111318;
  display: block;
  font-size: 24px;
  font-weight: 950;
}

.crm-duplicate-stats span {
  color: #606875;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.crm-duplicate-stack {
  display: grid;
  gap: 14px;
}

.crm-duplicate-group {
  display: grid;
  gap: 13px;
}

.crm-duplicate-group-head {
  align-items: center;
  border-bottom: 1px solid var(--nex-line);
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding-bottom: 12px;
}

.crm-duplicate-group-head h3 {
  font-size: 19px;
  margin: 0;
}

.crm-duplicate-group-head span {
  background: #111318;
  color: white;
  font-size: 11px;
  font-weight: 950;
  padding: 7px 9px;
  text-transform: uppercase;
}

.crm-duplicate-contact-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

.crm-duplicate-contact {
  background: #fbfbfc;
  border: 1px solid var(--nex-line);
  display: grid;
  gap: 11px;
  padding: 12px;
}

.crm-duplicate-contact strong {
  color: #111318;
  display: block;
  font-size: 15px;
  font-weight: 950;
}

.crm-duplicate-contact span,
.crm-duplicate-contact em {
  color: #5f6673;
  display: block;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
  margin-top: 3px;
}

.crm-duplicate-contact dl {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
}

.crm-duplicate-contact dt {
  color: #808793;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.crm-duplicate-contact dd {
  color: #1f2530;
  font-size: 11px;
  font-weight: 900;
  margin: 2px 0 0;
  overflow-wrap: anywhere;
}

.crm-source-protect-note {
  align-items: center;
  color: #087b3b;
  display: inline-flex;
  gap: 5px;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.crm-layout {
  display: grid;
  grid-template-columns: minmax(320px, 0.85fr) minmax(0, 1.6fr);
  gap: 16px;
  align-items: start;
}

.crm-people-workspace,
.crm-people-panel {
  min-width: 0;
}

.crm-people-panel {
  overflow: visible;
  padding: 0;
}

.crm-people-heading {
  align-items: center;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  padding: 24px 26px 20px;
}

.crm-people-heading h2 {
  font-size: clamp(25px, 3vw, 38px);
  line-height: 1.05;
  margin: 4px 0 8px;
}

.crm-people-heading > div:first-child > span {
  color: #626a78;
  display: block;
  font-size: 13px;
  line-height: 1.45;
}

.crm-people-heading-actions,
.crm-people-bulk-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.crm-people-saved-views {
  align-items: stretch;
  background: #f5f6f8;
  border-block: 1px solid var(--nex-line);
  display: flex;
  gap: 0;
  overflow-x: auto;
  padding: 0 18px;
  scrollbar-width: thin;
}

.crm-people-saved-views button {
  align-items: center;
  background: transparent;
  border: 0;
  border-bottom: 3px solid transparent;
  color: #596170;
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 auto;
  gap: 8px;
  min-height: 52px;
  padding: 0 16px;
}

.crm-people-saved-views button span {
  font-size: 12px;
  font-weight: 900;
}

.crm-people-saved-views button em {
  align-items: center;
  background: #e6e9ee;
  border-radius: 999px;
  color: #333944;
  display: inline-flex;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  justify-content: center;
  min-width: 24px;
  padding: 4px 7px;
}

.crm-people-saved-views button.active {
  background: #fff;
  border-bottom-color: var(--nex-red);
  color: #111318;
}

.crm-people-saved-views button.active em {
  background: rgb(227 6 19 / 0.1);
  color: var(--nex-red);
}

.crm-people-toolbar {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(260px, 1fr) auto minmax(0, auto) auto;
  padding: 16px 20px;
}

.crm-people-search {
  align-items: center;
  background: #fff;
  border: 1px solid #cfd4dc;
  display: flex;
  gap: 9px;
  min-height: 42px;
  padding: 0 13px;
}

.crm-people-search:focus-within {
  border-color: var(--nex-red);
  box-shadow: 0 0 0 3px rgb(227 6 19 / 0.08);
}

.crm-people-search input {
  background: transparent;
  border: 0;
  color: #111318;
  font: inherit;
  font-size: 13px;
  min-width: 0;
  outline: 0;
  width: 100%;
}

.crm-people-bulk-actions {
  background: #161a22;
  color: #fff;
  padding: 6px 8px 6px 12px;
}

.crm-people-bulk-actions strong {
  font-size: 11px;
  white-space: nowrap;
}

.crm-people-column-control {
  position: relative;
}

.crm-people-column-menu {
  background: #fff;
  border: 1px solid #ccd1da;
  box-shadow: 0 18px 46px rgb(16 19 26 / 0.18);
  display: grid;
  gap: 8px;
  min-width: 210px;
  padding: 14px;
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  z-index: 30;
}

.crm-people-column-menu strong {
  font-size: 11px;
  text-transform: uppercase;
}

.crm-people-column-menu label {
  align-items: center;
  color: #424956;
  display: flex;
  font-size: 12px;
  font-weight: 800;
  gap: 8px;
}

.crm-people-filter-panel {
  background: #f8f9fb;
  border-block: 1px solid var(--nex-line);
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding: 16px 20px;
}

.crm-people-filter-panel .btn {
  align-self: end;
  min-height: 42px;
}

.crm-people-quick-task {
  align-items: end;
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.08), transparent 42%),
    #ffffff;
  border-block: 1px solid var(--nex-line);
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(180px, 1.2fr) minmax(170px, 1.2fr) minmax(120px, 0.8fr) minmax(120px, 0.8fr) minmax(120px, 0.8fr) auto;
  padding: 14px 20px;
}

.crm-people-quick-task > div:first-child {
  align-self: center;
}

.crm-people-quick-task strong {
  color: #111318;
  display: block;
  font-size: 13px;
  line-height: 1.25;
}

.crm-people-table-shell {
  border-top: 1px solid var(--nex-line);
  max-width: 100%;
  overflow-x: auto;
}

.crm-people-table {
  border-collapse: collapse;
  min-width: 1240px;
  width: 100%;
}

.crm-people-table th {
  background: #f1f3f6;
  border-bottom: 1px solid #cfd4dc;
  color: #656d7a;
  font-size: 10px;
  font-weight: 950;
  padding: 0 10px;
  position: sticky;
  text-align: left;
  text-transform: uppercase;
  top: 0;
  white-space: nowrap;
  z-index: 2;
}

.crm-people-table th.select,
.crm-people-table td.select {
  padding-inline: 14px 6px;
  width: 34px;
}

.crm-people-table td {
  border-bottom: 1px solid #e3e6eb;
  color: #363c47;
  font-size: 11px;
  line-height: 1.35;
  max-width: 190px;
  padding: 12px 10px;
  vertical-align: middle;
}

.crm-people-table tbody tr {
  background: #fff;
  cursor: pointer;
  outline: 0;
  transition: background-color 140ms ease, box-shadow 140ms ease;
}

.crm-people-table tbody tr:hover,
.crm-people-table tbody tr:focus,
.crm-people-table tbody tr.active {
  background: #fff7f7;
  box-shadow: inset 3px 0 0 var(--nex-red);
}

.crm-people-table td > strong,
.crm-people-table td > span,
.crm-people-table td > small {
  display: block;
  overflow-wrap: anywhere;
}

.crm-people-table td > strong {
  color: #15181e;
  font-size: 11px;
  font-weight: 950;
}

.crm-people-table td > span,
.crm-people-table td > small {
  color: #6a7280;
  font-size: 10px;
  margin-top: 3px;
}

.crm-people-table td.person {
  min-width: 190px;
}

.crm-people-table td.person strong {
  color: #075b96;
  font-size: 12px;
}

.crm-people-table td.person em {
  align-items: center;
  color: #444c58;
  display: inline-flex;
  font-size: 9px;
  font-style: normal;
  font-weight: 900;
  gap: 3px;
  margin-top: 5px;
  text-transform: uppercase;
}

.crm-people-sort {
  align-items: center;
  background: transparent;
  border: 0;
  color: inherit;
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-weight: inherit;
  gap: 4px;
  min-height: 38px;
  padding: 0;
  text-transform: inherit;
}

.crm-people-sort svg {
  opacity: 0.35;
}

.crm-people-sort.active {
  color: #111318;
}

.crm-people-sort.active svg {
  color: var(--nex-red);
  opacity: 1;
}

.crm-people-stage {
  background: #e6f2ff;
  color: #075b96 !important;
  display: inline-block !important;
  font-size: 9px !important;
  font-weight: 950;
  padding: 5px 7px;
  text-transform: uppercase;
}

.crm-people-stage.hot,
.crm-people-stage.dead-dnc {
  background: #fee8ea;
  color: #aa1020 !important;
}

.crm-people-stage.warm,
.crm-people-stage.nurture {
  background: #fff1d9;
  color: #8a5700 !important;
}

.crm-contact-rating {
  display: inline-flex !important;
  gap: 1px;
  margin: 0 !important;
}

.crm-contact-rating svg {
  color: #c4c9d1;
}

.crm-contact-rating svg.active {
  color: #1f9c55;
  fill: #1f9c55;
}

.crm-people-activity {
  align-items: center;
  display: flex !important;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 !important;
}

.crm-people-activity em {
  align-items: center;
  color: #737b88;
  display: inline-flex;
  font-size: 9px;
  font-style: normal;
  font-weight: 900;
  gap: 2px;
}

.crm-people-table .lead-source-pill {
  display: inline-block;
  font-size: 9px;
  line-height: 1.25;
  margin: 0;
  max-width: 160px;
}

.crm-people-pagination {
  align-items: center;
  background: #f8f9fb;
  color: #616a78;
  display: flex;
  font-size: 11px;
  justify-content: space-between;
  min-height: 58px;
  padding: 10px 20px;
}

.crm-people-pagination > div,
.crm-people-pagination label {
  align-items: center;
  display: flex;
  gap: 9px;
}

.crm-people-pagination select {
  background: #fff;
  border: 1px solid #ccd1d9;
  min-height: 34px;
  padding: 0 8px;
}

.crm-people-panel > .crm-add-details {
  border-top: 1px solid var(--nex-line);
  margin: 0;
  padding: 18px 20px;
}

.crm-people-drawer-backdrop {
  align-items: stretch;
  background: rgb(10 12 16 / 0.42);
  display: flex;
  inset: 0;
  justify-content: flex-end;
  position: fixed;
  z-index: 1200;
}

.crm-people-drawer {
  animation: crmPeopleDrawerIn 180ms ease-out;
  background: #f5f6f8;
  box-shadow: -24px 0 70px rgb(10 12 16 / 0.25);
  max-width: min(760px, 92vw);
  min-width: 0;
  overflow-y: auto;
  padding: 0 18px 28px;
  width: 100%;
}

@keyframes crmPeopleDrawerIn {
  from { opacity: 0; transform: translateX(28px); }
  to { opacity: 1; transform: translateX(0); }
}

.crm-people-drawer-head {
  align-items: center;
  background: #fff;
  border-bottom: 1px solid var(--nex-line);
  display: flex;
  justify-content: space-between;
  margin: 0 -18px 16px;
  padding: 16px 20px;
  position: sticky;
  top: 0;
  z-index: 20;
}

.crm-people-drawer-head strong {
  color: #111318;
  display: block;
  font-size: 18px;
  margin-top: 3px;
}

.crm-list-panel,
.crm-detail-panel,
.crm-board-panel {
  min-width: 0;
}

.crm-filter-grid,
.crm-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.crm-form-grid .field:has(textarea) {
  grid-column: 1 / -1;
}

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

.crm-contact-list {
  display: grid;
  gap: 9px;
  margin: 14px 0;
  max-height: 520px;
  overflow: auto;
  padding-right: 4px;
}

.crm-contact-card {
  display: grid;
  gap: 4px;
  width: 100%;
  border: 1px solid var(--nex-line);
  background: #fafafb;
  padding: 13px;
  text-align: left;
  cursor: pointer;
}

.crm-contact-card.active,
.crm-contact-card:hover {
  border-color: rgb(227 6 19 / 0.55);
  background:
    linear-gradient(90deg, rgb(227 6 19 / 0.08), transparent 55%),
    white;
}

.crm-contact-card strong,
.pipeline-card strong,
.crm-task-stack strong,
.crm-task-table strong {
  color: #111318;
  font-size: 14px;
  font-weight: 950;
}

.crm-contact-card span,
.pipeline-card span,
.crm-task-stack span,
.crm-task-table span {
  color: #5f6673;
  font-size: 12px;
  line-height: 1.45;
}

.crm-contact-card em {
  color: var(--nex-red);
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.crm-add-form {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

.compact-heading {
  margin-bottom: -2px;
}

.crm-detail-stack {
  display: grid;
  gap: 16px;
}

.crm-readiness-panel {
  display: grid;
  grid-template-columns: minmax(190px, 0.9fr) repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.crm-readiness-panel article {
  background: #ffffff;
  border: 1px solid var(--nex-line);
  display: grid;
  gap: 7px;
  min-width: 0;
  padding: 12px;
}

.crm-readiness-panel h4,
.crm-readiness-panel p {
  margin: 0;
}

.crm-readiness-panel h4 {
  color: #111318;
  font-size: 16px;
  font-weight: 950;
}

.crm-readiness-panel span {
  color: #5f6673;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
}

.crm-readiness-panel span.danger {
  color: #a70c17;
}

.crm-readiness-score {
  background:
    linear-gradient(135deg, rgb(17 19 24 / 0.04), transparent 50%),
    #ffffff;
}

.crm-readiness-score > div:first-of-type {
  align-items: baseline;
  display: flex;
  gap: 8px;
}

.crm-readiness-score strong {
  color: #111318;
  font-size: 30px;
  font-weight: 950;
  letter-spacing: 0;
}

.crm-readiness-score.ready {
  border-color: rgb(8 123 59 / 0.28);
}

.crm-readiness-score.workable {
  border-color: rgb(196 132 18 / 0.32);
}

.crm-readiness-score.needs-work,
.crm-readiness-score.blocked {
  border-color: rgb(227 6 19 / 0.32);
}

.crm-readiness-actions {
  align-content: start;
}

.crm-readiness-actions button {
  align-items: center;
  background: #f8f9fb;
  border: 1px solid var(--nex-line);
  color: #252a33;
  cursor: pointer;
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  gap: 7px;
  justify-content: flex-start;
  padding: 8px 9px;
  text-align: left;
}

.crm-readiness-actions button:hover {
  border-color: rgb(227 6 19 / 0.35);
  color: var(--nex-red);
}

.crm-readiness-actions button.danger {
  background: #fff5f5;
  border-color: rgb(227 6 19 / 0.25);
  color: #a70c17;
}

.crm-readiness-actions button:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.crm-contact-head {
  align-items: center;
  border-bottom: 1px solid var(--nex-line);
  display: flex;
  gap: 14px;
  justify-content: space-between;
  padding-bottom: 14px;
}

.crm-contact-head h3 {
  margin: 4px 0 3px;
  color: #111318;
  font-size: 25px;
  font-weight: 950;
}

.crm-contact-head span {
  color: #5f6673;
  font-size: 13px;
  font-weight: 800;
}

.crm-lead-command-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.crm-lead-command-card {
  align-items: start;
  background:
    linear-gradient(135deg, rgb(17 19 24 / 0.035), transparent 68%),
    #ffffff;
  border: 1px solid var(--nex-line);
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr);
  min-width: 0;
  padding: 12px;
}

.crm-lead-command-card svg {
  color: var(--nex-red);
  margin-top: 1px;
}

.crm-lead-command-card span {
  color: #687182;
  display: block;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.crm-lead-command-card strong {
  color: #111318;
  display: block;
  font-size: 14px;
  font-weight: 950;
  line-height: 1.25;
  margin-top: 4px;
}

.crm-lead-command-card p {
  color: #5f6673;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.4;
  margin: 5px 0 0;
}

.crm-lead-command-card.stale,
.crm-lead-command-card.missing,
.crm-lead-command-card.overdue {
  border-color: rgb(227 6 19 / 0.28);
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.08), transparent 72%),
    #ffffff;
}

.crm-lead-command-card.fresh,
.crm-lead-command-card.ready,
.crm-lead-command-card.today {
  border-color: rgb(16 185 129 / 0.22);
  background:
    linear-gradient(135deg, rgb(16 185 129 / 0.08), transparent 72%),
    #ffffff;
}

.crm-lead-command-card.brokerage {
  border-color: rgb(227 6 19 / 0.24);
}

.crm-lead-command-card.agent {
  border-color: rgb(17 19 24 / 0.16);
}

.crm-mobile-action-dock {
  display: none;
}

.crm-mobile-action {
  align-items: center;
  background: #ffffff;
  border: 1px solid var(--nex-line);
  color: #232832;
  cursor: pointer;
  display: inline-flex;
  font-size: 12px;
  font-weight: 950;
  gap: 7px;
  justify-content: center;
  min-height: 42px;
  padding: 9px 10px;
  text-decoration: none;
}

.crm-mobile-action:hover {
  border-color: rgb(227 6 19 / 0.34);
  color: var(--nex-red);
}

.crm-mobile-action:disabled {
  cursor: not-allowed;
  opacity: 0.48;
}

.crm-profile-editor {
  border: 1px solid var(--nex-line);
  background: #ffffff;
  display: grid;
  gap: 14px;
  padding: 14px;
}

.crm-section-heading {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.crm-section-heading h3 {
  color: #111318;
  font-size: 18px;
  font-weight: 950;
  margin: 3px 0 0;
}

.crm-add-details,
.crm-advanced-fields {
  border-top: 1px solid var(--nex-line);
  padding-top: 12px;
}

.crm-add-details summary,
.crm-advanced-fields summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  justify-content: space-between;
  list-style: none;
}

.crm-add-details summary::-webkit-details-marker,
.crm-advanced-fields summary::-webkit-details-marker {
  display: none;
}

.crm-add-details summary span,
.crm-advanced-fields summary span {
  color: #111318;
  font-size: 14px;
  font-weight: 950;
}

.crm-add-details summary em,
.crm-advanced-fields summary em {
  color: #6c7480;
  font-size: 12px;
  font-style: normal;
  font-weight: 750;
}

.crm-add-details summary::after,
.crm-advanced-fields summary::after {
  content: "+";
  align-items: center;
  background: #111318;
  color: white;
  display: inline-flex;
  font-size: 16px;
  font-weight: 950;
  height: 24px;
  justify-content: center;
  width: 24px;
}

.crm-add-details[open] summary::after,
.crm-advanced-fields[open] summary::after {
  content: "-";
}

.crm-advanced-fields .crm-form-grid {
  margin-top: 14px;
}

.crm-ai-panel,
.crm-email-panel,
.crm-inner-panel {
  border: 1px solid var(--nex-line);
  background: #fbfbfc;
  padding: 14px;
}

.crm-email-panel {
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.05), transparent 48%),
    #ffffff;
}

.crm-email-footer {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: space-between;
}

.crm-email-footer span {
  color: #5f6673;
  font-size: 12px;
  font-weight: 800;
}

.crm-email-history {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}

.crm-email-history article {
  background: #ffffff;
  border: 1px solid var(--nex-line);
  display: grid;
  gap: 8px;
  padding: 12px;
}

.crm-email-history article > div {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: space-between;
}

.crm-email-history strong {
  color: #111318;
  font-weight: 950;
}

.crm-email-history span {
  color: #5f6673;
  font-size: 12px;
  font-weight: 800;
}

.crm-email-history p {
  color: #343a46;
  font-size: 13px;
  line-height: 1.55;
  margin: 0;
  white-space: pre-wrap;
}

.crm-drip-panel,
.crm-drip-library-card {
  border: 1px solid var(--nex-line);
  background:
    linear-gradient(135deg, rgb(17 19 24 / 0.03), transparent 45%),
    #ffffff;
  padding: 14px;
}

.crm-drip-grid {
  display: grid;
  grid-template-columns: minmax(220px, 0.8fr) minmax(0, 1fr);
  gap: 12px;
}

.crm-drip-summary {
  border: 1px solid rgb(227 6 19 / 0.14);
  background: #fff7f7;
  display: grid;
  gap: 5px;
  padding: 12px;
}

.crm-drip-summary strong {
  color: #111318;
  font-weight: 950;
}

.crm-drip-summary span,
.crm-drip-history span {
  color: #5f6673;
  font-size: 12px;
  font-weight: 800;
}

.crm-drip-step-preview {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  margin: 12px 0;
}

.crm-drip-step-preview article {
  border: 1px solid var(--nex-line);
  background: #fbfbfc;
  display: grid;
  gap: 5px;
  padding: 10px;
}

.crm-drip-step-preview em {
  color: var(--nex-red);
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  text-transform: uppercase;
}

.crm-drip-step-preview strong {
  color: #222833;
  font-size: 13px;
  font-weight: 900;
}

.crm-drip-history {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.crm-drip-history span {
  border: 1px solid var(--nex-line);
  background: white;
  padding: 7px 9px;
}

.crm-drip-library {
  display: grid;
  gap: 16px;
}

.crm-drip-library-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 14px;
}

.crm-drip-library-card {
  display: grid;
  gap: 10px;
}

.crm-campaign-studio-hero {
  align-items: end;
}

.crm-campaign-library-toolbar {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) 220px;
  gap: 12px;
  align-items: center;
  border: 1px solid var(--nex-line);
  background: #ffffff;
  padding: 12px;
}

.crm-campaign-library-toolbar label {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  border: 1px solid var(--nex-line);
  padding: 0 12px;
}

.crm-campaign-library-toolbar input,
.crm-campaign-library-toolbar select {
  min-height: 44px;
  border: 0;
  background: #ffffff;
  outline: 0;
}

.crm-campaign-library-toolbar select {
  border: 1px solid var(--nex-line);
  padding: 0 12px;
}

.crm-drip-library-card {
  min-width: 0;
  padding: 0;
  overflow: hidden;
}

.crm-campaign-card-topline,
.crm-campaign-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.crm-campaign-card-topline {
  border-bottom: 1px solid var(--nex-line);
  padding: 10px 14px;
  background: #f7f8fa;
  color: #667085;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.crm-campaign-card-topline em {
  color: var(--nex-red);
  font-style: normal;
}

.crm-campaign-card-open {
  display: grid;
  gap: 8px;
  width: 100%;
  border: 0;
  background: transparent;
  padding: 8px 14px 0;
  text-align: left;
}

.crm-campaign-card-open strong {
  color: #111318;
  font-size: 19px;
  font-weight: 950;
}

.crm-campaign-card-open small {
  min-height: 40px;
  color: #5f6673;
  font-size: 12px;
  line-height: 1.55;
}

.crm-campaign-channel-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding: 0 14px;
}

.crm-campaign-channel-pills span {
  border: 1px solid #dfe3e9;
  border-radius: 999px;
  background: #f8f9fb;
  color: #4d5563;
  padding: 5px 8px;
  font-size: 10px;
  font-weight: 900;
}

.crm-drip-library-card .crm-drip-step-preview {
  padding: 0 14px;
}

.crm-campaign-more-steps {
  align-self: center;
  color: #596170;
  font-size: 11px;
  font-weight: 900;
}

.crm-campaign-card-footer {
  border-top: 1px solid var(--nex-line);
  padding: 12px 14px;
}

.crm-campaign-card-footer > span {
  color: #6c7480;
  font-size: 11px;
  font-weight: 850;
}

.crm-drip-contact-timeline article.complete {
  border-color: #abdcc8;
  background: #f1fbf6;
}

.crm-drip-contact-timeline article.next {
  border-color: rgb(227 6 19 / 0.42);
  box-shadow: inset 3px 0 0 var(--nex-red);
}

.crm-campaign-editor-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1400;
  display: grid;
  place-items: center;
  background: rgb(7 10 16 / 0.74);
  padding: 22px;
  backdrop-filter: blur(5px);
}

.crm-campaign-editor {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  width: min(1180px, 100%);
  max-height: calc(100vh - 44px);
  border: 1px solid rgb(255 255 255 / 0.16);
  background: #f5f6f8;
  box-shadow: 0 30px 90px rgb(0 0 0 / 0.38);
}

.crm-campaign-editor-header {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 24px;
  border-bottom: 3px solid var(--nex-red);
  background: linear-gradient(120deg, #111318 0%, #20242d 72%, #4c0d15 100%);
  color: #ffffff;
  padding: 20px 24px;
}

.crm-campaign-editor-header h2 {
  margin: 4px 0 6px;
  color: #ffffff;
  font-size: 28px;
  line-height: 1.1;
}

.crm-campaign-editor-header p:not(.eyebrow) {
  max-width: 760px;
  margin: 0;
  color: rgb(255 255 255 / 0.7);
  font-size: 13px;
}

.crm-campaign-editor-header .icon-btn {
  flex: 0 0 auto;
  border-color: rgb(255 255 255 / 0.24);
  background: rgb(255 255 255 / 0.08);
  color: #ffffff;
}

.crm-campaign-editor-body {
  display: grid;
  grid-template-columns: 290px minmax(0, 1fr);
  min-height: 0;
  overflow: hidden;
}

.crm-campaign-editor-settings,
.crm-campaign-step-builder {
  min-height: 0;
  overflow-y: auto;
  padding: 18px;
}

.crm-campaign-editor-settings {
  display: grid;
  align-content: start;
  gap: 14px;
  border-right: 1px solid var(--nex-line);
  background: #ffffff;
}

.crm-campaign-editor-settings label,
.crm-campaign-step-fields label {
  display: grid;
  gap: 6px;
  color: #303744;
  font-size: 11px;
  font-weight: 900;
}

.crm-campaign-editor-settings input,
.crm-campaign-editor-settings textarea,
.crm-campaign-editor-settings select,
.crm-campaign-step-fields input,
.crm-campaign-step-fields textarea,
.crm-campaign-step-fields select {
  width: 100%;
  min-width: 0;
  border: 1px solid #d9dee6;
  background: #ffffff;
  color: #111318;
  padding: 10px;
  font: inherit;
  font-size: 13px;
}

.crm-campaign-editor-settings textarea,
.crm-campaign-step-fields textarea {
  min-height: 86px;
  resize: vertical;
  line-height: 1.5;
}

.crm-campaign-editor-settings :disabled,
.crm-campaign-step-fields :disabled {
  background: #f4f5f7;
  color: #5e6674;
}

.crm-campaign-safety-note {
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  gap: 10px;
  border-left: 3px solid #13a063;
  background: #eef9f4;
  padding: 12px;
  color: #176b49;
}

.crm-campaign-safety-note p {
  display: grid;
  gap: 4px;
  margin: 0;
}

.crm-campaign-safety-note span,
.crm-campaign-version-list small {
  color: #5c6873;
  font-size: 11px;
  line-height: 1.45;
}

.crm-campaign-version-list {
  display: grid;
  gap: 7px;
  border-top: 1px solid var(--nex-line);
  padding-top: 14px;
}

.crm-campaign-version-list > span {
  display: grid;
  gap: 2px;
  border-left: 2px solid #cbd1da;
  padding-left: 9px;
  color: #252b35;
  font-size: 11px;
  font-weight: 850;
}

.crm-campaign-step-builder {
  background: #f6f7f9;
}

.crm-campaign-step-builder-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}

.crm-campaign-step-builder-head h3 {
  margin: 2px 0 0;
  font-size: 20px;
}

.crm-campaign-step-list {
  display: grid;
  gap: 10px;
}

.crm-campaign-step-editor {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 12px;
  border: 1px solid #dfe3e9;
  background: #ffffff;
  padding: 14px;
}

.crm-campaign-step-number {
  display: grid;
  grid-template-rows: 30px minmax(0, 1fr);
  justify-items: center;
}

.crm-campaign-step-number span {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 50%;
  background: var(--nex-red);
  color: #ffffff;
  font-size: 12px;
  font-weight: 950;
}

.crm-campaign-step-number i {
  width: 1px;
  min-height: 20px;
  background: #d7dce3;
}

.crm-campaign-step-fields {
  display: grid;
  gap: 10px;
}

.crm-campaign-step-row {
  display: grid;
  grid-template-columns: 82px 108px minmax(180px, 1fr);
  gap: 10px;
}

.crm-campaign-step-fields small {
  color: #7a8290;
  font-size: 10px;
  font-weight: 700;
}

.crm-campaign-step-actions {
  display: grid;
  align-content: start;
  gap: 6px;
}

.crm-campaign-step-actions .danger {
  color: var(--nex-red);
}

.crm-campaign-editor-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-top: 1px solid var(--nex-line);
  background: #ffffff;
  padding: 14px 20px;
}

@media (max-width: 760px) {
  .crm-drip-grid,
  .crm-campaign-library-toolbar,
  .crm-campaign-editor-body,
  .crm-campaign-step-row {
    grid-template-columns: 1fr;
  }

  .crm-campaign-editor-backdrop {
    align-items: end;
    padding: 0;
  }

  .crm-campaign-editor {
    width: 100%;
    max-height: 96dvh;
  }

  .crm-campaign-editor-header {
    padding: 16px;
  }

  .crm-campaign-editor-header h2 {
    font-size: 22px;
  }

  .crm-campaign-editor-body {
    overflow-y: auto;
  }

  .crm-campaign-editor-settings,
  .crm-campaign-step-builder {
    overflow: visible;
    padding: 14px;
  }

  .crm-campaign-editor-settings {
    border-right: 0;
    border-bottom: 1px solid var(--nex-line);
  }

  .crm-campaign-step-editor {
    grid-template-columns: 30px minmax(0, 1fr);
    padding: 12px;
  }

  .crm-campaign-step-actions {
    grid-column: 2;
    grid-auto-flow: column;
    justify-content: start;
  }

  .crm-campaign-editor-footer {
    align-items: stretch;
    flex-direction: column;
    padding: 12px;
  }

  .crm-campaign-editor-footer .row-actions,
  .crm-campaign-editor-footer .btn {
    width: 100%;
  }

  .crm-campaign-card-footer {
    align-items: stretch;
    flex-direction: column;
  }
}

.crm-ai-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.ai-output-card {
  border: 1px solid rgb(227 6 19 / 0.22);
  background: white;
  margin-top: 12px;
  padding: 14px;
}

.ai-output-card p {
  color: #343a46;
  font-size: 13px;
  line-height: 1.6;
  margin: 10px 0 0;
  white-space: pre-wrap;
}

.ai-provider-badge {
  border: 1px solid rgb(227 6 19 / 0.2);
  background: #fff2f2;
  color: var(--nex-red);
  display: inline-flex;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  margin-top: 10px;
  padding: 6px 8px;
  text-transform: uppercase;
}

.ai-provider-badge.fallback {
  border-color: #e5e7eb;
  background: #f8fafc;
  color: #5f6673;
}

.crm-split-panels {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.crm-inline-form {
  display: grid;
  gap: 10px;
}

.crm-inline-form .btn {
  justify-self: start;
}

.crm-import-options {
  display: grid;
  grid-template-columns: minmax(180px, 240px) minmax(0, 1fr);
  gap: 12px;
  align-items: end;
}

.crm-import-options .field {
  margin: 0;
}

.crm-import-options .checkbox-line {
  align-self: end;
  border: 1px solid var(--nex-line);
  background: #f8fafc;
  min-height: 42px;
  padding: 10px 12px;
}

.crm-lead-connector-panel {
  gap: 16px;
}

.crm-guided-setup-link {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--nex-red);
  cursor: pointer;
  display: inline-flex;
  font-weight: 800;
  gap: 7px;
  justify-self: start;
  padding: 0;
}

.crm-guided-setup-link:hover {
  color: #99000b;
}

.crm-lead-setup-guide {
  border: 1px solid rgb(227 6 19 / 0.18);
  background: linear-gradient(135deg, rgb(227 6 19 / 0.04), #ffffff);
  display: grid;
  gap: 10px;
  padding: 12px;
}

.crm-lead-setup-guide article {
  align-items: flex-start;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
}

.crm-lead-setup-guide article svg {
  color: var(--nex-red);
  margin-top: 2px;
}

.crm-lead-setup-guide strong,
.crm-lead-setup-guide span {
  display: block;
}

.crm-lead-setup-guide span {
  color: #4f5662;
  font-size: 13px;
  line-height: 1.5;
}

.crm-guide-copy-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.crm-lead-token-box,
.crm-lead-connector-list article {
  border: 1px solid var(--nex-line);
  background: #f8fafc;
  display: grid;
  gap: 8px;
  padding: 12px;
}

.crm-lead-token-box code,
.crm-lead-connector-panel pre {
  background: #0f1117;
  color: #fff;
  display: block;
  font-size: 12px;
  line-height: 1.5;
  max-width: 100%;
  overflow: auto;
  padding: 10px;
  white-space: pre-wrap;
  word-break: break-word;
}

.crm-lead-token-box span,
.crm-lead-connector-list small {
  color: #667085;
  font-size: 12px;
}

.crm-lead-connector-list {
  display: grid;
  gap: 10px;
}

.crm-lead-connector-list article {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.crm-lead-connector-list article.inactive {
  opacity: 0.62;
}

.crm-lead-connector-list strong,
.crm-lead-connector-list span {
  display: block;
}

@media (max-width: 760px) {
  .crm-lead-connector-list article {
    grid-template-columns: 1fr;
  }

  .crm-lead-token-box .row-actions,
  .crm-lead-connector-list .row-actions {
    justify-content: flex-start;
  }
}

.crm-import-preview {
  display: grid;
  gap: 12px;
  border: 1px solid rgb(227 6 19 / 0.16);
  background: linear-gradient(135deg, rgb(227 6 19 / 0.045), #fff);
  margin-top: 14px;
  padding: 14px;
}

.crm-import-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 8px;
}

.crm-import-summary span {
  border: 1px solid var(--nex-line);
  background: #fff;
  color: #586071;
  font-size: 11px;
  font-weight: 850;
  padding: 10px;
  text-transform: uppercase;
}

.crm-import-summary strong {
  color: #111318;
  display: block;
  font-size: 18px;
}

.crm-import-large-batch {
  align-items: center;
  background: #111318;
  color: #fff;
  display: flex;
  gap: 10px;
  padding: 12px;
}

.crm-import-large-batch span {
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}

.crm-import-errors,
.crm-import-table {
  display: grid;
  gap: 8px;
}

.crm-import-errors em,
.crm-import-table article {
  border: 1px solid var(--nex-line);
  background: #fff;
  color: #4b5563;
  font-size: 12px;
  padding: 10px;
}

.crm-import-table article {
  display: grid;
  gap: 3px;
}

.crm-import-table strong {
  color: #111318;
}

.crm-import-table em {
  color: var(--nex-red);
  font-style: normal;
  font-weight: 850;
}

.crm-timeline-list,
.crm-task-stack,
.crm-task-table {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

.crm-task-command-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.crm-task-command-card {
  align-items: center;
  background:
    linear-gradient(135deg, rgb(17 19 24 / 0.03), transparent 68%),
    #fff;
  border: 1px solid var(--nex-line);
  color: #111318;
  cursor: pointer;
  display: grid;
  gap: 5px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  min-height: 62px;
  padding: 12px;
  text-align: left;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.crm-task-command-card:hover,
.crm-task-command-card.active {
  border-color: rgb(227 6 19 / 0.45);
  box-shadow: 0 12px 28px rgb(17 19 24 / 0.08);
  transform: translateY(-1px);
}

.crm-task-command-card svg {
  color: var(--nex-red);
}

.crm-task-command-card span {
  color: #5f6673;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.crm-task-command-card strong {
  color: #111318;
  font-size: 22px;
  font-weight: 950;
}

.crm-task-command-card.danger.active,
.crm-task-command-card.danger:hover {
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.1), transparent 70%),
    #fff;
}

.crm-task-command-card.today.active,
.crm-task-command-card.today:hover {
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.08), transparent 72%),
    #fff;
}

.crm-task-command-card.muted svg {
  color: #77808f;
}

.crm-timeline-list article,
.crm-task-stack article,
.crm-task-table article {
  border: 1px solid var(--nex-line);
  background: white;
  padding: 12px;
}

.crm-timeline-list span {
  color: var(--nex-red);
  display: block;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.crm-timeline-list p {
  color: #3d444f;
  font-size: 13px;
  line-height: 1.55;
  margin: 6px 0 0;
}

.crm-task-stack article,
.crm-task-table article {
  display: grid;
  gap: 7px;
}

.crm-task-row {
  transition: border-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.crm-task-row:hover {
  border-color: rgb(17 19 24 / 0.16);
  box-shadow: 0 12px 26px rgb(17 19 24 / 0.07);
  transform: translateY(-1px);
}

.crm-task-row-head {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: space-between;
}

.crm-task-due-pill {
  border: 1px solid transparent;
  border-radius: 999px;
  color: #5f6673;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  padding: 5px 8px;
  text-transform: uppercase;
}

.crm-task-due-pill.overdue {
  background: rgb(227 6 19 / 0.1);
  border-color: rgb(227 6 19 / 0.22);
  color: var(--nex-red);
}

.crm-task-due-pill.today,
.crm-task-due-pill.soon {
  background: rgb(16 185 129 / 0.1);
  border-color: rgb(16 185 129 / 0.2);
  color: #047857;
}

.crm-task-due-pill.upcoming,
.crm-task-due-pill.unscheduled {
  background: #f3f5f8;
  border-color: #e2e6ed;
  color: #5f6673;
}

.crm-task-meta,
.crm-task-contact-line {
  display: block;
  margin-top: 4px;
}

.crm-task-contact-line {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.crm-task-contact-line a {
  color: var(--nex-red);
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
}

.crm-task-edit-form {
  display: grid;
  gap: 10px;
}

.crm-task-edit-form .field textarea {
  min-height: 82px;
}

.crm-task-stack article.overdue,
.crm-task-table article.overdue {
  border-color: rgb(227 6 19 / 0.4);
  background: #fff5f5;
}

.crm-task-stack article.done {
  opacity: 0.62;
}

.crm-task-table article {
  align-items: center;
  grid-template-columns: minmax(0, 1fr) auto;
}

.crm-stage-meter {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 10px;
}

.crm-stage-meter button {
  border: 1px solid var(--nex-line);
  background:
    linear-gradient(135deg, rgb(17 19 24 / 0.04), transparent),
    white;
  cursor: pointer;
  min-height: 82px;
  padding: 12px;
  text-align: left;
}

.crm-stage-meter strong {
  color: var(--nex-red);
  display: block;
  font-size: 26px;
  font-weight: 950;
}

.crm-stage-meter span {
  color: #4f5662;
  font-size: 12px;
  font-weight: 900;
}

.crm-permission-card {
  align-items: flex-start;
  display: flex;
  gap: 12px;
}

.crm-permission-card svg {
  color: var(--nex-red);
  flex: 0 0 auto;
}

.crm-permission-card p,
.crm-helper-text {
  color: #4f5662;
  font-size: 13px;
  line-height: 1.6;
  margin: 0;
}

.crm-mini-stats,
.crm-stage-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.crm-mini-stats span,
.crm-stage-tags span {
  border: 1px solid var(--nex-line);
  background: #fafafb;
  color: #353b45;
  padding: 8px 10px;
  font-size: 12px;
  font-weight: 900;
}

.pipeline-board {
  display: grid;
  grid-auto-columns: minmax(250px, 1fr);
  grid-auto-flow: column;
  gap: 12px;
  overflow-x: auto;
  padding-bottom: 6px;
}

.pipeline-column {
  border: 1px solid var(--nex-line);
  background: #f6f7f9;
  min-height: 360px;
  padding: 10px;
}

.pipeline-column-head {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}

.pipeline-column-head strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.pipeline-column-head span {
  align-items: center;
  background: #111318;
  color: white;
  display: inline-flex;
  height: 24px;
  justify-content: center;
  min-width: 24px;
  padding: 0 7px;
  font-size: 11px;
  font-weight: 950;
}

.pipeline-card {
  background: white;
  border: 1px solid var(--nex-line);
  display: grid;
  gap: 10px;
  margin-bottom: 10px;
  padding: 11px;
}

.pipeline-card button {
  background: transparent;
  border: 0;
  display: grid;
  gap: 4px;
  padding: 0;
  text-align: left;
  cursor: pointer;
}

.pipeline-card select {
  border: 1px solid var(--nex-line);
  background: #fafafb;
  color: #111318;
  font-size: 12px;
  font-weight: 800;
  min-height: 36px;
  padding: 8px;
  width: 100%;
}

.crm-import-grid .panel,
.crm-settings-grid .panel {
  min-width: 0;
}

.crm-cockpit {
  display: grid;
  gap: 14px;
}

.crm-cockpit-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(250px, 0.38fr);
  gap: 18px;
  align-items: end;
  overflow: hidden;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.055), transparent 38%),
    #ffffff;
  color: #111318;
  padding: 20px;
  box-shadow: 0 10px 30px rgb(18 22 30 / 0.06);
}

.crm-cockpit-hero h2 {
  max-width: 880px;
  margin: 4px 0 10px;
  color: #111318;
  font-size: clamp(25px, 3.4vw, 38px);
  font-weight: 950;
  line-height: 1.05;
}

.crm-cockpit-hero p:not(.eyebrow) {
  max-width: 860px;
  margin: 0;
  color: #5f6673;
  font-size: 14px;
  line-height: 1.6;
}

.crm-cockpit-status {
  display: grid;
  gap: 8px;
}

.crm-cockpit-status span {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #e3e7ef;
  border-radius: 8px;
  background: #fbfcfd;
  color: #363d48;
  padding: 10px;
  font-size: 12px;
  font-weight: 900;
}

.crm-cockpit-status svg {
  color: #ff2632;
}

.crm-cockpit-metrics {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
}

.crm-cockpit-card {
  display: grid;
  gap: 6px;
  min-height: 104px;
  border: 1px solid #e3e7ef;
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.045), transparent 48%),
    white;
  color: #111318;
  padding: 14px;
  text-align: left;
  cursor: pointer;
  box-shadow: 0 10px 26px rgb(18 22 30 / 0.04);
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.crm-cockpit-card:hover {
  border-color: rgb(227 6 19 / 0.34);
  box-shadow: 0 16px 36px rgb(18 22 30 / 0.08);
  transform: translateY(-1px);
}

.crm-cockpit-card svg {
  color: var(--nex-red);
}

.crm-cockpit-card.hot {
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.09), transparent 54%),
    white;
}

.crm-cockpit-card.danger {
  border-color: rgb(227 6 19 / 0.24);
}

.crm-cockpit-card strong {
  color: #111318;
  font-size: 28px;
  font-weight: 950;
  line-height: 1;
}

.crm-cockpit-card span {
  color: #252932;
  font-size: 13px;
  font-weight: 950;
}

.crm-cockpit-card em {
  color: #747c89;
  font-size: 11px;
  font-style: normal;
  font-weight: 850;
}

.crm-privacy-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.65fr);
  gap: 14px;
  align-items: center;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-left: 4px solid var(--nex-red);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.045), transparent 42%),
    #ffffff;
  padding: 16px;
  box-shadow: 0 10px 28px rgb(18 22 30 / 0.045);
}

.crm-privacy-summary h3 {
  margin: 3px 0 6px;
  color: #111318;
  font-size: 18px;
  line-height: 1.15;
}

.crm-privacy-summary p:not(.eyebrow) {
  margin: 0;
  color: #616978;
  font-size: 12px;
  line-height: 1.55;
}

.crm-privacy-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(116px, 1fr));
  gap: 8px;
}

.crm-privacy-stats span {
  display: grid;
  gap: 3px;
  border: 1px solid #e4e8ef;
  border-radius: 8px;
  background: #fbfcfd;
  padding: 10px;
  color: #687182;
  font-size: 11px;
  font-weight: 850;
}

.crm-privacy-stats strong {
  color: #111318;
  font-size: 20px;
  font-weight: 950;
}

.crm-cockpit-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 14px;
}

.crm-cockpit-grid .crm-wide-panel {
  grid-column: 1 / -1;
}

.crm-lead-queue,
.crm-smart-list-mini,
.crm-source-list,
.crm-smart-list-buttons,
.crm-lead-table,
.crm-accountability-table {
  display: grid;
  gap: 9px;
}

.crm-lead-queue button,
.crm-smart-list-mini button,
.crm-source-list button,
.crm-smart-list-buttons button,
.crm-lead-table button {
  width: 100%;
  border: 1px solid #e3e7ef;
  border-radius: 8px;
  background: #fbfcfd;
  color: #111318;
  padding: 11px;
  text-align: left;
  cursor: pointer;
}

.crm-lead-queue button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 10px;
  align-items: center;
}

.crm-lead-queue strong,
.crm-smart-list-mini span,
.crm-source-list span,
.crm-smart-list-buttons span,
.crm-lead-table strong,
.crm-accountability-table strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.crm-lead-queue span,
.crm-lead-table span,
.crm-accountability-table span {
  color: #67707d;
  font-size: 12px;
  font-weight: 750;
}

.crm-lead-queue em {
  grid-row: span 2;
  border: 1px solid rgb(227 6 19 / 0.2);
  border-radius: 999px;
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red);
  padding: 6px 8px;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
}

.crm-smart-list-mini button,
.crm-smart-list-buttons button,
.crm-source-list button {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 9px;
  align-items: center;
}

.crm-smart-list-buttons button.active {
  border-color: rgb(227 6 19 / 0.4);
  background: rgb(227 6 19 / 0.08);
}

.crm-smart-list-mini svg,
.crm-smart-list-buttons svg {
  color: var(--nex-red);
}

.crm-smart-list-mini strong,
.crm-smart-list-buttons strong,
.crm-source-list strong {
  display: inline-flex;
  min-width: 28px;
  height: 28px;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #111318;
  color: white;
  font-size: 12px;
  font-weight: 950;
}

.crm-accountability-table article {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) repeat(5, auto);
  gap: 8px;
  align-items: center;
  border: 1px solid #e3e7ef;
  border-radius: 8px;
  background: #fbfcfd;
  padding: 10px;
}

.crm-profile-badges,
.crm-card-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 8px;
}

.crm-profile-badges em,
.crm-contact-card small,
.pipeline-card small {
  border: 1px solid #dfe3ea;
  border-radius: 999px;
  background: #f7f8fa;
  color: #4f5662;
  padding: 5px 8px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  text-transform: uppercase;
}

.temperature-badge {
  border-color: #dfe3ea !important;
  background: #f7f8fa !important;
  color: #4f5662 !important;
}

.temperature-badge.hot {
  border-color: rgb(227 6 19 / 0.28) !important;
  background: rgb(227 6 19 / 0.1) !important;
  color: var(--nex-red) !important;
}

.temperature-badge.warm {
  border-color: rgb(201 162 74 / 0.3) !important;
  background: rgb(201 162 74 / 0.12) !important;
  color: #80601d !important;
}

.temperature-badge.cold {
  border-color: rgb(72 92 120 / 0.18) !important;
  background: rgb(72 92 120 / 0.08) !important;
  color: #526273 !important;
}

.temperature-badge.nurture {
  border-color: rgb(37 99 235 / 0.2) !important;
  background: rgb(37 99 235 / 0.08) !important;
  color: #1d4ed8 !important;
}

.temperature-badge.dead-dnc {
  border-color: rgb(17 19 24 / 0.18) !important;
  background: #eeeeef !important;
  color: #343a46 !important;
}

.private-lead-badge,
.private-lead-inline {
  align-items: center;
  display: inline-flex;
  gap: 5px;
}

.crm-profile-badges .private-lead-badge,
.private-lead-inline {
  border-color: rgb(227 6 19 / 0.25) !important;
  background: rgb(227 6 19 / 0.09) !important;
  color: var(--nex-red) !important;
}

.crm-contact-card .private-lead-inline {
  border: 0;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.crm-next-action-strip,
.crm-smart-plan-panel,
.crm-communication-panel {
  display: grid;
  gap: 12px;
  border: 1px solid #e3e7ef;
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.04), transparent 56%),
    #fbfcfd;
  padding: 14px;
}

.crm-next-action-strip {
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
}

.crm-next-action-strip svg {
  color: var(--nex-red);
}

.crm-next-action-strip strong,
.crm-smart-plan-panel h3,
.crm-communication-panel h3 {
  color: #111318;
  font-weight: 950;
}

.crm-next-action-strip p,
.crm-smart-plan-panel p {
  margin: 4px 0 0;
  color: #5f6673;
  font-size: 13px;
  line-height: 1.45;
}

.crm-smart-plan-panel {
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.32fr) auto;
  align-items: end;
}

.crm-smart-plan-panel article {
  grid-column: 1 / -1;
  border-top: 1px solid #e3e7ef;
  padding-top: 12px;
}

.crm-smart-plan-panel article strong {
  display: block;
  color: #111318;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.crm-communication-form {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  align-items: end;
}

.crm-communication-form .field:has(textarea) {
  grid-column: 1 / -1;
}

.crm-contact-card-head,
.pipeline-card-head {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: start;
}

.pipeline-card-head em {
  border-radius: 999px;
  padding: 5px 7px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
}

.crm-lead-table button {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) repeat(4, auto);
  gap: 10px;
  align-items: center;
}

.crm-smart-layout {
  display: grid;
  grid-template-columns: minmax(260px, 0.35fr) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.active-soft {
  border-color: rgb(227 6 19 / 0.35) !important;
  background: rgb(227 6 19 / 0.08) !important;
  color: var(--nex-red) !important;
}

.pipeline-empty {
  margin: 10px 0 0;
  color: #8b93a0;
  font-size: 12px;
  font-weight: 800;
}

.crm-dnc-toggle {
  align-self: center;
}

.crm-module .module-hero.crm-hero {
  align-items: center;
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.08), transparent 48%),
    #ffffff;
  border: 1px solid #e4e7ed;
  border-radius: 8px;
  box-shadow: 0 12px 32px rgb(18 22 30 / 0.06);
  color: #111318;
  display: grid;
  gap: 14px;
  min-height: auto;
  padding: 18px;
}

.crm-command-title {
  display: grid;
  gap: 4px;
}

.crm-command-title h3 {
  color: #111318;
  font-size: 30px;
  font-weight: 950;
  letter-spacing: 0;
  line-height: 1;
  margin: 0;
}

.crm-command-title p:not(.eyebrow) {
  color: #5f6673;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.45;
  margin: 0;
  max-width: 660px;
}

.crm-command-status {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.crm-command-status span {
  align-items: center;
  background: #f7f8fa;
  border: 1px solid #e2e6ee;
  border-radius: 999px;
  color: #343a46;
  display: inline-flex;
  font-size: 11px;
  font-weight: 950;
  gap: 6px;
  padding: 7px 9px;
  text-transform: uppercase;
}

.crm-command-status svg {
  color: var(--nex-red);
}

.crm-command-actions {
  gap: 8px;
  margin-top: 14px;
}

.crm-command-actions .btn {
  min-height: 38px;
  padding: 0 12px;
}

.crm-tabs {
  background: #f6f7f9;
  border: 1px solid #e3e7ef;
  border-radius: 8px;
  gap: 4px;
  margin: 12px 0 14px;
  padding: 5px;
}

.crm-tabs button {
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #5f6673;
  min-height: 34px;
  padding: 7px 11px;
}

.crm-tabs button.active {
  background: #111318;
  border-color: transparent;
  box-shadow: 0 8px 18px rgb(18 22 30 / 0.12);
  color: #ffffff;
}

.crm-cockpit {
  gap: 12px;
}

.crm-activity-board {
  display: grid;
  gap: 14px;
}

.crm-activity-command-band {
  align-items: center;
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.055), transparent 36%),
    #ffffff;
  border: 1px solid #e3e7ef;
  border-radius: 8px;
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 18px;
}

.crm-activity-command-band h2 {
  color: #111318;
  font-size: 28px;
  font-weight: 950;
  letter-spacing: 0;
  line-height: 1.05;
  margin: 2px 0 7px;
}

.crm-activity-command-band p:not(.eyebrow) {
  color: #5f6673;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.5;
  margin: 0;
  max-width: 880px;
}

.crm-activity-last-updated {
  align-items: center;
  background: #111318;
  border-radius: 8px;
  color: #ffffff;
  display: grid;
  gap: 3px;
  grid-template-columns: auto minmax(0, 1fr);
  min-width: 190px;
  padding: 12px;
}

.crm-activity-last-updated svg {
  grid-row: span 2;
  color: #ff2632;
}

.crm-activity-last-updated span {
  color: #d6dae2;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.crm-activity-last-updated strong {
  color: #ffffff;
  font-size: 14px;
  font-weight: 950;
}

.crm-activity-stat-row {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.crm-activity-stat-row button {
  background: #ffffff;
  border: 1px solid #e3e7ef;
  border-radius: 8px;
  color: #111318;
  cursor: pointer;
  display: grid;
  gap: 4px;
  min-height: 96px;
  padding: 12px;
  text-align: left;
}

.crm-activity-stat-row button.active,
.crm-activity-stat-row button:hover {
  border-color: rgb(227 6 19 / 0.34);
  box-shadow: 0 12px 28px rgb(18 22 30 / 0.08);
}

.crm-activity-stat-row svg {
  color: var(--nex-red);
}

.crm-activity-stat-row strong {
  color: #111318;
  font-size: 25px;
  font-weight: 950;
}

.crm-activity-stat-row span {
  color: #252b35;
  font-size: 12px;
  font-weight: 950;
}

.crm-activity-stat-row em {
  color: #687182;
  font-size: 11px;
  font-style: normal;
  font-weight: 850;
}

.crm-activity-toolbar {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.crm-activity-filter-group {
  background: #f6f7f9;
  border: 1px solid #e3e7ef;
  border-radius: 8px;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  padding: 5px;
}

.crm-activity-filter-group button {
  background: transparent;
  border: 0;
  border-radius: 6px;
  color: #58616f;
  cursor: pointer;
  font-size: 12px;
  font-weight: 900;
  min-height: 32px;
  padding: 7px 10px;
}

.crm-activity-filter-group button.active {
  background: #111318;
  color: #ffffff;
}

.crm-activity-card-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.crm-activity-card {
  background: #ffffff;
  border: 1px solid #e1e5ec;
  border-left: 4px solid #64748b;
  border-radius: 8px;
  box-shadow: 0 12px 28px rgb(18 22 30 / 0.055);
  display: grid;
  gap: 10px;
  min-width: 0;
  overflow: hidden;
  padding: 12px;
}

.crm-activity-card.needs-response {
  border-left-color: var(--nex-red);
}

.crm-activity-card.property {
  border-left-color: #0891b2;
}

.crm-activity-card.email {
  border-left-color: #2563eb;
}

.crm-activity-card.report {
  border-left-color: #b45309;
}

.crm-activity-card.automation {
  border-left-color: #7c3aed;
}

.crm-activity-card.task {
  border-left-color: #ca8a04;
}

.crm-activity-card.lead {
  border-left-color: #111318;
}

.crm-activity-card header,
.crm-activity-person,
.crm-activity-card footer,
.crm-activity-mini-facts span {
  align-items: center;
  display: flex;
}

.crm-activity-card header {
  justify-content: space-between;
  gap: 10px;
}

.crm-activity-person {
  gap: 9px;
  min-width: 0;
}

.crm-activity-person strong,
.crm-activity-person small,
.crm-activity-card-main p,
.crm-activity-mini-facts span {
  overflow-wrap: anywhere;
}

.crm-activity-person strong {
  color: #111318;
  display: block;
  font-size: 14px;
  font-weight: 950;
  line-height: 1.15;
}

.crm-activity-person small,
.crm-activity-card time {
  color: #667080;
  font-size: 11px;
  font-weight: 850;
}

.crm-activity-kind {
  align-items: center;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  color: #475569;
  display: inline-flex;
  flex: 0 0 auto;
  height: 34px;
  justify-content: center;
  width: 34px;
}

.crm-activity-kind.property {
  background: #ecfeff;
  border-color: #a5f3fc;
  color: #0e7490;
}

.crm-activity-kind.text {
  background: #fff1f2;
  border-color: #fecdd3;
  color: var(--nex-red);
}

.crm-activity-kind.email {
  background: #eff6ff;
  border-color: #bfdbfe;
  color: #2563eb;
}

.crm-activity-kind.report {
  background: #fffbeb;
  border-color: #fde68a;
  color: #b45309;
}

.crm-activity-kind.automation {
  background: #f5f3ff;
  border-color: #ddd6fe;
  color: #6d28d9;
}

.crm-activity-kind.lead {
  background: #f8fafc;
  border-color: #cbd5e1;
  color: #111318;
}

.crm-activity-card-main {
  background: #fbfcfd;
  border: 1px solid #eef1f5;
  border-radius: 8px;
  color: #111318;
  cursor: pointer;
  display: grid;
  gap: 8px;
  min-height: 116px;
  padding: 12px;
  text-align: left;
}

.crm-activity-card-main:hover {
  border-color: rgb(227 6 19 / 0.26);
}

.crm-activity-title {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.crm-activity-card-main p {
  color: #3f4753;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.45;
  margin: 0;
}

.crm-activity-property-preview {
  border-radius: 7px;
  display: grid;
  gap: 6px;
  overflow: hidden;
}

.crm-activity-property-preview img {
  aspect-ratio: 16 / 9;
  border-radius: 7px;
  object-fit: cover;
  width: 100%;
}

.crm-activity-property-preview em {
  color: #5f6673;
  font-size: 11px;
  font-style: normal;
  font-weight: 850;
}

.crm-activity-mini-facts {
  display: grid;
  gap: 6px;
}

.crm-activity-mini-facts span {
  color: #5f6673;
  gap: 6px;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.35;
}

.crm-activity-mini-facts svg {
  color: #7b8493;
  flex: 0 0 auto;
  height: 13px;
  width: 13px;
}

.crm-activity-card footer {
  border-top: 1px solid #edf0f4;
  display: grid;
  gap: 0;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin: 0 -12px -12px;
}

.crm-activity-card footer button,
.crm-activity-card footer a {
  align-items: center;
  background: #ffffff;
  border: 0;
  border-left: 1px solid #edf0f4;
  color: #114b9b;
  cursor: pointer;
  display: inline-flex;
  gap: 5px;
  justify-content: center;
  min-height: 38px;
  padding: 6px;
  text-decoration: none;
  font-size: 11px;
  font-weight: 950;
}

.crm-activity-card footer button:first-child {
  border-left: 0;
}

.crm-activity-card footer button:hover,
.crm-activity-card footer a:hover {
  background: #f6f8fb;
  color: var(--nex-red);
}

.crm-activity-card footer button:disabled {
  color: #a4acb8;
  cursor: not-allowed;
}

.crm-lead-snapshot-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.crm-lead-snapshot-grid article {
  background: #ffffff;
  border: 1px solid #e3e7ef;
  border-radius: 8px;
  display: grid;
  gap: 4px;
  min-height: 94px;
  padding: 12px;
}

.crm-lead-snapshot-grid svg {
  color: var(--nex-red);
}

.crm-lead-snapshot-grid span {
  color: #697282;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.crm-lead-snapshot-grid strong {
  color: #111318;
  font-size: 19px;
  font-weight: 950;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.crm-lead-snapshot-grid em {
  color: #606a79;
  font-size: 11px;
  font-style: normal;
  font-weight: 850;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.crm-cockpit-hero {
  align-items: center;
  background: #ffffff;
  border-color: #e3e7ef;
  border-radius: 8px;
  box-shadow: none;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 16px;
}

.crm-cockpit-hero h2 {
  font-size: 25px;
  line-height: 1.08;
  margin: 2px 0 7px;
}

.crm-cockpit-hero p:not(.eyebrow) {
  font-size: 13px;
  line-height: 1.45;
}

.crm-cockpit-status {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.crm-cockpit-status span {
  border-radius: 999px;
  padding: 8px 10px;
}

.crm-cockpit-metrics {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.crm-cockpit-card {
  gap: 5px;
  min-height: 92px;
  padding: 12px;
}

.crm-cockpit-card strong {
  font-size: 26px;
}

.crm-cockpit-card span {
  font-size: 12px;
}

.crm-cockpit-grid {
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
}

.crm-nia-panel {
  background:
    linear-gradient(135deg, rgb(17 19 24 / 0.04), transparent 46%),
    #ffffff;
  border: 1px solid #e3e7ef;
  border-radius: 8px;
  box-shadow: 0 10px 26px rgb(18 22 30 / 0.04);
  display: grid;
  gap: 11px;
  padding: 14px;
}

.crm-nia-panel.compact {
  min-height: 100%;
}

.crm-nia-page-shell {
  display: grid;
  max-width: 980px;
  margin: 0 auto;
}

.crm-nia-head {
  align-items: flex-start;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.crm-nia-head h3 {
  color: #111318;
  font-size: 18px;
  font-weight: 950;
  margin: 2px 0 0;
}

.crm-nia-head > span {
  align-items: center;
  background: #111318;
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: 950;
  gap: 5px;
  padding: 7px 9px;
  text-transform: uppercase;
}

.crm-nia-prompts {
  display: grid;
  gap: 7px;
}

.crm-nia-prompts button {
  background: #f8f9fb;
  border: 1px solid #e3e7ef;
  border-radius: 8px;
  color: #252b35;
  cursor: pointer;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
  padding: 9px 10px;
  text-align: left;
}

.crm-nia-prompts button:hover {
  border-color: rgb(227 6 19 / 0.35);
  color: var(--nex-red);
}

.crm-nia-form {
  display: grid;
  gap: 8px;
}

.crm-nia-form textarea {
  background: #fbfcfd;
  border: 1px solid #dfe3ea;
  border-radius: 8px;
  color: #111318;
  font: inherit;
  font-size: 13px;
  min-height: 70px;
  padding: 10px;
  resize: vertical;
  width: 100%;
}

.crm-nia-form .btn {
  justify-self: start;
}

.crm-nia-answer {
  background: #fbfcfd;
  border: 1px solid rgb(227 6 19 / 0.18);
  border-radius: 8px;
  display: grid;
  gap: 8px;
  padding: 12px;
}

.crm-nia-answer.crm-nia-loading {
  border-color: #dfe3ea;
  background:
    linear-gradient(90deg, rgba(227, 6, 19, 0.06), transparent 48%),
    #ffffff;
}

.crm-nia-answer.crm-nia-loading .output-card-head span {
  color: var(--nex-red);
}

.crm-nia-answer p {
  color: #343a46;
  font-size: 13px;
  line-height: 1.58;
  margin: 0;
  white-space: pre-wrap;
}

.crm-nia-source-list {
  margin-top: 0;
}

@media (max-width: 1180px) {
  .crm-activity-stat-row,
  .crm-lead-snapshot-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .crm-cockpit-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .crm-privacy-summary,
  .crm-cockpit-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .crm-activity-command-band,
  .crm-module .module-hero.crm-hero,
  .crm-cockpit-hero {
    grid-template-columns: 1fr;
    padding: 14px;
  }

  .crm-activity-toolbar {
    align-items: stretch;
    display: grid;
  }

  .crm-activity-filter-group {
    overflow-x: auto;
    flex-wrap: nowrap;
  }

  .crm-activity-filter-group button {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .crm-activity-card-grid,
  .crm-activity-stat-row,
  .crm-lead-snapshot-grid {
    grid-template-columns: 1fr;
  }

  .crm-activity-card footer {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .crm-command-title h3 {
    font-size: 26px;
  }

  .crm-cockpit-status {
    justify-content: flex-start;
  }

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

  .crm-nia-head {
    display: grid;
  }
}

.file-input {
  border: 1px dashed rgb(17 19 24 / 0.22);
  background: #fafafb;
  color: #343a46;
  padding: 12px;
  width: 100%;
}

.csv-sample {
  border: 1px solid var(--nex-line);
  background: #fafafb;
  margin-top: 16px;
  padding: 12px;
}

.csv-sample strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.csv-sample p,
.muted-text {
  color: #69717e;
  font-size: 12px;
  line-height: 1.55;
  margin: 6px 0 0;
}

.notification-bell {
  position: relative;
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  gap: 8px;
  justify-content: center;
  border: 1px solid var(--nex-line);
  border-radius: 8px;
  background: white;
  color: #111318;
  cursor: pointer;
  padding: 0 13px;
  transition: 160ms ease;
}

.notification-bell:hover,
.notification-bell.has-unread {
  border-color: rgb(227 6 19 / 0.35);
  box-shadow: 0 12px 24px rgb(17 19 24 / 0.09);
}

.notification-bell.has-unread {
  background: linear-gradient(135deg, #fff, rgb(227 6 19 / 0.08));
}

.notification-bell-icon {
  align-items: center;
  display: inline-flex;
  justify-content: center;
  position: relative;
}

.notification-bell-icon em {
  position: absolute;
  top: -6px;
  right: -9px;
  display: inline-flex;
  min-width: 20px;
  height: 20px;
  align-items: center;
  justify-content: center;
  border: 2px solid white;
  border-radius: 999px;
  background: var(--nex-red);
  color: white;
  padding: 0 5px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
}

.notification-bell-label {
  color: #171b22;
  font-size: 12px;
  font-weight: 950;
}

.buyer-hero {
  background:
    linear-gradient(100deg, rgb(0 0 0 / 0.9), rgb(0 0 0 / 0.54)),
    radial-gradient(circle at 86% 18%, rgb(227 6 19 / 0.5), transparent 32%),
    linear-gradient(135deg, #17191d, #3b1418);
}

.buyer-tracker-page {
  gap: 18px;
}

.buyer-create-form,
.buyer-list-page,
.buyer-detail-page {
  display: grid;
  gap: 16px;
}

.buyer-form-grid,
.buyer-filter-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.buyer-form-grid .field:has(textarea) {
  grid-column: 1 / -1;
}

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

.buyer-overdue-filter {
  align-self: end;
  min-height: 44px;
}

.buyer-transaction-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 14px;
}

.buyer-transaction-card {
  border: 1px solid var(--nex-line);
  background: white;
  box-shadow: 0 16px 36px rgb(5 5 5 / 0.07);
}

.buyer-transaction-card > button {
  display: grid;
  width: 100%;
  gap: 12px;
  border: 0;
  background: transparent;
  padding: 16px;
  text-align: left;
  cursor: pointer;
}

.buyer-card-head {
  display: grid;
  gap: 8px;
}

.buyer-card-head strong {
  color: #111318;
  font-size: 18px;
  font-weight: 950;
  line-height: 1.1;
}

.buyer-transaction-card p {
  margin: 0;
  color: #4f5662;
  font-size: 13px;
  line-height: 1.5;
}

.buyer-card-meta {
  display: grid;
  gap: 5px;
}

.buyer-card-meta span,
.buyer-transaction-card em {
  color: #69717e;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}

.status-badge,
.deadline-badge {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  background: #111318;
  color: white;
  padding: 6px 9px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.status-badge.closing-soon,
.deadline-badge.tone-soon {
  background: #c98213;
}

.status-badge.closed,
.deadline-badge.tone-complete {
  background: #19784d;
}

.status-badge.cancelled,
.deadline-badge.tone-overdue,
.deadline-badge.tone-today {
  background: var(--nex-red);
}

.deadline-badge.tone-tomorrow {
  background: #d6601f;
}

.deadline-badge.tone-none {
  background: #747985;
}

.progress-track {
  height: 8px;
  overflow: hidden;
  background: #e7e9ee;
}

.progress-track div {
  height: 100%;
  background: linear-gradient(90deg, var(--nex-red), #111318);
}

.buyer-detail-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 1px solid var(--nex-line);
  background: white;
  padding: 18px;
}

.buyer-detail-hero h3 {
  margin: 4px 0 6px;
  color: #111318;
  font-size: 28px;
  font-weight: 950;
  line-height: 1.04;
}

.buyer-detail-hero p {
  margin: 0;
  color: #5f6673;
  font-size: 13px;
  line-height: 1.5;
}

.deadline-summary-card {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  border: 1px solid rgb(227 6 19 / 0.22);
  background:
    linear-gradient(120deg, rgb(227 6 19 / 0.08), transparent 40%),
    white;
  padding: 18px;
}

.deadline-summary-card h3 {
  margin: 4px 0 6px;
  color: #111318;
  font-size: 22px;
  font-weight: 950;
}

.deadline-summary-card span {
  color: #5d6571;
  font-size: 13px;
  font-weight: 800;
}

.deadline-summary-card em {
  position: absolute;
  top: 14px;
  right: 14px;
  color: var(--nex-red);
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.deadline-summary-metrics {
  display: grid;
  grid-template-columns: auto auto;
  gap: 3px 9px;
  align-content: center;
  text-align: right;
}

.deadline-summary-metrics strong {
  color: #111318;
  font-size: 25px;
  font-weight: 950;
}

.deadline-summary-metrics strong.danger {
  color: var(--nex-red);
}

.deadline-summary-metrics span {
  align-self: center;
  font-size: 11px;
  text-transform: uppercase;
}

.deadline-summary-card .progress-track {
  grid-column: 1 / -1;
}

.buyer-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.38fr);
  gap: 16px;
  align-items: start;
}

.buyer-checklist-stack,
.buyer-side-panel {
  display: grid;
  gap: 14px;
}

.checklist-section {
  border: 1px solid var(--nex-line);
  background: white;
}

.checklist-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  border: 0;
  border-bottom: 1px solid var(--nex-line);
  background: white;
  color: inherit;
  padding: 14px 16px;
  text-align: left;
  cursor: pointer;
  transition: background 160ms ease, border-color 160ms ease;
}

.checklist-section-head:hover {
  background: #fbfcfd;
}

.checklist-section.collapsed .checklist-section-head {
  border-bottom-color: transparent;
}

.checklist-section-title {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-width: 0;
}

.checklist-section-title svg {
  color: var(--nex-red);
}

.checklist-section-title p {
  margin: 4px 0 0;
  color: #747c89;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}

.checklist-section-head h3 {
  margin: 0;
  color: #111318;
  font-size: 17px;
  font-weight: 950;
}

.checklist-section-head span {
  background: #111318;
  color: white;
  padding: 5px 8px;
  font-size: 11px;
  font-weight: 950;
}

.checklist-section-preview {
  display: grid;
  gap: 8px;
  border-top: 1px solid var(--nex-line);
  padding: 0 16px 14px;
}

.preview-task {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  background: #f8f9fb;
  padding: 10px;
}

.preview-task strong {
  color: #252932;
  font-size: 12px;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.preview-task small {
  color: #69707d;
  font-size: 11px;
  font-weight: 850;
  text-align: right;
}

.preview-task.tone-overdue,
.preview-task.tone-today {
  background: #fff0f1;
}

.preview-task.tone-tomorrow,
.preview-task.tone-soon {
  background: #fff7e5;
}

.checklist-section-preview > span,
.checklist-section-preview > em {
  color: #747c89;
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
}

.buyer-checklist-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.buyer-checklist-toolbar h3 {
  margin: 2px 0 4px;
  color: #111318;
  font-size: 20px;
  font-weight: 950;
}

.buyer-checklist-toolbar span {
  color: #69707d;
  font-size: 13px;
  font-weight: 750;
}

.checklist-task-list {
  display: grid;
}

.checklist-task-item {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  gap: 12px;
  border-bottom: 1px solid var(--nex-line);
  padding: 14px 16px;
}

.checklist-task-item:last-child {
  border-bottom: 0;
}

.checklist-task-item.tone-complete {
  background: #f2fbf6;
}

.checklist-task-item.tone-soon {
  background: #fff9e8;
}

.checklist-task-item.tone-tomorrow {
  background: #fff1e8;
}

.checklist-task-item.tone-today,
.checklist-task-item.tone-overdue {
  background: #fff0f1;
}

.task-check {
  display: flex;
  align-items: start;
  justify-content: center;
  padding-top: 2px;
}

.task-check input {
  width: 20px;
  height: 20px;
  accent-color: var(--nex-red);
}

.task-main {
  min-width: 0;
}

.task-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.task-title-row strong {
  color: #111318;
  font-size: 14px;
  font-weight: 950;
  line-height: 1.35;
}

.task-edit-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
  margin-top: 10px;
}

.task-edit-grid .field:has(textarea) {
  grid-column: 1 / -1;
}

.task-edit-grid .field span {
  font-size: 10px;
}

.task-edit-grid input,
.task-edit-grid select,
.task-edit-grid textarea {
  min-height: 36px;
  padding: 8px;
  font-size: 12px;
}

.task-edit-grid textarea {
  min-height: 58px;
}

.buyer-key-date-list {
  display: grid;
  gap: 8px;
  margin-bottom: 14px;
}

.buyer-key-date-list span {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid var(--nex-line);
  padding-bottom: 8px;
  color: #5f6673;
  font-size: 12px;
  font-weight: 800;
}

.buyer-key-date-list strong {
  color: #111318;
}

.reminder-settings-panel {
  border: 1px solid var(--nex-line);
  background: white;
  padding: 16px;
}

.check-grid {
  display: grid;
  gap: 8px;
  margin-bottom: 12px;
}

.notification-center {
  min-height: 420px;
}

.notification-list {
  display: grid;
  gap: 10px;
}

.notification-list article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  border: 1px solid var(--nex-line);
  border-radius: 8px;
  background: #fafafb;
  padding: 13px;
}

.notification-list article.unread {
  border-color: rgb(227 6 19 / 0.36);
  background: #fff7f7;
}

.notification-list span {
  color: var(--nex-red);
  display: block;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.notification-list strong {
  color: #111318;
  display: block;
  margin-top: 3px;
  font-size: 14px;
  font-weight: 950;
}

.notification-list p {
  color: #4f5662;
  font-size: 13px;
  line-height: 1.5;
  margin: 5px 0;
}

.notification-list em {
  color: #69717e;
  font-size: 11px;
  font-style: normal;
  font-weight: 850;
}

.communication-center-page {
  display: grid;
  gap: 18px;
}

.communication-hero {
  align-items: center;
}

.sms-readiness-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 14px;
  background:
    linear-gradient(135deg, rgba(227, 6, 19, 0.06), transparent 42%),
    #ffffff;
  box-shadow: 0 14px 40px rgba(15, 23, 42, 0.06);
  padding: 14px 16px;
}

.sms-readiness-card.live {
  border-color: rgba(28, 139, 86, 0.22);
  background:
    linear-gradient(135deg, rgba(28, 139, 86, 0.08), transparent 42%),
    #ffffff;
}

.sms-readiness-card.ready {
  border-color: rgba(245, 158, 11, 0.26);
  background:
    linear-gradient(135deg, rgba(245, 158, 11, 0.08), transparent 42%),
    #ffffff;
}

.sms-readiness-card h3,
.sms-readiness-card p {
  margin: 0;
}

.sms-readiness-card p:not(.eyebrow) {
  color: #5f6673;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.45;
}

.sms-readiness-meta {
  display: grid;
  justify-items: end;
  gap: 7px;
  min-width: 230px;
  text-align: right;
}

.sms-readiness-meta em {
  color: #69717e;
  font-size: 11px;
  font-style: normal;
  font-weight: 850;
  line-height: 1.35;
}

.hero-stat-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(150px, 1fr));
  gap: 12px;
  min-width: 320px;
}

.communication-grid,
.communication-admin-grid {
  display: grid;
  grid-template-columns: minmax(360px, 0.9fr) minmax(420px, 1.1fr);
  gap: 18px;
  align-items: start;
}

.communication-toggle-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 14px 0;
}

.communication-toggle-grid.compact {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.panel-header-row {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.status-pill {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  border: 1px solid #dfe2e8;
  border-radius: 999px;
  background: #f7f8fa;
  color: #5f6673;
  padding: 7px 10px;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  white-space: nowrap;
}

.status-pill.success {
  border-color: rgba(28, 139, 86, 0.28);
  background: #effaf4;
  color: #137044;
}

.status-pill.warning {
  border-color: rgba(245, 158, 11, 0.32);
  background: #fffbeb;
  color: #92400e;
}

.status-pill.neutral {
  border-color: rgba(15, 23, 42, 0.1);
  background: #f8fafc;
  color: #475569;
}

.inline-warning {
  border: 1px solid rgba(227, 6, 19, 0.22);
  border-radius: 10px;
  background: #fff7f7;
  color: #7f1d1d;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.45;
}

.verification-inline {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) auto;
  gap: 10px;
  align-items: end;
  margin-top: 14px;
}

.recipient-preview,
.delivery-log-list {
  display: grid;
  gap: 9px;
  margin-top: 14px;
}

.recipient-preview {
  border: 1px solid var(--nex-line);
  border-radius: 12px;
  background: #fafafb;
  padding: 12px;
}

.recipient-preview strong,
.recipient-preview p {
  margin: 0;
}

.recipient-preview div {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.recipient-preview span {
  border: 1px solid #dfe2e8;
  border-radius: 999px;
  background: #ffffff;
  color: #303540;
  padding: 6px 9px;
  font-size: 11px;
  font-weight: 850;
}

.delivery-log-list div {
  display: grid;
  gap: 3px;
  border-bottom: 1px solid var(--nex-line);
  padding-bottom: 9px;
}

.delivery-log-list strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.delivery-log-list span,
.delivery-log-list em {
  color: #69717e;
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
}

.notification-list .row-actions {
  justify-content: flex-end;
}

@media (max-width: 1100px) {
  .communication-hero {
    align-items: stretch;
  }

  .hero-stat-grid,
  .communication-grid,
  .communication-admin-grid {
    grid-template-columns: 1fr;
    min-width: 0;
  }

  .sms-readiness-card {
    align-items: stretch;
    flex-direction: column;
  }

  .sms-readiness-meta {
    justify-items: start;
    min-width: 0;
    text-align: left;
  }

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

@media (max-width: 680px) {
  .communication-toggle-grid,
  .communication-toggle-grid.compact,
  .verification-inline {
    grid-template-columns: 1fr;
  }

  .panel-header-row {
    align-items: stretch;
    flex-direction: column;
  }

  .recipient-preview div {
    display: grid;
  }
}

.production-calculator-page {
  gap: 18px;
}

.production-hero {
  background:
    linear-gradient(100deg, rgb(0 0 0 / 0.92), rgb(0 0 0 / 0.58)),
    radial-gradient(circle at 82% 16%, rgb(227 6 19 / 0.42), transparent 34%),
    linear-gradient(135deg, #111318, #3b1418);
}

.production-score-card {
  display: grid;
  min-width: 220px;
  place-items: center;
  gap: 8px;
  border: 1px solid rgb(255 255 255 / 0.16);
  background: rgb(255 255 255 / 0.1);
  padding: 20px;
  text-align: center;
}

.production-score-card span,
.production-daily-card p,
.production-updated {
  color: rgb(255 255 255 / 0.68);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.production-score-card strong {
  color: white;
  font-size: 54px;
  font-weight: 950;
  line-height: 0.9;
}

.production-status-badge,
.production-pace-badge {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  background: var(--nex-red);
  color: white;
  padding: 6px 9px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.production-status-badge.status-elite-pace,
.production-pace-badge.ahead {
  background: #19784d;
}

.production-status-badge.status-on-track,
.production-pace-badge.on-track {
  background: #1766a6;
}

.production-status-badge.status-needs-push {
  background: #c98213;
}

.production-status-badge.status-off-pace,
.production-pace-badge.behind {
  background: var(--nex-red);
}

.production-daily-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  background:
    linear-gradient(105deg, #111318, rgb(227 6 19 / 0.92)),
    var(--nex-red);
  color: white;
  padding: 26px;
  box-shadow: 0 20px 56px rgb(5 5 5 / 0.18);
}

.production-daily-card p,
.production-daily-card span {
  margin: 0;
}

.production-daily-card h3 {
  margin: 4px 0 8px;
  font-size: clamp(38px, 7vw, 72px);
  font-weight: 950;
  line-height: 0.94;
}

.production-daily-card span {
  color: rgb(255 255 255 / 0.78);
  font-size: 15px;
  font-weight: 800;
}

.production-grid.two-column,
.production-activity-layout {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  align-items: start;
}

.production-card {
  display: grid;
  gap: 14px;
}

.production-form-grid,
.production-assumption-list,
.production-activity-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.production-assumption-list,
.production-activity-form {
  grid-template-columns: 1fr;
}

.production-field {
  display: grid;
  gap: 6px;
}

.production-field span {
  color: #343a46;
  font-size: 12px;
  font-weight: 900;
}

.production-field small,
.production-muted {
  color: #6b7280;
  font-size: 12px;
  line-height: 1.45;
}

.production-input-wrap {
  display: flex;
  align-items: center;
  border: 1px solid #d8dce4;
  background: white;
}

.production-input-wrap em {
  color: #69717e;
  padding: 0 10px;
  font-size: 12px;
  font-style: normal;
  font-weight: 950;
}

.production-field > input,
.production-input-wrap input {
  flex: 1;
  width: 100%;
  min-width: 0;
  min-height: 42px;
  border: 0;
  background: white;
  color: #111318;
  padding: 0 10px;
  font-size: 14px;
  font-weight: 850;
}

.production-field > input {
  border: 1px solid #d8dce4;
}

.production-field > textarea {
  width: 100%;
  min-height: 84px;
  resize: vertical;
  border: 1px solid #d8dce4;
  background: white;
  color: #111318;
  padding: 10px;
  font: inherit;
  font-size: 14px;
  font-weight: 750;
}

.production-metrics-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 12px;
}

.production-metric-card {
  display: grid;
  gap: 8px;
  border: 1px solid var(--nex-line);
  background: #fafafb;
  padding: 15px;
}

.production-metric-card.featured {
  border-color: rgb(227 6 19 / 0.35);
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.08), transparent 58%),
    white;
}

.production-metric-card svg {
  color: var(--nex-red);
}

.production-metric-card span {
  color: #69717e;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.production-metric-card strong {
  color: #111318;
  font-size: 26px;
  font-weight: 950;
  line-height: 1;
}

.production-period-toggle {
  display: flex;
  gap: 6px;
  background: #f0f2f6;
  padding: 4px;
}

.production-period-toggle button {
  border: 0;
  background: transparent;
  color: #4f5662;
  padding: 8px 11px;
  font-size: 12px;
  font-weight: 900;
}

.production-period-toggle button.active {
  background: #111318;
  color: white;
}

.production-accountability-panel {
  display: grid;
  gap: 14px;
}

.production-accountability-panel > p {
  margin: 0;
  color: #4f5662;
  font-size: 13px;
  line-height: 1.5;
}

.production-score-ring {
  display: grid;
  min-height: 150px;
  place-items: center;
  border: 1px solid rgb(227 6 19 / 0.28);
  background:
    radial-gradient(circle at center, rgb(227 6 19 / 0.1), transparent 58%),
    white;
  text-align: center;
}

.production-score-ring strong {
  color: var(--nex-red);
  font-size: 62px;
  font-weight: 950;
  line-height: 0.9;
}

.production-score-ring span {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.production-activity-rows {
  display: grid;
  gap: 9px;
}

.production-activity-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(90px, 0.45fr) auto;
  gap: 10px;
  align-items: center;
  border: 1px solid var(--nex-line);
  background: #fafafb;
  padding: 11px;
}

.production-activity-row > div:first-child {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 2px 8px;
  align-items: center;
}

.production-activity-row svg {
  grid-row: span 2;
  color: var(--nex-red);
}

.production-activity-row strong,
.production-activity-row span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.production-activity-row strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.production-activity-row span {
  color: #69717e;
  font-size: 11px;
  font-weight: 800;
}

.production-progress {
  height: 8px;
  overflow: hidden;
  background: #e3e6ec;
}

.production-progress div {
  height: 100%;
  background: linear-gradient(90deg, var(--nex-red), #111318);
}

.production-game-plan-page .panel {
  border-radius: 8px;
}

.game-plan-hero {
  overflow: hidden;
  position: relative;
}

.game-plan-hero::after {
  content: "";
  position: absolute;
  inset: auto -8% -42% auto;
  width: 420px;
  aspect-ratio: 1;
  border: 1px solid rgb(255 255 255 / 0.14);
  border-radius: 999px;
}

.game-plan-daily {
  border-radius: 8px;
}

.game-plan-daily h3 {
  font-size: clamp(28px, 4vw, 52px);
  line-height: 1.02;
}

.goal-preset-row,
.quick-log-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.goal-preset-row button,
.quick-log-row button {
  border: 1px solid #d8dce4;
  background: white;
  color: #111318;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 950;
}

.goal-preset-row button.active,
.quick-log-row button:hover {
  border-color: var(--nex-red);
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red);
}

.game-plan-profile-strip {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.game-plan-profile-strip > div {
  display: grid;
  gap: 4px;
  border: 1px solid #e2e5eb;
  background: #fafafb;
  padding: 13px;
}

.game-plan-profile-strip span,
.coach-list-grid span {
  color: #69717e;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.game-plan-profile-strip strong {
  color: #111318;
  font-size: 18px;
  font-weight: 950;
}

.game-plan-profile-strip small,
.coach-list-grid small {
  color: #596170;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.4;
}

.nia-coach-card {
  background:
    linear-gradient(135deg, rgb(17 19 24 / 0.98), rgb(61 11 16 / 0.96)),
    #111318;
  color: white;
}

.nia-coach-card .panel-heading h3,
.nia-coach-card h4 {
  color: white;
}

.nia-coach-card p {
  color: rgb(255 255 255 / 0.78);
  line-height: 1.55;
}

.coach-list-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.coach-list-grid > div {
  display: grid;
  gap: 8px;
  border: 1px solid rgb(255 255 255 / 0.14);
  background: rgb(255 255 255 / 0.07);
  padding: 12px;
}

.coach-list-grid small {
  color: rgb(255 255 255 / 0.82);
}

.game-plan-metrics .production-metric-card {
  min-height: 112px;
}

.production-score-ring.large {
  min-height: 190px;
}

.production-activity-rows.compact .production-activity-row {
  grid-template-columns: minmax(0, 1fr);
}

.advanced-production-grid {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  gap: 18px;
  margin-top: 14px;
}

.advanced-production-grid > div {
  display: grid;
  gap: 10px;
  border: 1px solid #e2e5eb;
  background: #fafafb;
  padding: 14px;
}

.advanced-production-grid h4 {
  margin: 0;
}

.admin-production-table {
  display: grid;
  gap: 8px;
}

.admin-production-table article {
  display: grid;
  grid-template-columns: minmax(160px, 1fr) repeat(3, minmax(90px, auto));
  gap: 12px;
  align-items: center;
  border: 1px solid #e2e5eb;
  background: #fafafb;
  padding: 12px;
}

.admin-production-table strong {
  color: #111318;
}

.admin-production-table span,
.admin-production-table em {
  color: #596170;
  font-style: normal;
  font-weight: 850;
}

.nex-chat-page {
  display: grid;
  grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
  gap: 18px;
  min-height: calc(100vh - 130px);
  padding-top: 22px;
}

.nex-chat-sidebar,
.nex-chat-main {
  border: 1px solid var(--nex-line);
  background: white;
  box-shadow: 0 16px 44px rgb(18 22 30 / 0.05);
}

.nex-chat-sidebar {
  display: grid;
  align-content: start;
  gap: 12px;
  padding: 16px;
}

.nex-chat-section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: #111318;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.nex-chat-section-heading em {
  color: #7a808c;
  font-style: normal;
}

.dm-heading {
  margin-top: 8px;
}

.chat-dm-filter {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.chat-dm-filter button {
  min-height: 36px;
  padding: 7px 8px;
}

.nex-chat-room-list {
  display: grid;
  gap: 7px;
}

.nex-chat-room-list button {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  border: 1px solid #dfe2e8;
  background: #fafafb;
  color: #252a34;
  padding: 9px;
  text-align: left;
}

.nex-chat-room-list button.active {
  border-color: rgb(227 6 19 / 0.3);
  background: #111318;
  color: white;
  box-shadow: inset 3px 0 0 var(--nex-red);
}

.nex-chat-room-list button > span:first-child,
.mini-avatar,
.chat-avatar {
  display: grid;
  height: 30px;
  width: 30px;
  place-items: center;
  background: var(--nex-red);
  color: white;
  font-size: 12px;
  font-weight: 950;
}

.mini-avatar.user-avatar,
.chat-avatar.user-avatar {
  padding: 0;
  border-color: rgb(227 6 19 / 0.22);
  background: #fff;
  color: transparent;
}

.nex-chat-room-list strong {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 13px;
  font-weight: 900;
}

.nex-chat-room-list em {
  display: inline-grid;
  min-width: 22px;
  height: 22px;
  place-items: center;
  background: var(--nex-red);
  color: white;
  padding: 0 6px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
}

.nex-channel-create {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 38px;
  gap: 7px;
}

.nex-channel-create input {
  min-width: 0;
  border: 1px solid #dfe2e8;
  padding: 0 9px;
}

.nex-channel-create button {
  border: 0;
  background: var(--nex-red);
  color: white;
}

.nex-chat-main {
  display: grid;
  min-width: 0;
  grid-template-rows: auto minmax(0, 1fr) auto;
  overflow: hidden;
}

.nex-chat-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border-bottom: 1px solid var(--nex-line);
  background:
    linear-gradient(135deg, #ffffff, #f7f8fa);
  padding: 16px 18px;
}

.nex-chat-header h3 {
  margin: 2px 0;
  color: #111318;
  font-size: 24px;
  font-weight: 950;
}

.nex-chat-header span {
  color: #69717e;
  font-size: 12px;
  font-weight: 800;
}

.nex-chat-stream {
  display: flex;
  min-height: 420px;
  flex-direction: column;
  gap: 14px;
  overflow-y: auto;
  padding: 18px;
}

.nex-chat-message {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

.nex-chat-message.mine {
  grid-template-columns: minmax(0, 1fr) 38px;
}

.nex-chat-message.mine .chat-avatar {
  grid-column: 2;
}

.nex-chat-message.mine .chat-message-body {
  grid-column: 1;
  grid-row: 1;
  justify-self: end;
  background: #111318;
  color: white;
}

.nex-chat-message.mine .chat-message-meta span,
.nex-chat-message.mine .chat-message-body p {
  color: rgb(255 255 255 / 0.72);
}

.chat-avatar {
  height: 38px;
  width: 38px;
}

.chat-message-body {
  max-width: min(760px, 100%);
  border: 1px solid var(--nex-line);
  background: #fafafb;
  padding: 12px 13px;
}

.chat-message-meta {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin-bottom: 7px;
}

.chat-message-meta strong {
  color: inherit;
  font-size: 13px;
  font-weight: 950;
}

.chat-message-meta span {
  color: #7a808c;
  font-size: 11px;
  font-weight: 800;
}

.chat-message-body p {
  margin: 0;
  color: #303540;
  font-size: 14px;
  line-height: 1.48;
  white-space: pre-wrap;
}

.chat-attachments {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.chat-attachments a {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  border: 1px solid rgb(255 255 255 / 0.18);
  background: rgb(255 255 255 / 0.1);
  color: inherit;
  padding: 8px;
  text-decoration: none;
}

.chat-attachments a:not(.image-attachment) {
  border-color: #dfe2e8;
  background: white;
  color: #111318;
}

.chat-attachments img {
  grid-column: 1 / -1;
  max-height: 240px;
  max-width: 100%;
  object-fit: cover;
}

.chat-attachments span {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 12px;
  font-weight: 900;
}

.chat-attachments small {
  display: block;
  margin-top: 3px;
  color: #7a808c;
  font-size: 10px;
}

.nex-chat-composer {
  position: relative;
  display: grid;
  gap: 9px;
  border-top: 1px solid var(--nex-line);
  background: white;
  padding: 12px;
}

.emoji-row {
  display: flex;
  gap: 6px;
  overflow-x: auto;
}

.emoji-row button {
  border: 1px solid #dfe2e8;
  background: #fafafb;
  padding: 6px 8px;
}

.pending-attachments {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.pending-attachments span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: #f1f2f5;
  color: #303540;
  padding: 7px 9px;
  font-size: 12px;
  font-weight: 850;
}

.pending-attachments button {
  border: 0;
  background: transparent;
  color: var(--nex-red);
  font-weight: 950;
}

.chat-mention-menu {
  position: absolute;
  right: 92px;
  bottom: calc(100% - 8px);
  z-index: 30;
  display: grid;
  width: min(420px, calc(100% - 118px));
  max-height: 340px;
  overflow: auto;
  border: 1px solid rgba(17, 19, 24, 0.12);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 22px 60px rgba(17, 19, 24, 0.18);
}

.chat-mention-menu-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border-bottom: 1px solid #e6e9ef;
  padding: 10px 12px;
}

.chat-mention-menu-header strong {
  color: #111318;
  font-size: 12px;
  font-weight: 950;
}

.chat-mention-menu-header small {
  color: #6b7280;
  font-size: 11px;
  font-weight: 750;
  text-align: right;
}

.chat-mention-menu button {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  border: 0;
  border-bottom: 1px solid #eef1f5;
  background: #ffffff;
  padding: 10px 12px;
  color: #111318;
  text-align: left;
}

.chat-mention-menu button:hover,
.chat-mention-menu button.active {
  background: #fff3f4;
}

.chat-mention-menu button span {
  min-width: 0;
}

.chat-mention-menu button strong,
.chat-mention-menu button small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.chat-mention-menu button strong {
  font-size: 13px;
  font-weight: 950;
}

.chat-mention-menu button small {
  margin-top: 2px;
  color: #5f6877;
  font-size: 11px;
  font-weight: 800;
}

.chat-mention-menu p {
  margin: 0;
  padding: 14px;
  color: #5f6877;
  font-size: 12px;
  font-weight: 800;
}

.composer-row {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  gap: 9px;
  align-items: end;
}

.chat-attach-button {
  display: grid;
  height: 44px;
  place-items: center;
  border: 1px solid #dfe2e8;
  background: #fafafb;
  color: #111318;
  cursor: pointer;
}

.chat-attach-button input {
  display: none;
}

.composer-row textarea {
  min-height: 44px;
  max-height: 150px;
  resize: vertical;
  border: 1px solid #dfe2e8;
  padding: 10px;
  font-size: 14px;
}

.hero-panel {
  min-height: 260px;
  overflow: hidden;
  border: 1px solid rgb(255 255 255 / 0.16);
  background:
    linear-gradient(100deg, rgb(0 0 0 / 0.9), rgb(0 0 0 / 0.5)),
    url("data:image/svg+xml,%3Csvg width='1200' height='560' viewBox='0 0 1200 560' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='1200' height='560' fill='%2324272d'/%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='.14' stroke-width='3'%3E%3Cpath d='M80 420 L260 250 L420 420 Z'/%3E%3Cpath d='M270 420 L520 180 L790 420 Z'/%3E%3Cpath d='M760 420 L980 230 L1140 420 Z'/%3E%3Cpath d='M170 420 V535 M360 420 V535 M620 420 V535 M910 420 V535 M1080 420 V535'/%3E%3C/g%3E%3Cg fill='%23e30613' fill-opacity='.8'%3E%3Crect x='520' y='252' width='38' height='168'/%3E%3Crect x='558' y='216' width='38' height='204'/%3E%3Crect x='596' y='282' width='38' height='138'/%3E%3C/g%3E%3C/svg%3E");
  background-position: center;
  background-size: cover;
  color: white;
  box-shadow: 0 24px 70px rgb(5 5 5 / 0.18);
}

.hero-content {
  max-width: 720px;
  padding: 34px;
}

.hero-content h3 {
  margin: 10px 0;
  max-width: 680px;
  font-size: clamp(34px, 6vw, 58px);
  font-weight: 950;
  line-height: 0.96;
}

.hero-content p:not(.eyebrow) {
  max-width: 650px;
  color: rgb(255 255 255 / 0.78);
  font-size: 16px;
  line-height: 1.6;
}

.stats-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.stat-card,
.panel,
.chat-card {
  border: 1px solid var(--nex-line);
  background: white;
}

.stat-card {
  display: flex;
  min-height: 86px;
  align-items: center;
  gap: 14px;
  padding: 16px;
}

.stat-card svg {
  color: var(--nex-charcoal);
}

.stat-card.red svg {
  color: var(--nex-red);
}

.stat-card.gold svg {
  color: var(--nex-gold);
}

.stat-card p {
  margin: 0;
  color: #69707d;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.stat-card strong {
  display: block;
  margin-top: 3px;
  font-size: 23px;
  font-weight: 950;
}

.panel {
  min-width: 0;
  padding: 18px;
  box-shadow: 0 16px 44px rgb(18 22 30 / 0.05);
}

.panel-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 16px;
}

.panel-heading h3 {
  margin: 3px 0 0;
  font-size: 19px;
  font-weight: 900;
}

.studio-strip {
  border: 1px solid var(--nex-line);
  background:
    linear-gradient(135deg, #ffffff, #f7f8fa);
  padding: 18px;
  box-shadow: 0 16px 44px rgb(18 22 30 / 0.05);
}

.studio-template-row {
  display: grid;
  grid-template-columns: repeat(6, minmax(120px, 1fr));
  gap: 10px;
}

.studio-template-card {
  position: relative;
  display: grid;
  min-height: 150px;
  align-content: end;
  overflow: hidden;
  border: 1px solid #dfe2e8;
  background:
    linear-gradient(145deg, rgb(17 19 24 / 0.9), rgb(17 19 24 / 0.62)),
    linear-gradient(135deg, var(--accent), #ffffff);
  color: white;
  padding: 14px;
  text-align: left;
}

.studio-template-card::before {
  content: "";
  position: absolute;
  inset: 14px;
  border: 1px solid rgb(255 255 255 / 0.18);
}

.studio-template-card::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 6px;
  background: var(--accent);
}

.studio-template-card span,
.studio-template-card strong,
.studio-template-card em,
.studio-template-card .brand-logo {
  position: relative;
  z-index: 1;
}

.template-card-logo {
  width: 86px;
  max-height: 34px;
}

.studio-template-card span {
  color: var(--accent);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.studio-template-card strong {
  margin-top: 8px;
  font-size: 21px;
  font-weight: 950;
  line-height: 0.95;
  overflow-wrap: anywhere;
}

.studio-template-card em {
  margin-top: 12px;
  color: rgb(255 255 255 / 0.66);
  font-size: 11px;
  font-style: normal;
  font-weight: 850;
  text-transform: uppercase;
}

.canva-studio {
  display: grid;
  gap: 12px;
  min-height: calc(100vh - 92px);
  max-width: 100%;
  min-width: 0;
  padding-top: 14px;
}

.studio-top-toolbar {
  display: grid;
  grid-template-columns: minmax(280px, 1fr) auto;
  gap: 14px;
  align-items: center;
  border: 1px solid var(--nex-line);
  background: white;
  padding: 12px;
  box-shadow: 0 12px 32px rgb(18 22 30 / 0.05);
}

.project-title-wrap {
  display: grid;
  gap: 4px;
}

.project-title-wrap input {
  width: 100%;
  border: 0;
  border-bottom: 1px solid #dfe2e8;
  background: transparent;
  color: #111318;
  padding: 3px 0 7px;
  font-size: 20px;
  font-weight: 950;
}

.project-title-wrap span {
  color: #6b7280;
  font-size: 11px;
  font-weight: 850;
}

.studio-toolbar-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: end;
}

.studio-toolbar-actions .btn {
  min-height: 36px;
}

.studio-export-strip {
  display: grid;
  grid-template-columns: minmax(220px, 0.34fr) minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  border: 1px solid rgb(17 19 24 / 0.09);
  background:
    linear-gradient(135deg, #ffffff 0%, #f7f8fb 100%);
  padding: 12px;
  box-shadow: 0 12px 34px rgb(18 22 30 / 0.05);
}

.studio-export-strip > div:first-child {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.studio-export-strip strong {
  color: #111318;
  font-size: 16px;
  font-weight: 950;
}

.studio-export-strip span,
.studio-note {
  color: #69707d;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.45;
}

.studio-export-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: end;
  gap: 8px;
}

.studio-export-grid,
.studio-social-grid {
  display: grid;
  gap: 8px;
}

.studio-export-grid button,
.studio-social-grid button {
  display: flex;
  min-height: 42px;
  align-items: center;
  gap: 9px;
  border: 1px solid #dfe2e8;
  background: white;
  color: #303540;
  padding: 10px 11px;
  text-align: left;
}

.studio-export-grid button:hover,
.studio-social-grid button:hover {
  border-color: rgb(227 6 19 / 0.34);
  box-shadow: 0 10px 24px rgb(17 19 24 / 0.06);
}

.studio-export-grid span,
.studio-social-grid span {
  min-width: 0;
  font-size: 12px;
  font-weight: 900;
}

.simple-studio,
.simple-studio-home,
.simple-builder,
.simple-result {
  display: grid;
  gap: 18px;
  min-width: 0;
}

.simple-studio {
  color: #111318;
}

.simple-studio-hero,
.simple-builder-head,
.simple-result-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 22px;
  background:
    radial-gradient(circle at 92% 20%, rgb(227 6 19 / 0.12), transparent 30%),
    linear-gradient(135deg, #ffffff 0%, #f8fafc 58%, #fff5f5 100%);
  padding: clamp(18px, 3vw, 30px);
  box-shadow: 0 18px 42px rgb(15 23 42 / 0.07);
}

.simple-studio-hero h2,
.simple-builder-head h2,
.simple-result-head h2 {
  max-width: 760px;
  margin: 0;
  color: #111318;
  font-size: clamp(28px, 4vw, 52px);
  font-weight: 950;
  letter-spacing: 0;
  line-height: 1.02;
}

.simple-studio-hero p,
.simple-builder-head p,
.simple-result-head p,
.simple-create-panel > span,
.simple-section-head span,
.simple-builder-side p,
.simple-helper-note,
.simple-brand-card p {
  color: #667085;
  font-weight: 750;
  line-height: 1.45;
}

.simple-create-panel,
.simple-builder-form section,
.simple-builder-side section,
.simple-asset-list,
.simple-edit-panel section,
.simple-brand-card,
.simple-studio-bottom > article {
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 14px 32px rgb(15 23 42 / 0.06);
}

.simple-create-panel,
.simple-builder-form section,
.simple-builder-side section,
.simple-edit-panel section,
.simple-brand-card,
.simple-studio-bottom > article {
  padding: clamp(16px, 2.4vw, 24px);
}

.simple-section-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  margin-bottom: 14px;
}

.simple-section-head.compact {
  margin-bottom: 10px;
}

.simple-section-head h3,
.simple-builder-side h3,
.simple-edit-panel h3 {
  margin: 0;
  color: #111318;
  font-size: 20px;
  font-weight: 950;
  line-height: 1.12;
}

.simple-headshot-field {
  display: grid;
  gap: 10px;
  margin-top: 4px;
}

.simple-headshot-field .file-drop {
  min-height: 126px;
}

.simple-headshot-field .file-drop img {
  width: 72px;
  height: 72px;
  border-radius: 18px;
  object-fit: cover;
}

.simple-workflow-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
}

.simple-workflow-grid button,
.simple-recent-grid button,
.simple-asset-list button {
  display: grid;
  gap: 8px;
  min-width: 0;
  border: 1px solid #e5e8ef;
  border-radius: 16px;
  background: #ffffff;
  color: #111318;
  padding: 16px;
  text-align: left;
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}

.simple-workflow-grid button:hover,
.simple-recent-grid button:hover,
.simple-asset-list button:hover,
.simple-asset-list button.selected {
  border-color: rgb(227 6 19 / 0.36);
  box-shadow: 0 16px 34px rgb(227 6 19 / 0.11);
  transform: translateY(-1px);
}

.simple-workflow-grid svg {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 13px;
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red);
  padding: 9px;
}

.simple-workflow-grid strong,
.simple-recent-grid strong,
.simple-asset-list strong {
  color: #111318;
  font-size: 15px;
  font-weight: 950;
  line-height: 1.18;
}

.simple-workflow-grid span,
.simple-recent-grid span,
.simple-asset-list em,
.simple-recent-grid em {
  color: #667085;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.35;
}

.simple-workflow-grid em {
  justify-self: start;
  border-radius: 999px;
  background: #111318;
  color: #ffffff;
  padding: 6px 10px;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
}

.simple-studio-bottom {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(280px, 0.6fr);
  gap: 18px;
}

.simple-recent-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 10px;
}

.simple-brand-card {
  display: grid;
  gap: 14px;
}

.simple-brand-status {
  display: grid;
  gap: 7px;
}

.simple-brand-status > span {
  display: grid;
  place-items: center;
  width: 82px;
  height: 82px;
  overflow: hidden;
  border: 1px solid #e5e8ef;
  border-radius: 18px;
  background: #f8fafc;
}

.simple-brand-status img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.simple-brand-status strong,
.simple-brand-status em {
  overflow-wrap: anywhere;
  color: #111318;
  font-style: normal;
  font-weight: 850;
}

.simple-builder-grid,
.simple-result-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 18px;
  align-items: start;
}

.simple-builder-form {
  display: grid;
  gap: 16px;
  min-width: 0;
}

.simple-builder-side,
.simple-edit-panel {
  display: grid;
  gap: 14px;
  position: sticky;
  top: 86px;
}

.simple-inline-fields {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.simple-photo-row {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.simple-photo-row article {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.simple-photo-row img {
  width: 100%;
  aspect-ratio: 4 / 3;
  border-radius: 12px;
  background: #f3f4f6;
  object-fit: cover;
}

.simple-photo-row div,
.simple-style-buttons,
.simple-option-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.simple-photo-row button,
.simple-style-buttons button,
.simple-option-list button {
  min-height: 34px;
  border: 1px solid #dfe3ea;
  border-radius: 999px;
  background: #ffffff;
  color: #111318;
  padding: 0 11px;
  font-size: 11px;
  font-weight: 900;
}

.simple-style-buttons button.selected,
.simple-option-list button:hover {
  border-color: var(--nex-red);
  background: rgb(227 6 19 / 0.07);
  color: var(--nex-red);
}

.simple-recommended-box div {
  display: grid;
  gap: 8px;
}

.simple-recommended-box span {
  display: flex;
  align-items: center;
  gap: 8px;
  border-radius: 12px;
  background: #f7f8fb;
  color: #303642;
  padding: 9px 10px;
  font-size: 12px;
  font-weight: 900;
}

.simple-recommended-box small {
  display: block;
  margin-top: 10px;
  color: #a16207;
  font-weight: 850;
  line-height: 1.4;
}

.simple-generate-actions {
  display: grid;
  gap: 9px;
}

.simple-generate-actions .btn,
.simple-export-card .btn {
  width: 100%;
  justify-content: center;
}

.simple-result-grid {
  grid-template-columns: 220px minmax(0, 1fr) 320px;
}

.simple-asset-list {
  display: grid;
  gap: 10px;
  padding: 14px;
  position: sticky;
  top: 86px;
}

.simple-asset-list button {
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  padding: 12px;
}

.simple-asset-list svg {
  color: var(--nex-red);
}

.simple-preview-wrap {
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 22px;
  background: linear-gradient(180deg, #f7f8fb, #edf0f5);
  padding: clamp(10px, 2vw, 22px);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.9), 0 18px 40px rgb(15 23 42 / 0.08);
}

.canva-studio,
.simple-studio,
.simple-builder-grid,
.simple-result-grid,
.simple-preview-wrap,
.studio-canvas-panel,
.preview-shell {
  max-width: 100%;
  min-width: 0;
}

.flyer-page,
.studio-flyer,
.studio-business-card-canvas,
.studio-email-signature-canvas,
.mini-template-preview,
.project-thumb {
  max-width: 100%;
}

.flyer-page img,
.studio-flyer img,
.studio-business-card-canvas img,
.studio-email-signature-canvas img,
.mini-template-preview img,
.project-thumb img {
  max-width: 100%;
}

.flyer-page .brand-logo,
.studio-flyer .brand-logo,
.studio-business-card-canvas .brand-logo,
.studio-email-signature-canvas .brand-logo,
.mini-template-preview .brand-logo,
.project-thumb .brand-logo {
  display: block;
  flex: 0 0 auto;
  height: auto;
  min-height: 0;
  object-fit: contain;
  object-position: left center;
}

.flyer-copy-block,
.flyer-details,
.flyer-headline,
.flyer-footer,
.price-block,
.agent-strip,
.canvas-editable,
.studio-card-agent-copy,
.email-signature-main,
.email-signature-contact {
  min-width: 0;
  overflow-wrap: anywhere;
}

.simple-edit-panel section {
  display: grid;
  gap: 12px;
}

.simple-option-list span {
  flex-basis: 100%;
  color: #667085;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.simple-export-card {
  border-color: rgb(227 6 19 / 0.16);
  background: linear-gradient(180deg, #ffffff, #fff7f7);
}

.studio-start-strip {
  display: grid;
  grid-template-columns: minmax(280px, 0.42fr) minmax(0, 1fr);
  gap: 16px;
  align-items: stretch;
  overflow: hidden;
  border: 1px solid rgb(17 19 24 / 0.08);
  background:
    linear-gradient(135deg, #f9fbff 0%, #eef7fb 43%, #fff4f4 100%);
  color: #111318;
  padding: 18px;
  box-shadow: 0 16px 38px rgb(18 22 30 / 0.06);
}

.studio-start-copy {
  display: grid;
  align-content: center;
  gap: 10px;
  min-width: 0;
}

.studio-start-copy strong {
  color: #111318;
  font-size: clamp(28px, 3.4vw, 44px);
  font-weight: 950;
  line-height: 1;
}

.studio-start-copy span {
  color: #606977;
  font-size: 12px;
  font-weight: 800;
}

.studio-global-search {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  max-width: 620px;
  border: 1px solid rgb(227 6 19 / 0.22);
  background: rgb(255 255 255 / 0.96);
  color: #111318;
  padding: 12px 14px;
  box-shadow: 0 14px 32px rgb(227 6 19 / 0.08);
}

.studio-global-search svg {
  color: #111318;
}

.studio-global-search input {
  min-width: 0;
  border: 0;
  background: transparent;
  color: #111318;
  padding: 0;
  font-size: 14px;
  font-weight: 800;
}

.studio-global-search input:focus {
  outline: 0;
}

.studio-start-actions {
  display: grid;
  grid-template-columns: repeat(6, minmax(112px, 1fr));
  gap: 8px;
  min-width: 0;
}

.studio-start-actions button {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  border: 1px solid rgb(17 19 24 / 0.09);
  background: rgb(255 255 255 / 0.78);
  color: #111318;
  padding: 10px;
  text-align: left;
  box-shadow: 0 10px 20px rgb(17 19 24 / 0.04);
}

.studio-start-actions button:hover,
.studio-start-actions button.selected {
  border-color: rgb(227 6 19 / 0.32);
  background: white;
  box-shadow: 0 14px 28px rgb(227 6 19 / 0.1);
}

.studio-start-actions button > svg {
  flex: 0 0 auto;
  color: var(--nex-red);
}

.studio-start-actions button span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.studio-start-actions button strong,
.studio-start-actions button em {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.studio-start-actions button strong {
  color: #111318;
  font-size: 12px;
  font-weight: 950;
}

.studio-start-actions button em {
  color: #69707d;
  font-size: 10px;
  font-style: normal;
  font-weight: 800;
}

.studio-make-button {
  justify-self: start;
  min-height: 38px;
}

.studio-use-case-grid {
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  max-height: 258px;
  overflow-y: auto;
  padding-right: 2px;
}

.studio-use-case-grid article {
  display: grid;
  gap: 7px;
  min-width: 0;
  border: 1px solid rgb(17 19 24 / 0.09);
  background: linear-gradient(135deg, #ffffff, #f7f8fb);
  padding: 8px;
  box-shadow: 0 10px 20px rgb(17 19 24 / 0.035);
}

.studio-use-case-grid article.selected,
.studio-use-case-grid article:hover {
  border-color: rgb(227 6 19 / 0.3);
  box-shadow: 0 14px 28px rgb(227 6 19 / 0.09);
}

.studio-use-case-grid .studio-use-case-main,
.studio-use-case-grid .studio-use-case-ai {
  width: 100%;
  border: 0;
  box-shadow: none;
}

.studio-use-case-grid .studio-use-case-main {
  padding: 7px 5px;
  background: transparent;
}

.studio-use-case-grid .studio-use-case-ai {
  justify-content: center;
  border: 1px solid rgb(227 6 19 / 0.18);
  background: rgb(227 6 19 / 0.07);
  color: var(--nex-red);
  padding: 7px 8px;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.studio-use-case-grid .studio-use-case-ai:disabled {
  cursor: wait;
  opacity: 0.72;
}

.studio-format-strip {
  grid-column: 1 / -1;
  display: flex;
  gap: 7px;
  overflow-x: auto;
  padding: 4px 1px 2px;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

.studio-format-strip::-webkit-scrollbar {
  display: none;
}

.studio-format-strip button {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: max-content;
  border: 1px solid #dfe2e8;
  background: white;
  color: #4b515d;
  padding: 8px 10px;
}

.studio-format-strip button.selected {
  border-color: var(--nex-red);
  background: rgb(227 6 19 / 0.07);
  color: var(--nex-red);
}

.studio-format-strip button strong {
  display: block;
  color: inherit;
  font-size: 11px;
  font-weight: 950;
}

.studio-format-strip button em {
  display: block;
  color: #7a808c;
  font-size: 9px;
  font-style: normal;
  font-weight: 850;
}

.studio-ai-panel .settings-card {
  border-color: #e3e6ed;
}

.ai-create-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border: 1px solid rgb(227 6 19 / 0.18);
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.1), transparent 48%),
    #111318;
  color: white;
  padding: 14px;
}

.ai-create-hero strong,
.ai-create-hero span {
  display: block;
}

.ai-create-hero strong {
  font-size: 17px;
  font-weight: 950;
}

.ai-create-hero span {
  margin-top: 4px;
  color: rgb(255 255 255 / 0.72);
  font-size: 11px;
  font-weight: 850;
  line-height: 1.35;
}

.ai-create-hero > svg {
  color: var(--nex-red);
}

.ai-context-pills,
.ai-prompt-chip-grid,
.ai-result-actions,
.ai-action-stack {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.ai-context-pills span {
  border: 1px solid #dfe2e8;
  background: #f7f8fb;
  color: #303540;
  padding: 7px 9px;
  font-size: 10px;
  font-weight: 950;
}

.ai-warning-box,
.ai-ready-box {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 9px 10px;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.35;
}

.ai-warning-box {
  border: 1px solid rgb(227 6 19 / 0.18);
  background: rgb(227 6 19 / 0.06);
  color: #7d1017;
}

.ai-ready-box {
  border: 1px solid rgb(20 120 70 / 0.16);
  background: rgb(20 120 70 / 0.06);
  color: #17643f;
}

.studio-ai-panel textarea {
  width: 100%;
  border: 1px solid #d6dae3;
  background: white;
  padding: 10px 11px;
  resize: vertical;
  font-weight: 800;
  line-height: 1.35;
}

.ai-prompt-chip-grid button,
.ai-result-actions button,
.ai-package-grid button {
  border: 1px solid #dfe2e8;
  background: white;
  color: #303540;
  padding: 8px 9px;
  font-size: 10px;
  font-weight: 900;
  text-align: left;
}

.ai-prompt-chip-grid button:hover,
.ai-result-actions button:hover,
.ai-package-grid button:hover {
  border-color: rgb(227 6 19 / 0.3);
  color: var(--nex-red);
}

.ai-action-stack .btn {
  flex: 1 1 150px;
  min-height: 40px;
}

.ai-result-card ul {
  margin: 0;
  padding-left: 18px;
  color: #4b515d;
  font-size: 12px;
  font-weight: 800;
}

.ai-warning-list {
  display: grid;
  gap: 6px;
}

.ai-warning-list span {
  border-left: 3px solid var(--nex-red);
  background: rgb(227 6 19 / 0.055);
  color: #6f1117;
  padding: 7px 9px;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.35;
}

.ai-result-card small {
  color: #7a808c;
  font-size: 10px;
  font-weight: 850;
}

.ai-package-grid {
  display: grid;
  gap: 9px;
}

.ai-package-grid article {
  display: grid;
  gap: 7px;
  border: 1px solid #dfe2e8;
  background: #fbfbfc;
  padding: 9px;
}

.ai-package-grid article strong {
  color: #111318;
  font-size: 12px;
  font-weight: 950;
}

.ai-package-grid article span {
  color: #69707d;
  font-size: 11px;
  font-weight: 850;
}

@media (max-width: 1180px) {
  .studio-use-case-grid {
    grid-template-columns: repeat(3, minmax(140px, 1fr));
  }
}

@media (max-width: 780px) {
  .studio-use-case-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-height: 330px;
  }

  .studio-use-case-grid article {
    padding: 7px;
  }

  .studio-use-case-grid .studio-use-case-main {
    align-items: flex-start;
  }

  .studio-format-strip button {
    padding: 7px 9px;
  }

  .ai-action-stack {
    display: grid;
  }

  .ai-context-pills {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  .studio-use-case-grid {
    grid-template-columns: 1fr;
    max-height: 380px;
  }

  .ai-context-pills {
    grid-template-columns: 1fr;
  }
}

.canva-workspace {
  display: grid;
  grid-template-columns: minmax(292px, 360px) minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  max-width: 100%;
  min-width: 0;
  min-height: calc(100vh - 258px);
}

.studio-left-panel,
.studio-right-panel,
.studio-canvas-panel {
  min-width: 0;
  min-height: 0;
}

.studio-left-panel {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  position: sticky;
  top: 88px;
  max-height: calc(100vh - 106px);
  overflow: hidden;
  border: 1px solid var(--nex-line);
  background: white;
  box-shadow: 0 16px 36px rgb(18 22 30 / 0.06);
}

.studio-tool-rail {
  display: grid;
  align-content: start;
  gap: 6px;
  border-right: 1px solid var(--nex-line);
  background: #111318;
  padding: 10px 7px;
}

.studio-tool-rail button {
  display: grid;
  gap: 4px;
  place-items: center;
  border: 1px solid transparent;
  background: transparent;
  color: rgb(255 255 255 / 0.62);
  padding: 8px 5px;
}

.studio-tool-rail button.active,
.studio-tool-rail button:hover {
  border-color: rgb(255 255 255 / 0.14);
  background: rgb(255 255 255 / 0.09);
  color: white;
}

.studio-tool-rail span {
  font-size: 9px;
  font-weight: 900;
  line-height: 1.1;
  text-align: center;
}

.studio-tool-panel,
.studio-right-panel {
  overflow-y: auto;
  background: #fbfbfc;
}

.studio-right-panel {
  display: none;
}

.studio-tool-content,
.studio-settings-content {
  display: grid;
  gap: 14px;
  padding: 14px;
}

.studio-panel-head h3 {
  margin: 4px 0 0;
  color: #111318;
  font-size: 18px;
  font-weight: 950;
  line-height: 1.1;
}

.studio-search {
  width: 100%;
  border: 1px solid #d9dde5;
  background: white;
  padding: 10px 11px;
  font-size: 13px;
  font-weight: 800;
}

.studio-filter-row {
  display: flex;
  gap: 7px;
  overflow-x: auto;
  padding-bottom: 2px;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

.studio-filter-row::-webkit-scrollbar {
  display: none;
}

.studio-filter-row button,
.selected-element-row button,
.cta-chip-grid button,
.assistant-action-grid button,
.tagline-list button {
  border: 1px solid #dfe2e8;
  background: white;
  color: #3b4049;
  padding: 8px 9px;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.studio-filter-row button.selected,
.selected-element-row button.selected {
  border-color: #111318;
  background: #111318;
  color: white;
}

.studio-template-browser {
  display: grid;
  gap: 12px;
}

.studio-template-preview {
  display: grid;
  gap: 8px;
  border: 1px solid #dfe2e8;
  background: white;
  padding: 10px;
  text-align: left;
}

.studio-template-preview.selected {
  border-color: rgb(227 6 19 / 0.45);
  box-shadow: 0 0 0 3px rgb(227 6 19 / 0.08);
}

.studio-template-preview strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.studio-template-preview > span {
  color: #707783;
  font-size: 11px;
  font-weight: 850;
}

.studio-size-note {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #dfe2e8;
  background: white;
  color: #4b515d;
  padding: 9px 10px;
  font-size: 11px;
  font-weight: 850;
}

.studio-size-note svg {
  color: var(--nex-red);
}

.mini-template-preview,
.project-thumb {
  display: grid;
  min-height: 156px;
  align-content: end;
  gap: 7px;
  overflow: hidden;
  background:
    linear-gradient(140deg, rgb(5 5 5 / 0.9), rgb(5 5 5 / 0.5)),
    linear-gradient(135deg, var(--accent), #ffffff);
  color: white;
  padding: 12px;
}

.mini-template-preview .brand-logo,
.project-thumb .brand-logo {
  width: 88px;
  max-height: 38px;
}

.mini-template-preview span,
.project-thumb span {
  color: var(--accent);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.mini-template-preview strong,
.project-thumb strong {
  color: white;
  font-size: 22px;
  font-weight: 950;
  line-height: 0.95;
  text-transform: uppercase;
}

.mini-template-preview em {
  color: rgb(255 255 255 / 0.66);
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
}

.template-use-pill {
  justify-self: start;
  border: 1px solid rgb(227 6 19 / 0.22);
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red) !important;
  padding: 6px 8px;
  font-size: 10px !important;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.brand-kit-card {
  display: grid;
  gap: 10px;
  border: 1px solid var(--nex-line);
  padding: 14px;
}

.brand-kit-card.dark {
  background: #111318;
  color: white;
}

.brand-kit-card.light {
  background: white;
}

.brand-kit-card span,
.brand-font-list span {
  color: #69707d;
  font-size: 11px;
  font-weight: 850;
}

.brand-swatch-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.brand-swatch-row button {
  width: 34px;
  height: 34px;
  border: 1px solid #cfd3dc;
}

.style-preset-grid,
.studio-layer-list {
  display: grid;
  gap: 10px;
}

.style-preset-card {
  position: relative;
  display: grid;
  min-height: 92px;
  align-content: end;
  gap: 5px;
  overflow: hidden;
  border: 1px solid #dfe2e8;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--accent) 26%, transparent), transparent 54%),
    var(--preset-bg, #ffffff);
  padding: 12px;
  text-align: left;
}

.style-preset-card::before {
  content: "";
  position: absolute;
  inset: 10px 10px auto auto;
  width: 48px;
  height: 6px;
  background: var(--accent);
}

.style-preset-card span {
  width: 34px;
  height: 34px;
  border: 1px solid rgb(255 255 255 / 0.5);
  background: var(--accent);
  box-shadow: 0 8px 20px rgb(0 0 0 / 0.1);
}

.style-preset-card strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.style-preset-card em {
  color: #6b7280;
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.35;
}

.studio-layer-list article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  border: 1px solid #dfe2e8;
  background: white;
  padding: 8px;
}

.studio-layer-list article.selected {
  border-color: #111318;
  box-shadow: 0 0 0 3px rgb(17 19 24 / 0.07);
}

.studio-layer-list article.muted {
  opacity: 0.52;
}

.studio-layer-list article > button:first-child {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 8px;
  border: 0;
  background: transparent;
  color: #303540;
  padding: 2px;
  text-align: left;
}

.studio-layer-list article > button:last-child {
  width: 32px;
  height: 32px;
  border: 1px solid #dfe2e8;
  background: #f8f9fb;
  color: #4b515d;
  padding: 0;
}

.studio-layer-list strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 950;
}

.brand-font-list,
.tagline-list,
.cta-chip-grid,
.assistant-action-grid,
.selected-element-row {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.media-assignment-grid {
  display: grid;
  gap: 10px;
}

.media-quick-upload-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 9px;
}

.studio-section-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: #111318;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.studio-section-label em {
  color: #727986;
  font-size: 10px;
  font-style: normal;
}

.saved-headshot-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 76px;
  gap: 10px;
  align-items: center;
  border: 1px solid #dfe2e8;
  background:
    linear-gradient(135deg, #ffffff, #f7f8fb);
  padding: 10px;
}

.saved-headshot-card > div:first-child span {
  color: #727986;
  font-size: 11px;
  font-weight: 850;
}

.saved-headshot-preview {
  display: grid;
  width: 76px;
  height: 76px;
  place-items: center;
  overflow: hidden;
  border: 1px solid #cfd3dc;
  background: #111318;
  color: white;
  cursor: pointer;
}

.saved-headshot-preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.saved-headshot-preview input {
  display: none;
}

.saved-headshot-actions {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.saved-headshot-actions button,
.saved-media-grid button {
  display: inline-flex;
  min-height: 32px;
  align-items: center;
  justify-content: center;
  gap: 5px;
  border: 1px solid #dfe2e8;
  background: white;
  color: #303540;
  padding: 6px 7px;
  font-size: 10px;
  font-weight: 900;
}

.saved-headshot-actions button:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

.saved-media-section {
  display: grid;
  gap: 9px;
}

.saved-media-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.saved-media-grid article {
  display: grid;
  min-width: 0;
  gap: 7px;
  border: 1px solid #dfe2e8;
  background: white;
  padding: 7px;
}

.saved-media-grid img {
  width: 100%;
  aspect-ratio: 1.25;
  object-fit: cover;
  background: #eef0f4;
}

.saved-media-grid strong,
.saved-media-grid small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.saved-media-grid strong {
  color: #252a34;
  font-size: 11px;
  font-weight: 950;
}

.saved-media-grid small {
  color: #7a808c;
  font-size: 10px;
  font-weight: 800;
}

.saved-media-grid article div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 5px;
}

.saved-media-grid .danger-mini {
  grid-column: 1 / -1;
  border-color: rgb(227 6 19 / 0.22);
  color: var(--nex-red);
}

.media-empty-state {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px dashed #cfd3dc;
  background: #ffffff;
  color: #68707d;
  padding: 10px;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.35;
}

.media-assignment-grid article {
  display: grid;
  gap: 8px;
  border: 1px solid #dfe2e8;
  background: white;
  padding: 8px;
}

.media-assignment-grid img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.media-assignment-grid strong {
  color: #3b4049;
  font-size: 12px;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.media-assignment-grid article div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.media-assignment-grid button {
  border: 1px solid #dfe2e8;
  background: #f7f8fa;
  padding: 6px 7px;
  font-size: 10px;
  font-weight: 900;
}

.mini-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.toggle-row {
  display: flex;
  align-items: center;
  gap: 9px;
  color: #303540;
  font-size: 13px;
  font-weight: 850;
}

.toggle-row input {
  width: auto;
  accent-color: var(--nex-red);
}

.studio-canvas-panel {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 10px;
  max-width: 100%;
  min-height: 0;
  overflow: hidden;
}

.canvas-floating-bar {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--nex-line);
  background: white;
  padding: 10px 12px;
}

.canvas-floating-bar strong,
.canvas-floating-bar span {
  display: block;
}

.canvas-floating-bar strong {
  color: #111318;
  font-size: 14px;
  font-weight: 950;
}

.canvas-floating-bar span {
  color: #6b7280;
  font-size: 11px;
  font-weight: 850;
}

.canvas-format-pills {
  display: flex;
  gap: 6px;
  min-width: 0;
  width: 100%;
  max-width: min(720px, 54vw);
  overflow-x: auto;
  padding-bottom: 2px;
}

.canvas-view-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}

.canvas-view-controls button,
.canvas-view-controls strong {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border: 1px solid #dfe2e8;
  background: white;
  color: #303540;
  padding: 0 10px;
  font-size: 11px;
  font-weight: 950;
}

.canvas-view-controls button.selected {
  border-color: rgb(227 6 19 / 0.42);
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red);
}

.canvas-format-pills button {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: max-content;
  height: 34px;
  border: 1px solid #dfe2e8;
  background: white;
  color: #4b515d;
  padding: 0 10px;
}

.canvas-format-pills button span {
  font-size: 11px;
  font-weight: 900;
}

.canvas-format-pills button.selected {
  border-color: var(--nex-red);
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red);
}

.canvas-inspector-panel {
  position: sticky;
  bottom: 12px;
  z-index: 7;
  display: grid;
  gap: 10px;
  width: min(100%, 760px);
  justify-self: center;
  border: 1px solid rgb(17 19 24 / 0.12);
  background: rgb(255 255 255 / 0.95);
  box-shadow: 0 18px 44px rgb(15 18 26 / 0.18);
  padding: 12px;
  backdrop-filter: blur(18px);
}

.inspector-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 12px;
  align-items: center;
}

.inspector-head .eyebrow {
  grid-column: 1 / -1;
}

.inspector-head strong {
  color: #111318;
  font-size: 14px;
  font-weight: 950;
}

.inspector-head span {
  color: #69707d;
  font-size: 11px;
  font-weight: 850;
}

.inspector-layers,
.inspector-action-grid,
.qr-purpose-grid,
.text-preset-grid,
.inspector-selection-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.inspector-layers button,
.inspector-action-grid button,
.qr-purpose-grid button,
.text-preset-grid button,
.inspector-selection-actions button,
.canvas-upload-button,
.mini-danger-button {
  display: flex;
  align-items: center;
  gap: 7px;
  border: 1px solid #dfe2e8;
  background: white;
  color: #303540;
  padding: 8px 9px;
  font-size: 11px;
  font-weight: 900;
}

.inspector-selection-actions small {
  flex-basis: 100%;
  color: #69707d;
  font-size: 10px;
  font-weight: 800;
}

.inspector-selection-actions button.selected {
  border-color: rgb(227 6 19 / 0.34);
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red);
}

.advanced-control-grid {
  display: grid;
  gap: 10px;
  border-top: 1px solid #e4e6ec;
  padding-top: 10px;
}

.canvas-upload-button {
  justify-content: center;
  cursor: pointer;
}

.canvas-upload-button input {
  display: none;
}

.mini-danger-button {
  border-color: rgb(227 6 19 / 0.24);
  color: var(--nex-red);
}

.inspector-layers button.selected {
  border-color: #111318;
  background: #111318;
  color: white;
}

.inspector-card {
  display: grid;
  gap: 10px;
  border: 1px solid #e4e6ec;
  background: #fbfbfc;
  padding: 10px;
}

.studio-right-panel {
  border: 1px solid var(--nex-line);
}

.settings-card {
  display: grid;
  gap: 10px;
  border: 1px solid #dfe2e8;
  background: white;
  padding: 12px;
}

.settings-card > strong {
  color: #111318;
  font-size: 15px;
  font-weight: 950;
}

.settings-card > span,
.assistant-card small {
  color: #69707d;
  font-size: 11px;
  font-weight: 850;
}

.settings-card textarea {
  width: 100%;
  border: 1px solid #d6dae3;
  padding: 9px 10px;
  resize: vertical;
}

.export-card button {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #dfe2e8;
  background: white;
  padding: 9px;
  color: #303540;
  font-size: 12px;
  font-weight: 850;
  text-align: left;
}

.copy-action-row {
  display: flex;
  gap: 7px;
  overflow-x: auto;
  border-bottom: 1px solid var(--nex-line);
  background: #fbfbfc;
  padding: 10px 12px;
}

.copy-action-row button {
  border: 1px solid #dfe2e8;
  background: white;
  color: #303540;
  padding: 7px 9px;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.chat-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
  gap: 18px;
  padding-top: 22px;
}

.chat-card {
  display: grid;
  min-height: calc(100vh - 130px);
  grid-template-rows: auto 1fr auto;
  overflow: hidden;
}

.agent-assist-layout .chat-card {
  min-height: 0;
  grid-template-rows: auto auto auto minmax(220px, auto) auto;
  border: 1px solid rgb(17 19 24 / 0.08);
  background:
    radial-gradient(circle at 92% 2%, rgb(227 6 19 / 0.08), transparent 26%),
    #fff;
}

.agent-assist-hero {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 14px;
  border-bottom: 1px solid var(--nex-line);
  background:
    radial-gradient(circle at 92% 0%, rgb(227 6 19 / 0.28), transparent 28%),
    linear-gradient(135deg, #111318, #242936),
    #111318;
  color: white;
  padding: 11px 14px;
}

.agent-assist-hero h2 {
  margin: 0 0 3px;
  color: white;
  font-size: clamp(19px, 2.2vw, 24px);
}

.agent-assist-hero p:not(.eyebrow) {
  max-width: 640px;
  margin: 0;
  color: rgb(255 255 255 / 0.72);
  font-size: 12px;
  line-height: 1.35;
}

.agent-assist-status-stack {
  display: grid;
  justify-items: end;
  gap: 9px;
}

.agent-assist-status-stack > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgb(255 255 255 / 0.16);
  border-radius: 999px;
  background: rgb(255 255 255 / 0.08);
  color: white;
  padding: 7px 9px;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
  white-space: nowrap;
}

.agent-assist-status-stack i {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #24d481;
  box-shadow: 0 0 0 5px rgb(36 212 129 / 0.16);
}

.agent-assist-status-stack button {
  min-height: 30px;
  border: 1px solid rgb(255 255 255 / 0.16);
  border-radius: 999px;
  background: rgb(255 255 255 / 0.08);
  color: white;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 900;
}

.prompt-starters {
  display: flex;
  gap: 7px;
  overflow-x: auto;
  border-bottom: 1px solid var(--nex-line);
  background:
    linear-gradient(135deg, #ffffff, #f7f8fa);
  padding: 7px 9px;
}

.prompt-starters button {
  display: inline-flex;
  flex: 0 0 auto;
  min-height: 32px;
  max-width: 240px;
  align-items: center;
  gap: 7px;
  border: 1px solid #dfe2e8;
  border-radius: 999px;
  background: white;
  color: #252a34;
  padding: 0 11px;
  text-align: left;
}

.prompt-starters span {
  min-width: 0;
  overflow: hidden;
  font-size: 11px;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.prompt-starters svg {
  flex: 0 0 auto;
  color: var(--nex-red);
}

.chat-stream {
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow-y: auto;
  padding: 14px;
}

.agent-assist-layout .chat-stream {
  min-height: 220px;
  overflow-y: visible;
}

.message {
  display: flex;
}

.message.user {
  justify-content: flex-end;
}

.message-bubble {
  max-width: min(720px, 84%);
  border: 1px solid var(--nex-line);
  border-radius: 18px;
  background: #f8f9fb;
  padding: 11px 13px;
}

.message.user .message-bubble {
  border-color: var(--nex-red);
  background: var(--nex-red);
  color: white;
  border-bottom-right-radius: 6px;
}

.message.assistant .message-bubble {
  border-bottom-left-radius: 6px;
  background: #fff;
  box-shadow: 0 10px 26px rgb(17 19 24 / 0.055);
}

.message.assistant .message-bubble.rich {
  width: 100%;
  max-width: none;
  background: white;
}

.message-bubble p {
  margin: 0;
  font-size: 14px;
  line-height: 1.52;
  white-space: pre-line;
}

.assistant-answer-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  margin-bottom: 9px;
}

.assistant-answer-meta span,
.assistant-answer-meta em {
  display: inline-flex;
  width: fit-content;
  border-radius: 999px;
  padding: 5px 8px;
  font-size: 9px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.assistant-answer-meta span {
  background: rgb(227 6 19 / 0.09);
  color: var(--nex-red);
}

.assistant-answer-meta em {
  background: #f1f4f8;
  color: #5a6472;
}

.assistant-answer-meta em.urgent {
  background: rgb(227 6 19 / 0.1);
  color: #b40010;
}

.nia-source-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  margin-top: 10px;
  border: 1px solid #e8ecf2;
  border-radius: 14px;
  background: #fbfcfd;
  padding: 8px;
}

.nia-source-list strong {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #687180;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.nia-source-list strong svg {
  color: var(--nex-red);
}

.nia-source-list span {
  border-radius: 999px;
  background: #fff;
  border: 1px solid #e3e7ee;
  color: #313743;
  padding: 4px 8px;
  font-size: 10px;
  font-weight: 850;
}

.nia-message-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 11px;
}

.nia-message-actions button {
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  gap: 5px;
  border: 1px solid #dfe3ea;
  border-radius: 999px;
  background: #fff;
  color: #3d4551;
  padding: 0 9px;
  font-size: 10px;
  font-weight: 900;
}

.nia-message-actions button:hover {
  border-color: rgb(227 6 19 / 0.45);
  color: var(--nex-red);
  background: rgb(227 6 19 / 0.04);
}

.nia-conversation-list {
  display: grid;
  gap: 8px;
  margin: 14px 0;
}

.nia-conversation-list button {
  display: grid;
  gap: 3px;
  border: 1px solid #e2e5ec;
  border-radius: 12px;
  background: #fff;
  padding: 10px;
  text-align: left;
}

.nia-conversation-list button.active {
  border-color: rgb(227 6 19 / 0.45);
  background: rgb(227 6 19 / 0.055);
}

.nia-conversation-list strong {
  overflow: hidden;
  color: #17191d;
  font-size: 13px;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nia-conversation-list span {
  color: #6c7481;
  font-size: 11px;
  font-weight: 800;
}

.muted-copy {
  color: #747d8b;
  font-size: 12px;
  font-weight: 750;
}

.nia-admin-card {
  margin-top: 16px;
  border-top: 1px solid var(--nex-line);
  padding-top: 16px;
}

.nia-admin-card h3 {
  margin-top: 2px;
}

.nia-knowledge-form {
  display: grid;
  gap: 8px;
}

.nia-knowledge-form input,
.nia-knowledge-form textarea {
  width: 100%;
  border: 1px solid #d8dae0;
  background: white;
  color: #17191d;
  outline: none;
}

.nia-knowledge-form input {
  min-height: 40px;
  padding: 0 10px;
}

.nia-knowledge-form textarea {
  padding: 10px;
  resize: vertical;
}

.nia-knowledge-list {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.nia-knowledge-list article {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 4px 8px;
  align-items: center;
  border: 1px solid #edf0f4;
  border-radius: 12px;
  background: #fff;
  padding: 10px;
}

.nia-knowledge-list article strong {
  min-width: 0;
  overflow: hidden;
  font-size: 12px;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nia-knowledge-list article span {
  color: #747d8b;
  font-size: 11px;
  font-weight: 850;
}

.nia-knowledge-list article button {
  grid-row: span 2;
  min-height: 30px;
  border: 1px solid #dfe3ea;
  border-radius: 999px;
  background: #fff;
  color: #333a45;
  padding: 0 10px;
  font-size: 11px;
  font-weight: 900;
}

.thinking-bubble {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #4d5664;
}

.chat-composer {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 8px;
  border-top: 1px solid var(--nex-line);
  padding: 8px;
}

.chat-composer textarea,
.field input,
.field select,
.field textarea,
.template-card input {
  width: 100%;
  border: 1px solid #d8dae0;
  background: white;
  color: #17191d;
  outline: none;
}

.chat-composer textarea {
  min-height: 44px;
  resize: vertical;
  padding: 8px 10px;
  line-height: 1.38;
}

.chat-composer textarea:focus,
.field input:focus,
.field select:focus,
.field textarea:focus,
.template-card input:focus {
  border-color: var(--nex-red);
  box-shadow: 0 0 0 3px rgb(227 6 19 / 0.12);
}

.output-panel {
  align-self: start;
  max-height: calc(100vh - 130px);
  overflow: auto;
}

.marketing-output {
  display: grid;
  gap: 13px;
}

.output-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.output-header h3 {
  margin: 3px 0 0;
  font-size: 22px;
  font-weight: 950;
}

.output-grid {
  display: grid;
  gap: 10px;
}

.marketing-output.compact .output-grid {
  grid-template-columns: 1fr;
}

.output-card {
  border: 1px solid var(--nex-line);
  background: #fbfbfc;
  padding: 12px;
}

.output-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 8px;
}

.output-card-head span {
  color: #4c5260;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.output-card p {
  margin: 0;
  white-space: pre-wrap;
  color: #24272d;
  font-size: 14px;
  line-height: 1.55;
}

.hashtag-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.hashtag-row span,
.suggestion-strip {
  background: #f3f4f7;
  color: #383d47;
  font-size: 12px;
  font-weight: 800;
  padding: 8px 10px;
}

.suggestion-strip {
  border-left: 4px solid var(--nex-gold);
}

.compliance-notice {
  display: grid;
  grid-template-columns: 22px 1fr;
  gap: 9px;
  align-items: start;
  border: 1px solid rgb(227 6 19 / 0.18);
  background: rgb(227 6 19 / 0.06);
  color: #3c1115;
  margin-bottom: 12px;
  padding: 10px;
}

.compliance-notice p {
  margin: 0;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.45;
}

.empty-state {
  display: grid;
  min-height: 240px;
  place-items: center;
  align-content: center;
  gap: 10px;
  border: 1px dashed #cdd0d8;
  background: #fafafb;
  padding: 30px;
  text-align: center;
}

.empty-state svg {
  color: var(--nex-red);
}

.empty-state h3 {
  margin: 0;
  font-size: 20px;
  font-weight: 900;
}

.empty-state p {
  margin: 0;
  max-width: 420px;
  color: #69707d;
  line-height: 1.55;
}

.input-panel {
  position: sticky;
  top: 0;
  height: 100vh;
  overflow-y: auto;
  border-left: 1px solid var(--nex-line);
  background: #ffffff;
  padding: 20px;
}

.sticky-heading {
  position: sticky;
  top: 0;
  z-index: 3;
  background: white;
  padding-bottom: 10px;
}

.form-stack,
.settings-form,
.template-editor {
  display: grid;
  gap: 16px;
}

.form-section {
  display: grid;
  gap: 11px;
  border-top: 1px solid var(--nex-line);
  padding-top: 16px;
}

.form-section h4 {
  margin: 0;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.field {
  display: grid;
  gap: 7px;
}

.field span {
  color: #4d535f;
  font-size: 12px;
  font-weight: 850;
}

.field input,
.field select {
  min-height: 39px;
  padding: 0 10px;
}

.field textarea {
  min-height: 92px;
  resize: vertical;
  padding: 10px;
  line-height: 1.45;
}

.split-fields {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.file-drop {
  display: grid;
  min-height: 74px;
  place-items: center;
  gap: 4px;
  border: 1px dashed #bcc1ca;
  background: #fafafb;
  color: #4e5562;
  padding: 11px;
  text-align: center;
  transition: 160ms ease;
}

.file-drop:hover {
  border-color: var(--nex-red);
  background: rgb(227 6 19 / 0.04);
}

.file-drop span {
  font-size: 12px;
  font-weight: 850;
}

.file-drop em {
  color: #747985;
  font-size: 11px;
  font-style: normal;
}

.file-drop img {
  height: 48px;
  width: 48px;
  object-fit: cover;
}

.file-drop input {
  display: none;
}

.photo-thumb-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 7px;
}

.photo-thumb-grid button {
  aspect-ratio: 1;
  border: 1px solid var(--nex-line);
  background: white;
  padding: 0;
}

.photo-thumb-grid img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.flyer-builder-grid {
  display: grid;
  grid-template-columns: minmax(320px, 430px) minmax(0, 1fr);
  gap: 18px;
  padding-top: 22px;
}

.business-card-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
  padding-top: 22px;
}

.business-card-controls {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: end;
}

.business-card-controls .panel-heading,
.business-card-controls .card-control-group,
.business-card-controls .print-note,
.business-card-controls .business-card-buttons {
  grid-column: 1 / -1;
}

.builder-controls {
  align-self: start;
  display: grid;
  gap: 13px;
}

.studio-controls {
  max-height: calc(100vh - 130px);
  overflow: auto;
}

.studio-block {
  display: grid;
  gap: 12px;
  border: 1px solid var(--nex-line);
  background:
    linear-gradient(135deg, #ffffff, #fafafb);
  padding: 14px;
}

.studio-label,
.choice-group > p {
  margin: 0;
  color: #111318;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.template-picker {
  display: grid;
  max-height: 330px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  overflow: auto;
  padding-right: 2px;
}

.template-preset {
  position: relative;
  display: grid;
  min-height: 118px;
  align-content: space-between;
  overflow: hidden;
  border: 1px solid #dfe2e8;
  background: #111318;
  color: white;
  padding: 12px;
  text-align: left;
}

.template-preset::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 6px;
  background: var(--accent);
}

.template-preset.selected {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgb(227 6 19 / 0.12);
}

.template-preset span,
.template-preset em {
  color: rgb(255 255 255 / 0.58);
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.template-preset strong {
  color: white;
  font-size: 17px;
  font-weight: 950;
  line-height: 0.98;
  overflow-wrap: anywhere;
}

.template-preset .brand-logo {
  width: 78px;
  max-height: 32px;
}

.choice-group {
  display: grid;
  gap: 8px;
}

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

.choice-chip {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  border: 1px solid #d9dde5;
  background: white;
  color: #24272d;
  padding: 0 10px;
  text-align: left;
}

.choice-chip span {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 12px;
  font-weight: 850;
}

.choice-chip.selected {
  border-color: var(--nex-red);
  background: #111318;
  color: white;
}

.format-note {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 8px;
  border: 1px solid rgb(227 6 19 / 0.18);
  background: rgb(227 6 19 / 0.06);
  color: #24272d;
  padding: 9px 10px;
  font-size: 12px;
  font-weight: 900;
}

.stock-tray {
  display: grid;
  gap: 10px;
}

.stock-tabs {
  display: flex;
  gap: 7px;
  overflow-x: auto;
  padding-bottom: 2px;
}

.stock-tabs button {
  flex: 0 0 auto;
  border: 1px solid #d9dde5;
  background: white;
  color: #4d535f;
  padding: 7px 9px;
  font-size: 11px;
  font-weight: 850;
}

.stock-tabs button.selected {
  border-color: #111318;
  background: #111318;
  color: white;
}

.stock-search-button {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid rgb(227 6 19 / 0.22);
  background: rgb(227 6 19 / 0.06);
  color: #241417;
  font-size: 12px;
  font-weight: 850;
}

.stock-url-import {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 7px;
}

.stock-url-import input {
  min-width: 0;
  border: 1px solid #d9dde5;
  background: white;
  color: #252a34;
  padding: 9px 10px;
  font-size: 12px;
  font-weight: 800;
}

.stock-url-import button {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  gap: 5px;
  border: 1px solid #111318;
  background: #111318;
  color: white;
  padding: 0 11px;
  font-size: 11px;
  font-weight: 950;
}

.stock-url-import button:disabled {
  cursor: not-allowed;
  opacity: 0.46;
}

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

.stock-card {
  display: grid;
  gap: 7px;
  border: 1px solid #dfe2e8;
  background: white;
  padding: 7px;
  text-align: left;
}

.stock-card img {
  width: 100%;
  aspect-ratio: 1.35;
  object-fit: cover;
}

.stock-card span {
  color: #252a34;
  font-size: 11px;
  font-weight: 850;
}

.stock-card em {
  color: #7a808c;
  font-size: 9px;
  font-style: normal;
  font-weight: 850;
  text-transform: uppercase;
}

.copy-studio-block {
  background: white;
}

.button-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(126px, 1fr));
  gap: 9px;
}

.business-card-buttons {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.business-card-buttons .btn.secondary {
  grid-column: 1 / -1;
}

.print-note {
  border-left: 4px solid var(--nex-red);
  background: #f7f8fa;
  color: #4f5663;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}

.business-headshot-upload {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 4px 14px;
  align-items: center;
  border: 1px dashed #bcc1ca;
  background:
    linear-gradient(135deg, #ffffff, #f7f8fa);
  padding: 13px;
  cursor: pointer;
}

.business-headshot-upload:hover {
  border-color: var(--nex-red);
  background: rgb(227 6 19 / 0.04);
}

.business-headshot-upload img,
.business-headshot-upload > span {
  grid-row: span 2;
  height: 74px;
  width: 74px;
  object-fit: cover;
}

.business-headshot-upload > span {
  display: grid;
  place-items: center;
  background: #111318;
  color: white;
}

.business-headshot-upload strong {
  color: #111318;
  font-size: 14px;
  font-weight: 950;
}

.business-headshot-upload em {
  color: #69717e;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.4;
}

.business-headshot-upload input {
  display: none;
}

.card-control-group {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  border: 1px solid var(--nex-line);
  background: #fafafb;
  padding: 14px;
}

.card-control-group > p {
  grid-column: 1 / -1;
  margin: 0;
  color: #111318;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.range-field span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.range-field strong {
  color: var(--nex-red);
  font-size: 11px;
  font-weight: 950;
}

.range-field input[type="range"] {
  accent-color: var(--nex-red);
  padding: 0;
}

.preview-shell {
  display: grid;
  width: 100%;
  max-width: 100%;
  min-height: calc(100vh - 130px);
  place-items: start center;
  overflow: auto;
  border: 1px solid var(--nex-line);
  background:
    radial-gradient(circle at 18% 14%, rgb(227 6 19 / 0.10), transparent 26%),
    linear-gradient(135deg, #eef0f4, #d9dde5);
  padding: 28px;
}

.flyer-page {
  --accent: var(--nex-red);
  --brand-gold: var(--nex-gold);
  display: flex;
  width: min(100%, 460px);
  min-height: 650px;
  flex-direction: column;
  overflow: hidden;
  background: white;
  box-shadow: 0 18px 50px rgb(15 18 26 / 0.22);
}

.studio-flyer {
  aspect-ratio: var(--canvas-aspect, 8.5 / 11);
}

.studio-flyer[class*="format-"]:not(.format-letter-flyer) {
  height: auto;
  min-height: auto;
}

.format-instagram-square {
  width: min(100%, 520px);
}

.format-instagram-story,
.format-instagram-reel {
  width: min(100%, 360px);
}

.format-facebook-post,
.format-linkedin-post,
.format-youtube-thumbnail,
.format-horizontal-video,
.format-postcard,
.format-postcard-large,
.format-yard-sign {
  width: min(100%, 640px);
}

.format-email-header {
  width: min(100%, 680px);
}

.format-email-signature {
  width: min(100%, 600px);
  min-height: auto;
}

.format-open-house-sign,
.format-qr-code-flyer {
  width: min(100%, 500px);
}

.format-business-card {
  width: min(100%, 520px);
  min-height: auto;
}

.format-instagram-square .flyer-photo-strip,
.format-instagram-story .flyer-photo-strip,
.format-instagram-reel .flyer-photo-strip,
.format-facebook-post .flyer-photo-strip,
.format-linkedin-post .flyer-photo-strip,
.format-youtube-thumbnail .flyer-photo-strip,
.format-horizontal-video .flyer-photo-strip,
.format-postcard .flyer-photo-strip,
.format-postcard-large .flyer-photo-strip,
.format-yard-sign .flyer-photo-strip,
.format-email-header .flyer-photo-strip,
.format-business-card .flyer-photo-strip {
  display: none;
}

.format-facebook-post .flyer-top,
.format-linkedin-post .flyer-top,
.format-youtube-thumbnail .flyer-top,
.format-horizontal-video .flyer-top,
.format-postcard .flyer-top,
.format-postcard-large .flyer-top,
.format-yard-sign .flyer-top,
.format-email-header .flyer-top,
.format-business-card .flyer-top,
.format-instagram-square .flyer-top,
.format-instagram-story .flyer-top,
.format-instagram-reel .flyer-top {
  min-height: 58px;
  padding: 12px 18px;
}

.format-facebook-post .flyer-hero,
.format-linkedin-post .flyer-hero,
.format-youtube-thumbnail .flyer-hero,
.format-horizontal-video .flyer-hero,
.format-postcard .flyer-hero,
.format-postcard-large .flyer-hero,
.format-yard-sign .flyer-hero,
.format-email-header .flyer-hero,
.format-business-card .flyer-hero,
.format-instagram-square .flyer-hero,
.format-instagram-story .flyer-hero {
  min-height: 0;
  flex: 1;
}

.format-facebook-post .flyer-hero img,
.format-linkedin-post .flyer-hero img,
.format-youtube-thumbnail .flyer-hero img,
.format-horizontal-video .flyer-hero img,
.format-postcard .flyer-hero img,
.format-postcard-large .flyer-hero img,
.format-yard-sign .flyer-hero img,
.format-email-header .flyer-hero img,
.format-business-card .flyer-hero img,
.format-instagram-square .flyer-hero img,
.format-instagram-story .flyer-hero img,
.format-instagram-reel .flyer-hero img,
.format-facebook-post .photo-placeholder,
.format-linkedin-post .photo-placeholder,
.format-youtube-thumbnail .photo-placeholder,
.format-horizontal-video .photo-placeholder,
.format-postcard .photo-placeholder,
.format-postcard-large .photo-placeholder,
.format-yard-sign .photo-placeholder,
.format-email-header .photo-placeholder,
.format-business-card .photo-placeholder,
.format-instagram-square .photo-placeholder,
.format-instagram-story .photo-placeholder,
.format-instagram-reel .photo-placeholder {
  height: 100%;
}

.format-instagram-story .flyer-hero,
.format-instagram-reel .flyer-hero {
  min-height: 42%;
}

.format-instagram-story .flyer-headline h2,
.format-instagram-reel .flyer-headline h2 {
  font-size: 34px;
}

.format-facebook-post .flyer-copy-block,
.format-linkedin-post .flyer-copy-block,
.format-youtube-thumbnail .flyer-copy-block,
.format-horizontal-video .flyer-copy-block,
.format-postcard .flyer-copy-block,
.format-postcard-large .flyer-copy-block,
.format-yard-sign .flyer-copy-block,
.format-email-header .flyer-copy-block,
.format-business-card .flyer-copy-block,
.format-instagram-square .flyer-copy-block {
  display: none;
}

.format-facebook-post .flyer-footer,
.format-linkedin-post .flyer-footer,
.format-youtube-thumbnail .flyer-footer,
.format-horizontal-video .flyer-footer,
.format-postcard .flyer-footer,
.format-postcard-large .flyer-footer,
.format-yard-sign .flyer-footer,
.format-email-header .flyer-footer,
.format-business-card .flyer-footer,
.format-instagram-square .flyer-footer,
.format-instagram-story .flyer-footer,
.format-instagram-reel .flyer-footer {
  padding: 10px 18px;
}

.format-instagram-square .stats-strip div,
.format-instagram-story .stats-strip div,
.format-linkedin-post .stats-strip div,
.format-youtube-thumbnail .stats-strip div,
.format-facebook-post .stats-strip div,
.format-horizontal-video .stats-strip div,
.format-postcard .stats-strip div,
.format-postcard-large .stats-strip div,
.format-yard-sign .stats-strip div,
.format-email-header .stats-strip div,
.format-business-card .stats-strip div {
  min-height: 54px;
}

.format-instagram-square .flyer-details,
.format-instagram-story .flyer-details,
.format-linkedin-post .flyer-details,
.format-youtube-thumbnail .flyer-details,
.format-facebook-post .flyer-details,
.format-horizontal-video .flyer-details,
.format-postcard .flyer-details,
.format-postcard-large .flyer-details,
.format-yard-sign .flyer-details,
.format-email-header .flyer-details,
.format-business-card .flyer-details {
  padding: 12px 18px 10px;
}

.format-email-header .stats-strip,
.format-business-card .stats-strip,
.format-business-card .flyer-details {
  display: none;
}

.format-email-header .flyer-headline h2,
.format-business-card .flyer-headline h2 {
  font-size: 28px;
}

.format-facebook-post .flyer-headline h2,
.format-linkedin-post .flyer-headline h2,
.format-youtube-thumbnail .flyer-headline h2,
.format-horizontal-video .flyer-headline h2,
.format-postcard .flyer-headline h2,
.format-postcard-large .flyer-headline h2,
.format-yard-sign .flyer-headline h2,
.format-instagram-square .flyer-headline h2 {
  font-size: clamp(20px, calc(30px * var(--headline-scale, 1)), 34px);
}

.format-facebook-post .flyer-template-label,
.format-linkedin-post .flyer-template-label,
.format-youtube-thumbnail .flyer-template-label,
.format-horizontal-video .flyer-template-label,
.format-postcard .flyer-template-label,
.format-postcard-large .flyer-template-label,
.format-yard-sign .flyer-template-label,
.format-email-header .flyer-template-label,
.format-instagram-square .flyer-template-label,
.format-instagram-story .flyer-template-label,
.format-instagram-reel .flyer-template-label {
  max-width: 48%;
  font-size: 9px;
  letter-spacing: 0.08em;
}

.format-instagram-story .flyer-details,
.format-instagram-reel .flyer-details,
.format-email-header .flyer-details,
.format-postcard .flyer-details {
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;
}

.format-instagram-story .price-block,
.format-instagram-reel .price-block,
.format-email-header .price-block,
.format-postcard .price-block {
  min-width: 0;
}

.format-instagram-square .stats-strip strong,
.format-instagram-story .stats-strip strong,
.format-instagram-reel .stats-strip strong,
.format-facebook-post .stats-strip strong,
.format-linkedin-post .stats-strip strong,
.format-postcard .stats-strip strong,
.format-postcard-large .stats-strip strong {
  font-size: clamp(13px, 2.8vw, 17px);
}

.business-card-preview-shell {
  background:
    linear-gradient(135deg, #f2f3f6, #dfe3ea);
  align-content: start;
  place-items: start center;
}

.email-signature-preview-shell {
  background:
    linear-gradient(135deg, #f6f7fa, #e9edf3);
  align-content: start;
  place-items: start center;
}

.studio-email-signature-canvas {
  --accent: var(--nex-red);
  position: relative;
  display: grid;
  grid-template-columns: 124px minmax(0, 1fr) minmax(178px, 0.7fr);
  gap: 18px;
  align-items: center;
  width: min(100%, 600px);
  aspect-ratio: 600 / 220;
  overflow: hidden;
  border: 1px solid #d7dbe3;
  background:
    linear-gradient(90deg, var(--accent) 0 12px, transparent 12px),
    #ffffff;
  color: #111318;
  padding: 22px 22px 22px 34px;
  box-shadow: 0 24px 54px rgb(15 18 26 / 0.16);
}

.email-signature-photo {
  position: relative;
  display: grid;
  aspect-ratio: 1;
  overflow: hidden;
  place-items: center;
  border: 3px solid #ffffff;
  background: #111318;
  color: white;
  box-shadow: 0 14px 28px rgb(17 19 24 / 0.2);
}

.email-signature-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.email-signature-photo strong {
  font-size: 32px;
  font-weight: 950;
}

.email-signature-photo label {
  position: absolute;
  right: 6px;
  bottom: 6px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  border-radius: 999px;
  background: rgb(17 19 24 / 0.84);
  color: white;
  padding: 6px 8px;
  font-size: 8px;
  font-weight: 950;
  text-transform: uppercase;
  cursor: pointer;
}

.email-signature-photo input {
  display: none;
}

.email-signature-main {
  min-width: 0;
  border-right: 1px solid #e1e4ea;
  padding-right: 18px;
}

.email-signature-main .brand-logo {
  width: 108px;
  max-height: 42px;
  object-fit: contain;
  object-position: left center;
}

.email-signature-main h2 {
  margin: 10px 0 2px;
  color: #111318;
  font-size: 25px;
  font-weight: 950;
  line-height: 0.96;
  overflow-wrap: anywhere;
}

.email-signature-main p {
  margin: 0;
  color: var(--accent);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.email-signature-main small {
  display: block;
  margin-top: 7px;
  color: #68707d;
  font-size: 9px;
  font-weight: 800;
  line-height: 1.3;
}

.email-signature-contact {
  display: grid;
  gap: 9px;
  min-width: 0;
}

.email-signature-contact span {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 8px;
  color: #252a33;
  font-size: 12px;
  font-weight: 850;
  overflow-wrap: anywhere;
}

.email-signature-contact svg {
  flex: 0 0 auto;
  color: var(--accent);
}

.studio-card-side-tabs {
  display: flex;
  gap: 8px;
  width: min(100%, 460px);
}

.studio-card-side-tabs button {
  flex: 1;
  border: 1px solid #cfd3dc;
  background: white;
  color: #303540;
  padding: 9px 12px;
  font-size: 12px;
  font-weight: 950;
}

.studio-card-side-tabs button.selected {
  border-color: #111318;
  background: #111318;
  color: white;
}

.studio-business-card-canvas {
  --accent: var(--nex-red);
  --card-gold: var(--nex-gold);
  position: relative;
  display: grid;
  width: min(100%, 460px);
  aspect-ratio: 3.5 / 2;
  overflow: hidden;
  border: 1px solid #cfd3dc;
  background:
    linear-gradient(90deg, var(--accent) 0 14%, transparent 14%),
    var(--studio-bg-color, #ffffff);
  color: var(--studio-card-ink, #111318);
  box-shadow: 0 24px 54px rgb(15 18 26 / 0.22);
  padding: 22px 22px 22px 78px;
}

.studio-business-card-canvas::before {
  content: "";
  position: absolute;
  inset: 12px;
  z-index: 3;
  pointer-events: none;
  border: 1px dashed rgb(227 6 19 / 0.28);
  opacity: 0;
}

.studio-business-card-canvas.show-safe-guides::before {
  opacity: 1;
}

.studio-business-card-canvas::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image: var(--studio-bg-image, none);
  background-position: center;
  background-size: cover;
  opacity: var(--studio-bg-opacity, 0);
  mix-blend-mode: normal;
}

.studio-business-card-canvas > * {
  position: relative;
  z-index: 1;
}

.studio-card-brand {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  min-width: 0;
}

.studio-card-brand .brand-logo {
  width: 118px;
  max-height: 48px;
}

.studio-card-brand span {
  max-width: 190px;
  color: #5d6470;
  font-size: 10px;
  font-weight: 850;
  line-height: 1.35;
  text-align: right;
  overflow-wrap: anywhere;
}

.studio-card-main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 118px;
  gap: 16px;
  align-items: center;
  align-self: center;
  min-width: 0;
}

.studio-card-agent-copy {
  min-width: 0;
}

.studio-card-agent-copy p {
  margin: 0 0 8px;
  color: var(--accent);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.studio-card-agent-copy h2 {
  margin: 0;
  max-width: 330px;
  color: var(--studio-card-ink, white);
  font-size: calc(32px * var(--headline-scale, 1));
  font-weight: 950;
  line-height: 0.94;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.studio-card-agent-copy em {
  display: block;
  margin-top: 10px;
  max-width: 300px;
  color: #626a76;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.studio-card-headshot {
  position: relative;
  display: grid;
  aspect-ratio: 1;
  overflow: hidden;
  place-items: center;
  border: 4px solid #ffffff;
  background:
    linear-gradient(135deg, #ffffff, #f2f4f8),
    #f6f7fa;
  box-shadow: 0 18px 38px rgb(17 19 24 / 0.14);
}

.studio-card-headshot img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.studio-card-headshot strong {
  color: #111318;
  font-size: 34px;
  font-weight: 950;
}

.canvas-headshot-button {
  position: absolute;
  right: 6px;
  bottom: 6px;
  width: 28px;
  height: 28px;
  justify-content: center;
  padding: 0;
  border-radius: 999px;
}

.studio-card-contact {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
  align-self: end;
}

.studio-card-layer {
  cursor: grab;
  touch-action: none;
  will-change: transform;
}

.studio-card-layer:active {
  cursor: grabbing;
}

.studio-card-contact span {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 6px;
  border: 1px solid #dfe2e8;
  background: #ffffff;
  color: #111318;
  padding: 6px 8px;
  font-size: 9.5px;
  font-weight: 900;
  overflow-wrap: anywhere;
  box-shadow: 0 8px 18px rgb(17 19 24 / 0.08);
}

.studio-card-contact .canvas-editable {
  min-width: 0;
  max-width: 100%;
  line-height: 1.15;
}

.studio-card-contact .canvas-editable.fit-url,
.studio-card-contact .canvas-editable.fit-long,
.studio-card-contact .canvas-editable.fit-very-long,
.studio-card-contact .canvas-editable.fit-extreme {
  font-size: 0.82em;
  line-height: 1.08;
}

.studio-card-contact svg {
  flex: 0 0 auto;
  color: var(--accent);
}

.studio-business-card-back {
  align-content: stretch;
  background:
    linear-gradient(90deg, var(--accent) 0 10%, transparent 10%),
    var(--studio-bg-color, #ffffff);
  color: var(--studio-card-ink, #111318);
}

.studio-card-back-brand {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: flex-start;
}

.studio-card-back-brand .brand-logo {
  width: 150px;
  max-height: 54px;
}

.studio-business-card-back .studio-card-brand span,
.studio-business-card-back .studio-card-back-brand span {
  color: #626a76;
}

.studio-card-back-brand strong {
  max-width: 250px;
  color: #111318;
  font-size: 15px;
  font-weight: 950;
  line-height: 1.2;
  text-align: right;
  overflow-wrap: anywhere;
}

.studio-card-back-grid {
  display: grid;
  grid-template-columns: 122px minmax(0, 1fr);
  gap: 22px;
  align-items: center;
}

.studio-card-qr-block {
  display: grid;
  aspect-ratio: 1;
  place-items: center;
  gap: 4px;
  border: 2px solid rgb(255 255 255 / 0.9);
  background: white;
  color: #111318;
  padding: 10px;
}

.qr-generated-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.studio-card-qr-block span {
  color: #111318;
  font-size: 9px;
  font-weight: 950;
  text-transform: uppercase;
}

.studio-card-back-copy {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.studio-card-back-copy h2 {
  margin: 0;
  color: #111318;
  font-size: 24px;
  font-weight: 950;
  line-height: 1.08;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.studio-card-back-copy .canvas-editable {
  max-width: 100%;
}

.studio-card-back-copy .canvas-editable.fit-url {
  display: block;
}

.studio-card-back-copy .canvas-editable.fit-extreme {
  display: block;
  font-size: 0.6em;
}

.studio-card-back-copy span,
.studio-card-back-copy p,
.studio-card-back-footer {
  color: #626a76;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.studio-card-back-footer {
  align-self: end;
  margin: 0;
  font-size: 8px;
}

.studio-flyer {
  position: relative;
  border: 1px solid #cfd3dc;
  background: var(--studio-bg-color, white);
  color: var(--studio-ink, #111318);
}

.studio-flyer::before {
  content: "";
  position: absolute;
  inset: 14px;
  z-index: 1;
  pointer-events: none;
  border: 1px solid rgb(17 19 24 / 0.08);
  opacity: 0;
}

.studio-flyer.show-safe-guides::before {
  opacity: 1;
}

.studio-flyer::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background-image: var(--studio-bg-image, none);
  background-position: center;
  background-size: cover;
  opacity: var(--studio-bg-opacity, 0);
}

.studio-flyer > * {
  position: relative;
  z-index: 2;
}

.flyer-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 70px;
  padding: 16px 20px;
}

.flyer-top .brand-logo {
  width: 132px;
  height: auto;
  max-height: 52px;
}

.studio-logo-layer {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
  flex: 0 0 auto;
}

.studio-logo-layer .brand-logo {
  width: 132px;
  height: auto;
  max-width: 100%;
  max-height: 52px;
}

.wordmark {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  color: #050505;
  font-size: 24px;
  font-weight: 950;
  line-height: 1;
}

.wordmark span {
  color: var(--nex-red);
}

.wordmark strong {
  color: currentColor;
  font-weight: 950;
}

.wordmark-compact {
  font-size: 22px;
}

.flyer-template-label {
  min-width: 0;
  max-width: 42%;
  border: 1px solid #dfe1e7;
  color: var(--studio-muted-ink, #4b515d);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.12em;
  padding: 7px 8px;
  text-transform: uppercase;
  overflow: hidden;
  overflow-wrap: anywhere;
}

.flyer-hero {
  position: relative;
  min-height: var(--hero-height, 274px);
  background: #181b20;
}

.flyer-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}

.flyer-hero img,
.photo-placeholder {
  display: block;
  height: var(--hero-height, 274px);
  width: 100%;
  object-fit: cover;
}

.photo-placeholder {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 10px;
  color: rgb(255 255 255 / 0.7);
}

.flyer-headline {
  position: absolute;
  left: 18px;
  top: 18px;
  z-index: 2;
  width: min(var(--headline-width, 360px), calc(100% - 36px));
  max-width: calc(100% - 36px);
}

.flyer-headline span {
  display: inline-block;
  max-width: 100%;
  background: var(--accent);
  color: white;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.08em;
  padding: 7px 10px;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.flyer-headline h2 {
  margin: 6px 0 0;
  width: 100%;
  max-width: none;
  background: rgb(5 5 5 / 0.88);
  color: white;
  font-size: calc(34px * var(--headline-scale, 1));
  font-weight: var(--headline-weight, 950);
  line-height: 0.95;
  padding: 10px 12px;
  text-align: var(--text-align, left);
  text-transform: uppercase;
  overflow: hidden;
  overflow-wrap: anywhere;
}

.flyer-photo-strip {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 6px;
  background: white;
  padding: 6px;
}

.mini-photo-slot {
  position: relative;
  height: 78px;
  width: 100%;
  overflow: hidden;
  border: 1px solid transparent;
  background: #eceef2;
  cursor: pointer;
}

.mini-photo-slot:hover,
.mini-photo-slot:focus-within {
  border-color: var(--accent);
}

.mini-photo-slot img,
.mini-placeholder {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.mini-placeholder {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 3px;
  background: #eceef2;
  color: #7a808c;
  font-size: 9px;
  font-weight: 850;
  text-transform: uppercase;
}

.mini-photo-actions {
  position: absolute;
  right: 5px;
  bottom: 5px;
  left: 5px;
  display: flex;
  gap: 4px;
  opacity: 0;
  transition: opacity 0.18s ease;
}

.mini-photo-slot:hover .mini-photo-actions,
.mini-photo-slot:focus-within .mini-photo-actions {
  opacity: 1;
}

.mini-photo-actions label,
.mini-photo-actions button {
  display: inline-flex;
  flex: 1;
  align-items: center;
  justify-content: center;
  gap: 3px;
  min-width: 0;
  border: 0;
  background: rgb(17 19 24 / 0.88);
  color: white;
  padding: 5px 4px;
  font-size: 8px;
  font-weight: 950;
  line-height: 1;
  text-transform: uppercase;
  cursor: pointer;
}

.mini-photo-actions input {
  display: none;
}

.flyer-details {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 16px;
  align-items: center;
  padding: 16px 20px 12px;
}

.address-block {
  display: grid;
  grid-template-columns: 24px 1fr;
  gap: 8px;
  align-items: start;
  min-width: 0;
}

.address-block > div {
  min-width: 0;
}

.address-block strong {
  display: block;
  color: var(--studio-ink, #111318);
  font-size: 18px;
  font-weight: 950;
  line-height: 1.1;
  max-width: 100%;
  overflow-wrap: anywhere;
}

.address-block span,
.price-block span {
  display: block;
  color: var(--studio-muted-ink, #68707d);
  font-size: 12px;
  font-weight: 800;
  margin-top: 4px;
}

.price-block {
  min-width: 132px;
  max-width: 100%;
  border-left: 3px solid var(--accent);
  padding-left: 14px;
  overflow: hidden;
}

.price-block strong {
  display: block;
  color: var(--accent);
  font-size: 22px;
  font-weight: 950;
  line-height: 1.04;
  white-space: normal;
  overflow-wrap: anywhere;
}

.stats-strip {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1px;
  background: #dfe1e7;
  margin: 0 20px 16px;
}

.stats-strip div {
  display: grid;
  place-items: center;
  gap: 3px;
  background: #111318;
  color: white;
  min-height: 74px;
  padding: 10px 4px;
}

.stats-strip strong {
  font-size: 18px;
  font-weight: 950;
  line-height: 1;
  max-width: 100%;
  overflow-wrap: anywhere;
  text-align: center;
}

.stats-strip span {
  color: rgb(255 255 255 / 0.68);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.event-band {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  background: var(--accent);
  color: white;
  margin: 12px 20px 0;
  padding: 9px 12px;
  font-size: 13px;
  font-weight: 900;
}

.flyer-copy-block {
  display: grid;
  gap: 9px;
  padding: 15px 20px;
}

.flyer-copy-block p {
  margin: 0;
  color: var(--studio-ink, #303540);
  font-size: 13px;
  line-height: 1.45;
  text-align: var(--text-align, left);
  overflow-wrap: anywhere;
}

.flyer-copy-block strong {
  display: block;
  color: var(--accent);
  font-size: 15px;
  font-weight: 950;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.flyer-footer {
  margin-top: auto;
  background: #050505;
  color: white;
  padding: 15px 20px;
}

.agent-block {
  display: grid;
  grid-template-columns: 45px 1fr;
  gap: 10px;
  align-items: center;
  min-width: 0;
}

.agent-block > div {
  min-width: 0;
}

.agent-block img,
.agent-placeholder {
  height: 45px;
  width: 45px;
  object-fit: cover;
}

.agent-placeholder {
  display: grid;
  place-items: center;
  background: rgb(255 255 255 / 0.12);
}

.agent-block strong {
  display: block;
  font-size: 14px;
  font-weight: 950;
}

.agent-block span {
  display: block;
  color: rgb(255 255 255 / 0.66);
  font-size: 11px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.agent-block em {
  display: block;
  color: rgb(255 255 255 / 0.5);
  font-size: 9px;
  font-style: normal;
  font-weight: 800;
  margin-top: 3px;
}

.flyer-footer p {
  margin: 10px 0 0;
  color: rgb(255 255 255 / 0.55);
  font-size: 8px;
  line-height: 1.35;
}

.selected-element {
  outline: 2px solid rgb(227 6 19 / 0.82);
  outline-offset: -2px;
}

.canvas-scalable-layer {
  position: relative;
  transform: translate(var(--layer-x, 0), var(--layer-y, 0)) scale(var(--layer-scale, 1));
  transform-origin: left center;
}

.price-block.canvas-scalable-layer {
  transform-origin: right center;
}

.resize-handles {
  position: absolute;
  inset: -8px;
  z-index: 8;
  pointer-events: none;
}

.resize-handles i {
  position: absolute;
  width: 11px;
  height: 11px;
  border: 2px solid white;
  border-radius: 999px;
  background: var(--nex-red);
  box-shadow: 0 5px 12px rgb(17 19 24 / 0.22);
  pointer-events: auto;
}

.resize-handles .handle-nw {
  top: 0;
  left: 0;
  cursor: nwse-resize;
}

.resize-handles .handle-ne {
  top: 0;
  right: 0;
  cursor: nesw-resize;
}

.resize-handles .handle-sw {
  bottom: 0;
  left: 0;
  cursor: nesw-resize;
}

.resize-handles .handle-se {
  right: 0;
  bottom: 0;
  cursor: nwse-resize;
}

.canvas-edit-hint {
  display: flex;
  align-items: center;
  gap: 8px;
  max-width: 720px;
  border: 1px solid rgb(17 19 24 / 0.12);
  background: rgb(255 255 255 / 0.92);
  color: #343944;
  padding: 8px 10px;
  font-size: 11px;
  font-weight: 850;
  box-shadow: 0 10px 24px rgb(15 18 26 / 0.08);
}

.canvas-editable {
  display: inline-block;
  border-radius: 4px;
  cursor: text;
  outline: 0;
  max-width: 100%;
  min-width: 0;
  line-height: inherit;
  overflow-wrap: anywhere;
  white-space: normal;
  word-break: break-word;
  transition: box-shadow 0.16s ease, background 0.16s ease, font-size 0.16s ease;
}

.canvas-editable.fit-long {
  font-size: 0.88em;
  line-height: 1.08;
}

.canvas-editable.fit-very-long {
  font-size: 0.76em;
  line-height: 1.06;
}

.canvas-editable.fit-url {
  font-size: 0.66em;
  letter-spacing: 0;
  line-height: 1.08;
}

.canvas-editable.fit-extreme {
  font-size: 0.56em;
  letter-spacing: 0;
  line-height: 1.03;
}

.canvas-editable.fit-url,
.canvas-editable.fit-long,
.canvas-editable.fit-very-long,
.canvas-editable.fit-extreme {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.canvas-editable:hover {
  background: rgb(255 255 255 / 0.08);
  box-shadow: 0 0 0 2px rgb(227 6 19 / 0.9);
}

.canvas-editable:focus,
.canvas-editable.is-editing {
  background: rgb(255 255 255 / 0.16) !important;
  color: inherit !important;
  -webkit-text-fill-color: currentColor;
  text-shadow: none !important;
  box-shadow:
    0 0 0 2px rgb(227 6 19 / 0.9),
    0 10px 24px rgb(17 19 24 / 0.22);
}

.canvas-editable:focus::selection {
  background: rgb(227 6 19 / 0.18);
}

.flyer-headline.selected-element {
  background: rgb(255 255 255 / 0.06);
  box-shadow: 0 0 0 9999px transparent;
}

.flyer-headline.selected-element > .canvas-editable,
.flyer-headline .canvas-editable:hover,
.flyer-headline .canvas-editable:focus,
.flyer-headline .canvas-editable.is-editing {
  background: rgb(255 255 255 / 0.16) !important;
  box-shadow:
    inset 0 0 0 1px rgb(255 255 255 / 0.38),
    0 0 0 2px rgb(227 6 19 / 0.86);
}

.flyer-headline.selected-element > span.canvas-editable,
.flyer-headline span.canvas-editable:hover,
.flyer-headline span.canvas-editable:focus,
.flyer-headline span.canvas-editable.is-editing {
  background: rgb(227 6 19 / 0.12) !important;
}

.flyer-headline.selected-element > h2.canvas-editable,
.flyer-headline h2.canvas-editable:hover,
.flyer-headline h2.canvas-editable:focus,
.flyer-headline h2.canvas-editable.is-editing {
  background: rgb(17 19 24 / 0.22) !important;
}

.layout-clean .flyer-headline.selected-element > h2.canvas-editable,
.layout-clean .flyer-headline h2.canvas-editable:hover,
.layout-clean .flyer-headline h2.canvas-editable:focus,
.layout-clean .flyer-headline h2.canvas-editable.is-editing,
.layout-magazine .flyer-headline.selected-element > h2.canvas-editable,
.layout-magazine .flyer-headline h2.canvas-editable:hover,
.layout-magazine .flyer-headline h2.canvas-editable:focus,
.layout-magazine .flyer-headline h2.canvas-editable.is-editing {
  background: rgb(255 255 255 / 0.58) !important;
}

.flyer-headline .canvas-editable:focus,
.studio-card-agent-copy .canvas-editable:focus,
.studio-card-back-copy .canvas-editable:focus,
.studio-card-brand .canvas-editable:focus {
  padding: 4px 6px;
}

.draggable-headline {
  cursor: grab;
  touch-action: none;
}

.draggable-headline:active {
  cursor: grabbing;
}

.canvas-image-toolbar {
  position: absolute;
  right: 12px;
  bottom: 12px;
  z-index: 4;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  opacity: 0;
  transform: translateY(4px);
  transition: opacity 0.18s ease, transform 0.18s ease;
}

.flyer-hero:hover .canvas-image-toolbar,
.flyer-hero.selected-element .canvas-image-toolbar,
.canvas-image-toolbar:focus-within {
  opacity: 1;
  transform: translateY(0);
}

.canvas-image-toolbar label,
.canvas-image-toolbar button,
.agent-headshot-replace,
.canvas-headshot-button {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border: 1px solid rgb(255 255 255 / 0.22);
  background: rgb(17 19 24 / 0.82);
  color: white;
  padding: 7px 8px;
  font-size: 10px;
  font-weight: 900;
  cursor: pointer;
  backdrop-filter: blur(12px);
}

.canvas-image-toolbar input,
.agent-headshot-replace input,
.canvas-headshot-button input {
  display: none;
}

.is-exporting.selected-element,
.is-exporting .selected-element {
  outline: 0 !important;
  box-shadow: none !important;
}

.is-exporting::before {
  opacity: 0 !important;
}

.is-exporting {
  transform: none !important;
  zoom: 1 !important;
}

.is-exporting,
.is-exporting * {
  animation: none !important;
  caret-color: transparent !important;
  transition: none !important;
}

.is-exporting .brand-logo {
  height: auto !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: left center !important;
  flex: 0 0 auto !important;
}

.is-exporting .resize-handles,
.is-exporting .canvas-image-toolbar,
.is-exporting .canvas-headshot-button,
.is-exporting .agent-headshot-replace {
  display: none !important;
}

.agent-block {
  position: relative;
}

.agent-headshot-replace {
  position: absolute;
  left: 28px;
  bottom: -4px;
  width: 24px;
  height: 24px;
  justify-content: center;
  padding: 0;
  border-radius: 999px;
}

.qr-design-block {
  display: flex;
  align-items: center;
  gap: 10px;
  border-top: 1px solid #dfe2e8;
  padding: 12px 20px;
}

.qr-design-block div {
  display: grid;
  width: 62px;
  height: 62px;
  place-items: center;
  border: 2px solid #111318;
  background: white;
  color: #111318;
}

.qr-design-block span {
  color: #303540;
  font-size: 11px;
  font-weight: 850;
  overflow-wrap: anywhere;
}

.layout-luxury {
  width: min(100%, 500px);
}

.layout-luxury .flyer-hero {
  min-height: 330px;
}

.layout-luxury .flyer-hero img,
.layout-luxury .photo-placeholder {
  height: 330px;
}

.layout-luxury .flyer-headline {
  top: auto;
  bottom: 20px;
}

.layout-luxury .flyer-headline h2 {
  max-width: 390px;
  font-size: 39px;
}

.layout-magazine .flyer-hero {
  min-height: 360px;
}

.layout-magazine .flyer-hero img,
.layout-magazine .photo-placeholder {
  height: 360px;
}

.layout-magazine .flyer-headline {
  top: auto;
  bottom: 18px;
}

.layout-magazine .flyer-headline h2 {
  background: white;
  color: #111318;
  font-size: 38px;
}

.layout-social {
  width: min(100%, 500px);
  min-height: 620px;
}

.layout-social .flyer-headline h2 {
  font-size: 42px;
}

.layout-social .flyer-copy-block {
  border-top: 8px solid var(--accent);
}

.layout-clean .flyer-headline h2 {
  background: white;
  color: #111318;
}

.layout-clean .stats-strip div {
  background: #f4f5f7;
  color: #111318;
}

.layout-clean .stats-strip span {
  color: #626a76;
}

.finish-black-luxury {
  background: #111318;
  color: white;
}

.finish-black-luxury .flyer-top,
.finish-black-luxury .flyer-photo-strip,
.finish-black-luxury .flyer-details,
.finish-black-luxury .flyer-copy-block {
  background: #111318;
}

.finish-black-luxury .wordmark,
.finish-black-luxury .address-block strong,
.finish-black-luxury .flyer-copy-block p {
  color: white;
}

.finish-black-luxury .address-block span,
.finish-black-luxury .price-block span {
  color: rgb(255 255 255 / 0.62);
}

.finish-black-luxury .flyer-template-label {
  border-color: rgb(255 255 255 / 0.16);
  color: rgb(255 255 255 / 0.74);
}

.finish-black-luxury .stats-strip {
  background: rgb(255 255 255 / 0.16);
}

.finish-black-luxury .stats-strip div {
  background: #050505;
}

.finish-gold-accent {
  --accent: var(--brand-gold) !important;
}

.finish-gold-accent .flyer-footer {
  background: linear-gradient(120deg, #111318, #3a3020);
}

.finish-clean-white .flyer-footer {
  background: #111318;
}

.photo-dramatic-overlay .flyer-hero::after {
  background:
    linear-gradient(180deg, rgb(0 0 0 / 0.12), rgb(0 0 0 / 0.62)),
    linear-gradient(90deg, rgb(0 0 0 / 0.5), transparent 60%);
}

.photo-soft-contrast .flyer-hero img {
  filter: saturate(0.88) contrast(0.96) brightness(1.03);
}

.photo-gallery-strip .flyer-photo-strip {
  gap: 4px;
  padding: 4px;
}

.photo-gallery-strip .flyer-photo-strip img,
.photo-gallery-strip .mini-placeholder {
  height: 92px;
}

.video-builder-grid {
  display: grid;
  grid-template-columns: minmax(320px, 430px) minmax(0, 1fr);
  gap: 18px;
  padding-top: 22px;
}

.video-preview-shell {
  display: grid;
  min-height: calc(100vh - 130px);
  place-items: center;
  overflow: auto;
  border: 1px solid var(--nex-line);
  background:
    linear-gradient(90deg, rgb(255 255 255 / 0.5) 1px, transparent 1px),
    linear-gradient(0deg, rgb(255 255 255 / 0.5) 1px, transparent 1px),
    #dfe2e8;
  background-size: 28px 28px;
  padding: 28px;
}

.video-preview-frame {
  position: relative;
  width: min(100%, 360px);
  aspect-ratio: 9 / 16;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgb(0 0 0 / 0.18), rgb(0 0 0 / 0.88)),
    var(--video-bg),
    linear-gradient(135deg, #111318, var(--card-red));
  background-position: center;
  background-size: cover;
  box-shadow: 0 24px 70px rgb(18 22 30 / 0.22);
}

.video-preview-frame.orientation-horizontal {
  width: min(100%, 760px);
  aspect-ratio: 16 / 9;
}

.video-preview-overlay {
  position: absolute;
  inset: auto 0 0;
  display: grid;
  gap: 11px;
  background: linear-gradient(0deg, rgb(0 0 0 / 0.92), transparent);
  color: white;
  padding: 26px;
}

.video-preview-overlay .brand-logo {
  width: 150px;
  max-height: 56px;
}

.video-preview-overlay > span {
  width: fit-content;
  background: var(--card-red);
  padding: 7px 9px;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.video-preview-overlay h3 {
  margin: 0;
  font-size: clamp(28px, 5.2vw, 48px);
  font-weight: 950;
  line-height: 0.96;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.video-preview-overlay p {
  margin: 0;
  color: rgb(255 255 255 / 0.76);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.35;
}

.video-preview-overlay strong {
  color: var(--card-gold);
  font-size: 14px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.business-preview-shell {
  display: grid;
  min-height: calc(100vh - 130px);
  place-items: center;
  overflow: auto;
  border: 1px solid var(--nex-line);
  background:
    linear-gradient(135deg, #f4f5f7 0%, #dfe3ea 54%, #cfd4dd 100%);
  padding: 28px;
}

.business-card-export {
  display: grid;
  gap: 22px;
  background: #ffffff;
  padding: 22px;
}

.business-card {
  --card-red: var(--nex-red);
  --card-gold: var(--nex-gold);
  position: relative;
  display: grid;
  width: min(100%, 672px);
  aspect-ratio: 3.5 / 2;
  overflow: hidden;
  border: 1px solid #d9dce3;
  background: white;
}

.business-card.front {
  grid-template-rows: 1fr auto;
}

.card-red-bar {
  position: absolute;
  inset: 0 auto 0 0;
  width: 16px;
  background: var(--card-red);
}

.business-card-main {
  display: grid;
  grid-template-columns: 190px 1fr;
  gap: 26px;
  align-items: center;
  padding: 34px 36px 22px 48px;
}

.business-photo-frame {
  display: grid;
  aspect-ratio: 1;
  place-items: center;
  overflow: hidden;
  border: 4px solid #111318;
  background: #f1f2f5;
  color: #68707d;
}

.business-photo-frame img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.business-agent-info {
  min-width: 0;
}

.business-agent-info .wordmark {
  margin-bottom: 20px;
}

.business-agent-info h3 {
  margin: 0;
  color: #111318;
  font-size: clamp(28px, 5vw, 46px);
  font-weight: 950;
  line-height: 0.95;
  overflow-wrap: anywhere;
}

.business-agent-info p {
  margin: 10px 0 0;
  color: var(--card-red);
  font-size: 16px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.business-agent-info span {
  display: block;
  margin-top: 8px;
  color: #626976;
  font-size: 13px;
  font-weight: 800;
}

.business-contact-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  background: #343943;
  margin-left: 16px;
}

.business-contact-row div {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 8px;
  background: #050505;
  color: white;
  padding: 14px 16px;
}

.business-contact-row span {
  min-width: 0;
  overflow-wrap: anywhere;
  color: rgb(255 255 255 / 0.82);
  font-size: 13px;
  font-weight: 800;
}

.business-card.back {
  align-content: space-between;
  background:
    linear-gradient(120deg, rgb(0 0 0 / 0.86), rgb(0 0 0 / 0.62)),
    linear-gradient(135deg, #24272d, var(--card-red));
  color: white;
  padding: 32px 36px;
}

.business-card.back .wordmark {
  color: white;
}

.business-card.back h3 {
  margin: 28px 0 0;
  max-width: 500px;
  font-size: clamp(28px, 5vw, 44px);
  font-weight: 950;
  line-height: 1;
}

.qr-block {
  display: flex;
  width: fit-content;
  align-items: center;
  gap: 14px;
  border: 1px solid rgb(255 255 255 / 0.22);
  background: rgb(255 255 255 / 0.1);
  padding: 12px 14px;
}

.qr-block span {
  color: rgb(255 255 255 / 0.82);
  font-size: 15px;
  font-weight: 900;
}

.business-card.back p {
  margin: 0;
  color: rgb(255 255 255 / 0.58);
  font-size: 10px;
  font-weight: 700;
}

.business-card-proof {
  display: grid;
  gap: 28px;
  width: min(100%, 820px);
}

.proof-label {
  margin: 0 0 8px;
  color: #5f6673;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.print-card {
  --card-red: var(--nex-red);
  --card-gold: var(--nex-gold);
  position: relative;
  width: 100%;
  aspect-ratio: 3.5 / 2;
  overflow: hidden;
  border: 1px solid #cfd3dc;
  background: #ffffff;
  box-shadow: 0 24px 70px rgb(18 22 30 / 0.2);
  isolation: isolate;
}

.print-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 14px;
  background: var(--card-red);
}

.print-card::after {
  content: "";
  position: absolute;
  inset: 18px 18px auto auto;
  width: 88px;
  height: 5px;
  background: var(--card-gold);
}

.immersive-card .print-safe-area::before {
  content: "";
  position: absolute;
  inset: 22px 22px 22px 34px;
  z-index: -1;
  border: 1px solid rgb(17 19 24 / 0.08);
}

.immersive-card.style-signature-red::after {
  background: var(--card-gold);
}

.immersive-card.style-executive-black {
  background: #111318;
  color: white;
}

.immersive-card.style-executive-black::after {
  background: var(--card-red);
}

.immersive-card.style-executive-black .wordmark,
.immersive-card.style-executive-black .card-name-block h3,
.immersive-card.style-executive-black .card-contact-grid span {
  color: white;
}

.immersive-card.style-executive-black .card-name-block em,
.immersive-card.style-executive-black .card-header-line span,
.immersive-card.style-executive-black .card-contact-grid p {
  color: rgb(255 255 255 / 0.62);
}

.immersive-card.style-executive-black .card-contact-grid div,
.immersive-card.style-executive-black .print-safe-area::before {
  border-color: rgb(255 255 255 / 0.14);
}

.immersive-card.style-clean-white {
  background: linear-gradient(135deg, #ffffff, #f8f9fb);
}

.immersive-card.style-clean-white::before {
  width: 8px;
}

.immersive-card.style-clean-white::after {
  background: #111318;
}

.immersive-card.style-luxury-gold {
  --card-red: var(--card-gold);
  background:
    linear-gradient(135deg, rgb(255 255 255 / 0.94), rgb(248 244 235 / 0.98)),
    #ffffff;
}

.immersive-card.style-luxury-gold::after {
  background: #111318;
}

.print-safe-area {
  position: relative;
  z-index: 1;
  display: grid;
  height: 100%;
  grid-template-rows: auto 1fr auto;
  gap: 16px;
  padding: 30px 34px 24px 46px;
}

.card-header-line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.card-header-line span {
  max-width: 280px;
  color: #6a717e;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.12em;
  line-height: 1.35;
  text-align: right;
  text-transform: uppercase;
}

.card-header-line .brand-logo {
  width: 136px;
  height: auto;
  max-height: 54px;
  object-fit: contain;
  object-position: left center;
}

.card-identity-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 152px;
  gap: 30px;
  align-items: center;
}

.card-name-block {
  min-width: 0;
}

.card-name-block p {
  margin: 0 0 10px;
  color: var(--card-red);
  font-size: 13px;
  font-weight: 950;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.card-name-block h3 {
  margin: 0;
  color: #111318;
  font-size: clamp(32px, 4.2vw, 50px);
  font-weight: 950;
  line-height: 0.94;
  overflow-wrap: anywhere;
}

.card-name-block em {
  display: block;
  max-width: 380px;
  margin-top: 10px;
  color: #5d6470;
  font-size: 13px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.4;
}

.card-headshot {
  display: grid;
  aspect-ratio: 1;
  place-items: center;
  overflow: hidden;
  border: 1px solid #d4d8e0;
  background: linear-gradient(135deg, #f4f5f7, #ffffff);
  color: #111318;
  box-shadow: 0 18px 34px rgb(17 19 24 / 0.12);
}

.card-headshot img {
  height: 100%;
  width: 100%;
  transform-origin: center;
}

.card-headshot strong {
  color: var(--card-red);
  font-size: 42px;
  font-weight: 950;
  letter-spacing: 0.04em;
}

.card-headshot.shape-circle {
  border-radius: 999px;
}

.card-headshot.shape-arch {
  border-radius: 72px 72px 10px 10px;
}

.card-contact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 22px;
}

.card-contact-grid div {
  display: grid;
  grid-template-columns: 20px 1fr;
  grid-template-areas:
    "icon label"
    "icon value";
  column-gap: 8px;
  align-items: center;
  min-width: 0;
  border-top: 1px solid #dfe2e8;
  padding-top: 11px;
}

.card-contact-grid svg {
  grid-area: icon;
  color: var(--card-red);
}

.card-contact-grid p {
  grid-area: label;
  margin: 0;
  color: #7b828f;
  font-size: 9px;
  font-weight: 950;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.card-contact-grid span {
  grid-area: value;
  min-width: 0;
  overflow-wrap: anywhere;
  color: #17191d;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.25;
}

.card-back {
  background:
    linear-gradient(135deg, #ffffff, #ffffff);
  color: #111318;
}

.card-back.style-clean-white {
  background:
    linear-gradient(135deg, #ffffff, #ffffff);
  color: #111318;
}

.card-back.style-clean-white .wordmark,
.card-back.style-clean-white .back-message h3,
.card-back.style-clean-white .qr-card span {
  color: #111318;
}

.card-back.style-clean-white .back-message p,
.card-back.style-clean-white .qr-card small,
.card-back.style-clean-white .back-footer > p {
  color: #68707d;
}

.card-back.style-clean-white .qr-card {
  border-color: #d8dce4;
  background: white;
}

.card-back.style-luxury-gold {
  background:
    linear-gradient(120deg, rgb(5 5 5 / 0.94), rgb(38 34 24 / 0.9)),
    #171717;
}

.card-back.style-luxury-gold::after {
  background: var(--card-gold);
}

.card-back::before {
  width: 18px;
}

.card-back::after {
  inset: auto 28px 28px auto;
  width: 120px;
  background: var(--card-red);
}

.back-safe-area {
  grid-template-rows: auto 1fr auto;
  padding-left: 52px;
}

.card-back .wordmark {
  color: #111318;
}

.card-back .brand-logo {
  width: 150px;
  height: auto;
  max-height: 58px;
  object-fit: contain;
  object-position: left center;
}

.back-message {
  align-self: center;
}

.back-message h3 {
  max-width: 560px;
  margin: 0;
  color: #111318;
  font-size: clamp(30px, 4.2vw, 44px);
  font-weight: 950;
  line-height: 0.98;
}

.back-message p {
  margin: 16px 0 0;
  color: #68707d;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.back-footer {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
}

.qr-card {
  display: flex;
  min-width: 200px;
  align-items: center;
  gap: 12px;
  border: 1px solid #d8dce4;
  background: #ffffff;
  padding: 10px 12px;
}

.qr-card span {
  min-width: 0;
  overflow-wrap: anywhere;
  color: #111318;
  font-size: 13px;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.qr-card small {
  display: block;
  color: #68707d;
  font-size: 10px;
  font-weight: 850;
  margin-top: 4px;
}

.back-footer > p {
  max-width: 330px;
  margin: 0;
  color: #68707d;
  font-size: 9px;
  font-weight: 750;
  line-height: 1.4;
  text-align: right;
}

.settings-stack {
  display: grid;
  gap: 18px;
}

.settings-grid,
.template-layout,
.email-sms-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.8fr);
  gap: 18px;
  padding-top: 22px;
}

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

.color-field input {
  padding: 4px;
}

.muted {
  pointer-events: none;
  opacity: 0.72;
}

.brand-preview-panel {
  align-self: start;
}

.brand-preview {
  display: grid;
  min-height: 320px;
  align-content: end;
  gap: 16px;
  background:
    linear-gradient(135deg, rgb(0 0 0 / 0.86), rgb(0 0 0 / 0.56)),
    linear-gradient(45deg, var(--brand-red), var(--brand-gold));
  color: white;
  padding: 28px;
}

.brand-preview .wordmark {
  color: white;
}

.brand-preview .brand-logo {
  width: 210px;
  max-height: 120px;
}

.brand-logo-manager {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.logo-swatch {
  display: grid;
  min-height: 176px;
  align-content: space-between;
  gap: 14px;
  border: 1px solid var(--nex-line);
  padding: 14px;
}

.logo-swatch.light {
  background:
    linear-gradient(135deg, #ffffff, #f5f6f8);
}

.logo-swatch.dark {
  background:
    linear-gradient(135deg, #050505, #24272d);
}

.logo-swatch .brand-logo {
  width: 180px;
  max-height: 92px;
}

.activity-page {
  display: grid;
  gap: 16px;
}

.activity-hero {
  align-items: stretch;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.32fr);
}

.activity-scope-card {
  align-content: center;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.08);
  color: white;
  display: grid;
  gap: 8px;
  justify-items: start;
  padding: 16px;
}

.activity-scope-card svg {
  color: #ff2632;
}

.activity-scope-card strong {
  font-size: 18px;
  font-weight: 950;
}

.activity-scope-card span {
  color: rgba(255, 255, 255, 0.72);
  font-size: 12px;
  font-weight: 850;
  overflow-wrap: anywhere;
}

.activity-toolbar {
  align-items: end;
  display: grid;
  grid-template-columns: repeat(4, minmax(160px, 1fr));
  gap: 12px;
}

.activity-toolbar-actions {
  align-items: center;
  display: flex;
  gap: 8px;
}

.activity-toolbar-actions .btn {
  min-height: 42px;
  white-space: nowrap;
}

.activity-summary-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.activity-summary-strip span {
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 999px;
  background: #ffffff;
  color: #4b5563;
  font-size: 12px;
  font-weight: 850;
  padding: 8px 10px;
}

.activity-summary-strip strong {
  color: #111827;
  font-weight: 950;
}

.activity-feed {
  display: grid;
  gap: 10px;
}

.activity-item {
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  padding: 14px;
}

.activity-item.important {
  border-color: rgba(227, 6, 19, 0.22);
  box-shadow: 0 16px 38px rgba(227, 6, 19, 0.08);
}

.activity-item.important .activity-icon {
  background: var(--nex-red);
}

.activity-icon {
  align-items: center;
  background: #111318;
  border-radius: 14px;
  color: white;
  display: inline-flex;
  height: 42px;
  justify-content: center;
  width: 42px;
}

.activity-item-head {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: space-between;
}

.activity-item-head strong {
  color: #111827;
  font-size: 15px;
  font-weight: 950;
}

.activity-item-head span {
  color: #6b7280;
  font-size: 12px;
  font-weight: 850;
}

.activity-item p {
  color: #4b5563;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.5;
  margin: 6px 0 10px;
  overflow-wrap: anywhere;
}

.activity-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.activity-meta em,
.activity-meta span {
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 999px;
  background: #f8fafc;
  color: #4b5563;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
  padding: 5px 8px;
}

.activity-meta em {
  border-color: rgba(227, 6, 19, 0.18);
  background: #fff7f7;
  color: var(--nex-red);
}

.activity-role-badge {
  background: #111827 !important;
  border-color: #111827 !important;
  color: #ffffff !important;
}

.activity-important-badge {
  background: #fff1f2 !important;
  border-color: rgba(227, 6, 19, 0.22) !important;
  color: var(--nex-red) !important;
}

.activity-technical {
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  margin-top: 12px;
  padding-top: 10px;
}

.activity-technical summary {
  color: #6b7280;
  cursor: pointer;
  font-size: 12px;
  font-weight: 950;
}

.activity-technical-grid {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  gap: 6px 10px;
  margin-top: 10px;
}

.activity-technical-grid span {
  color: #6b7280;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.activity-technical-grid code {
  background: #f8fafc;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 8px;
  color: #374151;
  font-size: 11px;
  overflow-wrap: anywhere;
  padding: 5px 7px;
}

.activity-technical-more {
  color: #6b7280 !important;
  font-size: 12px !important;
  margin: 8px 0 0 !important;
}

.website-lead-center {
  display: grid;
  gap: 16px;
}

.website-lead-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.32fr);
  align-items: stretch;
}

.idx-launch-card {
  display: grid;
  align-content: center;
  justify-items: start;
  gap: 8px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.08);
  color: white;
  padding: 16px;
}

.idx-launch-card svg {
  color: #ff2632;
}

.idx-launch-card strong {
  font-size: 18px;
  font-weight: 950;
}

.idx-launch-card span {
  color: rgba(255, 255, 255, 0.72);
  font-size: 12px;
  font-weight: 850;
}

.website-lead-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.website-lead-stats article {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 16px;
  background: #ffffff;
  padding: 16px;
  box-shadow: 0 14px 34px rgba(15, 23, 42, 0.06);
}

.website-lead-stats svg {
  color: var(--nex-red);
}

.website-lead-stats span {
  color: #6b7280;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.website-lead-stats strong {
  color: #111827;
  font-size: 28px;
  font-weight: 950;
}

.website-lead-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.website-intelligence-grid {
  align-items: start;
}

.idx-setup-panel,
.idx-agent-readiness,
.website-leads-panel {
  display: grid;
  gap: 14px;
}

.idx-checklist {
  display: grid;
  gap: 9px;
}

.idx-checklist div {
  display: grid;
  grid-template-columns: auto minmax(0, 0.42fr) minmax(0, 0.58fr);
  gap: 10px;
  align-items: center;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 12px;
  background: #f8fafc;
  padding: 10px;
}

.idx-checklist svg {
  color: #16a34a;
}

.idx-checklist span,
.idx-payload-box strong,
.idx-agent-list span,
.idx-rule-list span,
.idx-queue-list span,
.website-lead-route span,
.website-lead-actions span {
  color: #6b7280;
  font-size: 11px;
  font-weight: 900;
}

.idx-checklist strong {
  color: #111827;
  font-size: 12px;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.idx-payload-box {
  display: grid;
  gap: 8px;
  border: 1px dashed rgba(227, 6, 19, 0.24);
  border-radius: 14px;
  background: #fff8f8;
  padding: 12px;
}

.idx-payload-box > div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}

.idx-payload-box pre {
  max-height: 220px;
  overflow: auto;
  margin: 0;
  border-radius: 10px;
  background: #111318;
  color: #f8fafc;
  padding: 12px;
  font-size: 11px;
  line-height: 1.55;
}

.idx-route-builder {
  display: grid;
  gap: 12px;
  border: 1px solid rgba(227, 6, 19, 0.14);
  border-radius: 16px;
  background: linear-gradient(180deg, #ffffff 0%, #fff8f8 100%);
  padding: 12px;
}

.idx-route-fields {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(120px, 0.35fr) minmax(0, 1fr);
  gap: 10px;
  align-items: end;
}

.idx-route-agents {
  display: grid;
  gap: 8px;
}

.idx-route-agents > span {
  color: #6b7280;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.idx-route-agents > div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.idx-route-agents label {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: auto;
  margin: 0;
  border: 1px solid rgba(17, 24, 39, 0.12);
  border-radius: 999px;
  background: white;
  color: #111827;
  padding: 8px 10px;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}

.idx-route-agents label.selected {
  border-color: rgba(227, 6, 19, 0.45);
  background: #fff1f1;
  color: var(--nex-red);
}

.idx-route-agents input {
  width: 14px;
  height: 14px;
  margin: 0;
}

.idx-agent-list,
.idx-rule-list,
.idx-queue-list,
.website-lead-list {
  display: grid;
  gap: 10px;
}

.idx-queue-list.compact {
  gap: 8px;
}

.idx-agent-list article,
.idx-rule-list div,
.idx-queue-list div,
.website-lead-list article {
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 14px;
  background: #ffffff;
  padding: 12px;
}

.idx-rule-list div {
  display: grid;
  gap: 7px;
}

.idx-agent-list article {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}

.public-avatar.small {
  width: 40px;
  height: 40px;
  font-size: 12px;
}

.idx-agent-list strong,
.idx-rule-list strong,
.idx-queue-list strong,
.website-lead-main strong,
.website-lead-route strong {
  display: block;
  color: #111827;
  font-size: 14px;
  font-weight: 950;
  overflow-wrap: anywhere;
}

.idx-agent-list em,
.idx-rule-list em,
.idx-queue-list em,
.website-lead-route em {
  display: inline-flex;
  width: fit-content;
  margin-top: 5px;
  border-radius: 999px;
  background: #fff1f1;
  color: var(--nex-red);
  padding: 5px 8px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.website-conversion-feed {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.website-lead-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 0.25fr);
  gap: 12px;
  align-items: end;
}

.website-lead-list article {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(190px, 0.55fr) minmax(150px, 0.36fr);
  gap: 12px;
  align-items: center;
}

.website-lead-main span {
  display: inline-flex;
  width: fit-content;
  border-radius: 999px;
  background: #111318;
  color: white;
  padding: 5px 8px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.website-lead-main .lead-source-pill,
.lead-source-pill {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  border: 1px solid rgba(17, 24, 39, 0.12);
  border-radius: 999px;
  background: #111318;
  color: #ffffff;
  padding: 5px 9px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.lead-source-pill.brokerage {
  border-color: rgba(227, 6, 19, 0.28);
  background: #fff1f1;
  color: var(--nex-red);
}

.lead-source-pill.agent {
  border-color: rgba(22, 163, 74, 0.28);
  background: #ecfdf3;
  color: #047857;
}

.lead-source-pill.review {
  border-color: rgba(217, 119, 6, 0.3);
  background: #fffbeb;
  color: #b45309;
}

.crm-source-badge {
  margin-top: 3px;
}

.crm-source-trust-card {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
  gap: 16px;
  align-items: start;
  border: 1px solid rgba(17, 24, 39, 0.1);
  background: linear-gradient(135deg, #ffffff, #fafafb);
  padding: 16px;
}

.crm-source-trust-card.brokerage {
  border-color: rgba(227, 6, 19, 0.2);
  background: linear-gradient(135deg, #ffffff, #fff5f5);
}

.crm-source-trust-card.agent {
  border-color: rgba(16, 185, 129, 0.22);
  background: linear-gradient(135deg, #ffffff, #f0fdf4);
}

.crm-source-trust-card.review {
  border-color: rgba(217, 119, 6, 0.24);
  background: linear-gradient(135deg, #ffffff, #fffbeb);
}

.crm-source-trust-card h3 {
  margin: 2px 0 6px;
  color: #111318;
  font-size: 18px;
  line-height: 1.15;
}

.crm-source-trust-card p {
  margin: 0;
  color: #596170;
  font-size: 13px;
  line-height: 1.45;
}

.crm-source-trust-card dl {
  display: grid;
  gap: 8px;
  margin: 0;
}

.crm-source-trust-card dl div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid rgba(17, 24, 39, 0.08);
  padding-bottom: 8px;
}

.crm-source-trust-card dt {
  color: #6b7280;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.crm-source-trust-card dd {
  margin: 0;
  color: #111318;
  font-size: 12px;
  font-weight: 900;
  text-align: right;
}

.field-with-note {
  display: grid;
  gap: 6px;
}

.crm-field-note {
  margin: -2px 0 0;
  color: #6b7280;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.4;
}

@media (max-width: 760px) {
  .crm-source-trust-card {
    grid-template-columns: 1fr;
  }

  .crm-source-trust-card dl div {
    display: grid;
    gap: 4px;
  }

  .crm-source-trust-card dd {
    text-align: left;
  }
}

.standard-multi-select {
  gap: 7px;
}

.standard-multi-search {
  width: 100%;
  min-height: 40px;
  border: 1px solid rgba(17, 19, 24, 0.1);
  border-radius: 10px;
  background: #ffffff;
  padding: 8px 10px;
  color: #111318;
  font-weight: 760;
}

.standard-multi-selected {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.standard-multi-selected button {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 28px;
  border: 1px solid rgba(227, 6, 19, 0.28);
  border-radius: 999px;
  background: rgba(227, 6, 19, 0.08);
  color: var(--nex-red);
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 900;
}

.standard-multi-options {
  display: flex;
  min-height: 42px;
  flex-wrap: wrap;
  gap: 7px;
  align-items: flex-start;
  border: 1px solid rgba(17, 19, 24, 0.1);
  border-radius: 8px;
  background: #ffffff;
  padding: 8px;
}

.standard-multi-options button {
  min-height: 28px;
  border: 1px solid rgba(17, 19, 24, 0.12);
  border-radius: 999px;
  background: #f8fafc;
  color: #303844;
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 900;
}

.standard-multi-options button.selected {
  border-color: rgba(227, 6, 19, 0.32);
  background: #fff1f1;
  color: var(--nex-red);
}

.standard-multi-options em {
  color: #7a8494;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}

.standard-multi-select small {
  color: #707b8d;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.35;
}

.website-lead-main p,
.website-lead-main small {
  display: block;
  margin: 5px 0 0;
  color: #4b5563;
  font-size: 12px;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.website-lead-main small {
  color: #6b7280;
}

.website-lead-main em {
  display: block;
  margin-top: 7px;
  color: #6b7280;
  font-size: 11px;
  font-style: normal;
  font-weight: 750;
  line-height: 1.45;
}

.brokerage-lead-card {
  border-color: rgba(227, 6, 19, 0.24) !important;
  box-shadow: inset 4px 0 0 rgba(227, 6, 19, 0.9);
}

.agent-lead-card {
  border-color: rgba(22, 163, 74, 0.18) !important;
  box-shadow: inset 4px 0 0 rgba(22, 163, 74, 0.85);
}

.website-lead-actions {
  display: grid;
  gap: 8px;
  justify-items: end;
}

.nex-leads-page {
  display: grid;
  gap: 16px;
}

.nex-leads-grid {
  grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.5fr);
}

.nex-lead-optin-panel {
  display: grid;
  gap: 14px;
}

.lead-terms-box {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(227, 6, 19, 0.16);
  border-radius: 14px;
  background: #fff8f8;
  padding: 12px;
}

.lead-terms-box strong {
  color: #111827;
  font-size: 13px;
  font-weight: 950;
}

.lead-terms-box p {
  margin: 0;
  color: #4b5563;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.55;
}

.lead-acknowledgement-list {
  display: grid;
  gap: 8px;
}

.lead-acknowledgement-list label {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 9px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 12px;
  background: #ffffff;
  padding: 10px 11px;
  color: #374151;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.4;
}

.lead-acknowledgement-list label.accepted {
  border-color: rgba(22, 163, 74, 0.18);
  background: #f0fdf4;
  color: #166534;
}

.lead-acknowledgement-list input {
  margin-top: 2px;
  accent-color: var(--nex-red);
}

.lead-settings-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.lead-market-mapping-panel {
  display: grid;
  gap: 14px;
}

.lead-market-area-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
}

.lead-market-area-grid article {
  display: grid;
  gap: 10px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 14px;
  background: #ffffff;
  padding: 12px;
}

.lead-market-area-grid article.inactive {
  opacity: 0.62;
}

.lead-market-card-heading {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}

.lead-market-card-heading strong,
.lead-market-add-card > strong {
  color: #111827;
  font-size: 13px;
  font-weight: 950;
}

.lead-market-card-heading label {
  display: inline-flex;
  width: auto;
  align-items: center;
  gap: 6px;
  margin: 0;
  color: #6b7280;
  font-size: 11px;
  font-weight: 900;
}

.lead-market-card-heading input {
  width: 14px;
  height: 14px;
}

.lead-type-toggles,
.lead-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.lead-type-toggles label {
  display: inline-flex;
  width: auto;
  align-items: center;
  gap: 7px;
  margin: 0;
  border: 1px solid rgba(17, 24, 39, 0.1);
  border-radius: 999px;
  background: #ffffff;
  padding: 8px 10px;
  color: #111827;
  font-size: 12px;
  font-weight: 900;
}

.lead-type-toggles input {
  width: 14px;
  height: 14px;
  margin: 0;
}

.lead-score-ring {
  display: grid;
  width: 150px;
  height: 150px;
  place-items: center;
  justify-self: center;
  border: 12px solid #fff1f1;
  border-top-color: var(--nex-red);
  border-radius: 999px;
  background: #ffffff;
  box-shadow: 0 18px 38px rgba(15, 23, 42, 0.08);
  text-align: center;
}

.lead-score-ring strong {
  color: #111827;
  font-size: 42px;
  font-weight: 950;
  line-height: 1;
}

.lead-score-ring span {
  color: #6b7280;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.lead-agent-table {
  display: grid;
  gap: 10px;
}

.lead-agent-table article {
  display: grid;
  gap: 10px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 14px;
  background: #ffffff;
  padding: 12px;
}

.lead-agent-table article > div:first-child {
  display: grid;
  grid-template-columns: minmax(0, 0.34fr) minmax(0, 0.3fr) minmax(0, 0.22fr) minmax(0, 0.24fr);
  gap: 10px;
  align-items: center;
}

.lead-agent-table strong {
  color: #111827;
  font-size: 13px;
  font-weight: 950;
}

.lead-agent-table span,
.lead-agent-table em,
.lead-agent-table small {
  color: #6b7280;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}

.lead-agent-actions {
  display: flex;
  grid-column: 1 / -1;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-start;
}

.lead-agent-area-editor {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 10px;
  align-items: end;
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  padding-top: 10px;
}

.idx-readiness-grid {
  display: grid;
  gap: 9px;
}

.idx-readiness-grid div {
  display: grid;
  grid-template-columns: auto minmax(0, 0.42fr) minmax(0, 0.58fr);
  gap: 10px;
  align-items: center;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 12px;
  background: #f8fafc;
  padding: 10px;
}

.idx-readiness-grid div.ready svg {
  color: #16a34a;
}

.idx-readiness-grid div.pending svg {
  color: #d97706;
}

.idx-readiness-grid span {
  color: #4b5563;
  font-size: 12px;
  font-weight: 900;
}

.idx-readiness-grid strong {
  color: #111827;
  font-size: 12px;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.idx-sync-summary {
  display: grid;
  gap: 10px;
}

.idx-sync-summary > strong {
  color: #111827;
  font-size: 16px;
  font-weight: 950;
}

.idx-sync-summary p {
  margin: 0;
  color: #5f6673;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.55;
}

.idx-sync-summary div {
  display: grid;
  gap: 5px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 12px;
  background: #f8fafc;
  padding: 10px;
}

.idx-sync-summary span {
  width: fit-content;
  border-radius: 999px;
  background: #111318;
  color: white;
  padding: 5px 8px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.idx-sync-summary em {
  color: #4b5563;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
  line-height: 1.45;
}

.admin-spinner-panel {
  display: grid;
  gap: 14px;
  overflow: hidden;
  background:
    radial-gradient(circle at 92% 10%, rgba(227, 6, 19, 0.12), transparent 34%),
    #ffffff;
}

.spinner-safe-badge {
  align-self: start;
  border: 1px solid rgba(17, 24, 39, 0.1);
  border-radius: 999px;
  background: #f8fafc;
  color: #4b5563;
  font-size: 10px;
  font-weight: 950;
  padding: 6px 9px;
  text-transform: uppercase;
}

.admin-spinner-copy {
  color: #5f6673;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.55;
  margin: 0;
}

.deal-spinner-reels {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.deal-spinner-reels article {
  align-items: center;
  border: 1px solid rgba(227, 6, 19, 0.16);
  border-radius: 14px;
  background: linear-gradient(180deg, #ffffff, #f8fafc);
  display: grid;
  gap: 8px;
  justify-items: center;
  min-height: 108px;
  padding: 14px 8px;
  text-align: center;
  box-shadow: inset 0 -16px 26px rgba(17, 24, 39, 0.03);
}

.deal-spinner-reels.spinning article {
  animation: deal-reel-pop 0.18s ease-in-out infinite alternate;
}

.deal-spinner-reels article svg {
  color: var(--nex-red);
}

.deal-spinner-reels article strong {
  color: #111827;
  font-size: 12px;
  font-weight: 950;
  line-height: 1.2;
}

.spinner-result-card {
  border: 1px solid rgba(227, 6, 19, 0.2);
  border-radius: 14px;
  background: #fff7f7;
  display: grid;
  gap: 5px;
  padding: 13px;
}

.spinner-result-card strong {
  color: #111827;
  font-weight: 950;
}

.spinner-result-card span {
  color: var(--nex-red);
  font-size: 12px;
  font-weight: 950;
}

.spinner-result-card p {
  color: #374151;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.5;
  margin: 0;
}

.spinner-history {
  display: grid;
  gap: 6px;
}

.spinner-history span {
  border-left: 3px solid var(--nex-red);
  color: #5f6673;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;
  padding-left: 8px;
}

@keyframes deal-reel-pop {
  from {
    transform: translateY(0);
  }

  to {
    transform: translateY(-3px);
  }
}

.logo-swatch.dark .field span {
  color: rgb(255 255 255 / 0.78);
}

.brand-preview h3 {
  margin: 0;
  max-width: 480px;
  font-size: 30px;
  font-weight: 950;
  line-height: 1.02;
}

.brand-preview p {
  margin: 0;
  color: rgb(255 255 255 / 0.66);
  font-size: 12px;
  line-height: 1.5;
}

.template-grid,
.project-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
  gap: 14px;
}

.template-card,
.project-card {
  border: 1px solid var(--nex-line);
  background: white;
  padding: 14px;
}

.template-card {
  display: grid;
  gap: 8px;
  align-content: start;
}

.premium-template-library .panel {
  align-self: start;
}

.premium-template-library .template-grid {
  align-content: start;
}

.template-card .brand-logo {
  width: 104px;
  max-height: 42px;
}

.template-accent {
  height: 7px;
}

.template-card p {
  margin: 0;
  color: #707783;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.template-card input {
  min-height: 36px;
  padding: 0 9px;
  font-weight: 800;
}

.template-card .mini-template-preview {
  min-height: 180px;
}

.template-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 6px;
}

.project-card {
  display: grid;
  gap: 10px;
}

.project-card .project-thumb {
  min-height: 145px;
}

.project-card h4 {
  margin: 0;
  color: #111318;
  font-size: 17px;
  font-weight: 950;
  line-height: 1.15;
}

.project-card > p:not(.eyebrow) {
  margin: 0;
  color: #626a76;
  font-size: 12px;
  line-height: 1.45;
}

.project-card-foot {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.project-card-foot > span {
  flex: 1 1 100%;
  color: #717987;
  font-size: 11px;
  font-weight: 850;
}

.template-card span {
  color: var(--nex-red);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.project-card h4 {
  margin: 4px 0 8px;
  font-size: 18px;
  font-weight: 900;
}

.project-card p:not(.eyebrow) {
  display: -webkit-box;
  min-height: 64px;
  overflow: hidden;
  color: #59606d;
  font-size: 13px;
  line-height: 1.55;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.project-card-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border-top: 1px solid var(--nex-line);
  margin-top: 12px;
  padding-top: 12px;
}

.project-card-foot span {
  color: #747985;
  font-size: 12px;
  font-weight: 800;
}

.copy-pre {
  white-space: pre-wrap;
  word-break: break-word;
  color: #272c35;
  font-family: inherit;
  font-size: 14px;
  line-height: 1.6;
}

.sms-card {
  border-left: 4px solid var(--nex-red);
  background: #f7f8fa;
  margin: 0;
  padding: 16px;
  color: #272c35;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.5;
}

.toast {
  position: fixed;
  bottom: 18px;
  right: 18px;
  z-index: 20;
  background: #050505;
  color: white;
  padding: 11px 15px;
  font-size: 13px;
  font-weight: 850;
  box-shadow: 0 12px 40px rgb(0 0 0 / 0.24);
}

.app-update-toast {
  position: fixed;
  right: max(18px, env(safe-area-inset-right));
  bottom: max(18px, env(safe-area-inset-bottom));
  z-index: 80;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px 12px;
  width: min(420px, calc(100vw - 36px));
  border: 1px solid rgb(17 24 39 / 0.12);
  border-radius: 18px;
  background: rgb(255 255 255 / 0.96);
  color: #101217;
  padding: 13px;
  box-shadow: 0 22px 70px rgb(0 0 0 / 0.18);
  backdrop-filter: blur(18px);
}

.app-update-toast.update {
  border-color: rgb(227 6 19 / 0.22);
}

.app-update-toast.blocked {
  border-color: rgb(217 119 6 / 0.32);
}

.app-update-toast.reconnect {
  border-color: rgb(20 24 32 / 0.18);
}

.app-update-toast-icon {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 14px;
  background: linear-gradient(135deg, rgb(227 6 19 / 0.14), rgb(227 6 19 / 0.04));
  color: var(--nex-red);
}

.app-update-toast.blocked .app-update-toast-icon {
  background: rgb(245 158 11 / 0.12);
  color: #b45309;
}

.app-update-toast-copy {
  min-width: 0;
}

.app-update-toast-copy strong {
  display: block;
  color: #111827;
  font-size: 14px;
  font-weight: 950;
  letter-spacing: -0.01em;
}

.app-update-toast-copy p {
  margin: 3px 0 0;
  color: #5f6877;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.35;
}

.app-update-toast-actions {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.app-update-toast-actions .btn {
  min-height: 34px;
  padding: 8px 11px;
  font-size: 12px;
}

.app-update-toast-note {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  gap: 7px;
  border-top: 1px solid rgb(17 24 39 / 0.08);
  padding-top: 9px;
  color: #7c4a03;
  font-size: 11px;
  font-weight: 850;
}

@media (max-width: 780px) {
  .app-update-toast {
    right: max(12px, env(safe-area-inset-right));
    bottom: max(12px, env(safe-area-inset-bottom));
    width: min(390px, calc(100vw - 24px));
  }

  .app-update-toast-actions {
    justify-content: stretch;
  }

  .app-update-toast-actions .btn {
    flex: 1;
    justify-content: center;
  }
}

.login-screen {
  display: grid;
  min-height: 100vh;
  place-items: center;
  background:
    linear-gradient(90deg, rgb(0 0 0 / 0.88), rgb(0 0 0 / 0.68)),
    url("data:image/svg+xml,%3Csvg width='1200' height='700' viewBox='0 0 1200 700' xmlns='http://www.w3.org/2000/svg'%3E%3Crect width='1200' height='700' fill='%2324272d'/%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='.12' stroke-width='3'%3E%3Cpath d='M120 490 L330 290 L520 490 Z'/%3E%3Cpath d='M450 490 L700 240 L1010 490 Z'/%3E%3Cpath d='M205 490 V665 M420 490 V665 M620 490 V665 M855 490 V665'/%3E%3C/g%3E%3Crect x='690' y='295' width='42' height='195' fill='%23e30613'/%3E%3Crect x='734' y='250' width='42' height='240' fill='%23e30613' fill-opacity='.72'/%3E%3C/svg%3E");
  background-position: center;
  background-size: cover;
  padding: 22px;
}

.login-panel {
  width: min(100%, 480px);
  border: 1px solid rgb(255 255 255 / 0.16);
  background: white;
  padding: 26px;
  box-shadow: 0 24px 80px rgb(0 0 0 / 0.28);
}

.login-brand {
  display: grid;
  grid-template-columns: 150px 1fr;
  gap: 14px;
  align-items: center;
}

.login-logo {
  width: 150px;
  max-height: 92px;
}

.login-brand h1 {
  margin: 2px 0 0;
  font-size: 26px;
  font-weight: 950;
  line-height: 1;
}

.login-panel > p {
  margin: 18px 0;
  color: #5e6571;
  font-size: 14px;
  line-height: 1.6;
}

.login-form,
.access-form {
  display: grid;
  gap: 12px;
}

.login-error {
  border-left: 4px solid var(--nex-red);
  background: rgb(227 6 19 / 0.08);
  color: #471217;
  padding: 10px 11px;
  font-size: 13px;
  font-weight: 850;
}

.login-error small {
  display: block;
  margin-top: 5px;
  color: #6d1b22;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.35;
}

.login-message {
  border-left: 4px solid #168a4a;
  background: rgb(22 138 74 / 0.1);
  color: #14532d;
  padding: 10px 11px;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.4;
}

.auth-links {
  display: flex;
  justify-content: center;
}

.auth-links button {
  border: 0;
  background: transparent;
  color: var(--nex-red);
  cursor: pointer;
  font-size: 13px;
  font-weight: 900;
}

.settings-side {
  display: grid;
  align-self: start;
  gap: 18px;
}

.allowed-user-list {
  display: grid;
  gap: 12px;
  margin-top: 14px;
}

.allowed-user-list article {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  align-items: stretch;
  border: 1px solid var(--nex-line);
  background: #ffffff;
  padding: 14px;
  box-shadow: 0 14px 34px rgb(18 22 30 / 0.05);
}

.allowed-user-list strong,
.allowed-user-list span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.allowed-user-list strong {
  color: #17191d;
  font-size: 13px;
  font-weight: 950;
}

.allowed-user-list span {
  color: #67707d;
  font-size: 12px;
  font-weight: 750;
  margin-top: 2px;
}

.allowed-user-list em {
  color: var(--nex-red);
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.allowed-user-list em.inactive {
  color: #6b7280;
}

.user-profile-strip {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  border-bottom: 1px solid #eef0f4;
  padding-bottom: 12px;
}

.user-list-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(190px, 260px);
  gap: 14px;
  align-items: end;
  margin-top: 16px;
  border: 1px solid rgb(17 24 39 / 0.08);
  background: linear-gradient(135deg, #ffffff, #f7f8fb);
  padding: 14px;
}

.user-list-toolbar strong,
.user-list-toolbar span {
  display: block;
}

.user-list-toolbar strong {
  color: #17191d;
  font-size: 18px;
  font-weight: 950;
}

.user-list-toolbar span {
  color: #67707d;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.45;
}

.user-headshot-field {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-height: 58px;
  border: 1px dashed rgb(17 24 39 / 0.16);
  background: #ffffff;
  padding: 9px;
}

.user-headshot-field.compact {
  min-height: 52px;
}

.user-headshot-field label {
  display: grid;
  gap: 5px;
  margin: 0;
  color: #252a33;
  font-size: 12px;
  font-weight: 900;
}

.user-headshot-field input {
  min-width: 0;
  font-size: 11px;
}

.user-edit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.user-edit-grid .field {
  margin: 0;
}

.user-profile-link-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  grid-column: 1 / -1;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 12px;
  background: #f8fafc;
  color: #374151;
  padding: 9px 11px;
  font-size: 12px;
  font-weight: 850;
  overflow-wrap: anywhere;
}

.user-profile-link-row svg {
  color: var(--nex-red);
}

.user-profile-link-row em {
  border-radius: 999px;
  background: #111827;
  color: white;
  padding: 4px 8px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
}

.user-action-row {
  display: flex;
  flex-wrap: wrap;
  grid-column: 1 / -1;
  gap: 8px;
}

.user-action-row .btn {
  min-height: 36px;
}

.toggle-field {
  align-items: center;
  align-self: end;
  display: flex;
  gap: 10px;
  min-height: 42px;
  color: #22262d;
  font-size: 12px;
  font-weight: 900;
}

.toggle-field input {
  width: 18px;
  height: 18px;
  accent-color: var(--nex-red);
}

.bulk-user-import {
  display: grid;
  gap: 12px;
  margin-top: 16px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  background: linear-gradient(135deg, #ffffff, #f8fafc);
  padding: 14px;
}

.bulk-user-import h4,
.bulk-user-import p {
  margin: 0;
}

.bulk-user-import p {
  color: #6b7280;
  font-size: 12px;
  line-height: 1.45;
}

.bulk-user-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.bulk-result-box {
  border: 1px solid rgba(220, 38, 38, 0.14);
  background: rgba(220, 38, 38, 0.06);
  padding: 12px;
}

.bulk-result-box strong,
.bulk-result-box p {
  margin: 0;
}

.bulk-result-box p {
  margin-top: 6px;
  overflow-wrap: anywhere;
}

.reset-link-box {
  display: grid;
  gap: 8px;
  margin-top: 14px;
  border: 1px solid rgb(22 138 74 / 0.2);
  background: rgb(22 138 74 / 0.08);
  padding: 12px;
}

.reset-link-box strong {
  color: #14532d;
  font-size: 13px;
  font-weight: 950;
}

.reset-link-box p {
  margin: 0;
  color: #14532d;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.access-empty {
  color: #69707d;
  font-size: 13px;
  line-height: 1.5;
  margin: 0;
}

.agent-directory-page {
  display: grid;
  gap: 18px;
}

.directory-hero {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 18px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background:
    radial-gradient(circle at top right, rgba(227, 6, 19, 0.28), transparent 34%),
    linear-gradient(135deg, #111318, #262a32);
  color: #ffffff;
  padding: 24px;
}

.directory-hero h1,
.directory-hero p {
  margin: 0;
}

.directory-hero h1 {
  font-size: clamp(28px, 5vw, 44px);
  letter-spacing: 0;
}

.directory-hero p {
  max-width: 720px;
  color: rgba(255, 255, 255, 0.72);
  line-height: 1.55;
}

.directory-hero-stat {
  display: grid;
  min-width: 170px;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.08);
  padding: 18px;
  text-align: center;
}

.directory-hero-stat strong {
  color: #ffffff;
  font-size: 42px;
  font-weight: 950;
  line-height: 1;
}

.directory-hero-stat span {
  color: rgba(255, 255, 255, 0.7);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.directory-type-switch {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  padding: 10px;
}

.directory-type-switch button,
.chat-dm-filter button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 1px solid var(--nex-line);
  background: #ffffff;
  color: #343a45;
  padding: 11px 12px;
  font-size: 12px;
  font-weight: 950;
  cursor: pointer;
}

.directory-type-switch button.active,
.chat-dm-filter button.active {
  border-color: var(--nex-red);
  background: #111318;
  color: #ffffff;
  box-shadow: 0 14px 28px rgb(5 5 5 / 0.12);
}

.directory-type-switch em,
.chat-dm-filter em {
  border-radius: 999px;
  background: rgb(227 6 19 / 0.12);
  color: var(--nex-red);
  padding: 3px 7px;
  font-size: 10px;
  font-style: normal;
}

.directory-type-switch button.active em,
.chat-dm-filter button.active em {
  background: rgb(255 255 255 / 0.16);
  color: #ffffff;
}

.directory-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 260px);
  gap: 14px;
  padding: 16px;
}

.directory-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.agent-directory-card {
  position: relative;
  display: grid;
  gap: 12px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  background: #ffffff;
  padding: 16px;
  box-shadow: 0 18px 45px rgba(17, 24, 39, 0.06);
}

.agent-avatar {
  display: grid;
  width: 46px;
  height: 46px;
  place-items: center;
  border-radius: 14px;
  background: #111318;
  color: #ffffff;
  font-weight: 950;
}

.agent-directory-card h3,
.agent-directory-card p {
  margin: 0;
}

.agent-directory-card h3 {
  color: #17191d;
  font-size: 18px;
  letter-spacing: 0;
}

.agent-directory-card p {
  color: var(--nex-red);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.agent-directory-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.directory-type-pill {
  width: fit-content;
  border: 1px solid rgb(227 6 19 / 0.18);
  background: #fff5f5;
  color: var(--nex-red);
  padding: 5px 8px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.agent-directory-card dl {
  display: grid;
  gap: 8px;
  margin: 0;
}

.agent-directory-card dl div {
  display: grid;
  gap: 2px;
}

.agent-directory-card dt {
  color: #6b7280;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.agent-directory-card dd {
  margin: 0;
  color: #252a33;
  font-size: 13px;
  overflow-wrap: anywhere;
}

.agent-directory-self {
  position: absolute;
  top: 12px;
  right: 12px;
  border-radius: 999px;
  background: rgba(227, 6, 19, 0.1);
  color: var(--nex-red);
  padding: 5px 9px;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  text-transform: uppercase;
}

@media (max-width: 1320px) {
  .app-shell {
    grid-template-columns: 240px minmax(0, 1fr);
  }

  .input-panel {
    grid-column: 1 / -1;
    position: static;
    height: auto;
    border-left: 0;
    border-top: 1px solid var(--nex-line);
  }

  .form-stack {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: start;
  }

  .studio-template-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

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

  .canva-workspace {
    grid-template-columns: 290px minmax(0, 1fr);
  }

  .studio-export-strip {
    grid-template-columns: 1fr;
  }

  .studio-export-actions {
    justify-content: start;
  }

  .studio-top-toolbar {
    grid-template-columns: 1fr;
  }

  .studio-toolbar-actions {
    justify-content: start;
  }

  .studio-start-strip {
    grid-template-columns: 1fr;
  }

  .studio-start-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .simple-builder-grid,
  .simple-result-grid,
  .simple-studio-bottom {
    grid-template-columns: 1fr;
  }

  .simple-builder-side,
  .simple-edit-panel,
  .simple-asset-list {
    position: static;
  }

  .simple-result-grid {
    align-items: stretch;
  }

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

  .nex-hero-content,
  .nex-dashboard-grid,
  .nex-dashboard-grid.three {
    grid-template-columns: 1fr;
  }

  .nex-hero-agent {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
  }

  .nex-hero-agent .brand-logo {
    grid-column: 1 / -1;
  }
}

@media (max-width: 1040px) {
  .app-shell {
    display: block;
  }

  .sidebar {
    position: static;
    height: auto;
  }

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

  .role-card {
    margin-top: 0;
  }

  .chat-layout,
  .flyer-builder-grid,
  .video-builder-grid,
  .business-card-layout,
  .settings-grid,
  .template-layout,
  .email-sms-grid,
  .portal-two-column,
  .support-layout,
  .transaction-layout,
  .agent-assist-layout,
  .nexu-player-layout,
  .command-hero,
  .module-hero {
    grid-template-columns: 1fr;
  }

  .chat-card {
    min-height: 620px;
  }

  .form-stack,
  .stats-row,
  .portal-toolbar,
  .admin-form-grid,
  .link-admin-controls > div {
    grid-template-columns: 1fr;
  }

  .nexu-external-card,
  .nexu-internal-card {
    align-items: stretch;
    flex-direction: column;
  }

  .agent-assist-hero {
    align-items: stretch;
    flex-direction: column;
  }

  .guide-metrics-row {
    grid-template-columns: 1fr;
  }

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

  .business-card-controls,
  .card-control-group {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .crm-layout,
  .crm-bulk-layout,
  .crm-duplicate-contact-grid,
  .crm-readiness-panel,
  .crm-dashboard-grid,
  .crm-import-grid,
  .crm-settings-grid,
  .crm-import-options,
  .crm-import-summary,
  .crm-split-panels,
  .nex-chat-page,
  .commission-admin-filter,
  .commission-summary-grid,
  .commission-detail-grid,
  .commission-plan-stats,
  .nps-layout,
  .nps-layout.secondary,
  .nps-calculator-fields,
  .nps-reward-form,
  .nps-ledger-row,
  .nps-activity-chart,
  .nps-vesting-strip,
  .nps-data-model-card,
  .production-grid.two-column,
  .production-activity-layout,
  .buyer-form-grid,
  .buyer-filter-grid,
  .buyer-detail-grid,
  .deadline-summary-card {
    grid-template-columns: 1fr;
  }

  .buyer-detail-hero {
    align-items: stretch;
    flex-direction: column;
  }

  .crm-wide-panel {
    grid-column: auto;
  }

  .crm-contact-list {
    max-height: 360px;
  }

  .crm-bulk-compose {
    position: static;
  }

  .crm-bulk-recipient-list {
    max-height: 420px;
  }

  .crm-bulk-recipient {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .crm-bulk-recipient small {
    grid-column: 2;
  }

  .crm-people-quick-task {
    grid-template-columns: 1fr;
  }

  .crm-people-quick-task .btn {
    width: 100%;
  }

  .crm-contact-head,
  .crm-section-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .crm-contact-head .row-actions,
  .crm-section-heading .btn {
    width: 100%;
  }

  .crm-contact-head .row-actions .btn,
  .crm-section-heading .btn {
    justify-content: center;
  }

  .production-score-card {
    justify-items: start;
    text-align: left;
  }

  .nex-chat-page {
    min-height: auto;
  }

  .nex-chat-sidebar {
    max-height: 360px;
    overflow: auto;
  }

  .canva-studio {
    height: auto;
    min-height: 0;
  }

  .canva-workspace,
  .studio-left-panel {
    grid-template-columns: 1fr;
  }

  .studio-left-panel {
    position: static;
    max-height: none;
  }

  .studio-tool-rail {
    display: flex;
    overflow-x: auto;
    border-right: 0;
    border-bottom: 1px solid var(--nex-line);
  }

  .studio-tool-rail button {
    min-width: 78px;
  }

  .studio-tool-panel {
    max-height: none;
  }

  .studio-canvas-panel {
    min-height: 620px;
  }

  .canvas-floating-bar {
    align-items: stretch;
    flex-direction: column;
  }

  .canvas-format-pills {
    max-width: 100%;
  }

  .nex-metrics-row {
    grid-template-columns: repeat(8, minmax(180px, 1fr));
  }

  .nex-pulse-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  body {
    background: #f4f5f7;
  }

  .app-shell,
  .app-shell.portal-shell {
    display: block;
    min-height: 100dvh;
  }

  .main-area,
  .input-panel {
    padding: 16px;
  }

  .main-area {
    padding-bottom: calc(100px + env(safe-area-inset-bottom));
    overflow-x: hidden;
  }

  .input-panel {
    padding-bottom: calc(100px + env(safe-area-inset-bottom));
  }

  .studio-top-toolbar,
  .studio-tool-content,
  .studio-settings-content {
    padding: 12px;
  }

  .studio-toolbar-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .studio-export-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .studio-export-actions .btn {
    width: 100%;
  }

  .studio-toolbar-actions .btn {
    width: 100%;
  }

  .canva-studio,
  .simple-studio,
  .simple-builder-grid,
  .simple-result-grid,
  .simple-studio-bottom,
  .studio-canvas-panel,
  .preview-shell {
    max-width: 100%;
    overflow-x: hidden;
  }

  .simple-result-grid {
    display: flex;
    flex-direction: column;
  }

  .simple-asset-list,
  .simple-edit-panel,
  .simple-builder-side {
    position: static;
  }

  .simple-preview-wrap {
    order: 1;
    padding: 8px;
    border-radius: 16px;
  }

  .simple-edit-panel {
    order: 2;
  }

  .simple-asset-list {
    order: 3;
    grid-template-columns: 1fr;
  }

  .preview-shell {
    min-height: auto;
    overflow: hidden;
    padding: 8px;
  }

  .studio-canvas-panel {
    min-height: auto;
    overflow: visible;
    padding: 10px;
  }

  .studio-flyer {
    transform: none !important;
  }

  .flyer-page {
    width: min(100%, 390px);
    min-height: auto;
  }

  .canvas-image-toolbar,
  .resize-handles {
    display: none !important;
  }

  .studio-start-strip {
    gap: 10px;
    padding: 10px;
  }

  .simple-studio-hero,
  .simple-builder-head,
  .simple-result-head,
  .simple-section-head {
    display: grid;
  }

  .simple-studio-hero h2,
  .simple-builder-head h2,
  .simple-result-head h2 {
    font-size: 34px;
  }

  .simple-create-panel,
  .simple-builder-form section,
  .simple-builder-side section,
  .simple-edit-panel section,
  .simple-brand-card,
  .simple-studio-bottom > article {
    border-radius: 16px;
    padding: 14px;
  }

  .simple-workflow-grid {
    grid-template-columns: 1fr;
  }

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

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

  .simple-asset-list {
    display: flex;
    overflow-x: auto;
    padding: 10px;
    -webkit-overflow-scrolling: touch;
  }

  .simple-asset-list button {
    flex: 0 0 180px;
  }

  .simple-result-head > div:last-child {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .simple-result-head .btn,
  .simple-builder-head .btn {
    width: 100%;
    justify-content: center;
  }

  .crm-layout {
    gap: 12px;
  }

  .crm-list-panel,
  .crm-detail-panel,
  .crm-profile-editor,
  .crm-ai-panel,
  .crm-email-panel,
  .crm-drip-panel,
  .crm-communication-panel,
  .crm-inner-panel {
    padding: 12px;
  }

  .crm-contact-list {
    max-height: 300px;
  }

  .crm-filter-grid,
  .crm-form-grid,
  .crm-form-grid.compact,
  .crm-import-summary,
  .crm-task-table article {
    grid-template-columns: 1fr;
  }

  .crm-profile-badges,
  .crm-ai-actions,
  .crm-email-footer,
  .crm-contact-head .row-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .crm-next-action-strip {
    align-items: start;
    grid-template-columns: auto minmax(0, 1fr);
  }

  .crm-next-action-strip .btn {
    grid-column: 1 / -1;
    justify-content: center;
    width: 100%;
  }

  .crm-mobile-action-dock {
    backdrop-filter: blur(16px);
    background: rgb(255 255 255 / 0.95);
    border: 1px solid rgb(227 6 19 / 0.16);
    box-shadow: 0 16px 38px rgb(17 19 24 / 0.16);
    display: grid;
    gap: 7px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: 8px;
    position: sticky;
    top: 8px;
    z-index: 12;
  }

  .crm-mobile-action {
    min-width: 0;
    padding: 9px 5px;
  }

  .crm-mobile-action span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .studio-start-actions {
    display: flex;
    overflow-x: auto;
    padding-bottom: 2px;
    -webkit-overflow-scrolling: touch;
  }

  .studio-start-actions button {
    flex: 0 0 168px;
  }

  .project-title-wrap input {
    font-size: 17px;
  }

  .nex-dashboard {
    gap: 14px;
    padding-top: 16px;
  }

  .nex-hero-content {
    min-height: auto;
    padding: 22px;
  }

  .nex-hero h1 {
    font-size: 40px;
  }

  .nex-hero p:not(.eyebrow) {
    font-size: 15px;
  }

  .nex-hero-actions,
  .nex-ai-bar > div {
    display: grid;
    grid-template-columns: 1fr;
  }

  .nex-hero-actions .btn {
    width: 100%;
  }

  .nex-hero-agent {
    grid-template-columns: 1fr;
  }

  .nex-ai-bar {
    grid-template-columns: 1fr;
  }

  .nex-metrics-row {
    margin: 0 -16px;
    padding: 0 16px 4px;
    scroll-snap-type: x mandatory;
  }

  .nex-metric-card {
    scroll-snap-align: start;
  }

  .nex-widget,
  .nex-launchpad {
    padding: 14px;
  }

  .nex-widget-head,
  .nex-section-head {
    align-items: stretch;
    flex-direction: column;
  }

  .nex-activity-feed button {
    grid-template-columns: 1fr;
  }

  .nex-activity-feed em,
  .nex-activity-feed small {
    grid-row: auto;
    text-align: left;
  }

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

  .nex-launchpad-grid button {
    min-height: 164px;
    padding: 13px;
  }

  .support-snapshot-grid {
    grid-template-columns: 1fr;
  }

  .canva-workspace {
    gap: 10px;
  }

  .studio-left-panel,
  .studio-right-panel,
  .studio-top-toolbar,
  .canvas-floating-bar {
    margin: 0 -2px;
  }

  .canvas-format-pills {
    overflow-x: auto;
  }

  .canvas-inspector-panel {
    position: static;
    width: 100%;
  }

  .inspector-head {
    grid-template-columns: 1fr;
  }

  .inspector-layers {
    flex-wrap: nowrap;
    overflow-x: auto;
  }

  .inspector-layers button {
    min-width: max-content;
  }

  .sidebar {
    position: fixed;
    top: auto !important;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 40;
    height: auto !important;
    max-height: none;
    overflow: visible;
    border-top: 1px solid rgb(255 255 255 / 0.1);
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom));
    box-shadow: 0 -16px 34px rgb(0 0 0 / 0.2);
  }

  .brand-lockup,
  .role-card {
    display: none;
  }

  .nav-list {
    display: flex;
    grid-template-columns: none;
    gap: 7px;
    overflow-x: auto;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  .nav-list::-webkit-scrollbar {
    display: none;
  }

  .nav-group {
    position: static;
    flex: 0 0 auto;
  }

  .nav-group-trigger {
    grid-template-columns: 1fr auto;
    justify-items: center;
    min-width: 82px;
    min-height: 58px;
    gap: 4px;
    padding: 8px 7px;
    text-align: center;
  }

  .nav-group-trigger > svg:first-child {
    grid-column: 1;
    width: 20px;
    height: 20px;
  }

  .nav-group-trigger > span {
    grid-column: 1;
    max-width: 66px;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
    font-size: 10.5px;
    font-weight: 900;
    line-height: 1.1;
    text-align: center;
  }

  .nav-group-chevron {
    grid-column: 2;
    grid-row: 1 / span 2;
    align-self: center;
    width: 14px;
    height: 14px;
  }

  .nav-group.active > .nav-group-trigger {
    box-shadow: inset 0 3px 0 var(--nex-red);
  }

  .nav-submenu {
    position: fixed;
    right: 10px;
    bottom: calc(76px + env(safe-area-inset-bottom));
    left: 10px;
    z-index: 46;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    max-height: min(42dvh, 360px);
    margin: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    border: 1px solid rgb(255 255 255 / 0.14);
    border-radius: 0;
    background: rgb(5 5 6 / 0.98);
    padding: 12px;
    box-shadow: 0 -18px 42px rgb(0 0 0 / 0.34);
    animation: mobile-nav-submenu-in 140ms ease both;
    -webkit-overflow-scrolling: touch;
  }

  .nav-submenu[hidden] {
    display: none;
  }

  .nav-submenu .nav-item {
    min-width: 0;
    min-height: 60px;
    padding: 12px 10px;
  }

  .nav-submenu .nav-item span {
    max-width: 100%;
    overflow: visible;
    text-overflow: clip;
    white-space: normal;
    font-size: 11.5px;
    line-height: 1.2;
  }

  .mobile-nav-popover-backdrop {
    position: fixed;
    inset: 0 0 calc(72px + env(safe-area-inset-bottom)) 0;
    z-index: 45;
    border: 0;
    background: transparent;
    padding: 0;
  }

  @keyframes mobile-nav-submenu-in {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
  }

  .nav-item {
    grid-template-columns: 1fr;
    justify-items: center;
    min-width: 78px;
    gap: 4px;
    padding: 8px 7px;
  }

  .nav-item span {
    font-size: 10px;
    font-weight: 850;
    line-height: 1.15;
    text-align: center;
    white-space: normal;
  }

  .nav-item.active {
    box-shadow: inset 0 3px 0 var(--nex-red);
  }

  .mobile-signout-nav {
    display: grid;
    border-color: rgb(237 7 28 / 0.58);
    background: rgb(237 7 28 / 0.16);
    color: #fff;
  }

  .mobile-signout-nav:hover,
  .mobile-signout-nav:focus-visible {
    border-color: var(--nex-red);
    background: var(--nex-red);
  }

  .topbar {
    position: sticky;
    top: 0;
    z-index: 35;
    align-items: stretch;
    flex-direction: column;
    margin: -16px -16px 0;
    border-bottom: 1px solid rgb(230 231 235 / 0.9);
    background: rgb(255 255 255 / 0.92);
    padding: calc(14px + env(safe-area-inset-top)) 16px 14px;
    backdrop-filter: blur(18px);
  }

  .topbar h2 {
    font-size: 24px;
  }

  .topbar-actions,
  .hero-actions,
  .button-grid,
  .prompt-starters {
    display: grid;
    grid-template-columns: 1fr;
  }

  .notification-bell {
    justify-content: flex-start;
    width: 100%;
  }

  .notification-bell-label {
    display: inline;
  }

  .notification-list article {
    grid-template-columns: 1fr;
  }

  .notification-list .row-actions {
    justify-content: stretch;
  }

  .notification-list .row-actions .btn {
    width: 100%;
  }

  .nav-list {
    grid-template-columns: 1fr;
  }

  .chat-composer {
    grid-template-columns: 1fr;
  }

  .split-fields,
  .color-grid,
  .brand-logo-manager,
  .template-picker,
  .choice-grid,
  .stock-grid,
  .studio-template-row,
  .video-builder-grid,
  .crm-filter-grid,
  .crm-form-grid,
  .crm-form-grid.compact,
  .crm-task-table article,
  .buyer-form-grid,
  .buyer-filter-grid,
  .buyer-form-grid.compact,
  .nex-chat-header,
  .production-form-grid,
  .production-activity-form,
  .production-activity-row,
  .task-edit-grid,
  .notification-list article,
  .checklist-task-item,
  .bulk-user-grid,
  .directory-type-switch,
  .directory-controls,
  .directory-grid {
    grid-template-columns: 1fr;
  }

  .directory-hero {
    flex-direction: column;
    padding: 18px;
  }

  .dashboard-chat-preview {
    grid-template-columns: 40px minmax(0, 1fr);
    align-items: start;
  }

  .dashboard-chat-preview small {
    grid-column: 2;
    text-align: left;
  }

  .dashboard-chat-preview .chat-preview-icon {
    width: 40px;
    height: 40px;
  }

  .nexu-external-card,
  .nexu-internal-card {
    padding: 18px;
  }

  .nexu-external-card h3,
  .nexu-internal-card h3 {
    font-size: 20px;
  }

  .nexu-player-panel {
    min-height: 230px;
  }

  .nexu-player-panel iframe {
    min-height: 230px;
  }

  .link-admin-controls > div,
  .ticket-detail-card dl {
    grid-template-columns: 1fr;
  }

  .nex-chat-page {
    gap: 12px;
  }

  .nex-chat-sidebar,
  .nex-chat-main {
    border-radius: 14px;
  }

  .nex-chat-sidebar {
    max-height: 300px;
    padding: 12px;
  }

  .nex-chat-header {
    align-items: flex-start;
    flex-direction: column;
    padding: 14px;
  }

  .nex-chat-header h3 {
    font-size: 20px;
  }

  .nex-chat-stream {
    min-height: 360px;
    padding: 12px;
  }

  .nex-chat-message,
  .nex-chat-message.mine {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .nex-chat-message.mine .chat-avatar {
    grid-column: 1;
  }

  .nex-chat-message.mine .chat-message-body {
    grid-column: 2;
    justify-self: stretch;
  }

  .nex-chat-composer {
    padding: 12px;
  }

  .composer-row {
    grid-template-columns: 40px minmax(0, 1fr);
  }

  .composer-row .btn {
    grid-column: 1 / -1;
  }

  .production-daily-card {
    align-items: flex-start;
    flex-direction: column;
  }

  .production-daily-card h3 {
    font-size: 38px;
  }

  .game-plan-profile-strip,
  .coach-list-grid,
  .advanced-production-grid,
  .admin-production-table article {
    grid-template-columns: 1fr;
  }

  .goal-preset-row,
  .quick-log-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .production-period-toggle {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .production-score-ring {
    min-height: 120px;
  }

  .production-activity-row {
    align-items: start;
  }

  .checklist-task-item {
    gap: 10px;
  }

  .task-check {
    justify-content: start;
  }

  .task-title-row {
    align-items: flex-start;
    flex-direction: column;
  }

  .deadline-summary-metrics {
    grid-template-columns: auto 1fr;
    text-align: left;
  }

  .crm-tabs {
    margin: 0 -4px;
    padding-bottom: 8px;
  }

  .crm-tabs button {
    padding: 9px 12px;
    font-size: 11px;
  }

  .crm-contact-head {
    align-items: stretch;
    flex-direction: column;
  }

  .crm-contact-head h3 {
    font-size: 22px;
  }

  .crm-ai-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .pipeline-board {
    grid-auto-columns: minmax(235px, 86vw);
  }

  .pipeline-column {
    min-height: 260px;
  }

  .business-card-controls {
    grid-template-columns: 1fr;
  }

  .card-control-group {
    grid-template-columns: 1fr;
  }

  .command-hero,
  .module-hero {
    min-height: 220px;
    padding: 22px;
  }

  .command-hero h3,
  .module-hero h3 {
    font-size: 34px;
  }

  .hero-brand-card {
    justify-items: start;
    min-width: 0;
  }

  .hero-brand-card .brand-logo,
  .module-hero .brand-logo {
    width: 168px;
  }

  .hero-content {
    padding: 24px;
  }

  .login-brand {
    grid-template-columns: 1fr;
  }

  .allowed-user-list article,
  .user-list-toolbar,
  .user-edit-grid {
    grid-template-columns: 1fr;
  }

  .commission-plan-card {
    min-width: 0;
  }

  .commission-deal-list article {
    grid-template-columns: 1fr;
  }

  .nps-tier-row {
    grid-template-columns: 1fr;
  }

  .nps-model-chips {
    grid-template-columns: 1fr;
  }

  .commission-deal-list article > div:last-child {
    min-width: 0;
    text-align: left;
  }

  .user-action-row {
    display: grid;
    grid-template-columns: 1fr;
  }

  .preview-shell {
    padding: 10px;
  }

  .studio-business-card-canvas {
    width: min(100%, 340px);
    padding: 16px 14px 16px 60px;
  }

  .studio-email-signature-canvas {
    grid-template-columns: 76px minmax(0, 1fr);
    width: min(100%, 340px);
    padding: 14px 14px 14px 26px;
  }

  .email-signature-contact {
    grid-column: 1 / -1;
    grid-template-columns: 1fr;
    gap: 5px;
    border-top: 1px solid #e5e7ec;
    padding-top: 8px;
  }

  .email-signature-main {
    border-right: 0;
    padding-right: 0;
  }

  .email-signature-main .brand-logo {
    width: 84px;
    max-height: 32px;
  }

  .email-signature-main h2 {
    margin-top: 7px;
    font-size: 18px;
  }

  .email-signature-main p,
  .email-signature-contact span {
    font-size: 8px;
  }

  .email-signature-main small {
    font-size: 7px;
  }

  .studio-card-brand .brand-logo {
    width: 96px;
  }

  .studio-card-brand span {
    max-width: 124px;
    font-size: 7.5px;
  }

  .studio-card-main {
    grid-template-columns: minmax(0, 1fr) 76px;
    gap: 10px;
  }

  .studio-card-agent-copy p {
    margin-bottom: 4px;
    font-size: 8px;
  }

  .studio-card-agent-copy h2 {
    font-size: clamp(20px, 6vw, 27px);
  }

  .studio-card-agent-copy em {
    max-height: 24px;
    margin-top: 5px;
    overflow: hidden;
    font-size: 8px;
  }

  .studio-card-headshot strong {
    font-size: 20px;
  }

  .studio-card-contact {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px 8px;
  }

  .studio-card-contact span {
    gap: 4px;
    font-size: 7.4px;
  }

  .studio-card-contact svg {
    height: 11px;
    width: 11px;
  }

  .studio-card-side-tabs {
    width: min(100%, 340px);
  }

  .studio-card-back-brand .brand-logo {
    width: 94px;
  }

  .studio-card-back-brand strong {
    font-size: 9px;
  }

  .studio-card-back-grid {
    grid-template-columns: 78px minmax(0, 1fr);
    gap: 12px;
  }

  .studio-card-back-copy h2 {
    font-size: 15px;
  }

  .studio-card-qr-block span,
  .studio-card-back-copy span,
  .studio-card-back-copy p {
    font-size: 7px;
  }

  .flyer-page {
    width: 100%;
  }

  .business-preview-shell {
    justify-content: start;
    overflow-x: auto;
    border-color: transparent;
    background:
      linear-gradient(135deg, #f7f8fa 0%, #e3e7ee 100%);
    padding: 14px;
    -webkit-overflow-scrolling: touch;
  }

  .business-card-proof {
    width: max(340px, min(100%, 430px));
    gap: 18px;
  }

  .print-card {
    border: 0;
    box-shadow: 0 18px 38px rgb(17 19 24 / 0.18);
  }

  .print-card::before {
    width: 8px;
  }

  .print-card::after {
    inset: 12px 12px auto auto;
    width: 48px;
    height: 3px;
  }

  .card-back::before {
    width: 10px;
  }

  .card-back::after {
    inset: auto 16px 16px auto;
    width: 70px;
    height: 3px;
  }

  .immersive-card .print-safe-area::before {
    display: none;
  }

  .video-preview-shell {
    min-height: 520px;
    padding: 14px;
  }

  .video-preview-frame.orientation-horizontal {
    width: 100%;
  }

  .business-headshot-upload {
    grid-template-columns: 58px minmax(0, 1fr);
  }

  .business-headshot-upload img,
  .business-headshot-upload > span {
    height: 58px;
    width: 58px;
  }

  .print-safe-area {
    gap: 9px;
    padding: 16px 14px 14px 22px;
  }

  .card-header-line span {
    display: none;
  }

  .card-header-line .brand-logo {
    width: 96px;
    max-height: 38px;
  }

  .card-identity-row {
    grid-template-columns: minmax(0, 1fr) 68px;
    gap: 10px;
  }

  .card-name-block p {
    margin-bottom: 4px;
    font-size: 7.5px;
    letter-spacing: 0.08em;
  }

  .card-name-block h3 {
    font-size: clamp(18px, 5.8vw, 26px);
    line-height: 0.96;
  }

  .card-name-block em {
    display: block;
    max-height: 24px;
    margin-top: 5px;
    overflow: hidden;
    font-size: 8.5px;
    line-height: 1.25;
  }

  .card-headshot {
    border-color: rgb(17 19 24 / 0.12);
    box-shadow: 0 10px 18px rgb(17 19 24 / 0.12);
  }

  .card-headshot strong {
    font-size: 21px;
  }

  .card-contact-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px 8px;
  }

  .card-contact-grid div {
    grid-template-columns: 13px minmax(0, 1fr);
    column-gap: 5px;
    border-top-color: rgb(17 19 24 / 0.1);
    padding-top: 4px;
  }

  .card-contact-grid p {
    display: none;
  }

  .card-contact-grid svg {
    height: 12px;
    width: 12px;
  }

  .card-contact-grid span {
    font-size: 7.6px;
    line-height: 1.15;
  }

  .back-safe-area {
    padding-left: 24px;
  }

  .card-back .brand-logo {
    width: 104px;
    max-height: 40px;
  }

  .back-message h3 {
    font-size: clamp(18px, 5.8vw, 26px);
  }

  .back-message p {
    margin-top: 8px;
    font-size: 8px;
    letter-spacing: 0.07em;
  }

  .back-footer {
    align-items: end;
    flex-direction: row;
    gap: 8px;
  }

  .qr-card {
    min-width: 116px;
    gap: 7px;
    padding: 6px 7px;
  }

  .qr-card svg {
    height: 24px;
    width: 24px;
  }

  .qr-card span {
    font-size: 8px;
  }

  .qr-card small {
    font-size: 7px;
  }

  .back-footer > p {
    max-width: 150px;
    font-size: 6.6px;
    line-height: 1.25;
    text-align: right;
  }

  .business-card-buttons {
    grid-template-columns: 1fr;
  }

  .flyer-details {
    grid-template-columns: 1fr;
  }

  .stats-strip {
    grid-template-columns: repeat(2, 1fr);
  }

  .nex-leads-grid,
  .lead-settings-grid,
  .lead-agent-table article > div:first-child,
  .lead-agent-area-editor,
  .activity-hero,
  .activity-toolbar {
    grid-template-columns: 1fr;
  }

  .activity-toolbar-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .activity-toolbar-actions .btn {
    justify-content: center;
    width: 100%;
  }

  .activity-technical-grid {
    grid-template-columns: 1fr;
  }

  .lead-action-row .btn,
  .lead-type-toggles label {
    width: 100%;
    justify-content: center;
  }

  .mini-photo-actions {
    opacity: 1;
  }

  .mini-photo-actions label,
  .mini-photo-actions button {
    font-size: 7px;
  }

  .toast {
    right: 16px;
    bottom: calc(90px + env(safe-area-inset-bottom));
    left: 16px;
    text-align: center;
  }
}

.print-card::after,
.card-back::after {
  content: none !important;
  display: none !important;
}

.print-card .brand-logo,
.business-card .brand-logo,
.card-header-line .brand-logo,
.card-back .brand-logo {
  height: auto;
  object-fit: contain;
  object-position: left center;
}

@media (max-width: 760px) {
  .buyer-checklist-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .activity-hero,
  .activity-toolbar,
  .website-lead-hero,
  .website-lead-grid,
  .website-conversion-feed,
  .idx-route-fields,
  .website-lead-toolbar,
  .website-lead-list article {
    grid-template-columns: 1fr;
  }

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

  .idx-checklist div {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .idx-readiness-grid div {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .idx-checklist strong,
  .idx-readiness-grid strong {
    grid-column: 2;
  }

  .website-lead-actions {
    justify-items: stretch;
  }

  .activity-item {
    grid-template-columns: 1fr;
  }

  .buyer-checklist-toolbar .row-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .checklist-section-head {
    padding: 12px;
  }

  .checklist-section-preview {
    padding: 0 12px 12px;
  }

  .preview-task {
    grid-template-columns: 1fr;
  }

  .preview-task small {
    text-align: left;
  }

  .nex-dashboard-grid.three.lower .nex-widget:last-child {
    grid-column: auto;
  }
}

@media (max-width: 980px) {
  .crm-cockpit-hero,
  .crm-privacy-summary,
  .crm-cockpit-grid,
  .crm-smart-layout,
  .crm-smart-plan-panel {
    grid-template-columns: 1fr;
  }

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

  .crm-accountability-table article,
  .crm-lead-table button,
  .crm-communication-form {
    grid-template-columns: 1fr;
  }

  .crm-next-action-strip {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .crm-cockpit-hero {
    padding: 18px;
  }

  .crm-cockpit-metrics {
    grid-template-columns: 1fr;
  }

  .crm-cockpit-card {
    min-height: 106px;
  }
}

@media (display-mode: standalone) {
  body {
    background: #f4f5f7;
  }

  .topbar {
    padding-top: calc(18px + env(safe-area-inset-top));
  }
}

/* Dashboard/interface stability pass */
html,
body,
#root {
  width: 100%;
  max-width: 100%;
}

body {
  overflow-x: hidden;
}

.app-shell,
.main-area,
.topbar,
.nex-dashboard,
.nex-hero,
.nex-ai-bar,
.nex-metrics-row,
.nex-dashboard-grid,
.nex-launchpad,
.nex-launchpad-grid,
.nex-widget {
  min-width: 0;
  max-width: 100%;
}

.nex-dashboard {
  width: 100%;
  max-width: 1480px;
  margin: 0 auto;
  gap: 16px;
}

.nex-hero {
  box-shadow: 0 18px 48px rgb(5 5 5 / 0.16);
}

.nex-hero-content {
  grid-template-columns: minmax(0, 1fr) 220px;
  gap: 20px;
  min-height: 260px;
  padding: 26px;
}

.nex-hero h1 {
  font-size: clamp(34px, 4vw, 52px);
  line-height: 1.02;
}

.nex-hero p:not(.eyebrow) {
  max-width: 670px;
  font-size: 14px;
  line-height: 1.5;
}

.nex-status-row span {
  max-width: 100%;
  white-space: nowrap;
}

.nex-hero-agent {
  padding: 16px;
}

.nex-hero-agent .brand-logo {
  width: 136px;
  max-height: 72px;
}

.nex-avatar {
  width: 58px;
  height: 58px;
  font-size: 19px;
}

.nex-ai-bar {
  box-shadow: 0 8px 24px rgb(18 22 30 / 0.045);
}

.nex-metrics-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  overflow: visible;
}

.nex-metric-card {
  min-height: 112px;
  padding: 13px;
}

.metric-icon {
  width: 32px;
  height: 32px;
}

.metric-icon svg,
.nex-launchpad-grid svg {
  flex: 0 0 auto;
}

.nex-metric-card strong {
  font-size: 26px;
}

.nex-metric-card em {
  font-size: 11px;
}

.nex-dashboard-grid {
  grid-template-columns: minmax(280px, 0.82fr) minmax(0, 1.18fr);
}

.nex-widget,
.nex-launchpad {
  padding: 15px;
  box-shadow: 0 10px 28px rgb(18 22 30 / 0.045);
}

.nex-widget-head h2,
.nex-section-head h2 {
  font-size: 20px;
}

.nex-launchpad-grid {
  grid-template-columns: repeat(auto-fit, minmax(185px, 1fr));
}

.nex-launchpad-grid button {
  min-height: 128px;
}

.nex-launchpad-grid button > span {
  width: fit-content;
  max-width: 100%;
}

@media (max-width: 1040px) {
  .nex-metrics-row {
    display: flex;
    grid-template-columns: none;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
  }

  .nex-metric-card {
    flex: 0 0 170px;
  }
}

@media (max-width: 680px) {
  .main-area {
    width: 100%;
    overflow-x: hidden;
    padding: 12px;
    padding-bottom: calc(96px + env(safe-area-inset-bottom));
  }

  .topbar {
    margin: -12px -12px 0;
    padding: calc(12px + env(safe-area-inset-top)) 12px 12px;
  }

  .topbar h2 {
    font-size: 22px;
  }

  .topbar-actions {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 2px;
  }

  .topbar-actions .btn,
  .topbar-actions .icon-btn {
    flex: 0 0 auto;
    min-height: 38px;
    padding: 0 11px;
    font-size: 12px;
  }

  .nex-dashboard {
    gap: 12px;
    padding-top: 12px;
    overflow: hidden;
  }

  .nex-hero-content {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 18px;
  }

  .nex-hero-glow {
    opacity: 0.45;
  }

  .nex-hero h1 {
    font-size: clamp(28px, 8.5vw, 34px);
    line-height: 1.05;
  }

  .nex-hero p:not(.eyebrow) {
    font-size: 13px;
    line-height: 1.45;
  }

  .nex-status-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
  }

  .nex-status-row span {
    width: 100%;
    min-width: 0;
    justify-content: start;
    padding: 6px 7px;
    font-size: 9px;
    line-height: 1.15;
    white-space: normal;
  }

  .nex-status-row span:nth-child(n+5) {
    display: none;
  }

  .nex-hero-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .nex-hero-actions .btn {
    width: 100%;
    min-width: 0;
    min-height: 42px;
    padding: 0 8px;
    font-size: 11px;
    line-height: 1.15;
  }

  .nex-hero-actions .btn span {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .nex-hero-agent {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
    padding: 12px;
  }

  .nex-hero-agent .brand-logo {
    display: none;
  }

  .nex-avatar {
    width: 46px;
    height: 46px;
    font-size: 16px;
  }

  .nex-hero-agent strong {
    font-size: 16px;
  }

  .nex-ai-bar {
    grid-template-columns: auto minmax(0, 1fr);
    gap: 8px;
    padding: 11px;
  }

  .nex-ai-bar > button {
    min-width: 0;
    padding: 4px 0;
    font-size: 13px;
    line-height: 1.35;
  }

  .nex-ai-bar > div {
    display: flex;
    grid-column: 1 / -1;
    overflow-x: auto;
  }

  .nex-ai-bar > div button {
    flex: 0 0 auto;
    max-width: 220px;
  }

  .nex-metrics-row {
    gap: 9px;
    margin: 0 -12px;
    padding: 0 12px 4px;
  }

  .nex-metric-card {
    flex: 0 0 154px;
    min-height: 102px;
    padding: 11px;
    scroll-snap-align: start;
  }

  .metric-icon {
    width: 30px;
    height: 30px;
  }

  .metric-icon svg {
    width: 17px;
    height: 17px;
  }

  .metric-status {
    position: static;
    width: fit-content;
    max-width: 100%;
    font-size: 8px;
    line-height: 1.1;
  }

  .nex-metric-card strong {
    font-size: 23px;
  }

  .nex-metric-card em {
    font-size: 10.5px;
  }

  .nex-dashboard-grid,
  .nex-dashboard-grid.three {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .nex-dashboard-grid.three.lower .nex-widget:last-child {
    grid-column: auto;
  }

  .nex-widget,
  .nex-launchpad {
    padding: 12px;
  }

  .nex-widget-head,
  .nex-section-head {
    gap: 8px;
    margin-bottom: 10px;
  }

  .nex-widget-head h2,
  .nex-section-head h2 {
    font-size: 18px;
  }

  .nex-focus-list label {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .nex-focus-list button {
    grid-column: 2;
    width: fit-content;
  }

  .nex-launchpad-grid {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .nex-launchpad-grid button {
    grid-template-columns: 32px minmax(0, 1fr) auto;
    min-height: 0;
    align-items: center;
    gap: 8px;
    padding: 11px;
  }

  .nex-launchpad-grid button > svg {
    grid-row: span 2;
    width: 22px;
    height: 22px;
  }

  .nex-launchpad-grid button > span {
    grid-column: 3;
    width: fit-content;
    max-width: 92px;
    overflow: hidden;
    padding: 4px 6px;
    font-size: 8px;
    line-height: 1.1;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .nex-launchpad-grid strong {
    min-width: 0;
    font-size: 14px;
  }

  .nex-launchpad-grid p {
    grid-column: 2 / -1;
    font-size: 11px;
    line-height: 1.35;
  }

  .nex-pulse-grid,
  .support-snapshot-grid {
    grid-template-columns: 1fr;
  }

  .nex-chat-card p {
    min-height: 0;
    font-size: 14px;
  }

  .momentum-template-row button {
    flex-basis: 132px;
    min-height: 96px;
  }

  .sidebar {
    padding: 8px 10px calc(8px + env(safe-area-inset-bottom));
  }

  .nav-list {
    gap: 8px;
  }

  .nav-item {
    min-width: 86px;
    padding: 9px 8px;
  }

  .nav-item svg {
    width: 20px;
    height: 20px;
  }

  .nav-item span {
    font-size: 10.5px;
  }
}

@media (max-width: 390px) {
  .nex-hero-actions {
    grid-template-columns: 1fr;
  }

  .nex-status-row {
    grid-template-columns: 1fr;
  }

  .nex-metric-card {
    flex-basis: 145px;
  }

  .nav-item {
    min-width: 78px;
  }
}

/* Current Nex Central polish pass */
.nex-dashboard {
  gap: 18px;
}

.nex-hero {
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 18px 55px rgba(4, 7, 13, 0.18);
}

.nex-hero-content {
  grid-template-columns: minmax(0, 1fr) minmax(230px, 300px);
  align-items: stretch;
}

.nex-hero h1 {
  font-size: clamp(30px, 4vw, 54px);
}

.nex-status-row {
  max-width: 780px;
}

.nex-hero-actions {
  max-width: 920px;
}

.nex-hero-system-card {
  position: relative;
  display: grid;
  gap: 14px;
  align-content: center;
  min-height: 100%;
  padding: 22px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 22px;
  background:
    radial-gradient(circle at 20% 0%, rgba(227, 6, 19, 0.28), transparent 38%),
    rgba(255, 255, 255, 0.08);
  color: #ffffff;
  backdrop-filter: blur(18px);
}

.nex-hero-system-card .brand-logo {
  width: min(190px, 100%);
  max-height: 64px;
  object-fit: contain;
}

.nex-hero-system-card strong {
  font-size: 22px;
  font-weight: 900;
}

.nex-hero-system-card > span {
  color: rgba(255, 255, 255, 0.78);
  font-size: 13px;
  font-weight: 700;
}

.nex-hero-system-card div {
  display: grid;
  gap: 8px;
}

.nex-hero-system-card em {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  padding: 7px 10px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.84);
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}

.nex-hero-system-card i,
.live-badge i {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #22c55e;
  box-shadow: 0 0 0 5px rgba(34, 197, 94, 0.13);
}

.nex-metrics-row {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.nex-metric-card {
  min-height: 124px;
}

.nex-launchpad-grid {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
}

.canva-studio {
  gap: 14px;
}

.studio-start-strip {
  border-color: rgba(227, 6, 19, 0.14);
  background: linear-gradient(135deg, #f9fbff 0%, #eef7fb 43%, #fff4f4 100%);
}

.studio-start-actions {
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.studio-start-actions::-webkit-scrollbar {
  display: none;
}

.studio-start-actions button {
  scroll-snap-align: start;
}

.studio-tool-rail {
  background: #080a0f;
  scrollbar-width: none;
}

.studio-tool-rail::-webkit-scrollbar {
  display: none;
}

.studio-tool-rail button {
  border-radius: 14px;
}

.studio-tool-rail button.active {
  background: linear-gradient(135deg, #e30613, #8b0008);
  color: #ffffff;
}

.studio-canvas-panel {
  min-width: 0;
  overflow: hidden;
}

.canvas-floating-bar {
  border-color: rgba(15, 23, 42, 0.08);
  box-shadow: 0 14px 35px rgba(15, 23, 42, 0.08);
}

.reset-link-box small {
  display: block;
  margin-top: 5px;
  color: #6b7280;
  font-weight: 700;
  line-height: 1.35;
}

.documents-page,
.calculator-page {
  display: grid;
  gap: 18px;
}

.documents-hero,
.calculator-hero {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: stretch;
  color: #ffffff;
  background:
    radial-gradient(circle at 82% 20%, rgba(227, 6, 19, 0.35), transparent 34%),
    linear-gradient(135deg, #080a0f, #171923);
}

.documents-hero p,
.calculator-hero p {
  color: rgba(255, 255, 255, 0.78);
}

.documents-hero-stats,
.rate-card {
  display: grid;
  align-content: center;
  gap: 7px;
  min-width: 190px;
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.08);
  text-align: center;
}

.documents-hero-stats strong,
.rate-card strong {
  color: #ffffff;
  font-size: 38px;
  font-weight: 950;
}

.documents-hero-stats span,
.rate-card span,
.rate-card em,
.rate-card small {
  color: rgba(255, 255, 255, 0.72);
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
  text-transform: uppercase;
}

.rate-card small {
  color: rgba(255, 255, 255, 0.58);
  font-size: 10px;
  line-height: 1.35;
  text-transform: none;
}

.rate-card .btn {
  justify-self: center;
  margin-top: 4px;
}

.calculator-market-pulse {
  display: grid;
  gap: 12px;
  overflow: hidden;
  border: 1px solid rgba(17, 24, 39, 0.09);
  border-radius: 14px;
  background:
    radial-gradient(circle at 88% 6%, rgba(227, 6, 19, 0.12), transparent 32%),
    linear-gradient(135deg, #ffffff 0%, #f7f9fc 58%, #ffffff 100%);
  box-shadow: 0 18px 46px rgba(15, 23, 42, 0.08);
  padding: 14px;
}

.calculator-market-pulse-head {
  display: flex;
  gap: 18px;
  align-items: flex-start;
  justify-content: space-between;
}

.calculator-market-pulse-head h3,
.calculator-market-pulse-head p {
  margin: 0;
}

.calculator-market-pulse-head h3 {
  color: #111827;
  font-size: clamp(22px, 2.5vw, 32px);
  line-height: 1.05;
}

.calculator-market-pulse-head p:not(.eyebrow) {
  max-width: 760px;
  margin-top: 7px;
  color: #5f6875;
  font-weight: 750;
  line-height: 1.45;
}

.calculator-market-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  align-items: stretch;
  justify-content: flex-end;
}

.calculator-assumption-pill {
  display: grid;
  gap: 3px;
  min-width: 176px;
  padding: 12px 14px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 16px;
  background: #111318;
  color: #ffffff;
  box-shadow: 0 12px 28px rgba(17, 19, 24, 0.14);
}

.calculator-assumption-pill span,
.calculator-assumption-pill small {
  color: rgba(255, 255, 255, 0.68);
  font-size: 10px;
  font-weight: 900;
  line-height: 1.3;
  text-transform: uppercase;
}

.calculator-assumption-pill strong {
  color: #ffffff;
  font-size: 30px;
  font-weight: 950;
  line-height: 1;
}

.calculator-market-pulse .market-pulse-central {
  border-color: rgba(17, 24, 39, 0.08);
  border-radius: 10px;
  background: #111318;
}

.calculator-market-details {
  overflow: hidden;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.82);
}

.calculator-market-details summary {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  min-height: 42px;
  padding: 0 13px;
  cursor: pointer;
  list-style: none;
}

.calculator-market-details summary::-webkit-details-marker {
  display: none;
}

.calculator-market-details summary span {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  color: #111827;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.calculator-market-details summary svg {
  color: var(--nex-red);
}

.calculator-market-details summary small {
  color: #68717d;
  font-size: 11px;
  font-weight: 850;
}

.calculator-market-detail-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  border-top: 1px solid rgba(17, 24, 39, 0.08);
  padding: 10px;
}

.calculator-market-detail-grid article {
  display: grid;
  align-content: start;
  gap: 5px;
  min-height: 82px;
  padding: 10px;
  border: 1px solid rgba(17, 24, 39, 0.07);
  border-radius: 8px;
  background: #ffffff;
}

.calculator-market-detail-grid span {
  overflow: hidden;
  color: #e30613;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.04em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.calculator-market-detail-grid strong {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #111827;
  font-size: 20px;
  font-weight: 950;
  line-height: 1;
  overflow-wrap: anywhere;
}

.calculator-market-detail-grid small {
  color: #68717d;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.35;
}

.calculator-market-card-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 9px;
}

.calculator-market-card-grid article {
  display: grid;
  align-content: start;
  gap: 6px;
  min-height: 98px;
  padding: 12px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.05);
}

.calculator-market-card-grid span {
  overflow: hidden;
  color: #e30613;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.04em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.calculator-market-card-grid strong {
  display: flex;
  align-items: center;
  gap: 7px;
  color: #111827;
  font-size: clamp(20px, 2.4vw, 30px);
  font-weight: 950;
  line-height: 1;
}

.calculator-market-card-grid small,
.calculator-market-disclaimer {
  color: #68717d;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.4;
}

.calculator-market-housing-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.calculator-market-housing-row span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 999px;
  background: #ffffff;
}

.calculator-market-housing-row strong {
  color: #111827;
  font-size: 14px;
  font-weight: 950;
}

.calculator-market-housing-row em {
  color: #68717d;
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
}

.calculator-rate-note {
  border: 1px solid rgba(227, 6, 19, 0.16);
  border-radius: 12px;
  background: #fff7f7;
  color: #4b5563;
  font-size: 12px;
  font-weight: 800;
  grid-column: 1 / -1;
  line-height: 1.5;
  margin: -2px 0 4px;
  padding: 10px 12px;
}

.document-section-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 12px;
}

.document-section-grid button,
.document-card,
.calculator-results {
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 16px 38px rgba(15, 23, 42, 0.07);
}

.document-section-grid button {
  display: grid;
  gap: 8px;
  min-height: 154px;
  padding: 18px;
  color: #111827;
  text-align: left;
}

.document-section-grid button.selected {
  border-color: rgba(227, 6, 19, 0.42);
  box-shadow: 0 18px 45px rgba(227, 6, 19, 0.12);
}

.document-section-grid svg {
  color: #e30613;
}

.document-section-grid span,
.document-card p,
.document-card small {
  color: #6b7280;
  line-height: 1.45;
}

.document-toolbar {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
}

.document-toolbar label {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1;
  min-width: 0;
  margin: 0;
  padding: 12px 14px;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #ffffff;
}

.document-toolbar input {
  border: 0;
  padding: 0;
}

.document-upload-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.document-file-picker {
  display: grid;
  place-items: center;
  gap: 8px;
  min-height: 116px;
  margin: 0;
  border: 1px dashed #d1d5db;
  border-radius: 16px;
  background: #f9fafb;
  color: #374151;
  cursor: pointer;
}

.document-storage-note {
  display: flex;
  grid-column: 1 / -1;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(17, 24, 39, 0.09);
  border-radius: 14px;
  background: #ffffff;
  color: #4b5563;
  padding: 11px 12px;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.4;
}

.document-storage-note.ready {
  border-color: rgba(22, 163, 74, 0.22);
  background: #f0fdf4;
  color: #14532d;
}

.document-storage-note.pending {
  border-color: rgba(227, 6, 19, 0.16);
  background: #fff7f7;
}

.document-storage-note svg {
  flex: 0 0 auto;
  color: var(--nex-red);
}

.document-storage-note.ready svg {
  color: #16a34a;
}

.document-hosted-pill {
  display: inline-flex;
  align-items: center;
  align-self: center;
  border: 1px solid rgb(22 163 74 / 0.24);
  border-radius: 999px;
  background: rgb(22 163 74 / 0.1);
  color: #166534;
  padding: 6px 9px;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.document-file-picker input {
  display: none;
}

.document-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 238px), 1fr));
  gap: 18px;
  align-items: stretch;
}

.document-card {
  position: relative;
  display: grid;
  grid-template-rows: auto auto auto auto auto auto;
  gap: 10px;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  padding: 14px;
  contain: layout paint;
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.document-card:hover {
  border-color: rgba(227, 6, 19, 0.18);
  box-shadow: 0 20px 44px rgba(15, 23, 42, 0.1);
  transform: translateY(-2px);
}

.document-preview {
  display: grid;
  place-items: center;
  width: 100%;
  aspect-ratio: 4 / 3;
  min-height: 0;
  overflow: hidden;
  border-radius: 14px;
  background: linear-gradient(135deg, #111827, #252936);
  color: #ffffff;
}

.document-preview img {
  width: 100%;
  height: 100%;
  background: #f8fafc;
  object-fit: contain;
}

.document-card > span {
  width: max-content;
  max-width: 100%;
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(227, 6, 19, 0.1);
  color: #b0000a;
  font-size: 11px;
  font-weight: 900;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.document-card h3,
.document-card p,
.document-card small {
  max-width: 100%;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.document-card h3 {
  display: -webkit-box;
  color: #111827;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.28;
  min-height: 38px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.document-card p {
  display: -webkit-box;
  font-size: 13px;
  min-height: 38px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.document-card small {
  display: -webkit-box;
  font-size: 11px;
  line-height: 1.35;
  min-height: 30px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.document-card .row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-self: end;
  align-items: center;
  margin-top: 6px;
}

.document-card .row-actions .btn {
  flex: 1 1 94px;
  justify-content: center;
  min-width: 0;
}

.document-card .row-actions .icon-btn.small {
  flex: 0 0 auto;
}

.document-card .row-actions .btn span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.document-card .document-card-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
}

.document-card .document-card-actions .btn {
  min-height: 38px;
  padding-inline: 9px;
}

.document-card .document-card-actions .icon-btn.small,
.document-card .document-card-actions .document-hosted-pill {
  grid-column: auto;
}

.calculator-tabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
}

.calculator-tabs button {
  min-height: 42px;
  padding: 0 16px;
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  background: #ffffff;
  color: #111827;
  font-weight: 900;
  white-space: nowrap;
}

.calculator-tabs button.selected {
  border-color: #e30613;
  background: #e30613;
  color: #ffffff;
}

.preapproval-partner-card {
  display: grid;
  grid-template-columns: minmax(230px, 0.78fr) minmax(0, 1fr) minmax(210px, auto);
  gap: 18px;
  align-items: center;
  overflow: hidden;
  padding: 18px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 22px;
  background:
    radial-gradient(circle at 88% 12%, rgba(201, 162, 74, 0.16), transparent 28%),
    linear-gradient(135deg, #ffffff 0%, #f9fafb 58%, #ffffff 100%);
  box-shadow: 0 16px 38px rgba(15, 23, 42, 0.07);
}

.preapproval-partner-media {
  overflow: hidden;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.08);
}

.preapproval-partner-media img {
  display: block;
  width: 100%;
  height: 190px;
  object-fit: cover;
  object-position: center 20%;
}

.preapproval-partner-card h3,
.preapproval-partner-card p {
  margin: 0;
}

.preapproval-partner-card p:not(.eyebrow) {
  margin-top: 5px;
  color: #6b7280;
  line-height: 1.45;
}

.preapproval-partner-copy h3 {
  color: #111827;
  font-size: clamp(22px, 2.5vw, 34px);
  line-height: 1;
}

.preapproval-contact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 12px;
}

.preapproval-contact-grid span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  color: #374151;
  font-size: 12px;
  font-weight: 850;
}

.preapproval-contact-grid svg {
  flex: 0 0 auto;
  color: #e30613;
}

.preapproval-partner-actions {
  display: grid;
  gap: 8px;
  justify-content: flex-end;
}

.preapproval-partner-actions .btn {
  justify-content: center;
  width: 100%;
}

.calculator-workspace {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, 0.85fr);
  gap: 16px;
  align-items: start;
}

.calculator-inputs {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.calculator-inputs .panel-heading {
  grid-column: 1 / -1;
}

.calculator-field {
  display: grid;
  gap: 6px;
  margin: 0;
}

.calculator-field span {
  color: #374151;
  font-size: 12px;
  font-weight: 900;
}

.calculator-results {
  position: sticky;
  top: 18px;
  padding: 22px;
}

.calculator-results h3 {
  margin: 0;
  color: #111827;
}

.calculator-results > strong {
  display: block;
  margin: 12px 0 18px;
  color: #e30613;
  font-size: clamp(34px, 5vw, 52px);
  font-weight: 950;
  line-height: 1;
}

.calculator-result-rows {
  display: grid;
  gap: 10px;
}

.calculator-result-rows span {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 10px;
  border-bottom: 1px solid #f1f5f9;
}

.calculator-result-rows em {
  color: #6b7280;
  font-style: normal;
}

.calculator-export-controls {
  display: grid;
  gap: 12px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid #eef2f7;
}

.calculator-export-controls > div:first-child {
  display: grid;
  gap: 4px;
}

.calculator-export-controls strong {
  color: #111827;
  font-size: 13px;
  font-weight: 950;
}

.calculator-export-controls small {
  color: #68717d;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.4;
}

.calculator-export-buttons {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.calculator-export-buttons .btn {
  justify-content: center;
  width: 100%;
}

.calculator-export-renderer {
  position: fixed;
  left: -12000px;
  top: 0;
  z-index: -1;
  width: 1080px;
  pointer-events: none;
}

.calculator-export-sheet {
  display: grid;
  gap: 24px;
  width: 1000px;
  min-height: 1294px;
  padding: 54px;
  background:
    radial-gradient(circle at 92% 10%, rgba(227, 6, 19, 0.10), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  color: #111827;
  font-family: Arial, Helvetica, sans-serif;
}

.calculator-export-sheet header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 28px;
  padding-bottom: 24px;
  border-bottom: 1px solid #e5e7eb;
}

.calculator-export-brand,
.calculator-export-agent {
  display: flex;
  align-items: center;
  gap: 16px;
}

.calculator-export-brand img {
  width: 118px;
  height: auto;
  object-fit: contain;
}

.calculator-export-brand div,
.calculator-export-agent div {
  display: grid;
  gap: 4px;
}

.calculator-export-brand span,
.calculator-export-brand small,
.calculator-export-agent span {
  color: #64748b;
  font-size: 13px;
  font-weight: 850;
}

.calculator-export-brand span {
  color: #e30613;
  font-size: 12px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.calculator-export-brand strong {
  color: #111827;
  font-size: 27px;
  font-weight: 950;
  line-height: 1.05;
}

.calculator-export-agent {
  max-width: 360px;
  justify-content: flex-end;
  text-align: right;
}

.calculator-export-agent img,
.calculator-export-agent em {
  width: 74px;
  height: 74px;
  flex: 0 0 auto;
  border-radius: 18px;
  object-fit: cover;
}

.calculator-export-agent em {
  display: grid;
  place-items: center;
  background: #111318;
  color: #ffffff;
  font-size: 22px;
  font-style: normal;
  font-weight: 950;
}

.calculator-export-agent strong {
  color: #111827;
  font-size: 22px;
  font-weight: 950;
}

.calculator-export-hero {
  display: grid;
  gap: 10px;
  padding: 34px;
  border-radius: 26px;
  background:
    radial-gradient(circle at 88% 20%, rgba(227, 6, 19, 0.42), transparent 34%),
    linear-gradient(135deg, #080a0f, #161922);
  color: #ffffff;
}

.calculator-export-hero span {
  color: rgba(255, 255, 255, 0.70);
  font-size: 13px;
  font-weight: 950;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.calculator-export-hero strong {
  color: #ffffff;
  font-size: 58px;
  font-weight: 950;
  letter-spacing: 0;
  line-height: 0.95;
}

.calculator-export-hero p {
  max-width: 720px;
  margin: 0;
  color: rgba(255, 255, 255, 0.76);
  font-size: 17px;
  font-weight: 750;
  line-height: 1.45;
}

.calculator-export-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.calculator-export-table {
  display: grid;
  align-content: start;
  gap: 11px;
  min-height: 360px;
  padding: 22px;
  border: 1px solid #e5e7eb;
  border-radius: 22px;
  background: #ffffff;
  box-shadow: 0 16px 36px rgba(15, 23, 42, 0.06);
}

.calculator-export-table h4 {
  margin: 0 0 4px;
  color: #111827;
  font-size: 18px;
  font-weight: 950;
}

.calculator-export-table div {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid #f1f5f9;
}

.calculator-export-table span {
  color: #64748b;
  font-size: 12px;
  font-weight: 850;
}

.calculator-export-table strong {
  color: #111827;
  font-size: 13px;
  font-weight: 950;
  text-align: right;
}

.calculator-export-lender {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 18px 20px;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.05);
}

.calculator-export-lender img {
  width: 155px;
  height: auto;
  object-fit: contain;
}

.calculator-export-lender div {
  display: grid;
  gap: 4px;
}

.calculator-export-lender span {
  color: #e30613;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.calculator-export-lender strong {
  color: #111827;
  font-size: 18px;
  font-weight: 950;
}

.calculator-export-lender p {
  margin: 0;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}

.calculator-export-sheet footer {
  display: grid;
  gap: 8px;
  margin-top: auto;
  padding: 18px;
  border: 1px solid rgba(201, 162, 74, 0.26);
  border-radius: 18px;
  background: rgba(201, 162, 74, 0.09);
  color: #5b4210;
}

.calculator-export-sheet footer strong {
  font-size: 13px;
  font-weight: 950;
  text-transform: uppercase;
}

.calculator-export-sheet footer p {
  margin: 0;
  font-size: 12px;
  font-weight: 760;
  line-height: 1.5;
}

.calculator-disclaimer {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 14px;
  border: 1px solid rgba(201, 162, 74, 0.24);
  border-radius: 16px;
  background: rgba(201, 162, 74, 0.09);
  color: #584313;
}

.calculator-disclaimer p {
  margin: 0;
  line-height: 1.45;
}

.nex-chat-page {
  overflow: hidden;
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(8, 10, 15, 0.98), rgba(19, 22, 32, 0.96)) padding-box,
    linear-gradient(135deg, rgba(227, 6, 19, 0.32), rgba(255, 255, 255, 0.08)) border-box;
  box-shadow: 0 20px 60px rgba(15, 23, 42, 0.16);
}

.nex-chat-sidebar {
  background: transparent;
  border-right: 1px solid rgba(255, 255, 255, 0.08);
}

.nex-chat-section-heading,
.nex-chat-room-list button,
.nex-channel-create input {
  color: rgba(255, 255, 255, 0.82);
}

.nex-chat-room-list button {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.08);
}

.nex-chat-room-list button.active {
  background: rgba(227, 6, 19, 0.22);
  border-color: rgba(227, 6, 19, 0.5);
  color: #ffffff;
}

.nex-chat-main {
  background: #f8fafc;
}

.nex-chat-header {
  background: #ffffff;
  border-bottom: 1px solid #e5e7eb;
}

.nex-chat-stream {
  background:
    radial-gradient(circle at 10% 10%, rgba(227, 6, 19, 0.08), transparent 28%),
    #f8fafc;
}

.nex-chat-message {
  align-items: flex-start;
}

.chat-message-body {
  border: 1px solid rgba(15, 23, 42, 0.08);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
}

.nex-chat-message.mine .chat-message-body {
  background: #111827;
  color: #ffffff;
}

.nex-chat-composer {
  position: relative;
  border-top: 1px solid #e5e7eb;
  background: #ffffff;
}

@media (max-width: 980px) {
  .nex-hero-content,
  .calculator-workspace {
    grid-template-columns: 1fr;
  }

  .calculator-market-pulse-head {
    display: grid;
  }

  .calculator-market-actions {
    justify-content: flex-start;
  }

  .calculator-market-card-grid,
  .calculator-market-detail-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .preapproval-partner-card {
    grid-template-columns: 1fr;
    text-align: left;
  }

  .preapproval-partner-media {
    max-width: 420px;
  }

  .preapproval-contact-grid {
    grid-template-columns: 1fr;
  }

  .preapproval-partner-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: flex-start;
  }

  .nex-hero-system-card {
    min-height: 0;
  }

  .nex-metrics-row {
    display: flex;
    overflow-x: auto;
    padding-bottom: 6px;
  }

  .nex-metric-card {
    flex: 0 0 190px;
  }

  .document-upload-grid,
  .calculator-inputs {
    grid-template-columns: 1fr;
  }

  .calculator-results {
    position: static;
  }
}

@media (max-width: 700px) {
  .documents-hero,
  .calculator-hero {
    display: grid;
  }

  .calculator-market-pulse {
    border-radius: 18px;
    padding: 13px;
  }

  .calculator-market-card-grid,
  .calculator-market-detail-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .calculator-market-actions {
    display: grid;
  }

  .calculator-assumption-pill {
    min-width: 0;
  }

  .preapproval-partner-card {
    padding: 14px;
    border-radius: 18px;
  }

  .preapproval-partner-actions {
    grid-template-columns: 1fr;
  }

  .document-toolbar {
    display: grid;
  }

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

  .document-card {
    border-radius: 16px;
  }

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

  .document-card .document-card-actions .btn {
    min-height: 44px;
  }

  .document-card .document-card-actions .icon-btn.small,
  .document-card .document-card-actions .document-hosted-pill {
    justify-self: start;
  }

  .nex-chat-page {
    border-radius: 18px;
  }
}

/* Consumer-facing Nex Realty website foundation */
.public-site {
  min-height: 100vh;
  overflow-x: hidden;
  background:
    radial-gradient(circle at top left, rgb(227 6 19 / 0.055), transparent 32%),
    radial-gradient(circle at 78% 8%, rgb(201 162 74 / 0.09), transparent 30%),
    linear-gradient(180deg, #ffffff 0%, #fbfcfd 48%, #ffffff 100%);
  color: #111318;
}

.public-site.stofel-public-home-shell {
  background: #ffffff;
  color: #2b2f36;
}

.stofel-idx-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  align-content: start;
  min-height: clamp(640px, 86vh, 820px);
  overflow: hidden;
  background: #2f4258;
  color: #ffffff;
}

.stofel-idx-hero-photo {
  position: absolute;
  inset: 0;
  z-index: -2;
  background-size: cover;
  background-position: center;
  filter: saturate(1.02) contrast(1.02);
  transform: scale(1.01);
}

.stofel-idx-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(180deg, rgb(20 29 39 / 0.36) 0%, rgb(20 29 39 / 0.12) 42%, rgb(20 29 39 / 0.20) 100%),
    linear-gradient(90deg, rgb(20 29 39 / 0.30), rgb(20 29 39 / 0.04) 28%, rgb(20 29 39 / 0.14));
}

.stofel-idx-header {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: clamp(16px, 4vw, 54px);
  align-items: start;
  width: min(1800px, calc(100% - 86px));
  margin: 0 auto;
  padding-top: 18px;
}

.stofel-idx-brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 120px;
  min-height: 88px;
  border: 0;
  background: transparent;
  padding: 0;
}

.stofel-idx-logo {
  width: 118px;
  max-height: 72px;
  object-fit: contain;
  filter: drop-shadow(0 8px 20px rgb(0 0 0 / 0.24));
}

.stofel-idx-header-side {
  display: grid;
  gap: 58px;
  justify-items: end;
  min-width: 0;
}

.stofel-idx-utility,
.stofel-idx-nav {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
  min-width: 0;
}

.stofel-idx-utility button,
.stofel-idx-nav button,
.stofel-idx-brand,
.stofel-idx-listing-title,
.stofel-idx-listing-photo,
.stofel-idx-chat-launcher,
.stofel-idx-more-options,
.stofel-idx-home-widgets button,
.stofel-idx-footer-social button {
  cursor: pointer;
}

.stofel-idx-utility button,
.stofel-idx-nav button {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-height: 32px;
  border: 0;
  background: transparent;
  color: #ffffff;
  padding: 0;
  font-weight: 900;
  text-shadow: 0 10px 22px rgb(0 0 0 / 0.28);
}

.stofel-idx-utility button {
  font-size: 16px;
}

.stofel-idx-utility svg {
  width: 17px;
  height: 17px;
}

.stofel-idx-social {
  display: inline-grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border: 2px solid rgb(255 255 255 / 0.84) !important;
  border-radius: 999px;
}

.stofel-idx-social svg {
  width: 16px;
  height: 16px;
}

.stofel-idx-nav {
  gap: clamp(22px, 3vw, 40px);
}

.stofel-idx-nav button {
  font-size: 18px;
  letter-spacing: 0;
}

.stofel-idx-nav button:hover,
.stofel-idx-utility button:hover {
  color: #d9f4ff;
}

.stofel-idx-hero-content {
  position: relative;
  z-index: 2;
  display: grid;
  justify-items: center;
  gap: 28px;
  width: min(1320px, calc(100% - 48px));
  margin: clamp(132px, 19vh, 210px) auto 0;
  text-align: center;
}

.stofel-idx-hero-content h1 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(34px, 4.2vw, 58px);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: 0;
  text-shadow: 0 14px 30px rgb(0 0 0 / 0.32);
}

.stofel-agent-subdomain-hero {
  min-height: 830px;
}

.stofel-agent-subdomain-hero::before {
  background:
    linear-gradient(180deg, rgb(20 29 39 / 0.26) 0%, rgb(20 29 39 / 0.08) 38%, rgb(20 29 39 / 0.28) 100%),
    linear-gradient(90deg, rgb(20 29 39 / 0.22), rgb(20 29 39 / 0.02) 32%, rgb(20 29 39 / 0.10));
}

.stofel-agent-subdomain-content {
  position: relative;
  z-index: 2;
  display: grid;
  justify-items: center;
  gap: 34px;
  width: min(1320px, calc(100% - 48px));
  margin: 118px auto 0;
  text-align: center;
}

.stofel-agent-subdomain-identity {
  display: grid;
  justify-items: center;
  gap: 7px;
  color: #ffffff;
  text-shadow: 0 14px 30px rgb(0 0 0 / 0.32);
}

.stofel-agent-subdomain-avatar {
  display: grid;
  place-items: center;
  width: 122px;
  height: 122px;
  overflow: hidden;
  border: 5px solid rgb(255 255 255 / 0.92);
  border-radius: 999px;
  background: #1f8dc0;
  color: #ffffff;
  font-size: 36px;
  font-weight: 900;
  box-shadow: 0 22px 52px rgb(0 0 0 / 0.28);
}

.stofel-agent-subdomain-avatar.small {
  width: 86px;
  height: 86px;
  border-width: 3px;
  color: #ffffff;
  font-size: 28px;
  box-shadow: 0 14px 32px rgb(31 54 76 / 0.18);
}

.stofel-agent-subdomain-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.stofel-agent-subdomain-identity h1 {
  margin: 0;
  color: #ffffff;
  font-size: 54px;
  font-weight: 400;
  line-height: 1.04;
  letter-spacing: 0;
}

.stofel-agent-subdomain-identity p,
.stofel-agent-subdomain-identity strong {
  margin: 0;
  color: #ffffff;
  font-size: 24px;
  font-weight: 400;
  line-height: 1.22;
}

.stofel-agent-subdomain-identity strong {
  font-size: 38px;
}

.stofel-agent-contact-band {
  display: grid;
  grid-template-columns: minmax(320px, 0.88fr) minmax(420px, 1.12fr);
  gap: 18px;
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto 38px;
  padding: 2px 0 0;
}

.stofel-agent-contact-card,
.stofel-agent-action-grid button {
  border: 1px solid #dfe4ea;
  background: #ffffff;
  color: #27384d;
  box-shadow: 0 12px 30px rgb(28 42 57 / 0.07);
}

.stofel-agent-contact-card {
  display: grid;
  gap: 20px;
  padding: 22px;
}

.stofel-agent-contact-main {
  display: flex;
  align-items: center;
  gap: 16px;
  min-width: 0;
}

.stofel-agent-contact-main span,
.stofel-agent-contact-details dt {
  color: #6a7280;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.stofel-agent-contact-main h2 {
  margin: 2px 0 0;
  color: #27384d;
  font-size: 28px;
  line-height: 1.08;
}

.stofel-agent-contact-main p {
  margin: 4px 0 0;
  color: #58616d;
  font-weight: 700;
}

.stofel-agent-contact-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.stofel-agent-contact-actions a,
.stofel-agent-contact-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  border: 1px solid #d3dbe4;
  background: #ffffff;
  color: #27384d;
  padding: 0 14px;
  font-weight: 900;
  text-decoration: none;
}

.stofel-agent-contact-actions a:first-child,
.stofel-agent-contact-actions button:hover,
.stofel-agent-action-grid button:hover {
  border-color: var(--agent-site-accent, #1f8dc0);
  color: #ffffff;
  background: var(--agent-site-accent, #1f8dc0);
}

.stofel-agent-contact-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 16px;
  margin: 0;
}

.stofel-agent-contact-details div {
  min-width: 0;
}

.stofel-agent-contact-details dd {
  margin: 4px 0 0;
  color: #27384d;
  font-weight: 850;
  overflow-wrap: anywhere;
}

.stofel-agent-action-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.stofel-agent-action-grid button {
  display: grid;
  align-content: start;
  gap: 10px;
  min-height: 100%;
  padding: 20px;
  text-align: left;
}

.stofel-agent-action-grid svg {
  color: var(--agent-site-accent, #1f8dc0);
}

.stofel-agent-action-grid button:hover svg {
  color: #ffffff;
}

.stofel-agent-action-grid strong {
  color: inherit;
  font-size: 20px;
  line-height: 1.1;
}

.stofel-agent-action-grid span {
  color: inherit;
  font-size: 14px;
  line-height: 1.45;
  opacity: 0.82;
}

.stofel-idx-dream-button {
  min-height: 56px;
  border: 0;
  border-radius: 999px;
  background: #26384b;
  color: #ffffff;
  padding: 0 30px;
  font-size: clamp(18px, 2vw, 25px);
  font-weight: 500;
  box-shadow: 0 16px 34px rgb(0 0 0 / 0.24);
}

.stofel-idx-dream-button:hover {
  background: #1f8dc0;
}

.stofel-idx-search {
  display: grid;
  justify-items: center;
  gap: 18px;
  width: 100%;
}

.stofel-idx-search-row {
  display: grid;
  grid-template-columns: minmax(280px, 2.1fr) minmax(150px, 0.9fr) minmax(90px, 0.58fr) minmax(90px, 0.58fr) minmax(95px, 0.58fr) minmax(95px, 0.58fr) minmax(160px, 0.95fr);
  width: min(1304px, 100%);
  min-height: 70px;
  background: #ffffff;
  color: #1f2933;
  box-shadow: 0 18px 44px rgb(0 0 0 / 0.22);
}

.stofel-idx-search-row .public-search-autocomplete {
  z-index: 60;
}

.stofel-idx-search-row .public-search-autocomplete input,
.stofel-idx-search-row select,
.stofel-idx-search-submit {
  width: 100%;
  min-height: 70px;
  border: 0;
  border-right: 1px solid #d8dde4;
  border-radius: 0;
  background: #ffffff;
  color: #1f2933;
  padding: 0 24px;
  font-size: 18px;
  font-weight: 500;
  outline: none;
}

.stofel-idx-search-row select {
  padding-right: 14px;
  font-size: 17px;
}

.stofel-idx-search-submit {
  border-right: 0;
  background: #27384d;
  color: #ffffff;
  font-weight: 800;
}

.stofel-idx-search-submit:hover {
  background: #1f8dc0;
}

.stofel-idx-more-options {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 36px;
  border: 0;
  background: #27384d;
  color: #ffffff;
  padding: 0 16px;
  font-size: 18px;
  font-weight: 500;
}

.stofel-idx-more-options svg {
  width: 20px;
  height: 20px;
}

.stofel-idx-advanced-options {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  width: min(940px, 100%);
  padding: 10px;
  background: rgb(255 255 255 / 0.92);
  box-shadow: 0 12px 28px rgb(0 0 0 / 0.16);
}

.stofel-idx-advanced-options button {
  min-height: 36px;
  border: 1px solid #d8dde4;
  background: #ffffff;
  color: #27384d;
  padding: 0 12px;
  font-size: 13px;
  font-weight: 850;
}

.stofel-idx-just-listed {
  display: grid;
  gap: clamp(46px, 6vw, 90px);
  padding: 14px 20px 36px;
  background: #ffffff;
}

.stofel-idx-just-listed h2 {
  margin: 0;
  color: #55575a;
  font-size: clamp(42px, 6vw, 68px);
  font-weight: 850;
  line-height: 1;
  text-align: center;
}

.stofel-idx-listing-frame {
  position: relative;
  width: min(1388px, calc(100% - 72px));
  margin: 0 auto;
  border: 1px solid #bfc5ce;
  background: #ffffff;
  padding: 36px;
}

.stofel-idx-listing-track {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(260px, 300px);
  gap: 36px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-snap-type: inline mandatory;
  scrollbar-width: none;
  padding: 0 0 2px;
}

.stofel-idx-listing-track::-webkit-scrollbar {
  display: none;
}

.stofel-idx-carousel-arrow {
  position: absolute;
  top: 50%;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 42px;
  height: 44px;
  border: 0;
  background: #000000;
  color: #ffffff;
  transform: translateY(-50%);
}

.stofel-idx-carousel-arrow.left {
  left: -22px;
}

.stofel-idx-carousel-arrow.right {
  right: -22px;
}

.stofel-idx-carousel-arrow:disabled {
  opacity: 0.35;
  cursor: default;
}

.stofel-idx-listing-card {
  scroll-snap-align: start;
  display: grid;
  grid-template-rows: auto auto 1fr;
  min-height: 608px;
  overflow: hidden;
  border: 1px solid #eef0f3;
  background: #ffffff;
  box-shadow: 0 2px 4px rgb(17 19 24 / 0.04);
}

.stofel-idx-live-empty {
  scroll-snap-align: start;
  display: grid;
  align-content: center;
  justify-items: start;
  gap: 14px;
  width: min(680px, calc(100vw - 140px));
  min-height: 288px;
  border: 1px dashed #b8c8d3;
  background:
    linear-gradient(135deg, rgb(31 141 192 / 0.10), rgb(63 83 107 / 0.05)),
    #ffffff;
  color: #27384d;
  padding: 32px;
}

.stofel-idx-live-empty svg {
  width: 34px;
  height: 34px;
  color: #1f8dc0;
}

.stofel-idx-live-empty strong {
  color: #27384d;
  font-size: 24px;
  font-weight: 850;
  line-height: 1.15;
}

.stofel-idx-live-empty p {
  max-width: 560px;
  margin: 0;
  color: #5b6672;
  font-size: 16px;
  line-height: 1.55;
}

.stofel-idx-live-empty button {
  min-height: 42px;
  border: 0;
  background: #27384d;
  color: #ffffff;
  padding: 0 18px;
  font-size: 14px;
  font-weight: 900;
  cursor: pointer;
}

.stofel-idx-live-empty button:hover {
  background: #1f8dc0;
}

.stofel-idx-listing-photo {
  position: relative;
  display: block;
  width: 100%;
  height: 200px;
  border: 0;
  background: #d7e2e9;
  padding: 0;
  overflow: hidden;
}

.stofel-idx-listing-photo img,
.stofel-idx-photo-fallback {
  width: 100%;
  height: 100%;
}

.stofel-idx-listing-photo img {
  display: block;
  object-fit: cover;
}

.stofel-idx-listing-photo span {
  position: absolute;
  top: 25px;
  left: 50%;
  transform: translateX(-50%);
  display: inline-flex;
  min-height: 30px;
  align-items: center;
  background: #27384d;
  color: #ffffff;
  padding: 0 17px;
  font-size: 13px;
  font-weight: 900;
  white-space: nowrap;
}

.stofel-idx-photo-fallback {
  display: grid;
  place-items: center;
  align-content: center;
  gap: 8px;
  background:
    linear-gradient(135deg, #e9f5fa, #cadbe5);
  color: #27384d;
}

.stofel-idx-photo-fallback span,
.stofel-idx-photo-fallback strong {
  position: static;
  transform: none;
  display: block;
  min-height: 0;
  background: transparent;
  color: inherit;
  padding: 0;
}

.stofel-idx-photo-fallback span {
  font-size: 12px;
}

.stofel-idx-listing-title {
  display: grid;
  gap: 7px;
  min-height: 94px;
  border: 0;
  background: #28374b;
  color: #ffffff;
  padding: 18px 24px;
  text-align: left;
}

.stofel-idx-listing-title strong {
  font-size: 22px;
  font-weight: 600;
  line-height: 1.05;
}

.stofel-idx-listing-title span {
  font-size: 19px;
  font-weight: 500;
}

.stofel-idx-listing-facts {
  display: grid;
  align-content: start;
  gap: 12px;
  margin: 0;
  padding: 28px 24px;
}

.stofel-idx-listing-facts div {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 12px;
  align-items: center;
}

.stofel-idx-listing-facts dt,
.stofel-idx-listing-facts dd {
  margin: 0;
  font-size: 16px;
  line-height: 1.25;
}

.stofel-idx-listing-facts dt {
  color: #777b80;
}

.stofel-idx-listing-facts dd {
  color: #33373d;
  font-weight: 850;
  text-align: right;
}

.stofel-idx-home-widgets {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto 34px;
  padding: 8px 0;
}

.stofel-idx-home-widgets button {
  display: grid;
  gap: 9px;
  min-height: 152px;
  border: 1px solid #dfe4ea;
  background: #ffffff;
  color: #27384d;
  padding: 18px;
  text-align: left;
  box-shadow: 0 10px 24px rgb(28 42 57 / 0.06);
}

.stofel-idx-home-widgets button:hover {
  border-color: #1f8dc0;
  transform: translateY(-1px);
}

.stofel-idx-home-widgets svg {
  color: #1f8dc0;
}

.stofel-idx-home-widgets strong {
  font-size: 19px;
}

.stofel-idx-home-widgets span {
  color: #58616d;
  line-height: 1.45;
}

.stofel-idx-chat-launcher {
  position: fixed;
  left: 12px;
  bottom: 12px;
  z-index: 180;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 60px;
  border: 0;
  border-radius: 999px;
  background: #26384b;
  color: #ffffff;
  padding: 0 26px;
  font-size: 18px;
  font-weight: 900;
  box-shadow: 0 18px 42px rgb(0 0 0 / 0.24);
}

.stofel-idx-chat-launcher svg {
  width: 30px;
  height: 30px;
}

.stofel-idx-footer {
  margin-top: 0;
  background: #3f536b;
  color: #ffffff;
}

.stofel-idx-footer-inner {
  display: grid;
  grid-template-columns: minmax(280px, 0.8fr) minmax(320px, 1.15fr);
  gap: clamp(44px, 9vw, 120px);
  width: min(1390px, calc(100% - 72px));
  margin: 0 auto;
  padding: 16px 0 72px;
}

.stofel-idx-footer h2,
.stofel-idx-footer h3,
.stofel-idx-footer h4,
.stofel-idx-footer p {
  margin: 0;
}

.stofel-idx-office-block,
.stofel-idx-compliance-block {
  display: grid;
  align-content: start;
  gap: 18px;
}

.stofel-idx-office-block h2,
.stofel-idx-compliance-block h2 {
  color: #ffffff;
  font-size: 26px;
  font-weight: 500;
}

.stofel-idx-office-block p,
.stofel-idx-compliance-block p {
  color: rgb(255 255 255 / 0.72);
  font-size: 18px;
  line-height: 1.75;
}

.stofel-idx-office-block a,
.stofel-idx-compliance-block a {
  color: #ffffff;
  text-decoration: none;
}

.stofel-idx-assist {
  max-width: 620px;
  padding-top: 16px;
  font-size: 15px !important;
}

.stofel-idx-assist strong {
  color: #ffffff;
}

.stofel-idx-footer-social {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  padding-top: 14px;
}

.stofel-idx-footer-social button {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border: 0;
  border-radius: 999px;
  background: rgb(255 255 255 / 0.08);
  color: #ffffff;
}

.stofel-stellar-logo {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 0;
  background: #ffffff;
  color: #243246;
  padding: 5px 10px;
  font-size: 31px;
  font-weight: 450;
  line-height: 1;
}

.stofel-stellar-logo span {
  color: #6127c8;
}

.stofel-stellar-logo strong {
  color: #17b6d4;
  font-weight: 450;
}

.stofel-idx-compliance-block h3 {
  margin-top: 44px;
  color: rgb(255 255 255 / 0.72);
  font-size: 18px;
  font-weight: 500;
}

.stofel-idx-compliance-block h4 {
  margin-top: 12px;
  color: #ffffff;
  font-size: 17px;
  font-weight: 500;
}

@media (max-width: 1120px) {
  .stofel-idx-header {
    width: calc(100% - 36px);
  }

  .stofel-idx-header-side {
    gap: 28px;
  }

  .stofel-idx-nav {
    gap: 18px;
  }

  .stofel-idx-search-row {
    grid-template-columns: minmax(260px, 1fr) repeat(2, minmax(110px, 0.5fr)) minmax(140px, 0.7fr);
  }

  .stofel-idx-search-row select:nth-of-type(1),
  .stofel-idx-search-row select:nth-of-type(4),
  .stofel-idx-search-row select:nth-of-type(5) {
    display: none;
  }

  .stofel-idx-home-widgets {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .stofel-agent-subdomain-hero {
    min-height: 760px;
  }

  .stofel-agent-subdomain-content {
    margin-top: 86px;
  }

  .stofel-agent-contact-band {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .stofel-idx-hero {
    min-height: auto;
    padding-bottom: 46px;
  }

  .stofel-idx-header {
    grid-template-columns: 1fr;
    justify-items: center;
    width: calc(100% - 28px);
    padding-top: 14px;
  }

  .stofel-idx-brand {
    width: 108px;
    min-height: 60px;
  }

  .stofel-idx-logo {
    width: 108px;
    max-height: 58px;
  }

  .stofel-idx-header-side {
    justify-items: center;
    gap: 16px;
  }

  .stofel-idx-utility,
  .stofel-idx-nav {
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px 16px;
  }

  .stofel-idx-nav button {
    font-size: 14px;
  }

  .stofel-idx-hero-content {
    width: calc(100% - 28px);
    margin-top: 64px;
    gap: 18px;
  }

  .stofel-agent-subdomain-hero {
    min-height: auto;
  }

  .stofel-agent-subdomain-content {
    width: calc(100% - 28px);
    margin-top: 44px;
    gap: 20px;
  }

  .stofel-agent-subdomain-avatar {
    width: 96px;
    height: 96px;
    border-width: 4px;
    font-size: 30px;
  }

  .stofel-agent-subdomain-identity h1 {
    font-size: 38px;
  }

  .stofel-agent-subdomain-identity p {
    font-size: 18px;
  }

  .stofel-agent-subdomain-identity strong {
    font-size: 25px;
  }

  .stofel-idx-search-row {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .stofel-idx-search-row select:nth-of-type(1),
  .stofel-idx-search-row select:nth-of-type(4),
  .stofel-idx-search-row select:nth-of-type(5) {
    display: block;
  }

  .stofel-idx-search-row .public-search-autocomplete input,
  .stofel-idx-search-row select,
  .stofel-idx-search-submit {
    min-height: 54px;
    border-right: 0;
    border-bottom: 1px solid #d8dde4;
    font-size: 15px;
  }

  .stofel-idx-search-submit {
    border-bottom: 0;
  }

  .stofel-idx-just-listed {
    gap: 28px;
    padding-inline: 14px;
  }

  .stofel-idx-listing-frame {
    width: 100%;
    padding: 18px;
  }

  .stofel-idx-listing-track {
    grid-auto-columns: minmax(252px, 82vw);
    gap: 18px;
  }

  .stofel-idx-carousel-arrow {
    display: none;
  }

  .stofel-idx-home-widgets {
    grid-template-columns: 1fr;
    width: calc(100% - 28px);
  }

  .stofel-agent-contact-band {
    width: calc(100% - 28px);
    margin-bottom: 26px;
  }

  .stofel-agent-contact-card {
    padding: 18px;
  }

  .stofel-agent-contact-main {
    align-items: flex-start;
  }

  .stofel-agent-contact-details,
  .stofel-agent-action-grid {
    grid-template-columns: 1fr;
  }

  .stofel-agent-contact-actions a,
  .stofel-agent-contact-actions button {
    flex: 1 1 146px;
  }

  .stofel-idx-footer-inner {
    grid-template-columns: 1fr;
    width: calc(100% - 36px);
    padding-bottom: 92px;
  }

  .stofel-idx-office-block p,
  .stofel-idx-compliance-block p {
    font-size: 15px;
  }

  .stofel-idx-chat-launcher {
    right: 12px;
    justify-content: center;
  }
}

.public-header-wrap {
  position: sticky;
  top: 0;
  z-index: 20;
  border-bottom: 1px solid rgb(17 19 24 / 0.07);
  background: rgb(255 255 255 / 0.94);
  backdrop-filter: blur(18px);
  box-shadow: 0 12px 34px rgb(17 19 24 / 0.045);
}

.market-pulse-ticker {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  width: 100%;
  max-width: 100%;
  min-height: 40px;
  margin: 0;
  overflow: hidden;
  border-bottom: 1px solid rgb(255 255 255 / 0.12);
  background:
    linear-gradient(90deg, #070708 0%, #111318 42%, #1c1114 100%);
  color: #fff;
  padding: 0 clamp(12px, 3.5vw, 54px);
  box-shadow: inset 0 -1px 0 rgb(255 255 255 / 0.06);
}

.market-pulse-public {
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

.market-pulse-label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  position: relative;
  min-width: 0;
  padding-right: 2px;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  white-space: nowrap;
}

.market-pulse-label svg {
  color: var(--nex-red);
  filter: drop-shadow(0 0 8px rgb(227 6 19 / 0.35));
}

.market-pulse-label em {
  color: rgb(255 255 255 / 0.58);
  font-style: normal;
}

.market-pulse-marquee {
  position: relative;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  cursor: grab;
  scrollbar-width: none;
  mask-image: linear-gradient(90deg, transparent, black 4%, black 96%, transparent);
}

.market-pulse-marquee::-webkit-scrollbar {
  display: none;
}

.market-pulse-marquee:active {
  cursor: grabbing;
}

.market-pulse-marquee > div {
  display: flex;
  width: max-content;
  min-width: max-content;
  gap: 14px;
  padding-left: 14px;
  will-change: transform;
  animation: marketPulseScroll 78s linear infinite;
  animation-play-state: running;
}

@media (hover: hover) and (pointer: fine) {
  .market-pulse-ticker:hover .market-pulse-marquee > div {
    animation-play-state: paused;
  }
}

.market-pulse-marquee span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgb(255 255 255 / 0.08);
  background: rgb(255 255 255 / 0.075);
  color: rgb(255 255 255 / 0.74);
  font-size: 12px;
  font-weight: 850;
  white-space: nowrap;
}

.market-pulse-marquee strong,
.market-pulse-marquee b {
  color: #fff;
  font-weight: 950;
}

.market-pulse-marquee i {
  padding: 2px 5px;
  border-radius: 999px;
  font-size: 9px;
  font-style: normal;
  font-weight: 950;
  text-transform: uppercase;
}

.market-pulse-marquee .pulse-trend {
  background: rgb(255 255 255 / 0.1);
  color: rgb(255 255 255 / 0.78);
}

.market-pulse-marquee .pulse-trend.up {
  background: rgb(239 68 68 / 0.15);
  color: #ffb4b4;
}

.market-pulse-marquee .pulse-trend.down {
  background: rgb(36 212 129 / 0.14);
  color: #8df2bd;
}

.market-pulse-marquee .pulse-status.live {
  background: rgb(36 212 129 / 0.14);
  color: #8df2bd;
}

.market-pulse-marquee .pulse-status.daily,
.market-pulse-marquee .pulse-status.weekly,
.market-pulse-marquee .pulse-status.monthly,
.market-pulse-marquee .pulse-status.cached {
  background: rgb(36 212 129 / 0.14);
  color: #8df2bd;
}

.market-pulse-marquee .pulse-status.estimate,
.market-pulse-marquee .pulse-status.fallback {
  background: rgb(251 191 36 / 0.14);
  color: #fde68a;
}

.market-pulse-marquee .pulse-status.proxy,
.market-pulse-marquee .pulse-status.pending,
.market-pulse-marquee .pulse-status.offline,
.market-pulse-marquee .pulse-status.source-offline {
  background: rgb(148 163 184 / 0.16);
  color: #dbe4ef;
}

.market-pulse-ticker > small {
  color: rgb(255 255 255 / 0.54);
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}

.market-pulse-ticker.has-error {
  background: #2b1518;
}

@keyframes marketPulseScroll {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

@media (prefers-reduced-motion: reduce) {
  .market-pulse-marquee > div {
    animation: none;
  }
}

.public-topbar {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 14px;
  padding: 8px clamp(18px, 4vw, 54px) 0;
  color: #6f7682;
  font-size: 12px;
  font-weight: 800;
}

.public-topbar span:first-child {
  margin-right: auto;
}

.public-topbar button,
.public-topbar a {
  border: 0;
  background: transparent;
  color: inherit;
  font-weight: inherit;
  text-decoration: none;
}

.public-topbar a {
  color: var(--nex-red);
  font-weight: 950;
}

.public-header {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 12px clamp(18px, 4vw, 54px);
}

.agent-site-header-wrap .public-header {
  grid-template-columns: auto minmax(0, auto);
  justify-content: space-between;
  min-height: 78px;
}

.agent-site-header-wrap .public-brand span {
  color: #1f252e;
  font-size: 14px;
  font-weight: 950;
  letter-spacing: 0.01em;
}

.public-brand,
.public-nav button,
.public-footer-links button {
  border: 0;
  background: transparent;
  color: inherit;
}

.public-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 0;
  font-weight: 900;
}

.public-logo {
  max-width: 112px;
  max-height: 46px;
  object-fit: contain;
}

.public-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
}

.public-nav button {
  padding: 9px 11px;
  border-radius: 999px;
  color: #3d424b;
  font-weight: 800;
  font-size: 13px;
}

.public-nav button.active,
.public-nav button:hover {
  background: #f2f4f7;
  box-shadow: inset 0 0 0 1px rgb(227 6 19 / 0.18);
  color: #111318;
}

.public-nav button.active {
  background: var(--nex-red);
  color: white;
}

.public-header-actions,
.public-hero-actions,
.public-profile-actions,
.public-agent-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.public-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
  gap: clamp(20px, 4vw, 42px);
  align-items: stretch;
  padding: clamp(34px, 7vw, 88px) clamp(18px, 5vw, 72px) 34px;
}

.public-site-main-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  place-items: center;
  min-height: clamp(430px, 66vh, 640px);
  overflow: hidden;
  padding: 72px 20px 54px;
  color: #fff;
  background:
    radial-gradient(circle at 22% 18%, rgb(255 255 255 / 0.50), transparent 34%),
    linear-gradient(135deg, #f7fbff, #e8f3fa 38%, #d7e9f3),
    #111318;
}

.public-site-main-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgb(0 0 0 / 0.16), rgb(0 0 0 / 0.06) 42%, rgb(0 0 0 / 0.30)),
    radial-gradient(circle at 50% 40%, rgb(0 0 0 / 0.02), rgb(0 0 0 / 0.30) 82%);
}

.public-site-main-hero .public-hero-photo-cycle {
  z-index: 0;
}

.public-site-main-hero .public-hero-photo-cycle span {
  filter: saturate(1.12) contrast(1.03) brightness(1.02);
}

.public-site-main-hero-content {
  position: relative;
  z-index: 2;
  display: grid;
  justify-items: center;
  gap: 16px;
  width: min(940px, 100%);
  text-align: center;
}

.public-main-hero-logo {
  width: min(210px, 54vw);
  max-height: 118px;
  object-fit: contain;
  filter: drop-shadow(0 18px 34px rgb(0 0 0 / 0.46));
}

.public-hero-heading {
  display: grid;
  gap: 8px;
  justify-items: center;
  color: #fff;
}

.public-hero-heading .eyebrow {
  margin: 0;
  color: rgb(255 255 255 / 0.86);
  text-shadow: 0 8px 24px rgb(0 0 0 / 0.28);
}

.public-hero-heading h1 {
  max-width: 780px;
  margin: 0;
  color: #fff;
  font-size: clamp(40px, 6vw, 78px);
  line-height: 0.96;
  letter-spacing: 0;
  text-shadow: 0 18px 42px rgb(0 0 0 / 0.42);
}

.public-hero-heading p {
  max-width: 680px;
  margin: 0;
  color: rgb(255 255 255 / 0.94);
  font-size: clamp(16px, 2.2vw, 23px);
  line-height: 1.35;
  text-shadow: 0 12px 30px rgb(0 0 0 / 0.42);
}

.public-hero-simple-search {
  width: min(900px, 100%);
  display: grid;
  gap: 12px;
  padding: 12px;
  border: 1px solid rgb(255 255 255 / 0.36);
  border-radius: 24px;
  background: rgb(255 255 255 / 0.90);
  box-shadow: 0 24px 70px rgb(0 0 0 / 0.28);
  backdrop-filter: blur(12px);
}

.public-hero-simple-search-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  overflow: visible;
  border-radius: 16px;
  background: #fff;
  border: 1px solid rgb(17 19 24 / 0.07);
}

.public-search-autocomplete {
  position: relative;
  z-index: 45;
  min-width: 0;
  width: 100%;
}

.public-search-autocomplete-menu {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  right: 0;
  z-index: 95;
  display: grid;
  gap: 4px;
  max-height: 340px;
  overflow: auto;
  padding: 8px;
  border: 1px solid rgb(17 19 24 / 0.10);
  border-radius: 14px;
  background: rgb(255 255 255 / 0.98);
  box-shadow: 0 24px 70px rgb(17 19 24 / 0.18);
  backdrop-filter: blur(14px);
}

.public-search-suggestion {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  width: 100%;
  min-height: 54px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #111318;
  padding: 8px 10px;
  text-align: left;
}

.public-search-suggestion:hover {
  background: #f7f9fc;
}

.public-search-suggestion-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: #fff1f2;
  color: var(--nex-red);
}

.public-search-suggestion > span:not(.public-search-suggestion-icon) {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.public-search-suggestion strong {
  overflow: hidden;
  color: #111318;
  font-size: 14px;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.public-search-suggestion small {
  overflow: hidden;
  color: #667085;
  font-size: 12px;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.public-search-suggestion em {
  border: 1px solid rgb(227 6 19 / 0.16);
  border-radius: 999px;
  background: #fff7f7;
  color: var(--nex-red);
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  padding: 4px 7px;
  text-transform: uppercase;
}

.public-search-autocomplete-status {
  color: #667085;
  font-size: 12px;
  font-weight: 850;
  padding: 6px 10px 2px;
}

.public-hero-simple-search-row .public-search-suggestion {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  width: 100%;
  min-width: 0;
  min-height: 54px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #111318;
  padding: 8px 10px;
  justify-content: stretch;
  white-space: normal;
}

.public-hero-simple-search-row .public-search-suggestion:hover {
  background: #f7f9fc;
  color: #111318;
}

.public-hero-simple-search-row .public-search-suggestion svg {
  width: 18px;
  height: 18px;
}

.public-hero-simple-search-row input {
  min-height: 62px;
  width: 100%;
  border: 0;
  padding: 0 24px;
  color: #111318;
  font-size: 16px;
  font-weight: 760;
  outline: none;
}

.public-hero-simple-search-row button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 62px;
  border: 0;
  padding: 0 22px;
  background: var(--nex-red);
  color: #fff;
  font-weight: 950;
  white-space: nowrap;
  line-height: 1.1;
}

.public-hero-simple-search-row button:hover {
  background: #bd0710;
}

.public-hero-simple-search-row button svg {
  display: block;
  width: 22px;
  height: 22px;
  margin: 0;
}

.public-hero-filter-row {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
  gap: 8px;
}

.public-hero-filter-row select,
.public-more-filter-button {
  min-height: 44px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 12px;
  background: #fff;
  color: #111318;
  padding: 0 12px;
  font-size: 13px;
  font-weight: 850;
}

.public-more-filter-button {
  cursor: pointer;
}

.public-hero-action-row,
.public-hero-chip-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}

.public-hero-action-row .btn {
  min-height: 42px;
}

.public-hero-chip-row button {
  min-height: 34px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 999px;
  background: rgb(255 255 255 / 0.88);
  color: #111318;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 900;
  box-shadow: 0 7px 18px rgb(17 19 24 / 0.06);
}

.public-hero-chip-row button:hover,
.public-more-filter-button:hover {
  border-color: rgb(227 6 19 / 0.28);
  color: var(--nex-red);
}

.public-hero-tool-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}

.public-hero-tool-row button {
  min-height: 34px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 999px;
  background: rgb(255 255 255 / 0.78);
  color: #111318;
  padding: 0 13px;
  font-size: 12px;
  font-weight: 900;
}

.public-site-main-hero-content > p {
  margin: 0;
  color: white;
  font-size: clamp(20px, 3.3vw, 30px);
  text-shadow: 0 12px 30px rgb(0 0 0 / 0.42);
}

.public-new-era-band {
  display: grid;
  place-items: center;
  padding: 8px 20px 16px;
  background: linear-gradient(135deg, #e30613, #fa1826);
  color: white;
  text-align: center;
}

.public-new-era-band > div {
  transform: translateY(-3px);
}

.public-new-era-band h1 {
  margin: 0;
  font-size: clamp(20px, 2.7vw, 32px);
  font-weight: 300;
  letter-spacing: 0.12em;
}

.public-new-era-band h2 {
  margin: 4px 0 0;
  font-size: clamp(11px, 1.25vw, 15px);
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.public-path-strip {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  width: min(1120px, calc(100% - 36px));
  margin: -10px auto 14px;
  padding: 10px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 16px;
  background: rgb(255 255 255 / 0.94);
  box-shadow: 0 16px 44px rgb(17 19 24 / 0.08);
  backdrop-filter: blur(14px);
}

.public-path-strip button {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-width: 0;
  min-height: 64px;
  border: 1px solid transparent;
  border-radius: 12px;
  background: transparent;
  color: #111318;
  padding: 9px 11px;
  text-align: left;
}

.public-path-strip button:hover {
  background: #f7f8fb;
  border-color: rgb(227 6 19 / 0.16);
}

.public-path-strip svg {
  color: var(--nex-red);
}

.public-path-strip span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.public-path-strip strong {
  color: #111318;
  font-size: 14px;
}

.public-path-strip small {
  overflow: hidden;
  color: #68717e;
  font-size: 12px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.public-current-site-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(300px, 0.9fr);
  gap: 22px;
  align-items: center;
}

.public-current-site-intro h2 {
  margin: 0;
  color: #111318;
  font-size: clamp(28px, 4.4vw, 48px);
  line-height: 1.04;
}

.public-current-site-intro p:not(.eyebrow) {
  color: #596271;
  line-height: 1.7;
  font-size: 16px;
}

.public-sync-proof-panel {
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
  gap: 14px;
  align-items: stretch;
  padding: 0;
}

.public-sync-proof-copy,
.public-sync-proof-grid article {
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 18px;
  background: rgb(255 255 255 / 0.96);
  box-shadow: 0 14px 40px rgb(17 19 24 / 0.055);
}

.public-sync-proof-copy {
  display: grid;
  align-content: center;
  gap: 12px;
  padding: clamp(20px, 3vw, 30px);
  background:
    radial-gradient(circle at 84% 16%, rgb(227 6 19 / 0.12), transparent 34%),
    linear-gradient(135deg, #ffffff, #f7f9fc);
}

.public-sync-proof-copy h2 {
  margin: 0;
  color: #111318;
  font-size: clamp(26px, 3.6vw, 42px);
  line-height: 1.06;
}

.public-sync-proof-copy p {
  margin: 0;
  color: #5f6874;
  line-height: 1.7;
}

.public-sync-proof-copy .btn {
  width: fit-content;
}

.public-sync-proof-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.public-sync-proof-grid article {
  display: grid;
  align-content: space-between;
  gap: 10px;
  min-height: 168px;
  padding: 16px;
}

.public-sync-proof-grid article span {
  color: var(--nex-red);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.public-sync-proof-grid article strong {
  color: #111318;
  font-size: clamp(23px, 3vw, 34px);
  line-height: 1;
}

.public-sync-proof-grid article small {
  color: #66707d;
  line-height: 1.45;
  font-weight: 750;
}

.public-hero-copy {
  position: relative;
  overflow: hidden;
  min-height: 560px;
  padding: clamp(28px, 5vw, 58px);
  border-radius: 30px;
  background:
    linear-gradient(135deg, rgb(255 255 255 / 0.9), rgb(255 255 255 / 0.72)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 760'%3E%3Cdefs%3E%3ClinearGradient id='sky' x1='0' x2='1' y1='0' y2='1'%3E%3Cstop offset='0' stop-color='%23ffffff'/%3E%3Cstop offset='1' stop-color='%23eef2f7'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect width='1200' height='760' fill='url(%23sky)'/%3E%3Cpath d='M96 594h1008v76H96z' fill='%23f3f5f8'/%3E%3Cpath d='M212 506V326l386-218 404 218v180' fill='none' stroke='%23111318' stroke-width='38' stroke-linejoin='round' opacity='.11'/%3E%3Cpath d='M318 506V370h170v136M692 506V370h170v136' fill='none' stroke='%23111318' stroke-width='24' opacity='.08'/%3E%3Ccircle cx='1010' cy='166' r='74' fill='%23e30613' opacity='.13'/%3E%3Ccircle cx='220' cy='160' r='122' fill='%23c9a24a' opacity='.10'/%3E%3C/svg%3E");
  background-size: cover;
  background-position: center;
  color: #111318;
  border: 1px solid rgb(17 19 24 / 0.08);
  box-shadow: 0 26px 80px rgb(17 19 24 / 0.10);
}

.public-home-search {
  display: grid;
  grid-template-columns: minmax(280px, 1.15fr) minmax(0, 1.85fr);
  gap: 10px;
  max-width: 1120px;
  margin-top: 26px;
  padding: 10px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 999px;
  background: rgb(255 255 255 / 0.96);
  color: #111318;
  box-shadow: 0 24px 72px rgb(17 19 24 / 0.10);
}

.public-search-main-field {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 54px;
  padding: 0 16px;
  border-radius: 999px;
  background: #f7f8fb;
  border: 1px solid rgb(17 19 24 / 0.08);
}

.public-search-main-field svg {
  flex: 0 0 auto;
  color: var(--nex-red);
}

.public-home-search input,
.public-home-search select {
  width: 100%;
  min-height: 54px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  padding: 0 10px;
  color: #111318;
  font-weight: 750;
}

.public-home-search select {
  border: 1px solid rgb(17 19 24 / 0.08);
  background: #fff;
  padding: 0 12px;
}

.public-home-search .btn {
  min-height: 54px;
  border-radius: 999px;
  white-space: nowrap;
}

.public-home-search-row {
  display: grid;
  grid-template-columns: 1.1fr 1fr 1fr 0.8fr 0.8fr auto;
  gap: 8px;
  min-width: 0;
}

.public-more-options {
  grid-column: 1 / -1;
  justify-self: center;
  border: 0;
  background: transparent;
  color: #4b5563;
  font-weight: 900;
  text-decoration: underline;
}

.public-side-cta-stack {
  display: grid;
  gap: 14px;
}

.public-feature-cta {
  display: grid;
  gap: 10px;
  padding: 22px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 24px;
  text-align: left;
  background: #fff;
  box-shadow: 0 18px 52px rgb(17 19 24 / 0.08);
}

.public-feature-cta.finance {
  background: linear-gradient(135deg, #ffffff, #f6f7fa);
  color: #111318;
}

.public-feature-cta.value {
  background: linear-gradient(135deg, #fff5f5, #ffffff);
  color: #111318;
  border-color: rgb(227 6 19 / 0.16);
}

.public-feature-cta strong {
  font-size: 22px;
}

.public-feature-cta span {
  color: #68707c;
  line-height: 1.55;
}

.public-hero-copy h1,
.public-page-head h1,
.public-agent-hero h1,
.public-detail-hero h1 {
  max-width: 980px;
  margin: 0;
  font-size: clamp(38px, 6vw, 76px);
  line-height: 0.98;
  letter-spacing: 0;
}

.public-hero-copy p,
.public-page-head p,
.public-split-section p {
  max-width: 760px;
  color: #5f6874;
  font-size: 17px;
  line-height: 1.7;
}

.public-status-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.public-status-row span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 11px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 999px;
  background: rgb(255 255 255 / 0.82);
  color: #2f3641;
  font-weight: 800;
  font-size: 12px;
}

.public-status-row i {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #24d481;
  box-shadow: 0 0 0 5px rgb(36 212 129 / 0.15);
}

.public-tech-console {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
  gap: 14px;
  align-items: stretch;
  padding: 0;
}

.public-tech-console-copy,
.public-signal-grid article {
  position: relative;
  overflow: hidden;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 18px;
  background:
    radial-gradient(circle at 88% 12%, rgb(227 6 19 / 0.12), transparent 32%),
    linear-gradient(135deg, #ffffff, #f7f9fc);
  box-shadow: 0 14px 38px rgb(17 19 24 / 0.055);
}

.public-tech-console-copy {
  display: grid;
  align-content: center;
  gap: 14px;
  min-height: 260px;
  padding: clamp(20px, 3vw, 30px);
}

.public-tech-console-copy > span,
.public-agent-site-status {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-radius: 999px;
  background: #111318;
  color: #fff;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.public-tech-console-copy > span i,
.public-agent-site-status i,
.public-agent-card-top > span i {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #24d481;
  box-shadow: 0 0 0 5px rgb(36 212 129 / 0.15);
}

.public-tech-console-copy h2 {
  margin: 0;
  color: #111318;
  font-size: clamp(26px, 3.7vw, 42px);
  line-height: 1.06;
}

.public-tech-console-copy p {
  margin: 0;
  color: #5d6673;
  font-size: 15px;
  line-height: 1.7;
}

.public-signal-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.public-signal-grid article {
  display: grid;
  align-content: space-between;
  gap: 10px;
  min-height: 128px;
  padding: 16px;
}

.public-signal-grid article::before {
  content: "";
  width: 44px;
  height: 5px;
  border-radius: 999px;
  background: var(--nex-red);
}

.public-signal-grid strong {
  color: #111318;
  font-size: 18px;
}

.public-signal-grid span {
  color: #66707d;
  line-height: 1.55;
}

.public-agent-site-showcase {
  padding-top: 18px;
}

.public-agent-site-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.public-agent-site-card {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: left;
  color: #111318;
}

.public-agent-site-card:hover .public-agent-site-preview {
  transform: translateY(-2px);
  box-shadow: 0 18px 46px rgb(17 19 24 / 0.10);
}

.public-agent-site-preview {
  position: relative;
  overflow: hidden;
  display: grid;
  gap: 12px;
  min-height: 220px;
  padding: 14px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 16px;
  background:
    linear-gradient(145deg, rgb(255 255 255 / 0.94), rgb(255 255 255 / 0.82)),
    radial-gradient(circle at 10% 18%, color-mix(in srgb, var(--agent-site-accent, #e30613) 18%, transparent), transparent 34%);
  box-shadow: 0 12px 34px rgb(17 19 24 / 0.06);
  transition: transform 160ms ease, box-shadow 160ms ease;
}

.public-agent-site-preview::after {
  content: "";
  position: absolute;
  inset: auto 14px 14px 14px;
  height: 4px;
  border-radius: 999px;
  background: color-mix(in srgb, var(--agent-site-accent, #e30613) 84%, #111318);
}

.public-agent-site-topbar {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 8px 10px;
  border-radius: 10px;
  background: #111318;
  color: #fff;
}

.public-agent-site-topbar span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 12px;
  font-weight: 850;
}

.public-agent-site-topbar em {
  flex: 0 0 auto;
  color: #24d481;
  font-style: normal;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.public-agent-site-body {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}

.public-agent-site-body strong {
  display: block;
  color: #111318;
  font-size: 18px;
  line-height: 1.1;
}

.public-agent-site-body small,
.public-agent-site-copy small {
  color: #69717e;
  line-height: 1.45;
}

.public-agent-site-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.public-agent-site-tags span {
  padding: 7px 9px;
  border-radius: 999px;
  background: #f2f4f7;
  color: #3c4350;
  font-size: 12px;
  font-weight: 850;
}

.public-agent-site-copy {
  display: grid;
  gap: 4px;
  padding: 0 4px;
}

.public-agent-site-copy strong {
  color: #111318;
  font-size: 16px;
}

.public-agent-site-copy span {
  color: var(--nex-red);
  font-weight: 900;
}

.public-seo-intent-row,
.public-seo-link-row,
.public-brokerage-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-top: 22px;
}

.public-seo-intent-row span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border: 1px solid rgb(227 6 19 / 0.14);
  border-radius: 999px;
  background: #fff;
  color: #1f2630;
  font-size: 13px;
  font-weight: 900;
}

.public-seo-intent-row svg {
  color: var(--nex-red);
}

.public-search-seo-page {
  width: min(1220px, calc(100% - 36px));
}

.public-seo-search-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.42fr);
  gap: 18px;
  align-items: stretch;
  max-width: none;
  padding: clamp(24px, 4vw, 44px);
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 24px;
  background:
    radial-gradient(circle at 88% 10%, rgb(227 6 19 / 0.10), transparent 28%),
    linear-gradient(135deg, #ffffff, #f8fafc);
  box-shadow: 0 18px 54px rgb(17 19 24 / 0.07);
}

.public-seo-search-hero h1 {
  max-width: 820px;
  margin: 0;
  font-size: clamp(34px, 5vw, 62px);
  line-height: 1;
  letter-spacing: 0;
}

.public-seo-search-hero p {
  max-width: 720px;
  color: #5d6672;
  line-height: 1.65;
}

.public-seo-filter-bar {
  position: sticky;
  top: 76px;
  z-index: 25;
  display: grid;
  grid-template-columns: minmax(220px, 1.3fr) repeat(5, minmax(110px, 0.7fr)) auto;
  gap: 8px;
  margin: 18px 0;
  padding: 10px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 16px;
  background: rgb(255 255 255 / 0.96);
  box-shadow: 0 14px 38px rgb(17 19 24 / 0.08);
  backdrop-filter: blur(12px);
}

.public-seo-filter-bar input,
.public-seo-filter-bar select {
  min-height: 44px;
  width: 100%;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 12px;
  background: #fff;
  color: #111318;
  padding: 0 12px;
  font-weight: 800;
}

.public-seo-fallback-panel,
.public-related-searches {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  margin-top: 18px;
  padding: 18px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 18px;
  background: linear-gradient(135deg, #ffffff, #f8fafc);
  box-shadow: 0 12px 32px rgb(17 19 24 / 0.045);
}

.public-seo-fallback-panel svg {
  color: var(--nex-red);
}

.public-seo-fallback-panel div,
.public-related-searches > div:first-child {
  display: grid;
  gap: 6px;
}

.public-seo-fallback-panel strong,
.public-related-searches h2 {
  margin: 0;
  color: #111318;
}

.public-seo-fallback-panel span {
  color: #5d6672;
  line-height: 1.5;
}

.public-related-searches > div:last-child {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.public-related-searches button {
  min-height: 36px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 999px;
  background: #fff;
  color: #111318;
  padding: 0 13px;
  font-weight: 900;
}

.public-brokerage-seo-page .public-page-head {
  max-width: none;
  padding: clamp(28px, 5vw, 56px);
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 28px;
  background:
    radial-gradient(circle at 88% 12%, rgb(227 6 19 / 0.10), transparent 30%),
    linear-gradient(135deg, #fff8f8, #ffffff 44%, #f7f9fc);
  box-shadow: 0 24px 72px rgb(17 19 24 / 0.08);
}

.public-brokerage-hero-actions .btn {
  min-height: 48px;
}

.public-recruiting-highlight-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 24px;
}

.public-recruiting-highlight-row article {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 16px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 18px;
  background: rgb(255 255 255 / 0.82);
}

.public-recruiting-highlight-row svg {
  color: var(--nex-red);
}

.public-recruiting-highlight-row strong {
  color: #111318;
  font-size: 17px;
}

.public-recruiting-highlight-row span {
  color: #66707d;
  line-height: 1.5;
  font-size: 14px;
}

.public-hero-v2 {
  align-items: start;
}

.public-search-hero {
  grid-template-columns: 1fr;
  padding-bottom: 18px;
}

.public-search-hero .public-hero-copy {
  min-height: 430px;
  display: grid;
  align-content: center;
  background:
    linear-gradient(135deg, #ffffff, #f7f9fc),
    radial-gradient(circle at 82% 18%, rgb(227 6 19 / 0.14), transparent 28%),
    radial-gradient(circle at 16% 22%, rgb(17 19 24 / 0.08), transparent 30%);
  background-size: cover;
}

.public-search-hero .public-hero-copy::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgb(255 255 255 / 0.96) 0%, rgb(255 255 255 / 0.88) 48%, rgb(255 255 255 / 0.64) 100%),
    linear-gradient(180deg, rgb(255 255 255 / 0.18), rgb(255 255 255 / 0.78));
}

.public-search-hero .public-hero-copy::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: 2;
  height: 46%;
  background: linear-gradient(0deg, rgb(255 255 255 / 0.92), transparent);
  pointer-events: none;
}

.public-hero-photo-cycle {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgb(5 7 11 / 0.18), rgb(227 6 19 / 0.10)),
    url("https://images.unsplash.com/photo-1507525428034-b723cf961d3e?auto=format&fit=crop&w=1400&q=72") center / cover no-repeat,
    #eef6fb;
}

.public-hero-photo-cycle::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background:
    radial-gradient(circle at 70% 18%, rgb(227 6 19 / 0.16), transparent 32%),
    linear-gradient(90deg, rgb(5 7 11 / 0.18), transparent 48%, rgb(227 6 19 / 0.08));
  mix-blend-mode: soft-light;
}

.public-hero-photo-cycle span {
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 0;
  background-size: cover;
  background-position: center;
  transform: scale(1.035);
  animation: publicHeroPhotoFade 48s infinite ease-in-out;
  filter: saturate(1.08) contrast(1.02);
}

.public-hero-photo-cycle span:first-child {
  animation-name: publicFirstHeroPhotoFade;
  opacity: 1;
}

.public-search-hero .public-hero-copy > *:not(.public-hero-photo-cycle) {
  position: relative;
  z-index: 3;
}

@keyframes publicHeroPhotoFade {
  0% {
    opacity: 0;
    transform: scale(1.035);
  }

  4% {
    opacity: 1;
    transform: scale(1.04);
  }

  38% {
    opacity: 1;
    transform: scale(1.065);
  }

  44% {
    opacity: 0;
    transform: scale(1.075);
  }

  100% {
    opacity: 0;
    transform: scale(1.08);
  }
}

@keyframes publicFirstHeroPhotoFade {
  0%,
  38% {
    opacity: 1;
    transform: scale(1.035);
  }

  44%,
  92% {
    opacity: 0;
    transform: scale(1.08);
  }

  100% {
    opacity: 1;
    transform: scale(1.035);
  }
}

.public-hero-panel {
  min-width: 0;
}

.public-device-frame,
.public-ai-assistant,
.public-cma-card {
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 28px;
  background: rgb(255 255 255 / 0.96);
  box-shadow: 0 24px 70px rgb(17 19 24 / 0.10);
}

.public-device-frame {
  display: grid;
  gap: 14px;
  align-content: start;
  padding: 16px;
}

.public-device-top,
.public-ticker-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.public-device-top span,
.public-ticker-head span,
.public-live-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #3f4651;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.public-device-top i,
.public-ticker-head i,
.public-live-chip i {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #24d481;
  box-shadow: 0 0 0 5px rgb(36 212 129 / 0.14);
}

.public-live-chip.red i {
  background: var(--nex-red);
  box-shadow: 0 0 0 5px rgb(227 6 19 / 0.12);
}

.public-device-photo {
  display: grid;
  place-items: center;
  overflow: hidden;
  min-height: 310px;
  border-radius: 22px;
  background: linear-gradient(135deg, #eef1f5, #ffffff);
}

.public-device-photo img {
  width: 100%;
  height: 100%;
  min-height: 310px;
  object-fit: cover;
  display: block;
}

.public-device-photo svg {
  color: var(--nex-red);
}

.public-device-details {
  display: grid;
  gap: 5px;
  padding: 2px 4px;
}

.public-device-details span {
  color: var(--nex-red);
  font-weight: 950;
}

.public-device-details strong {
  font-size: 23px;
}

.public-device-details small {
  color: #66707d;
  line-height: 1.45;
}

.public-idx-map-section {
  padding-top: 8px;
}

.public-idx-map-shell {
  display: grid;
  grid-template-columns: minmax(320px, 0.82fr) minmax(0, 1.18fr);
  gap: 14px;
  align-items: stretch;
  padding: 14px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 18px;
  background: linear-gradient(135deg, #ffffff, #f6f8fb);
  box-shadow: 0 16px 48px rgb(17 19 24 / 0.07);
}

.public-idx-map-copy {
  display: grid;
  align-content: center;
  gap: 12px;
  padding: clamp(8px, 1.6vw, 16px);
}

.public-idx-map-copy h2 {
  margin: 0;
  color: #111318;
  font-size: clamp(25px, 3.5vw, 42px);
  line-height: 1.06;
}

.public-idx-map-copy p {
  margin: 0;
  color: #596271;
  line-height: 1.65;
}

.public-feed-grid {
  display: grid;
  gap: 10px;
}

.public-feed-card {
  display: grid;
  gap: 5px;
  padding: 14px;
  border: 1px solid rgb(17 19 24 / 0.075);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 14px 34px rgb(17 19 24 / 0.055);
}

.public-feed-card span {
  color: var(--nex-red);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.public-feed-card strong {
  color: #111318;
}

.public-feed-card small {
  color: #67707d;
  line-height: 1.4;
}

.public-map-console {
  display: grid;
  gap: 14px;
  padding: 14px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 24px;
  background: #111318;
  color: white;
}

.public-map-toolbar,
.public-map-bottom,
.public-map-feed-note {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.public-map-toolbar span,
.public-map-feed-note {
  color: rgb(255 255 255 / 0.78);
  font-weight: 900;
}

.public-map-toolbar span i {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 8px;
  border-radius: 999px;
  background: #24d481;
  box-shadow: 0 0 0 5px rgb(36 212 129 / 0.16);
}

.public-live-map {
  position: relative;
  overflow: hidden;
  min-height: 430px;
  border-radius: 22px;
  background:
    radial-gradient(circle at 30% 42%, rgb(227 6 19 / 0.28), transparent 8%),
    radial-gradient(circle at 72% 58%, rgb(227 6 19 / 0.18), transparent 10%),
    linear-gradient(145deg, #242a33, #101318);
  border: 1px solid rgb(255 255 255 / 0.12);
}

.public-map-gridlines {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgb(255 255 255 / 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgb(255 255 255 / 0.055) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: radial-gradient(circle at center, black, transparent 78%);
}

.public-map-region {
  position: absolute;
  padding: 8px 10px;
  border-radius: 999px;
  background: rgb(255 255 255 / 0.09);
  color: rgb(255 255 255 / 0.72);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.public-map-region.tampa {
  left: 14%;
  top: 18%;
}

.public-map-region.orlando {
  right: 26%;
  top: 26%;
}

.public-map-region.miami {
  right: 12%;
  bottom: 16%;
}

.public-map-pin {
  position: absolute;
  transform: translate(-50%, -50%);
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid rgb(255 255 255 / 0.22);
  border-radius: 999px;
  background: #fff;
  color: #111318;
  font-size: 12px;
  font-weight: 950;
  box-shadow: 0 14px 34px rgb(0 0 0 / 0.28);
}

.public-map-pin svg {
  color: var(--nex-red);
}

.public-map-feed-note {
  justify-content: flex-start;
  padding: 10px 12px;
  border-radius: 16px;
  background: rgb(255 255 255 / 0.08);
}

.public-market-ticker {
  display: grid;
  gap: 10px;
  padding: 14px;
  border-radius: 20px;
  background: #111318;
  color: white;
}

.public-ticker-head small,
.public-ticker-note {
  color: rgb(255 255 255 / 0.64);
  line-height: 1.45;
}

.public-ticker-track {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding-bottom: 4px;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}

.public-ticker-track::-webkit-scrollbar {
  display: none;
}

.public-ticker-track span {
  flex: 0 0 auto;
  padding: 9px 11px;
  border-radius: 999px;
  background: rgb(255 255 255 / 0.09);
  color: rgb(255 255 255 / 0.72);
  font-size: 12px;
  font-weight: 850;
}

.public-ticker-track strong {
  color: white;
}

.public-intelligence-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
  gap: 18px;
  align-items: start;
}

.public-ai-assistant,
.public-cma-card {
  display: grid;
  gap: 12px;
  padding: 16px;
}

.public-ai-assistant form,
.public-cma-card form {
  display: grid;
  gap: 10px;
}

.public-ai-assistant textarea,
.public-cma-card input,
.public-ai-assistant input {
  width: 100%;
  min-height: 46px;
  border: 1px solid rgb(17 19 24 / 0.12);
  border-radius: 12px;
  background: white;
  padding: 11px 13px;
  color: #111318;
  font-weight: 750;
}

.public-ai-assistant textarea {
  resize: vertical;
  line-height: 1.55;
}

.public-widget-head {
  display: grid;
  gap: 8px;
}

.public-widget-head h2 {
  margin: 0;
  font-size: clamp(22px, 2.8vw, 30px);
}

.public-widget-head p {
  margin: 0;
  color: #66707d;
  line-height: 1.55;
}

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

.public-prompt-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.public-prompt-row button {
  border: 1px solid rgb(17 19 24 / 0.1);
  border-radius: 999px;
  background: #f7f8fa;
  color: #2d333c;
  padding: 8px 10px;
  font-size: 12px;
  font-weight: 850;
}

.public-ai-reply,
.public-cma-result {
  display: grid;
  gap: 8px;
  padding: 16px;
  border-radius: 18px;
  background: linear-gradient(135deg, #f7f9fc, #ffffff);
  border: 1px solid rgb(17 19 24 / 0.08);
}

.public-ai-reply p {
  margin: 0;
  color: #3f4651;
  line-height: 1.55;
}

.public-ai-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.public-ai-facts span {
  padding: 7px 9px;
  border-radius: 999px;
  background: #fff;
  color: #3f4651;
  border: 1px solid rgb(17 19 24 / 0.08);
  font-size: 12px;
  font-weight: 850;
}

.public-cma-result span {
  color: var(--nex-red);
  font-weight: 950;
  text-transform: uppercase;
  font-size: 12px;
}

.public-cma-result strong {
  font-size: clamp(24px, 3vw, 34px);
}

.public-cma-result small {
  color: #66707d;
  line-height: 1.5;
}

.public-section,
.public-page,
.public-detail-page,
.public-agent-profile,
.public-split-section {
  width: min(1140px, calc(100% - 36px));
  margin: 0 auto;
  padding: 24px 0;
}

.public-card-grid,
.public-listing-grid,
.public-agent-grid,
.public-benefit-grid,
.public-mini-grid {
  display: grid;
  gap: 14px;
}

.public-card-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.public-action-card,
.public-listing-card,
.public-agent-card,
.public-lead-form,
.public-search-panel,
.public-map-placeholder,
.public-detail-copy,
.public-benefit-grid article {
  border: 1px solid rgb(17 19 24 / 0.075);
  border-radius: 14px;
  background: rgb(255 255 255 / 0.96);
  box-shadow: 0 10px 28px rgb(17 19 24 / 0.045);
}

.public-action-card {
  display: grid;
  gap: 10px;
  padding: 16px;
  text-align: left;
  transition: transform 160ms ease, box-shadow 160ms ease;
}

.public-action-card.static {
  border: 1px solid rgb(17 19 24 / 0.075);
  color: #111318;
}

.public-action-card:hover,
.public-action-card.static:hover,
.public-listing-card:hover,
.public-agent-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 44px rgb(17 19 24 / 0.075);
}

.public-action-card svg,
.public-benefit-grid svg {
  color: var(--nex-red);
}

.public-action-card strong,
.public-listing-body strong,
.public-agent-card h3 {
  font-size: 18px;
}

.public-action-card span,
.public-listing-body p,
.public-agent-card p,
.public-agent-card small {
  color: #69707b;
  line-height: 1.55;
}

.public-market-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.public-market-card-grid button {
  display: grid;
  gap: 9px;
  min-height: 154px;
  padding: 18px;
  border: 1px solid rgb(17 19 24 / 0.075);
  border-radius: 16px;
  background:
    radial-gradient(circle at 90% 15%, rgb(227 6 19 / 0.10), transparent 28%),
    #fff;
  color: #111318;
  text-align: left;
  box-shadow: 0 12px 28px rgb(17 19 24 / 0.045);
  transition: transform 160ms ease, box-shadow 160ms ease;
}

.public-market-card-grid button:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 42px rgb(17 19 24 / 0.08);
}

.public-market-card-grid strong {
  font-size: 18px;
}

.public-market-card-grid span {
  color: #5f6874;
  line-height: 1.45;
}

.public-market-card-grid em {
  width: fit-content;
  margin-top: auto;
  color: var(--nex-red);
  font-style: normal;
  font-weight: 950;
}

.public-county-carousel-section {
  display: grid;
  gap: 24px;
  padding-top: 22px;
  padding-bottom: 18px;
}

.public-county-carousel-intro {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
}

.public-county-carousel-intro h2 {
  max-width: 900px;
  margin: 0;
  color: #111318;
  font-size: clamp(34px, 5vw, 58px);
  line-height: 1.02;
  letter-spacing: 0;
}

.public-county-carousel-intro small {
  display: block;
  max-width: 780px;
  margin-top: 8px;
  color: #5e6875;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.5;
}

.public-county-carousel-stack {
  display: grid;
  gap: 30px;
}

.public-county-carousel-row {
  display: grid;
  gap: 12px;
  min-width: 0;
  border-bottom: 1px solid rgb(17 19 24 / 0.08);
  padding-bottom: 24px;
}

.public-county-carousel-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  min-width: 0;
}

.public-county-carousel-heading span {
  color: #77808d;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.public-county-carousel-heading h3 {
  margin: 4px 0 3px;
  color: #111318;
  font-size: clamp(22px, 3vw, 32px);
  line-height: 1.08;
  letter-spacing: 0;
}

.public-county-carousel-heading p {
  margin: 0;
  color: #5f6874;
  font-size: 14px;
  font-weight: 750;
  line-height: 1.45;
}

.public-county-carousel-actions {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 8px;
}

.public-county-carousel-actions button {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border: 1px solid rgb(17 19 24 / 0.12);
  background: #fff;
  color: #111318;
  font-size: 12px;
  font-weight: 950;
}

.public-county-carousel-link {
  padding: 0 12px;
}

.public-county-carousel-actions button:hover {
  border-color: rgb(227 6 19 / 0.24);
  color: var(--nex-red);
}

.public-county-carousel-track {
  position: relative;
  display: block;
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  padding: 4px 0 14px;
  contain: layout paint;
}

.public-county-carousel-track::before,
.public-county-carousel-track::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 2;
  width: min(72px, 12vw);
  pointer-events: none;
}

.public-county-carousel-track::before {
  left: 0;
  background: linear-gradient(90deg, #f5f6f8, rgb(245 246 248 / 0));
}

.public-county-carousel-track::after {
  right: 0;
  background: linear-gradient(270deg, #f5f6f8, rgb(245 246 248 / 0));
}

.public-county-carousel-track.no-cycle::before,
.public-county-carousel-track.no-cycle::after {
  display: none;
}

.public-county-carousel-strip {
  align-items: stretch;
  display: flex;
  min-width: max-content;
  width: max-content;
  gap: 16px;
  animation: publicCountyCarousel var(--county-carousel-duration, 70s) linear infinite;
  animation-delay: var(--county-carousel-delay, 0s);
  will-change: transform;
}

.public-county-carousel-track.no-cycle .public-county-carousel-strip {
  animation: none;
}

@keyframes publicCountyCarousel {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(calc(-50% - 8px));
  }
}

.public-county-carousel-card {
  flex: 0 0 clamp(270px, 28vw, 360px);
  max-width: clamp(270px, 28vw, 360px);
  min-width: 0;
}

.public-county-carousel-card .public-listing-card {
  width: 100%;
  height: 100%;
  margin: 0;
}

.public-county-carousel-empty {
  display: grid;
  grid-auto-columns: unset;
  width: min(420px, 86vw);
  gap: 9px;
  align-content: center;
  min-height: 260px;
  border: 1px dashed rgb(17 19 24 / 0.18);
  background: #fff;
  color: #4b5563;
  padding: 22px;
}

.public-county-carousel-empty svg {
  color: var(--nex-red);
}

.public-county-carousel-empty strong {
  color: #111318;
  font-size: 18px;
  font-weight: 950;
}

.public-county-carousel-empty span {
  line-height: 1.5;
}

.public-county-carousel-empty button {
  width: fit-content;
  min-height: 38px;
  border: 1px solid rgb(227 6 19 / 0.22);
  background: rgb(227 6 19 / 0.07);
  color: var(--nex-red);
  padding: 0 12px;
  font-size: 12px;
  font-weight: 950;
}

.public-search-category-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 12px;
}

.public-search-category-grid button {
  display: grid;
  gap: 10px;
  min-height: 148px;
  padding: 18px;
  border: 1px solid rgb(17 19 24 / 0.075);
  border-radius: 16px;
  background:
    radial-gradient(circle at 88% 12%, rgb(227 6 19 / 0.09), transparent 30%),
    linear-gradient(135deg, #ffffff, #f8fafc);
  color: #111318;
  text-align: left;
  box-shadow: 0 12px 30px rgb(17 19 24 / 0.045);
  transition: transform 160ms ease, box-shadow 160ms ease;
}

.public-search-category-grid button:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 44px rgb(17 19 24 / 0.08);
}

.public-search-category-grid svg {
  color: var(--nex-red);
}

.public-search-category-grid strong {
  font-size: 16px;
}

.public-search-category-grid span {
  color: #5f6976;
  line-height: 1.45;
  font-size: 13px;
}

.public-consumer-paths,
.public-home-lead-capture {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  align-items: stretch;
}

.public-consumer-paths article,
.public-home-lead-capture > article {
  display: grid;
  gap: 14px;
  padding: 24px;
  border: 1px solid rgb(17 19 24 / 0.075);
  border-radius: 18px;
  background:
    linear-gradient(135deg, #ffffff, #f8fafc);
  box-shadow: 0 14px 38px rgb(17 19 24 / 0.05);
}

.public-consumer-paths article > span {
  display: inline-flex;
  width: fit-content;
  gap: 8px;
  align-items: center;
  color: var(--nex-red);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.public-consumer-paths h2,
.public-home-lead-capture h2 {
  margin: 0;
  font-size: clamp(25px, 3vw, 36px);
  line-height: 1.05;
}

.public-consumer-paths article > div {
  display: grid;
  gap: 8px;
}

.public-consumer-paths p {
  display: flex;
  gap: 10px;
  align-items: center;
  margin: 0;
  color: #505a66;
  font-weight: 780;
}

.public-consumer-paths em {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: rgb(227 6 19 / 0.10);
  color: var(--nex-red);
  font-size: 12px;
  font-style: normal;
  font-weight: 950;
}

.public-home-lead-capture {
  align-items: start;
}

.public-home-lead-capture > article p {
  margin: 0;
  color: #5c6673;
  line-height: 1.6;
}

.public-agent-recruiting-cta {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  padding: 22px;
  border: 1px solid rgb(17 19 24 / 0.075);
  border-radius: 18px;
  background:
    radial-gradient(circle at 94% 18%, rgb(227 6 19 / 0.10), transparent 26%),
    #fff;
  box-shadow: 0 14px 34px rgb(17 19 24 / 0.045);
}

.public-agent-recruiting-cta h2,
.public-agent-recruiting-cta p {
  margin: 0;
}

.public-agent-recruiting-cta h2 {
  font-size: clamp(24px, 3vw, 34px);
}

.public-agent-recruiting-cta p {
  max-width: 680px;
  color: #5e6875;
  line-height: 1.55;
}

.public-section-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: end;
  margin-bottom: 14px;
}

.public-section-head h2,
.public-split-section h2,
.public-detail-copy h2 {
  margin: 0;
  font-size: clamp(24px, 3.5vw, 38px);
}

.public-section-head.compact {
  margin-top: 24px;
  align-items: center;
}

.public-section-head.compact h2 {
  font-size: clamp(22px, 3vw, 32px);
}

.public-section-head.compact small {
  max-width: 420px;
  color: #67707c;
  line-height: 1.5;
  text-align: right;
}

.public-listing-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

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

.public-results-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  margin: 20px 0 14px;
  padding: 16px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 16px;
  background:
    radial-gradient(circle at 90% 12%, rgb(227 6 19 / 0.10), transparent 26%),
    linear-gradient(135deg, #ffffff, #f8fafc);
  box-shadow: 0 12px 34px rgb(17 19 24 / 0.055);
}

.public-results-head h2 {
  margin: 0;
  font-size: clamp(23px, 3vw, 34px);
}

.public-results-head small {
  display: block;
  max-width: 560px;
  color: #64707d;
  line-height: 1.45;
}

.public-results-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.public-view-toggle {
  display: inline-flex;
  gap: 4px;
  padding: 4px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 999px;
  background: #fff;
}

.public-view-toggle button {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  gap: 6px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #52606d;
  padding: 0 10px;
  font-size: 12px;
  font-weight: 900;
}

.public-view-toggle button.active {
  background: #111318;
  color: #fff;
}

.public-view-toggle-desktop {
  align-self: end;
}

.public-listing-card {
  overflow: hidden;
}

.public-listing-grid.list-view {
  grid-template-columns: 1fr;
}

.public-listing-grid.list-view .public-listing-card {
  display: grid;
  grid-template-columns: minmax(220px, 0.38fr) minmax(0, 1fr);
  align-items: stretch;
}

.public-listing-grid.list-view .public-listing-photo {
  height: 100%;
  min-height: 230px;
  aspect-ratio: auto;
}

.public-listing-photo {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 1.45;
  overflow: hidden;
  border: 0;
  background: #f2f4f7;
  padding: 0;
}

.public-listing-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 180ms ease;
}

.public-listing-card:hover .public-listing-photo img {
  transform: scale(1.04);
}

.public-listing-photo span,
.public-badge {
  display: inline-flex;
  padding: 8px 11px;
  border-radius: 999px;
  background: var(--nex-red);
  color: white;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.public-listing-photo span {
  position: absolute;
  left: 12px;
  top: 12px;
}

.public-listing-body {
  display: grid;
  gap: 8px;
  padding: 14px;
}

.public-listing-body h3 {
  margin: 0;
}

.public-listing-attribution {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 12px;
  background: linear-gradient(135deg, #ffffff, #f7f9fb);
}

.public-listing-attribution.compact {
  margin-top: 2px;
  padding: 7px 0 0;
  gap: 4px 8px;
  border: 0;
  border-top: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 0;
  background: transparent;
}

.public-listing-attribution span,
.public-listing-attribution small {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 5px 8px;
  border-radius: 999px;
  background: #eef1f5;
  color: #38404b;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.25;
}

.public-listing-attribution span:first-child {
  background: rgb(227 6 19 / 0.09);
  color: #9c0710;
}

.public-listing-attribution.compact span,
.public-listing-attribution.compact small,
.public-listing-attribution.compact span:first-child {
  min-height: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: #8b949f;
  font-size: 9px;
  font-weight: 650;
  letter-spacing: 0;
}

.public-listing-attribution small {
  width: 100%;
  border-radius: 10px;
  background: rgb(17 19 24 / 0.05);
  color: #5a6470;
  font-weight: 750;
}

.public-listing-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.public-listing-stats span {
  padding: 7px 9px;
  border-radius: 999px;
  background: #f1f2f4;
  color: #2c3139;
  font-size: 12px;
  font-weight: 800;
}

.public-listing-card-actions {
  display: grid;
  grid-template-columns: 0.8fr 1fr 0.8fr;
  gap: 7px;
}

.public-listing-card-actions .btn {
  min-height: 38px;
  padding-inline: 10px;
  border-radius: 10px;
  font-size: 12px;
}

.public-listing-card-actions svg {
  width: 15px;
  height: 15px;
}

.btn.ghost {
  border: 1px solid rgb(17 19 24 / 0.08);
  background: #fff;
  color: #111318;
}

.btn.full-width {
  width: 100%;
  justify-content: center;
}

.public-map-fallback-card {
  display: flex;
  gap: 14px;
  align-items: center;
  margin: 18px 0 0;
  padding: 16px;
  border: 1px dashed rgb(17 19 24 / 0.16);
  border-radius: 16px;
  background: linear-gradient(135deg, #ffffff, #f7f9fc);
  color: #111318;
}

.public-map-fallback-card svg {
  flex: 0 0 auto;
  color: var(--nex-red);
}

.public-map-fallback-card div {
  display: grid;
  gap: 4px;
}

.public-map-fallback-card span {
  color: #5f6976;
  line-height: 1.45;
}

.public-lead-gate-backdrop {
  position: fixed;
  inset: 0;
  z-index: 240;
  display: grid;
  place-items: center;
  padding: 24px;
  background:
    radial-gradient(circle at 20% 20%, rgb(227 6 19 / 0.24), transparent 34%),
    rgb(5 7 12 / 0.72);
  backdrop-filter: blur(14px);
}

.public-lead-gate-modal {
  width: min(640px, 100%);
  max-height: min(92vh, 820px);
  overflow: auto;
  display: grid;
  gap: 16px;
  padding: 24px;
  border: 1px solid rgb(255 255 255 / 0.24);
  border-radius: 26px;
  background: linear-gradient(145deg, #ffffff, #f7f8fb);
  box-shadow: 0 34px 90px rgb(0 0 0 / 0.34);
}

.public-lead-gate-lock {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 18px;
  background: #111318;
  color: #fff;
  font-weight: 900;
}

.public-lead-gate-lock svg {
  color: var(--nex-red);
}

.public-lead-gate-copy {
  display: grid;
  gap: 8px;
}

.public-lead-gate-copy h2 {
  margin: 0;
  color: #111318;
  font-size: clamp(28px, 4vw, 40px);
  line-height: 1;
}

.public-lead-gate-copy p:last-child {
  margin: 0;
  color: #596271;
  line-height: 1.55;
}

.lead-gate-listing {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 18px;
  background: #fff;
}

.lead-gate-listing div {
  display: grid;
  gap: 3px;
}

.lead-gate-listing span {
  color: #69707b;
  font-size: 13px;
  font-weight: 750;
}

.lead-gate-listing em {
  flex: 0 0 auto;
  font-style: normal;
  color: var(--nex-red);
  font-weight: 950;
}

.lead-gate-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.lead-gate-form-grid input,
.public-lead-gate-modal textarea {
  width: 100%;
  min-height: 46px;
  border: 1px solid rgb(17 19 24 / 0.12);
  border-radius: 14px;
  background: #fff;
  padding: 11px 12px;
  color: #111318;
  font-weight: 750;
}

.lead-gate-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

.lead-gate-error {
  margin: 0;
}

.public-split-section {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.85fr);
  gap: 24px;
  align-items: start;
}

.public-split-section p,
.public-page-head p {
  color: #5e6673;
}

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

.public-areas-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}

.public-areas-grid button {
  min-height: 44px;
  border: 1px solid rgb(17 19 24 / 0.1);
  border-radius: 14px;
  background: #fff;
  color: #2a3038;
  font-weight: 850;
  box-shadow: 0 10px 28px rgb(17 19 24 / 0.06);
}

.public-areas-grid button:hover {
  border-color: var(--nex-red);
  color: var(--nex-red);
}

.public-mini-grid span,
.public-feature-list span {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 14px;
  border-radius: 16px;
  background: #fff;
  color: #2a3038;
  font-weight: 800;
  box-shadow: 0 10px 28px rgb(17 19 24 / 0.055);
}

.public-page-head {
  display: grid;
  gap: 12px;
  margin-bottom: 24px;
  padding-top: 20px;
}

.public-agent-directory-head {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.36fr);
  align-items: stretch;
}

.public-directory-sync-card {
  display: grid;
  align-content: center;
  gap: 10px;
  padding: 18px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 18px;
  background:
    radial-gradient(circle at 86% 16%, rgb(227 6 19 / 0.14), transparent 34%),
    linear-gradient(135deg, #111318, #252b36);
  color: #fff;
  box-shadow: 0 16px 44px rgb(17 19 24 / 0.10);
}

.public-directory-sync-card span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgb(255 255 255 / 0.78);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.public-directory-sync-card span i {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #24d481;
  box-shadow: 0 0 0 5px rgb(36 212 129 / 0.14);
}

.public-directory-sync-card strong {
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1;
}

.public-directory-sync-card small {
  color: rgb(255 255 255 / 0.66);
  line-height: 1.5;
}

.public-search-hero-head {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.42fr);
  align-items: stretch;
}

.public-page-head h1,
.public-agent-hero h1,
.public-detail-hero h1 {
  color: #111318;
}

.public-search-panel,
.public-agent-filters {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
  padding: 16px;
}

.public-directory-market-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: -6px 0 18px;
}

.public-directory-market-row button {
  min-height: 36px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 999px;
  background: #fff;
  color: #343b46;
  padding: 0 13px;
  font-size: 12px;
  font-weight: 900;
  box-shadow: 0 8px 18px rgb(17 19 24 / 0.04);
}

.public-directory-market-row button:hover {
  border-color: rgb(227 6 19 / 0.24);
  color: var(--nex-red);
}

.public-search-command {
  display: grid;
  gap: 10px;
  margin-bottom: 14px;
  padding: 10px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 16px;
  background:
    linear-gradient(135deg, #ffffff, #f7f9fc),
    #fff;
  box-shadow: 0 14px 40px rgb(17 19 24 / 0.06);
}

@media (min-width: 1061px) {
  .public-search-command {
    position: relative;
    top: auto;
    z-index: 1;
  }
}

.public-search-command-main {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-height: 58px;
  padding: 6px 8px 6px 14px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 12px;
  background: #fff;
}

.public-search-command-main svg {
  color: var(--nex-red);
}

.public-search-command-main input {
  width: 100%;
  min-height: 44px;
  border: 0;
  outline: none;
  color: #111318;
  font-size: 16px;
  font-weight: 850;
}

.public-search-command .public-search-panel {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.public-search-quick-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.public-search-quick-row button {
  min-height: 36px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 999px;
  background: #fff;
  color: #333b46;
  padding: 0 13px;
  font-size: 12px;
  font-weight: 900;
}

.public-search-quick-row button:hover {
  border-color: rgb(227 6 19 / 0.22);
  color: var(--nex-red);
}

.public-search-launch-card {
  display: grid;
  align-content: center;
  gap: 12px;
  min-height: 164px;
  padding: 18px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 16px;
  background:
    radial-gradient(circle at 86% 18%, rgb(227 6 19 / 0.13), transparent 34%),
    linear-gradient(135deg, #111318, #242935);
  color: white;
  box-shadow: 0 14px 38px rgb(17 19 24 / 0.09);
}

.public-search-launch-card > span,
.public-search-map-toolbar > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  padding: 8px 11px;
  border-radius: 999px;
  background: rgb(255 255 255 / 0.10);
  color: white;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.public-search-launch-card i,
.public-search-map-toolbar i {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #24d481;
  box-shadow: 0 0 0 5px rgb(36 212 129 / 0.14);
}

.public-search-launch-card strong {
  font-size: 19px;
  line-height: 1.15;
}

.public-search-launch-card small {
  color: rgb(255 255 255 / 0.68);
  line-height: 1.55;
}

.public-search-panel input,
.public-search-panel select,
.public-agent-filters input,
.public-agent-filters select,
.public-lead-form input,
.public-lead-form select,
.public-lead-form textarea {
  width: 100%;
  min-height: 44px;
  border: 1px solid rgb(17 19 24 / 0.12);
  border-radius: 14px;
  background: white;
  padding: 10px 12px;
  color: #111318;
}

.public-map-placeholder {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 20px;
  padding: 18px;
  color: #4b5563;
}

.public-search-portal-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(300px, 0.62fr);
  gap: 14px;
  margin: 16px 0;
}

.public-search-map-card,
.public-search-readiness-panel {
  overflow: hidden;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 34px rgb(17 19 24 / 0.055);
}

.public-search-map-card {
  display: grid;
  min-height: 390px;
}

.public-search-map-toolbar {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 12px;
  background: #111318;
  color: #fff;
}

.public-search-map-toolbar button {
  min-height: 36px;
  border: 1px solid rgb(255 255 255 / 0.18);
  border-radius: 999px;
  background: rgb(255 255 255 / 0.10);
  color: #fff;
  padding: 0 13px;
  font-size: 12px;
  font-weight: 900;
}

.public-search-map-stage {
  position: relative;
  min-height: 336px;
  overflow: hidden;
  background:
    linear-gradient(115deg, rgb(255 255 255 / 0.86), rgb(255 255 255 / 0.64)),
    radial-gradient(circle at 78% 24%, rgb(227 6 19 / 0.12), transparent 34%),
    linear-gradient(135deg, #dce8ef, #f8fbff 44%, #cbd8e3);
}

.public-search-map-stage::before,
.public-search-map-stage::after {
  content: "";
  position: absolute;
  inset: 16% 9%;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 46% 54% 48% 52%;
  transform: rotate(-8deg);
}

.public-search-map-stage::after {
  inset: 28% 18%;
  transform: rotate(13deg);
}

.public-search-map-radar {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 170px;
  height: 170px;
  border-radius: 999px;
  background: radial-gradient(circle, rgb(227 6 19 / 0.18), rgb(227 6 19 / 0.05) 44%, transparent 70%);
  transform: translate(-50%, -50%);
}

.public-search-map-pin {
  position: absolute;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  border: 0;
  border-radius: 999px;
  background: #111318;
  color: #fff;
  padding: 0 11px;
  box-shadow: 0 16px 34px rgb(17 19 24 / 0.22);
  transform: translate(-50%, -50%);
}

.public-search-map-pin svg {
  color: var(--nex-red);
}

.public-search-map-pin span {
  font-size: 12px;
  font-weight: 950;
}

.public-search-readiness-panel {
  display: grid;
  gap: 12px;
  align-content: start;
  padding: 18px;
}

.public-search-readiness-panel h2 {
  margin: 0;
  color: #111318;
  font-size: clamp(22px, 2.7vw, 30px);
  line-height: 1.08;
}

.public-feed-stack,
.public-search-ready-list {
  display: grid;
  gap: 10px;
}

.public-feed-stack article {
  display: grid;
  gap: 5px;
  padding: 11px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 12px;
  background: #f8fafc;
}

.public-feed-stack article span {
  width: fit-content;
  padding: 5px 8px;
  border-radius: 999px;
  background: rgb(36 212 129 / 0.12);
  color: #0e7a48;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.public-feed-stack article strong {
  color: #111318;
}

.public-feed-stack article small {
  color: #6a7280;
}

.public-search-ready-list span {
  display: flex;
  gap: 9px;
  align-items: center;
  color: #3d4652;
  font-size: 13px;
  font-weight: 850;
}

.public-search-ready-list svg {
  color: var(--nex-red);
}

.idx-search-card {
  display: grid;
  gap: 12px;
  margin: 16px 0;
  padding: 16px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 16px;
  background: linear-gradient(135deg, #ffffff, #fafbfc);
  box-shadow: 0 10px 30px rgb(17 19 24 / 0.055);
}

.idx-search-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: start;
}

.idx-search-head h2 {
  margin: 0;
  font-size: clamp(22px, 3.4vw, 32px);
}

.idx-search-head p {
  max-width: 760px;
  margin: 8px 0 0;
  color: #626b77;
  line-height: 1.6;
}

.idx-provider-badge {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgb(36 212 129 / 0.12);
  color: #0e7a48;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.idx-domain-warning {
  display: flex;
  gap: 10px;
  align-items: start;
  padding: 12px 14px;
  border: 1px solid rgb(201 162 74 / 0.3);
  border-radius: 16px;
  background: rgb(201 162 74 / 0.1);
  color: #63480b;
  font-weight: 800;
  line-height: 1.45;
}

.idx-search-frame-wrap {
  overflow: hidden;
  min-height: 230px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 12px;
  background: #f2f4f7;
}

.idx-search-frame-wrap iframe {
  display: block;
  width: 100%;
  min-height: 680px;
  border: 0;
  background: white;
}

.idx-hosted-panel {
  display: grid;
  min-height: 230px;
  place-items: center;
  align-content: center;
  gap: 10px;
  padding: 22px;
  text-align: center;
  background:
    radial-gradient(circle at 24% 20%, rgb(227 6 19 / 0.08), transparent 30%),
    linear-gradient(135deg, #ffffff, #f8f9fb);
}

.idx-hosted-panel svg {
  color: var(--nex-red);
}

.idx-hosted-panel strong {
  max-width: 620px;
  color: #111318;
  font-size: 19px;
}

.idx-hosted-panel span {
  max-width: 660px;
  color: #68707c;
  line-height: 1.55;
}

.idx-lead-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(280px, 0.6fr);
  gap: 12px;
  align-items: stretch;
}

.idx-sync-card {
  display: grid;
  gap: 10px;
  align-content: start;
  padding: 16px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 14px;
  background: #111318;
  color: white;
}

.idx-sync-card span {
  color: rgb(255 255 255 / 0.72);
  line-height: 1.55;
}

.idx-sync-card div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.idx-sync-card em {
  padding: 7px 9px;
  border-radius: 999px;
  background: rgb(255 255 255 / 0.1);
  color: white;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.public-compliance-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  margin: 16px 0;
  padding: 16px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 10px 28px rgb(17 19 24 / 0.045);
}

.public-compliance-card.compact {
  margin: 0;
  padding: 13px 14px;
  box-shadow: none;
  background: #fbfcfd;
}

.public-compliance-logos {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.public-compliance-logo {
  max-width: 96px;
  max-height: 42px;
  object-fit: contain;
  border-radius: 8px;
  background: #ffffff;
}

.public-eho-badge {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid rgb(17 19 24 / 0.12);
  border-radius: 999px;
  color: #2e3540;
  background: #ffffff;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  white-space: nowrap;
}

.public-compliance-text {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.public-compliance-text strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.public-compliance-text p,
.public-compliance-text small,
.public-compliance-text em {
  margin: 0;
  color: #636c78;
  font-size: 12px;
  line-height: 1.55;
}

.public-compliance-text em {
  color: #9a3300;
  font-style: normal;
  font-weight: 850;
}

.public-detail-hero,
.public-agent-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
  gap: 24px;
  align-items: center;
  margin-bottom: 24px;
}

.public-detail-hero img {
  width: 100%;
  aspect-ratio: 1.45;
  border-radius: 28px;
  object-fit: cover;
  box-shadow: 0 22px 60px rgb(17 19 24 / 0.10);
}

.public-detail-gallery {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.public-detail-gallery > div {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.public-detail-gallery > div img {
  aspect-ratio: 1.2;
  border-radius: 16px;
  box-shadow: 0 10px 26px rgb(17 19 24 / 0.08);
}

.public-detail-hero > div {
  display: grid;
  gap: 12px;
  padding: 28px;
  border-radius: 24px;
  background: white;
  box-shadow: 0 16px 42px rgb(17 19 24 / 0.06);
}

.public-detail-hero strong {
  color: var(--nex-red);
  font-size: 34px;
}

.public-detail-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.public-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.45fr);
  gap: 22px;
  align-items: start;
}

.public-detail-copy,
.public-lead-form {
  padding: 22px;
}

.public-detail-copy p {
  color: #4b5563;
  line-height: 1.7;
}

.public-detail-facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}

.public-detail-facts span {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgb(17 19 24 / 0.075);
  border-radius: 14px;
  background: linear-gradient(135deg, #ffffff, #f7f9fc);
}

.public-detail-facts small {
  color: #75808c;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.public-detail-facts strong {
  min-width: 0;
  color: #111318;
  font-size: 13px;
  overflow-wrap: anywhere;
}

.public-detail-lead-form {
  display: grid;
}

.public-recognized-consumer-panel {
  position: sticky;
  top: 96px;
  display: grid;
  gap: 14px;
  padding: 24px;
  border: 1px solid rgb(227 6 19 / 0.16);
  border-top: 4px solid var(--nex-red);
  border-radius: 18px;
  background:
    radial-gradient(circle at 100% 0%, rgb(227 6 19 / 0.10), transparent 36%),
    #ffffff;
  box-shadow: 0 20px 50px rgb(17 19 24 / 0.10);
}

.public-recognized-consumer-icon {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  color: #ffffff;
  background: var(--nex-red);
}

.public-recognized-consumer-panel h2,
.public-recognized-consumer-panel p {
  margin: 0;
}

.public-recognized-consumer-panel > p:not(.eyebrow):not(.public-recognized-consumer-status) {
  color: #55606d;
  line-height: 1.55;
}

.public-recognized-consumer-actions {
  display: grid;
  gap: 9px;
}

.public-recognized-consumer-actions .btn {
  justify-content: flex-start;
  min-height: 46px;
}

.public-recognized-consumer-status {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  padding: 11px 12px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.45;
}

.public-recognized-consumer-status.success {
  color: #17653a;
  background: #edf9f2;
}

.public-recognized-consumer-status.error {
  color: #9f1725;
  background: #fff0f2;
}

.public-recognized-consumer-search {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  border: 0;
  color: #ffffff;
  font-weight: 900;
  background: #171a20;
  cursor: pointer;
}

.public-detail-support-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 18px 0;
}

.public-detail-support-grid article {
  display: grid;
  gap: 8px;
  padding: 16px;
  border: 1px solid rgb(17 19 24 / 0.075);
  border-radius: 16px;
  background: linear-gradient(135deg, #ffffff, #f7f9fc);
}

.public-detail-support-grid svg {
  color: var(--nex-red);
}

.public-detail-support-grid strong {
  color: #111318;
  font-size: 16px;
}

.public-detail-support-grid span {
  color: #222831;
  font-weight: 900;
}

.public-detail-support-grid small {
  color: #66707c;
  line-height: 1.45;
}

.public-similar-homes-panel {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  margin: 18px 0;
  padding: 18px;
  border: 1px solid rgb(227 6 19 / 0.12);
  border-radius: 18px;
  background:
    radial-gradient(circle at 90% 20%, rgb(227 6 19 / 0.10), transparent 32%),
    linear-gradient(135deg, #ffffff, #f8fafc);
}

.public-similar-homes-panel h3,
.public-similar-homes-panel p {
  margin: 0;
}

.public-similar-homes-panel p {
  color: #606b78;
  line-height: 1.5;
}

.public-similar-homes-panel > div:last-child {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.public-detail-sticky-cta {
  display: none;
}

.public-form-context {
  display: inline-flex;
  width: fit-content;
  padding: 7px 10px;
  border-radius: 999px;
  background: #f1f3f6;
  color: #505a66;
  font-size: 12px;
  font-weight: 850;
}

.public-feature-list,
.public-benefit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 18px 0;
}

.public-agent-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.public-agent-card {
  display: grid;
  gap: 9px;
  padding: 20px;
}

.public-avatar {
  display: grid;
  place-items: center;
  width: 76px;
  height: 76px;
  overflow: hidden;
  border-radius: 22px;
  background:
    linear-gradient(135deg, rgb(227 6 19 / 0.08), rgb(255 255 255 / 0.92)),
    #f4f6f9;
  color: #111318;
  border: 1px solid rgb(17 19 24 / 0.08);
  font-weight: 950;
  font-size: 24px;
}

.public-avatar.xl {
  width: min(260px, 48vw);
  height: min(260px, 48vw);
  border-radius: 34px;
  font-size: 64px;
}

.public-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.public-agent-card h3,
.public-agent-card p {
  margin: 0;
}

.public-agent-card > span {
  color: var(--nex-red);
  font-weight: 900;
}

.public-agent-actions .btn {
  flex: 1;
}

.public-agent-card.enhanced {
  gap: 12px;
  overflow: hidden;
  padding: 18px;
}

.public-agent-card-top {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 12px;
}

.public-agent-card-top > span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 10px;
  border-radius: 999px;
  background: #f4fff9;
  color: #176d43;
  border: 1px solid rgb(36 212 129 / 0.24);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
  white-space: nowrap;
}

.public-agent-market-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.public-agent-market-row span {
  color: var(--nex-red);
  font-weight: 950;
}

.public-agent-market-row small {
  display: inline-flex;
  padding: 6px 8px;
  border-radius: 999px;
  background: #f2f4f7;
  color: #4b5563;
  font-size: 11px;
  font-weight: 900;
}

.public-agent-contact-mini {
  display: grid;
  gap: 7px;
}

.public-agent-contact-mini a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  overflow: hidden;
  color: #303844;
  font-size: 12px;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.public-agent-contact-mini svg {
  flex: 0 0 auto;
  color: var(--nex-red);
}

.public-agent-skill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.public-agent-skill-row em {
  padding: 6px 8px;
  border-radius: 999px;
  background: #fff6f7;
  color: #ac0611;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.public-agent-site-url {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  padding: 10px 11px;
  border-radius: 14px;
  background: #f8fafc;
  color: #313945;
  border: 1px solid rgb(17 19 24 / 0.07);
  font-size: 12px;
  font-weight: 850;
}

.public-agent-site-url svg {
  color: var(--nex-red);
  flex: 0 0 auto;
}

.public-agent-site-url span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.public-agent-hero-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

.public-agent-hero-facts span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  max-width: 100%;
  padding: 9px 11px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 999px;
  background: rgb(255 255 255 / 0.78);
  color: #303844;
  font-size: 12px;
  font-weight: 900;
}

.public-agent-hero-facts svg {
  flex: 0 0 auto;
  color: var(--agent-site-accent, var(--nex-red));
}

.public-agent-profile-console {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 16px 0 22px;
}

.public-agent-profile-console article {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 16px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 18px;
  background: linear-gradient(135deg, #ffffff, #f8fafc);
  box-shadow: 0 14px 40px rgb(17 19 24 / 0.055);
}

.public-agent-profile-console svg {
  color: var(--agent-site-accent, var(--nex-red));
}

.public-agent-profile-console strong {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
  color: #111318;
  font-size: 15px;
}

.public-agent-profile-console span {
  display: block;
  margin-top: 4px;
  color: #66707d;
  font-size: 13px;
  line-height: 1.45;
}

.public-agent-profile {
  background:
    linear-gradient(180deg, #f4f5f7 0, #ffffff 34%, #f7f8fb 100%);
}

.public-agent-profile.hosted-agent-site {
  padding-top: 26px;
}

.public-agent-profile .public-agent-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  width: min(1260px, calc(100% - 44px));
  grid-template-columns: minmax(0, 1fr) minmax(300px, 390px);
  gap: clamp(18px, 3vw, 34px);
  margin: 28px auto 18px;
  padding: clamp(24px, 4vw, 50px);
  border: 1px solid rgb(255 255 255 / 0.18);
  border-radius: 36px;
  background:
    radial-gradient(circle at 82% 8%, color-mix(in srgb, var(--agent-site-accent, #e30613) 36%, transparent), transparent 26%),
    radial-gradient(circle at 18% 16%, rgb(255 255 255 / 0.16), transparent 28%),
    linear-gradient(125deg, #07090d 0%, #141820 48%, #2a0609 100%);
  background-size: cover;
  background-position: center;
  color: #fff;
  box-shadow: 0 34px 90px rgb(17 19 24 / 0.22);
}

.public-agent-profile .public-agent-hero.search-first-agent-site {
  width: 100%;
  min-height: min(760px, calc(100vh - 90px));
  grid-template-columns: minmax(0, 980px);
  justify-content: center;
  align-items: center;
  margin: 0 0 18px;
  padding: clamp(64px, 9vw, 112px) clamp(18px, 5vw, 70px) clamp(42px, 6vw, 76px);
  border-right: 0;
  border-left: 0;
  border-radius: 0;
  text-align: center;
}

.public-agent-profile .public-agent-hero.search-first-agent-site::before {
  background:
    linear-gradient(180deg, rgb(0 0 0 / 0.18), rgb(0 0 0 / 0.32) 48%, rgb(0 0 0 / 0.58)),
    radial-gradient(circle at 50% 38%, color-mix(in srgb, var(--agent-site-accent, #e30613) 18%, transparent), transparent 34%);
}

.public-agent-profile .public-agent-hero.template-luxury-local::before {
  background:
    linear-gradient(180deg, rgb(0 0 0 / 0.26), rgb(0 0 0 / 0.46)),
    radial-gradient(circle at 50% 28%, rgb(201 162 74 / 0.18), transparent 36%);
}

.public-agent-profile .public-agent-hero.template-neighborhood-guide::before {
  background:
    linear-gradient(180deg, rgb(2 30 36 / 0.28), rgb(3 20 26 / 0.48)),
    radial-gradient(circle at 50% 24%, rgb(36 124 138 / 0.24), transparent 38%);
}

.public-agent-profile .public-agent-hero.template-seller-conversion {
  background:
    radial-gradient(circle at 82% 8%, rgb(227 6 19 / 0.28), transparent 26%),
    linear-gradient(125deg, #111318 0%, #191c22 48%, #4b050a 100%);
}

.public-agent-profile .public-agent-hero.search-first-agent-site .public-agent-hero-copy {
  justify-items: center;
  width: min(100%, 980px);
}

.public-agent-profile .public-agent-hero.search-first-agent-site h1 {
  max-width: 980px;
  font-size: clamp(44px, 6.4vw, 86px);
  text-shadow: 0 3px 32px rgb(0 0 0 / 0.40);
}

.public-agent-profile .public-agent-hero.search-first-agent-site p:not(.eyebrow) {
  max-width: 760px;
  text-shadow: 0 2px 22px rgb(0 0 0 / 0.32);
}

.public-agent-profile .public-agent-hero.search-first-agent-site .public-hero-simple-search {
  width: min(100%, 1040px);
}

.public-agent-profile .public-agent-hero.search-first-agent-site .public-agent-hero-proof,
.public-agent-profile .public-agent-hero.search-first-agent-site .public-profile-actions {
  justify-content: center;
}

.public-agent-profile .public-agent-hero.search-first-agent-site .public-agent-intro-card {
  display: none;
}

.public-agent-hero-identity {
  display: grid;
  justify-items: center;
  gap: 6px;
  margin-bottom: 2px;
}

.public-agent-hero-identity .public-avatar {
  width: 96px;
  height: 96px;
  border: 4px solid rgb(255 255 255 / 0.88);
  border-radius: 50%;
  box-shadow: 0 18px 54px rgb(0 0 0 / 0.34);
}

.public-agent-hero-identity strong {
  color: #fff;
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.05;
  text-shadow: 0 2px 22px rgb(0 0 0 / 0.36);
}

.public-agent-hero-identity span {
  color: rgb(255 255 255 / 0.86);
  font-size: 15px;
  font-weight: 800;
}

.public-agent-profile .public-agent-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(90deg, rgb(0 0 0 / 0.34), transparent 42%, rgb(227 6 19 / 0.10)),
    radial-gradient(circle at 50% 100%, rgb(255 255 255 / 0.10), transparent 34%);
  pointer-events: none;
}

.public-agent-profile .public-agent-hero::after {
  content: "NEX REALTY";
  position: absolute;
  right: -7%;
  bottom: -26px;
  z-index: -1;
  color: rgb(255 255 255 / 0.045);
  font-size: clamp(72px, 12vw, 170px);
  font-weight: 950;
  letter-spacing: 0.05em;
  line-height: 1;
  white-space: nowrap;
  pointer-events: none;
}

.public-agent-hero-copy {
  display: grid;
  align-content: center;
  gap: 16px;
  min-width: 0;
}

.public-agent-profile .public-agent-hero .eyebrow {
  color: rgb(255 255 255 / 0.72);
}

.public-agent-profile .public-agent-hero h1 {
  max-width: 760px;
  margin: 0;
  color: #fff;
  font-size: clamp(42px, 5.5vw, 76px);
  line-height: 0.96;
  letter-spacing: 0;
  text-wrap: balance;
}

.public-agent-profile .public-agent-hero p:not(.eyebrow) {
  max-width: 700px;
  margin: 0;
  color: rgb(255 255 255 / 0.88);
  font-size: clamp(15px, 1.5vw, 19px);
  font-weight: 650;
  line-height: 1.5;
}

.public-agent-hero-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.public-agent-hero-proof span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid rgb(255 255 255 / 0.18);
  border-radius: 999px;
  background: rgb(255 255 255 / 0.09);
  color: rgb(255 255 255 / 0.90);
  font-size: 12px;
  font-weight: 900;
  backdrop-filter: blur(12px);
}

.public-agent-profile .public-hero-simple-search {
  width: min(930px, 100%);
  margin-top: 2px;
  border-color: rgb(255 255 255 / 0.20);
  background: rgb(255 255 255 / 0.94);
  box-shadow: 0 28px 76px rgb(0 0 0 / 0.30);
}

.public-agent-profile .public-hero-chip-row,
.public-agent-profile .public-hero-concierge-row {
  justify-content: flex-start;
}

.public-agent-profile .public-hero-chip-row button {
  background: #fff;
}

.public-agent-profile .public-agent-hero.theme-clean-white,
.public-agent-profile .public-agent-hero.theme-florida-coastal,
.public-agent-profile .public-agent-hero.theme-red-accent {
  border-color: rgb(17 19 24 / 0.08);
  color: #111318;
  box-shadow: 0 28px 78px rgb(17 19 24 / 0.13);
}

.public-agent-profile .public-agent-hero.theme-clean-white {
  background:
    radial-gradient(circle at 84% 10%, color-mix(in srgb, var(--agent-site-accent, #e30613) 12%, transparent), transparent 28%),
    linear-gradient(135deg, #ffffff 0%, #f7f8fb 64%, #eef2f6 100%);
}

.public-agent-profile .public-agent-hero.theme-florida-coastal {
  background:
    radial-gradient(circle at 84% 8%, rgb(36 124 138 / 0.20), transparent 30%),
    linear-gradient(135deg, #f7fcfd 0%, #e8f6f8 58%, #ffffff 100%);
}

.public-agent-profile .public-agent-hero.theme-red-accent {
  background:
    radial-gradient(circle at 82% 8%, color-mix(in srgb, var(--agent-site-accent, #e30613) 16%, transparent), transparent 28%),
    linear-gradient(135deg, #ffffff 0%, #fff5f5 54%, #f7f8fb 100%);
}

.public-agent-profile .public-agent-hero.theme-luxury-black {
  background:
    radial-gradient(circle at 82% 8%, rgb(201 162 74 / 0.22), transparent 28%),
    linear-gradient(125deg, #040507 0%, #111318 52%, #241508 100%);
}

.public-agent-profile .public-agent-hero.theme-clean-white h1,
.public-agent-profile .public-agent-hero.theme-florida-coastal h1,
.public-agent-profile .public-agent-hero.theme-red-accent h1,
.public-agent-profile .public-agent-hero.theme-clean-white .public-agent-hero-identity strong,
.public-agent-profile .public-agent-hero.theme-florida-coastal .public-agent-hero-identity strong,
.public-agent-profile .public-agent-hero.theme-red-accent .public-agent-hero-identity strong {
  color: #111318;
  text-shadow: none;
}

.public-agent-profile .public-agent-hero.theme-clean-white p:not(.eyebrow),
.public-agent-profile .public-agent-hero.theme-florida-coastal p:not(.eyebrow),
.public-agent-profile .public-agent-hero.theme-red-accent p:not(.eyebrow),
.public-agent-profile .public-agent-hero.theme-clean-white .public-agent-hero-identity span,
.public-agent-profile .public-agent-hero.theme-florida-coastal .public-agent-hero-identity span,
.public-agent-profile .public-agent-hero.theme-red-accent .public-agent-hero-identity span {
  color: #536173;
  text-shadow: none;
}

.public-agent-profile .public-agent-hero.theme-clean-white .eyebrow,
.public-agent-profile .public-agent-hero.theme-florida-coastal .eyebrow,
.public-agent-profile .public-agent-hero.theme-red-accent .eyebrow {
  color: var(--agent-site-accent, var(--nex-red));
}

.public-agent-profile .public-agent-hero.theme-clean-white .public-agent-hero-proof span,
.public-agent-profile .public-agent-hero.theme-florida-coastal .public-agent-hero-proof span,
.public-agent-profile .public-agent-hero.theme-red-accent .public-agent-hero-proof span {
  border-color: rgb(17 19 24 / 0.10);
  background: #fff;
  color: #303846;
  box-shadow: 0 10px 26px rgb(17 19 24 / 0.07);
}

.public-agent-profile .public-agent-hero.theme-clean-white .public-avatar,
.public-agent-profile .public-agent-hero.theme-florida-coastal .public-avatar,
.public-agent-profile .public-agent-hero.theme-red-accent .public-avatar {
  border-color: #fff;
  box-shadow: 0 14px 42px rgb(17 19 24 / 0.18);
}

.public-agent-profile .public-profile-actions {
  margin-top: 2px;
}

.public-agent-intro-card {
  align-self: stretch;
  display: grid;
  gap: 16px;
  min-width: 280px;
  padding: 20px;
  border: 1px solid rgb(255 255 255 / 0.28);
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgb(255 255 255 / 0.96), rgb(255 255 255 / 0.90)),
    radial-gradient(circle at 24% 0%, color-mix(in srgb, var(--agent-site-accent, #e30613) 14%, transparent), transparent 36%);
  color: #111318;
  box-shadow: 0 24px 70px rgb(0 0 0 / 0.24);
  backdrop-filter: blur(18px);
}

.public-agent-card-status {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: fit-content;
  min-height: 30px;
  padding: 6px 10px;
  border-radius: 999px;
  background: rgb(227 6 19 / 0.09);
  color: var(--agent-site-accent, var(--nex-red));
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.public-agent-card-status i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--agent-site-accent, var(--nex-red));
  box-shadow: 0 0 0 5px color-mix(in srgb, var(--agent-site-accent, #e30613) 12%, transparent);
}

.public-agent-intro-media {
  display: grid;
  place-items: center;
  padding: 10px;
  border-radius: 25px;
  background:
    radial-gradient(circle at 80% 12%, color-mix(in srgb, var(--agent-site-accent, #e30613) 18%, transparent), transparent 34%),
    #f5f6f8;
}

.public-agent-intro-card .public-avatar.xl {
  width: min(220px, 46vw);
  height: min(220px, 46vw);
  border-radius: 26px;
}

.public-agent-intro-main {
  display: grid;
  gap: 4px;
}

.public-agent-intro-main strong {
  font-size: clamp(22px, 2vw, 28px);
  line-height: 1.05;
}

.public-agent-intro-main span {
  color: #5b6572;
  font-weight: 850;
}

.public-agent-intro-links {
  display: grid;
  gap: 9px;
}

.public-agent-intro-card a,
.public-agent-intro-card small {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #3f4650;
  font-weight: 850;
  text-decoration: none;
  overflow-wrap: anywhere;
}

.public-agent-intro-actions {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 9px;
}

.public-agent-intro-actions .btn {
  justify-content: center;
  min-height: 44px;
  border-radius: 14px;
}

.public-agent-site-strip,
.public-agent-idx-footer {
  width: min(1180px, calc(100% - 36px));
  margin: 18px auto 0;
}

.public-agent-site-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.public-agent-site-strip span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 999px;
  background: #fff;
  padding: 9px 12px;
  color: #39414c;
  font-weight: 900;
}

.public-agent-service-section .public-detail-copy {
  display: grid;
  gap: 14px;
}

.public-agent-search-section {
  background: #f8fafc;
}

.public-agent-category-row {
  margin-bottom: 16px;
}

.public-agent-cta-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.public-agent-cta-grid article {
  display: grid;
  gap: 12px;
  align-content: start;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 18px;
  background: #fff;
  padding: 18px;
  box-shadow: 0 16px 38px rgb(17 19 24 / 0.07);
}

.public-agent-cta-grid svg {
  color: var(--nex-red);
}

.public-agent-widget-grid,
.public-agent-page-grid,
.public-agent-testimonial-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.public-agent-widget-grid button,
.public-agent-page-grid article,
.public-agent-testimonial-grid article {
  display: grid;
  gap: 11px;
  align-content: start;
  min-height: 180px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 18px;
  background:
    radial-gradient(circle at 92% 0%, color-mix(in srgb, var(--agent-site-accent, #e30613) 13%, transparent), transparent 30%),
    #ffffff;
  color: #111318;
  padding: 18px;
  text-align: left;
  box-shadow: 0 16px 38px rgb(17 19 24 / 0.07);
}

.public-agent-widget-grid button:hover,
.public-agent-page-grid article:hover {
  border-color: color-mix(in srgb, var(--agent-site-accent, #e30613) 35%, #e5e7eb);
  transform: translateY(-2px);
}

.public-agent-widget-grid svg,
.public-agent-page-grid svg {
  color: var(--agent-site-accent, var(--nex-red));
}

.public-agent-widget-grid strong,
.public-agent-page-grid h3,
.public-agent-testimonial-grid strong {
  color: #111318;
  font-size: 18px;
  font-weight: 950;
  line-height: 1.1;
}

.public-agent-widget-grid span,
.public-agent-page-grid p,
.public-agent-testimonial-grid p,
.public-agent-testimonial-grid small {
  margin: 0;
  color: #657080;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.48;
}

.public-agent-page-grid article > span,
.public-agent-testimonial-grid article > span {
  width: fit-content;
  border-radius: 999px;
  background: color-mix(in srgb, var(--agent-site-accent, #e30613) 10%, #ffffff);
  color: var(--agent-site-accent, var(--nex-red));
  padding: 6px 9px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.public-agent-page-grid .btn {
  width: fit-content;
  margin-top: auto;
}

.public-agent-testimonial-grid article {
  min-height: 0;
}

.public-agent-idx-footer {
  display: grid;
  gap: 8px;
  padding: 16px 0 28px;
  color: #626b77;
  font-size: 12px;
  line-height: 1.55;
}

.public-benefit-grid article {
  display: grid;
  gap: 9px;
  padding: 18px;
}

.public-benefit-grid article span {
  color: #68707c;
  line-height: 1.5;
}

.public-lead-form {
  display: grid;
  gap: 12px;
}

.public-lead-form h3 {
  margin: 0;
  font-size: 24px;
}

.public-form-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.public-consent {
  display: flex;
  gap: 10px;
  align-items: start;
  color: #626b77;
  font-size: 13px;
  line-height: 1.45;
}

.public-consent input {
  width: 18px;
  min-height: 18px;
  margin-top: 2px;
}

.public-form-legal-links {
  color: #6b7280;
  font-size: 12px;
  line-height: 1.45;
}

.public-form-legal-links a {
  color: #111318;
  font-weight: 900;
}

.public-legal-page {
  max-width: 1120px;
}

.public-legal-updated {
  display: inline-flex;
  width: fit-content;
  margin-top: 6px;
  border: 1px solid rgb(227 6 19 / 0.18);
  border-radius: 999px;
  background: #fff6f7;
  color: #b80010;
  padding: 7px 11px;
  font-size: 12px;
  font-weight: 950;
}

.public-legal-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 18px;
}

.public-legal-summary,
.public-legal-content article {
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 14px 36px rgb(17 19 24 / 0.06);
}

.public-legal-summary {
  display: grid;
  gap: 9px;
  padding: 18px;
}

.public-legal-summary svg {
  color: #e30613;
}

.public-legal-summary strong {
  color: #111318;
  font-size: 15px;
  font-weight: 950;
}

.public-legal-summary span,
.public-legal-content p {
  color: #626b77;
  line-height: 1.65;
}

.public-legal-content {
  display: grid;
  gap: 12px;
}

.public-legal-content article {
  padding: 22px;
}

.public-legal-content h2 {
  margin: 0 0 8px;
  color: #111318;
  font-size: clamp(20px, 3vw, 28px);
}

.public-legal-content p {
  margin: 0;
}

.public-legal-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.public-sms-consent-page {
  max-width: 1120px;
}

.public-sms-proof-band {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 420px);
  gap: 18px;
  align-items: start;
  margin-bottom: 18px;
}

.public-sms-proof-copy {
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 20px;
  background: #ffffff;
  padding: clamp(22px, 4vw, 34px);
  box-shadow: 0 14px 36px rgb(17 19 24 / 0.06);
}

.public-sms-proof-copy h2 {
  margin: 0 0 14px;
  color: #111318;
  font-size: clamp(26px, 4vw, 42px);
}

.public-sms-proof-copy ol {
  display: grid;
  gap: 9px;
  margin: 0;
  padding-left: 20px;
  color: #4f5965;
  line-height: 1.6;
}

.public-sms-proof-copy li::marker {
  color: #e30613;
  font-weight: 950;
}

.public-sms-consent-copy {
  display: grid;
  gap: 8px;
  margin-top: 18px;
  border: 1px solid rgb(227 6 19 / 0.16);
  border-radius: 16px;
  background: #fff7f8;
  padding: 16px;
}

.public-sms-consent-copy strong {
  color: #111318;
  font-weight: 950;
}

.public-sms-consent-copy span {
  color: #4f5965;
  line-height: 1.6;
}

.public-sms-preference-preview {
  gap: 10px;
  margin: 0;
}

.public-sms-preference-preview .field {
  margin: 0;
}

.consent-line {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: #4f5965;
  font-size: 13px;
  line-height: 1.55;
}

.consent-line input {
  width: auto;
  margin-top: 3px;
}

.public-preapproval-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
  padding: 14px 18px;
  border-radius: 16px;
  background: #ffffff;
  border: 1px solid rgb(17 19 24 / 0.1);
  color: #111318;
  box-shadow: 0 14px 38px rgb(17 19 24 / 0.07);
  font-weight: 900;
  text-decoration: none;
}

.public-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 0;
  background: transparent;
  color: #333943;
  font-weight: 900;
  margin-bottom: 16px;
}

.public-footer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 22px;
  align-items: start;
  margin-top: 44px;
  padding: 34px clamp(18px, 5vw, 72px);
  border-top: 1px solid rgb(17 19 24 / 0.08);
  background: #ffffff;
  color: #111318;
}

.public-footer-logo {
  max-width: 130px;
  max-height: 58px;
  object-fit: contain;
}

.public-footer p,
.public-footer small {
  color: #626b77;
}

.public-footer small {
  grid-column: 1 / -1;
  line-height: 1.6;
}

.public-footer-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: end;
}

.public-footer-links button {
  color: #3d4450;
  font-weight: 800;
}

.public-skeleton {
  display: grid;
  gap: 18px;
  width: min(1180px, calc(100% - 36px));
  margin: 42px auto;
}

.public-skeleton > div:not(.public-polished-skeleton-head):not(.public-listing-grid) {
  height: 130px;
  border-radius: 24px;
  background: linear-gradient(90deg, #eef0f3, #ffffff, #eef0f3);
  background-size: 200% 100%;
  animation: shimmer 1.2s infinite linear;
}

.public-polished-skeleton {
  gap: 20px;
  padding: 18px 0;
}

.public-polished-skeleton-head {
  display: grid;
  gap: 7px;
  padding: 18px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 20px;
  background:
    radial-gradient(circle at 92% 12%, rgb(227 6 19 / 0.09), transparent 30%),
    #fff;
  box-shadow: 0 16px 48px rgb(17 19 24 / 0.055);
}

.public-polished-skeleton-head span {
  color: var(--nex-red);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.18em;
}

.public-polished-skeleton-head strong {
  color: #111318;
  font-size: clamp(22px, 3vw, 34px);
}

.public-polished-skeleton-head small {
  color: #65707d;
  font-size: 14px;
}

@keyframes shimmer {
  to {
    background-position-x: -200%;
  }
}

.public-recruiting-seo-page {
  width: min(1220px, calc(100% - 36px));
}

.public-recruiting-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.55fr);
  gap: 22px;
  align-items: stretch;
  padding: clamp(28px, 5vw, 58px);
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 30px;
  background:
    radial-gradient(circle at 86% 16%, rgb(227 6 19 / 0.10), transparent 28%),
    linear-gradient(135deg, #ffffff, #f7f9fc);
  box-shadow: 0 28px 84px rgb(17 19 24 / 0.09);
}

.public-recruiting-hero h1 {
  max-width: 920px;
  margin: 0;
  color: #111318;
  font-size: clamp(38px, 6vw, 76px);
  line-height: 0.98;
  letter-spacing: 0;
}

.public-recruiting-hero p,
.public-recruiting-content-band p,
.public-comparison-disclaimer p,
.public-recruiting-lead-split p {
  max-width: 760px;
  color: #5f6874;
  font-size: 17px;
  line-height: 1.7;
}

.public-recruiting-cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.public-recruiting-score-card {
  display: grid;
  align-content: end;
  gap: 18px;
  min-height: 320px;
  padding: 22px;
  border-radius: 24px;
  background:
    radial-gradient(circle at 70% 10%, rgb(227 6 19 / 0.28), transparent 32%),
    linear-gradient(145deg, #111318, #242a33);
  color: white;
}

.public-recruiting-score-card span {
  color: rgb(255 255 255 / 0.62);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.public-recruiting-score-card strong {
  max-width: 260px;
  font-size: clamp(28px, 3.4vw, 42px);
  line-height: 1;
}

.public-recruiting-score-card div,
.public-recruiting-market-cloud,
.public-recruiting-link-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.public-recruiting-score-card em,
.public-recruiting-market-cloud span {
  border-radius: 999px;
  font-style: normal;
  font-size: 12px;
  font-weight: 900;
}

.public-recruiting-score-card em {
  padding: 8px 10px;
  background: rgb(255 255 255 / 0.10);
  color: rgb(255 255 255 / 0.78);
}

.public-recruiting-platform-grid,
.public-recruiting-plan-grid,
.public-faq-grid,
.public-calculator-grid,
.recruiting-seo-grid {
  display: grid;
  gap: 18px;
}

.public-recruiting-platform-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.public-recruiting-platform-grid article,
.public-recruiting-plan-card,
.public-comparison-disclaimer,
.public-recruiting-content-band,
.public-recruiting-lead-split,
.public-faq-grid article,
.public-calculator-form,
.public-calculator-results,
.public-current-cost-card,
.public-plan-result-list article {
  border: 1px solid rgb(17 19 24 / 0.075);
  border-radius: 22px;
  background: #ffffff;
  box-shadow: 0 18px 50px rgb(17 19 24 / 0.07);
}

.public-recruiting-platform-grid article,
.public-recruiting-plan-card,
.public-faq-grid article {
  display: grid;
  gap: 10px;
  padding: 20px;
}

.public-recruiting-platform-grid svg,
.public-recruiting-plan-card span,
.public-current-cost-card span,
.public-plan-result-list article.suggested strong {
  color: var(--nex-red);
}

.public-recruiting-platform-grid strong,
.public-recruiting-plan-card h3,
.public-faq-grid strong {
  color: #111318;
}

.public-recruiting-platform-grid span,
.public-recruiting-plan-card p,
.public-faq-grid p,
.public-calculator-form small {
  color: #68717d;
  line-height: 1.55;
}

.public-recruiting-plan-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.public-recruiting-plan-card span {
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.public-recruiting-plan-card h3 {
  margin: 0;
  font-size: 24px;
}

.public-recruiting-plan-card > strong {
  font-size: 18px;
}

.public-recruiting-plan-card ul {
  display: grid;
  gap: 8px;
  margin: 6px 0;
  padding-left: 18px;
  color: #2f3641;
  font-weight: 800;
}

.public-recruiting-content-band,
.public-comparison-disclaimer,
.public-recruiting-lead-split {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(320px, 1fr);
  gap: 18px;
  align-items: start;
  padding: 24px;
}

.public-comparison-disclaimer {
  grid-template-columns: 1fr;
  background: linear-gradient(135deg, #fff8f8, #ffffff);
}

.public-recruiting-lead-split {
  background: linear-gradient(135deg, #ffffff, #f7f9fc);
}

.public-recruiting-market-cloud span {
  padding: 8px 10px;
  background: rgb(227 6 19 / 0.08);
  color: #3c2225;
}

.public-recruiting-lead-form {
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 22px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 22px 60px rgb(17 19 24 / 0.10);
}

.public-recruiting-lead-form h3 {
  margin: 0;
  color: #111318;
  font-size: 24px;
}

.public-recruiting-lead-form input,
.public-recruiting-lead-form textarea,
.public-calculator-form input {
  width: 100%;
  min-height: 46px;
  border: 1px solid rgb(17 19 24 / 0.12);
  border-radius: 15px;
  background: white;
  color: #111318;
  padding: 11px 13px;
  font-weight: 750;
}

.public-recruiting-lead-form textarea {
  resize: vertical;
}

.public-honeypot {
  position: absolute;
  left: -9999px;
  opacity: 0;
}

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

.public-recruiting-link-grid {
  margin-top: 14px;
}

.public-recruiting-link-grid button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 999px;
  background: #fff;
  color: #111318;
  padding: 0 14px;
  font-weight: 900;
}

.public-calculator-grid {
  grid-template-columns: minmax(320px, 0.85fr) minmax(0, 1.15fr);
}

.public-calculator-form,
.public-calculator-results {
  padding: 22px;
}

.public-current-cost-card {
  display: grid;
  gap: 8px;
  padding: 18px;
  margin-bottom: 12px;
}

.public-current-cost-card strong {
  color: #111318;
  font-size: 34px;
}

.public-plan-result-list {
  display: grid;
  gap: 10px;
}

.public-plan-result-list article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding: 14px;
}

.public-plan-result-list article.suggested {
  border-color: rgb(227 6 19 / 0.32);
  background: #fff8f8;
}

.public-plan-result-list span,
.public-plan-result-list small {
  color: #68717d;
}

.public-plan-result-list em {
  color: #111318;
  font-style: normal;
  font-weight: 950;
}

.recruiting-seo-center .activity-toolbar {
  align-items: end;
}

.recruiting-seo-grid {
  grid-template-columns: minmax(320px, 0.72fr) minmax(0, 1.28fr);
  margin-top: 18px;
}

.recruiting-page-list,
.recruiting-lead-list,
.recruiting-plan-admin-list {
  display: grid;
  gap: 10px;
}

.recruiting-page-list button,
.recruiting-lead-list article,
.recruiting-plan-admin-list article {
  display: grid;
  gap: 7px;
  min-width: 0;
  border: 1px solid var(--nex-line);
  background: #fff;
  color: #111318;
  padding: 13px;
  text-align: left;
}

.recruiting-page-list button.selected {
  border-color: var(--nex-red);
  box-shadow: 0 0 0 3px rgb(227 6 19 / 0.10);
}

.recruiting-page-list span,
.recruiting-page-list em,
.recruiting-lead-list span,
.recruiting-lead-list small {
  min-width: 0;
  color: #66707d;
  font-size: 12px;
  overflow-wrap: anywhere;
}

.recruiting-page-list em,
.recruiting-lead-list em {
  font-style: normal;
  font-weight: 950;
  text-transform: uppercase;
}

.recruiting-editor-grid,
.recruiting-plan-mini-grid {
  display: grid;
  gap: 12px;
}

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

.recruiting-editor-grid .field:nth-child(n + 5),
.recruiting-editor-grid .toggle-row {
  grid-column: 1 / -1;
}

.recruiting-lead-list article {
  grid-template-columns: minmax(0, 1fr) auto minmax(150px, 0.35fr);
  align-items: center;
}

.recruiting-lead-list em.hot {
  color: #d3212c;
}

.recruiting-lead-list em.warm {
  color: #b7791f;
}

.recruiting-lead-list select {
  min-width: 0;
  min-height: 38px;
  border: 1px solid var(--nex-line);
  background: #fff;
  color: #111318;
  padding: 0 9px;
  font-weight: 800;
}

.recruiting-plan-mini-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.recruiting-plan-admin-list article > strong {
  color: var(--nex-red);
  font-size: 17px;
}

.public-search-platform-strip,
.public-directory-command-row,
.public-platform-module-grid,
.public-contact-route-grid {
  display: grid;
  gap: 12px;
}

.public-search-platform-strip {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 16px 0;
}

.public-search-platform-strip article,
.public-directory-command-row article,
.public-platform-module-grid article,
.public-contact-route-grid button {
  display: grid;
  min-width: 0;
  gap: 9px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 18px;
  background: rgb(255 255 255 / 0.96);
  color: #111318;
  padding: 16px;
  box-shadow: 0 14px 38px rgb(17 19 24 / 0.055);
}

.public-search-platform-strip svg,
.public-directory-command-row svg,
.public-platform-module-grid svg,
.public-contact-route-grid svg {
  color: var(--nex-red);
}

.public-search-platform-strip strong,
.public-directory-command-row strong,
.public-platform-module-grid strong,
.public-contact-route-grid strong {
  color: #111318;
  font-size: 16px;
}

.public-search-platform-strip span,
.public-directory-command-row span,
.public-platform-module-grid span,
.public-contact-route-grid span {
  color: #66707d;
  line-height: 1.5;
  font-size: 13px;
}

.public-search-journey,
.public-platform-workflow,
.public-workflow-band {
  display: grid;
  grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr);
  gap: 18px;
  align-items: start;
  margin: 18px 0;
  padding: 22px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 22px;
  background:
    radial-gradient(circle at 88% 14%, rgb(227 6 19 / 0.10), transparent 28%),
    linear-gradient(135deg, #ffffff, #f7f9fc);
  box-shadow: 0 18px 52px rgb(17 19 24 / 0.065);
}

.public-search-journey h2,
.public-platform-workflow h2,
.public-workflow-band h2,
.public-info-form-copy h2 {
  margin: 0;
  color: #111318;
  font-size: clamp(24px, 3.4vw, 38px);
  line-height: 1.08;
}

.public-search-journey p,
.public-platform-workflow p,
.public-info-form-copy p {
  color: #5f6874;
  line-height: 1.65;
}

.public-workflow-timeline {
  display: grid;
  gap: 10px;
}

.public-workflow-timeline article {
  display: grid;
  grid-template-columns: auto minmax(0, 0.28fr) minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 13px 14px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 10px 26px rgb(17 19 24 / 0.045);
}

.public-workflow-timeline em {
  display: inline-grid;
  width: 36px;
  height: 36px;
  place-items: center;
  border-radius: 999px;
  background: #111318;
  color: #fff;
  font-style: normal;
  font-size: 12px;
  font-weight: 950;
}

.public-workflow-timeline strong {
  color: #111318;
}

.public-workflow-timeline span {
  color: #66707d;
  line-height: 1.45;
  font-size: 13px;
}

.public-directory-command-row {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: -6px 0 16px;
}

.public-platform-hero,
.public-inner-tech-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.72fr);
  gap: 18px;
  align-items: stretch;
  margin-bottom: 20px;
}

.public-platform-hero > div:first-child,
.public-inner-hero-copy {
  display: grid;
  align-content: center;
  gap: 14px;
  padding: clamp(28px, 5vw, 58px);
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 30px;
  background:
    radial-gradient(circle at 86% 14%, rgb(227 6 19 / 0.12), transparent 30%),
    linear-gradient(135deg, #ffffff, #f7f9fc);
  box-shadow: 0 24px 72px rgb(17 19 24 / 0.08);
}

.public-platform-hero h1,
.public-inner-hero-copy h1 {
  max-width: 920px;
  margin: 0;
  color: #111318;
  font-size: clamp(38px, 5.8vw, 72px);
  line-height: 0.98;
}

.public-platform-hero p,
.public-inner-hero-copy > p {
  max-width: 790px;
  margin: 0;
  color: #5f6874;
  font-size: 17px;
  line-height: 1.7;
}

.public-platform-device,
.public-inner-command-panel {
  display: grid;
  gap: 14px;
  align-content: start;
  min-height: 390px;
  padding: 18px;
  border: 1px solid rgb(255 255 255 / 0.12);
  border-radius: 30px;
  background:
    radial-gradient(circle at 82% 10%, rgb(227 6 19 / 0.32), transparent 32%),
    linear-gradient(145deg, #111318, #252c37);
  color: #fff;
  box-shadow: 0 24px 72px rgb(17 19 24 / 0.16);
}

.public-platform-device-top,
.public-inner-command-top {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.public-platform-device-top span,
.public-inner-command-top span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgb(255 255 255 / 0.84);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.public-platform-device-top i,
.public-inner-command-top i {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #24d481;
  box-shadow: 0 0 0 5px rgb(36 212 129 / 0.14);
}

.public-platform-device-top small,
.public-inner-command-top small {
  color: rgb(255 255 255 / 0.58);
  font-weight: 850;
}

.public-platform-device-metrics,
.public-inner-command-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.public-platform-device-metrics article,
.public-inner-command-metrics article {
  display: grid;
  gap: 5px;
  min-height: 104px;
  padding: 14px;
  border: 1px solid rgb(255 255 255 / 0.10);
  border-radius: 18px;
  background: rgb(255 255 255 / 0.08);
}

.public-platform-device-metrics strong,
.public-inner-command-metrics strong {
  font-size: clamp(25px, 3vw, 38px);
}

.public-platform-device-metrics span,
.public-inner-command-metrics span {
  color: rgb(255 255 255 / 0.62);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.public-platform-device-flow,
.public-inner-command-list {
  display: grid;
  gap: 9px;
}

.public-platform-device-flow span,
.public-inner-command-list span {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 42px;
  padding: 10px 12px;
  border-radius: 14px;
  background: rgb(255 255 255 / 0.08);
  color: rgb(255 255 255 / 0.78);
  font-size: 13px;
  font-weight: 850;
}

.public-platform-device-flow em {
  display: inline-grid;
  width: 25px;
  height: 25px;
  place-items: center;
  border-radius: 999px;
  background: var(--nex-red);
  color: #fff;
  font-style: normal;
  font-size: 11px;
  font-weight: 950;
}

.public-inner-command-list svg {
  color: #24d481;
}

.public-platform-module-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding-top: 0;
}

.public-platform-module-grid article {
  min-height: 170px;
  transition: transform 160ms ease, box-shadow 160ms ease;
}

.public-platform-module-grid article:hover,
.public-contact-route-grid button:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 50px rgb(17 19 24 / 0.08);
}

.public-platform-support-band,
.public-info-system-band,
.public-info-form-band {
  padding: 22px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 24px;
  background: linear-gradient(135deg, #ffffff, #f7f9fc);
  box-shadow: 0 18px 52px rgb(17 19 24 / 0.06);
}

.public-inline-search-band,
.public-seller-value-panel,
.public-returning-consumer-panel,
.public-about-tech-grid {
  width: min(1140px, calc(100% - 36px));
  margin: 18px auto;
}

.public-inline-search-band,
.public-seller-value-panel,
.public-returning-consumer-panel {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(320px, 1fr);
  gap: 18px;
  align-items: center;
  padding: 22px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 24px;
  background: linear-gradient(135deg, #ffffff, #f8fafc);
  box-shadow: 0 18px 52px rgb(17 19 24 / 0.06);
}

.public-inline-search-band h2,
.public-seller-value-panel h2,
.public-returning-consumer-panel h2 {
  margin: 0;
  color: #111318;
  font-size: clamp(26px, 3vw, 38px);
  line-height: 1.08;
}

.public-inline-search-band p,
.public-seller-value-panel p,
.public-returning-consumer-panel p {
  color: #5e6673;
  line-height: 1.55;
}

.public-inline-search-band form {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(120px, 0.5fr) minmax(90px, 0.35fr);
  gap: 10px;
  align-items: center;
}

.public-inline-search-band form .public-search-autocomplete,
.public-inline-search-band input,
.public-inline-search-band select {
  min-width: 0;
  width: 100%;
}

.public-inline-search-band form .btn,
.public-inline-search-band select {
  min-height: 46px;
}

.public-seller-value-panel {
  align-items: start;
  grid-template-columns: minmax(0, 0.82fr) minmax(320px, 0.78fr);
}

.public-seller-value-panel .public-cma-card {
  padding: 0;
}

.public-returning-consumer-panel {
  grid-template-columns: auto minmax(0, 1fr) auto;
}

.public-returning-consumer-panel > svg {
  width: 42px;
  height: 42px;
  color: var(--nex-red);
}

.public-returning-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.public-about-tech-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.public-about-tech-grid article {
  display: grid;
  gap: 10px;
  min-height: 170px;
  padding: 18px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 14px 40px rgb(17 19 24 / 0.055);
}

.public-about-tech-grid svg {
  color: var(--nex-red);
}

.public-about-tech-grid strong {
  color: #111318;
  font-size: 18px;
}

.public-about-tech-grid span {
  color: #5e6673;
  line-height: 1.5;
}

.public-contact-route-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 18px 0;
}

.public-contact-route-grid button {
  min-height: 145px;
  text-align: left;
  transition: transform 160ms ease, box-shadow 160ms ease;
}

.public-info-form-copy {
  display: grid;
  align-content: center;
  gap: 12px;
}

.public-info-form-copy .public-preapproval-link {
  width: fit-content;
}

@media (max-width: 1060px) {
  .public-header {
    grid-template-columns: 1fr;
  }

  .public-nav {
    justify-content: start;
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: 4px;
  }

  .public-hero,
  .public-intelligence-grid,
  .public-split-section,
  .public-sync-proof-panel,
  .public-detail-hero,
  .public-detail-grid,
  .public-agent-hero,
  .public-agent-directory-head,
  .public-current-site-intro,
  .public-idx-map-shell,
  .idx-lead-grid,
  .public-recruiting-hero,
  .public-recruiting-content-band,
  .public-recruiting-lead-split,
  .public-calculator-grid,
  .recruiting-seo-grid,
  .public-tech-console,
  .public-search-hero-head,
  .public-search-portal-grid,
  .public-search-support,
  .public-search-journey,
  .public-platform-workflow,
  .public-workflow-band,
  .public-platform-hero,
  .public-inner-tech-hero,
  .public-seo-search-hero {
    grid-template-columns: 1fr;
  }

  .public-home-search {
    grid-template-columns: 1fr;
    border-radius: 28px;
  }

  .public-home-search-row {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .public-card-grid,
  .public-agent-grid,
  .public-listing-grid,
  .public-areas-grid,
  .public-market-card-grid,
  .public-search-category-grid,
  .public-sync-proof-grid,
  .public-agent-site-grid,
  .public-agent-profile-console,
  .public-path-strip,
  .public-search-platform-strip,
  .public-directory-command-row,
  .public-platform-module-grid,
  .public-contact-route-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .public-consumer-paths,
  .public-home-lead-capture,
  .public-detail-support-grid {
    grid-template-columns: 1fr;
  }

  .public-agent-recruiting-cta {
    display: grid;
  }

  .public-seo-filter-bar {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-market-rate-grid,
  .nex-market-signal-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .public-recruiting-platform-grid,
  .public-recruiting-plan-grid,
  .public-faq-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .public-search-panel,
  .public-agent-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

  .idx-search-head {
    display: grid;
  }
}

@media (max-width: 680px) {
  .public-header-wrap {
    position: static;
    padding-top: 52px;
  }

  .market-pulse-ticker {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 80;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 10px;
    min-height: 52px;
    padding: 7px 12px;
    border-bottom: 1px solid rgb(255 255 255 / 0.14);
    transform: translateZ(0);
  }

  .market-pulse-label {
    justify-content: flex-start;
    gap: 7px;
    font-size: 9px;
    letter-spacing: 0.055em;
  }

  .market-pulse-label em {
    display: none;
  }

  .market-pulse-ticker > small {
    display: none;
  }

  .market-pulse-marquee {
    width: 100%;
    min-height: 36px;
    mask-image: linear-gradient(90deg, black 0%, black 88%, transparent 100%);
    -webkit-mask-image: linear-gradient(90deg, black 0%, black 88%, transparent 100%);
  }

  .market-pulse-marquee > div {
    gap: 10px;
    padding-left: 0;
    animation-duration: 96s;
  }

  .market-pulse-marquee span {
    min-height: 34px;
    padding: 0 12px;
    font-size: 11px;
  }

  .market-pulse-marquee i {
    font-size: 8px;
  }

  .public-topbar {
    justify-content: center;
    flex-wrap: wrap;
    padding-inline: 14px;
  }

  .public-topbar span:first-child {
    width: 100%;
    margin-right: 0;
    text-align: center;
  }

  .public-header {
    padding: 14px;
  }

  .public-header-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .public-hero {
    padding: 14px;
  }

  .public-site-main-hero {
    min-height: 510px;
    padding: 72px 14px 42px;
  }

  .public-main-hero-logo {
    width: min(190px, 62vw);
  }

  .public-hero-simple-search {
    padding: 10px;
    border-radius: 18px;
  }

  .public-hero-simple-search-row {
    grid-template-columns: 1fr;
    border-radius: 14px;
  }

  .public-hero-simple-search-row input {
    min-height: 54px;
    padding-inline: 16px;
    font-size: 16px;
  }

  .public-hero-simple-search-row button {
    min-height: 50px;
  }

  .public-hero-filter-row {
    grid-template-columns: 1fr 1fr;
  }

  .public-more-filter-button {
    grid-column: 1 / -1;
  }

  .public-hero-heading h1 {
    font-size: clamp(34px, 11vw, 48px);
    line-height: 1;
  }

  .public-new-era-band h1 {
    letter-spacing: 0.08em;
  }

  .public-new-era-band h2 {
    letter-spacing: 0.07em;
  }

  .public-path-strip {
    width: calc(100% - 28px);
    margin-top: -6px;
    border-radius: 14px;
  }

  .idx-search-card {
    padding: 16px;
    border-radius: 20px;
  }

  .idx-hosted-panel {
    min-height: 220px;
    padding: 22px;
  }

  .idx-search-frame-wrap iframe {
    min-height: 560px;
  }

  .public-hero-copy {
    min-height: auto;
    border-radius: 22px;
    padding: 24px;
  }

  .public-hero-copy h1,
  .public-page-head h1,
  .public-agent-hero h1,
  .public-detail-hero h1,
  .public-platform-hero h1,
  .public-inner-hero-copy h1 {
    font-size: 34px;
    line-height: 1.02;
  }

  .public-card-grid,
  .public-agent-grid,
  .public-listing-grid,
  .public-listing-grid.compact,
  .public-areas-grid,
  .public-market-card-grid,
  .public-search-category-grid,
  .public-sync-proof-grid,
  .public-agent-site-grid,
  .public-agent-profile-console,
  .public-path-strip,
  .public-signal-grid,
  .public-recruiting-platform-grid,
  .public-recruiting-plan-grid,
  .public-faq-grid,
  .public-recruiting-highlight-row,
  .public-feature-list,
  .public-benefit-grid,
  .public-legal-grid,
  .public-mini-grid,
  .public-form-row.three,
  .public-search-panel,
  .public-search-command .public-search-panel,
  .public-search-platform-strip,
  .public-directory-command-row,
  .public-platform-module-grid,
  .public-contact-route-grid,
  .public-agent-filters,
  .public-form-row,
  .public-home-search-row,
  .public-listing-card-actions,
  .recruiting-editor-grid,
  .recruiting-plan-mini-grid,
  .recruiting-lead-list article,
  .public-plan-result-list article {
    grid-template-columns: 1fr;
  }

  .public-similar-homes-panel {
    display: grid;
    align-items: start;
  }

  .public-similar-homes-panel > div:last-child {
    justify-content: stretch;
  }

  .public-similar-homes-panel .btn {
    width: 100%;
    justify-content: center;
  }

  .public-detail-page {
    padding-bottom: 92px;
  }

  .public-detail-sticky-cta {
    position: fixed;
    left: 12px;
    right: 12px;
    bottom: 12px;
    z-index: 180;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
    padding: 8px;
    border: 1px solid rgb(17 19 24 / 0.08);
    border-radius: 18px;
    background: rgb(255 255 255 / 0.94);
    box-shadow: 0 18px 48px rgb(17 19 24 / 0.20);
    backdrop-filter: blur(14px);
  }

  .public-detail-sticky-cta button {
    display: inline-flex;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 0;
    border-radius: 13px;
    background: #111318;
    color: #fff;
    font-weight: 950;
  }

  .public-detail-sticky-cta button:first-child {
    background: var(--nex-red);
  }

  .public-seo-filter-bar,
  .public-seo-fallback-panel,
  .public-related-searches {
    display: grid;
    grid-template-columns: 1fr;
  }

  .public-related-searches > div:last-child {
    justify-content: stretch;
  }

  .public-related-searches button,
  .public-seo-filter-bar .btn {
    width: 100%;
    justify-content: center;
  }

  .public-listing-grid.list-view .public-listing-card {
    grid-template-columns: 1fr;
  }

  .public-listing-grid.list-view .public-listing-photo {
    min-height: 0;
    aspect-ratio: 1.45;
  }

  .nex-market-rate-grid,
  .nex-market-signal-grid {
    grid-template-columns: 1fr;
  }

  .nex-market-pulse-actions {
    justify-content: start;
  }

  .public-workflow-timeline article {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: start;
  }

  .public-workflow-timeline span {
    grid-column: 2;
  }

  .public-search-command-main {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .public-search-command-main .btn {
    grid-column: 1 / -1;
    width: 100%;
  }

  .public-results-head {
    display: grid;
    align-items: start;
  }

  .public-results-actions {
    justify-content: start;
  }

  .public-search-launch-card,
  .public-search-map-card,
  .public-search-readiness-panel {
    border-radius: 22px;
  }

  .public-search-map-card {
    min-height: auto;
  }

  .public-search-map-toolbar {
    align-items: start;
    flex-direction: column;
  }

  .public-search-map-stage {
    min-height: 330px;
  }

  .public-detail-gallery > div {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .public-compliance-card,
  .public-compliance-card.compact {
    grid-template-columns: 1fr;
  }

  .public-compliance-logos {
    justify-content: start;
  }

  .public-recruiting-hero,
  .public-recruiting-lead-form,
  .public-calculator-form,
  .public-calculator-results,
  .public-platform-hero > div:first-child,
  .public-inner-hero-copy,
  .public-platform-device,
  .public-inner-command-panel,
  .public-search-journey,
  .public-platform-workflow,
  .public-workflow-band,
  .public-platform-support-band,
  .public-info-system-band,
  .public-info-form-band {
    border-radius: 22px;
    padding: 18px;
  }

  .public-sms-proof-band {
    grid-template-columns: 1fr;
  }

  .public-home-search {
    padding: 12px;
    border-radius: 24px;
  }

  .public-search-main-field {
    border-radius: 18px;
  }

  .public-home-search select,
  .public-home-search .btn {
    border-radius: 16px;
  }

  .public-live-map {
    min-height: 330px;
  }

  .public-tech-console-copy,
  .public-agent-site-preview {
    border-radius: 22px;
  }

  .public-tech-console-copy {
    min-height: auto;
    padding: 22px;
  }

  .public-agent-card-top,
  .public-agent-market-row {
    align-items: start;
  }

  .public-agent-card-top {
    flex-direction: column;
  }

  .public-map-pin span {
    display: none;
  }

  .public-idx-map-shell,
  .public-map-console {
    border-radius: 22px;
  }

  .public-section,
  .public-page,
  .public-detail-page,
  .public-agent-profile,
  .public-split-section {
    width: calc(100% - 28px);
    padding: 22px 0;
  }

  .public-section-head,
  .public-footer {
    grid-template-columns: 1fr;
    display: grid;
  }

  .public-section-head.compact small {
    text-align: left;
  }

  .public-footer-links {
    justify-content: start;
  }

  .public-lead-gate-backdrop {
    align-items: end;
    padding: 12px;
  }

  .public-lead-gate-modal {
    max-height: 88vh;
    padding: 18px;
    border-radius: 22px;
  }

  .lead-gate-form-grid {
    grid-template-columns: 1fr;
  }

  .lead-gate-listing,
  .lead-gate-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .lead-gate-actions .btn {
    width: 100%;
  }
}

.nex-chat-app {
  grid-template-columns: minmax(320px, 390px) minmax(0, 1fr);
  gap: 0;
  min-height: calc(100vh - 120px);
  padding-top: 0;
  overflow: hidden;
  border: 1px solid #dfe4ee;
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 22px 60px rgba(15, 23, 42, 0.12);
}

.nex-chat-app .nex-chat-sidebar {
  gap: 0;
  padding: 0;
  overflow: auto;
  border: 0;
  border-right: 1px solid #e4e8f0;
  background: #ffffff;
  box-shadow: none;
}

.nex-chat-topbar {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 44px;
  gap: 10px;
  align-items: center;
  padding: 18px 18px 14px;
  background: linear-gradient(135deg, #111827, #25304a 62%, #e30613);
  color: #ffffff;
}

.nex-chat-brand {
  display: grid;
  justify-items: center;
  min-width: 0;
  text-align: center;
}

.nex-chat-brand strong {
  font-size: 20px;
  font-weight: 950;
}

.nex-chat-brand small {
  color: rgba(255, 255, 255, 0.72);
  font-size: 11px;
  font-weight: 850;
}

.nex-chat-icon-button {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  border: 0;
  background: rgba(255, 255, 255, 0.12);
  color: #ffffff;
}

.nex-chat-icon-button.is-static {
  cursor: default;
}

.nex-chat-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  background: #25304a;
}

.nex-chat-tabs button {
  display: grid;
  min-height: 58px;
  place-items: center;
  gap: 4px;
  border: 0;
  border-bottom: 3px solid transparent;
  background: transparent;
  color: rgba(255, 255, 255, 0.7);
  font-size: 12px;
  font-weight: 900;
}

.nex-chat-tabs button.active {
  border-bottom-color: #ffffff;
  color: #ffffff;
}

.nex-chat-tabs svg {
  width: 19px;
  height: 19px;
}

.nex-chat-search {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  margin: 16px;
  border: 1px solid #d8dde8;
  background: #f8fafc;
  padding: 12px 14px;
}

.nex-chat-search svg {
  color: #8b93a1;
}

.nex-chat-search input {
  min-width: 0;
  border: 0;
  background: transparent;
  color: #111827;
  font-size: 15px;
  outline: 0;
}

.nex-chat-app .nex-chat-section-heading {
  padding: 11px 18px;
  background: #edf2ff;
  color: #7a8495;
  letter-spacing: 0.06em;
}

.nex-chat-app .soft-heading {
  margin-top: 8px;
  background: #f5f7fb;
}

.nex-chat-app .chat-list-modern {
  gap: 0;
}

.nex-chat-list-row {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 74px;
  width: 100%;
  border: 0;
  border-bottom: 1px solid #edf0f5;
  border-radius: 0;
  background: #ffffff;
  color: #1f2937;
  padding: 12px 16px;
  text-align: left;
}

.nex-chat-list-row.active {
  background: #fff5f6;
  box-shadow: inset 4px 0 0 var(--nex-red);
}

.nex-chat-list-row.admin-only {
  background: linear-gradient(90deg, #ffffff, #fff9fa);
}

.nex-chat-row-icon,
.nex-chat-list-row .mini-avatar {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 50%;
  background: #111827;
  color: #ffffff;
}

.nex-chat-list-row.admin-only .nex-chat-row-icon {
  background: var(--nex-red);
}

.nex-chat-row-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.nex-chat-row-copy strong {
  min-width: 0;
  overflow: hidden;
  color: #1f2937;
  font-size: 16px;
  font-weight: 950;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nex-chat-row-copy small {
  min-width: 0;
  overflow: hidden;
  color: #8a93a3;
  font-size: 12px;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nex-chat-row-meta {
  display: grid;
  justify-items: end;
  gap: 4px;
  min-width: 50px;
}

.nex-chat-row-meta small {
  color: #969daa;
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}

.nex-chat-row-meta em {
  display: inline-grid;
  min-width: 24px;
  height: 24px;
  place-items: center;
  border-radius: 999px;
  background: var(--nex-red);
  color: #ffffff;
  padding: 0 7px;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
}

.nex-chat-row-meta b {
  border: 1px solid rgba(227, 6, 19, 0.2);
  border-radius: 999px;
  background: rgba(227, 6, 19, 0.08);
  color: var(--nex-red);
  padding: 3px 7px;
  font-size: 10px;
  font-weight: 950;
}

.nex-chat-empty-list {
  margin: 0;
  padding: 18px;
  color: #8a93a3;
  font-size: 13px;
  font-weight: 800;
}

.public-search-support {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(280px, 0.55fr);
  gap: 14px;
  align-items: stretch;
  margin: 18px 0;
}

.public-live-idx-card {
  display: grid;
  align-content: center;
  gap: 10px;
  padding: 18px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 16px;
  background:
    radial-gradient(circle at 86% 16%, rgb(227 6 19 / 0.13), transparent 34%),
    linear-gradient(135deg, #111318, #242935);
  color: #fff;
  box-shadow: 0 14px 38px rgb(17 19 24 / 0.09);
}

.public-live-idx-card > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  padding: 8px 11px;
  border-radius: 999px;
  background: rgb(255 255 255 / 0.10);
  color: #fff;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.public-live-idx-card i {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #24d481;
  box-shadow: 0 0 0 5px rgb(36 212 129 / 0.14);
}

.public-live-idx-card strong {
  font-size: 20px;
}

.public-live-idx-card p {
  margin: 0;
  color: rgb(255 255 255 / 0.72);
  line-height: 1.55;
}

.public-live-idx-card div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.public-live-idx-card em {
  padding: 7px 9px;
  border-radius: 999px;
  background: rgb(255 255 255 / 0.10);
  color: rgb(255 255 255 / 0.82);
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.nex-chat-app .chat-dm-filter {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding: 12px 16px;
}

.nex-chat-app .chat-dm-filter button {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  background: #f8fafc;
  white-space: nowrap;
}

.nex-chat-app .chat-dm-filter button.active {
  border-color: rgba(227, 6, 19, 0.35);
  background: #fff5f6;
  color: var(--nex-red);
}

.nex-chat-app .nex-channel-create {
  padding: 12px 16px;
}

.nex-chat-app .nex-channel-create input,
.nex-chat-app .nex-channel-create button {
  min-height: 38px;
  border-radius: 0;
}

.nex-chat-app .nex-chat-main {
  border: 0;
  background: #f5f7fb;
  box-shadow: none;
}

.nex-chat-app .nex-chat-header {
  min-height: 92px;
  background: #ffffff;
}

.nex-chat-app .nex-chat-header h3 {
  font-size: clamp(22px, 3vw, 30px);
}

.nex-chat-app .nex-chat-stream {
  min-height: 460px;
  background: linear-gradient(180deg, #f7f9fc, #eef2f7);
}

.nex-chat-readonly-note {
  display: flex;
  gap: 9px;
  align-items: center;
  border: 1px solid rgba(227, 6, 19, 0.18);
  background: #fff5f6;
  color: #8f1019;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 850;
}

.nex-chat-composer.composer-disabled textarea,
.nex-chat-composer.composer-disabled .chat-attach-button,
.nex-chat-composer.composer-disabled .emoji-row button {
  opacity: 0.55;
  cursor: not-allowed;
}

.nex-chat-app {
  height: calc(100dvh - 132px);
  max-height: calc(100dvh - 132px);
  min-height: 640px;
}

.nex-chat-app .nex-chat-main {
  min-height: 0;
}

.nex-chat-app .nex-chat-stream {
  min-height: 0;
  scroll-behavior: smooth;
}

.nex-chat-app .nex-chat-stream::before {
  content: "";
  flex: 1 0 auto;
  min-height: 12px;
}

.nex-chat-app .nex-chat-composer {
  flex-shrink: 0;
}

@media (max-width: 980px) {
  .nex-chat-app {
    grid-template-columns: 1fr;
    height: auto;
    max-height: none;
    min-height: auto;
  }

  .nex-chat-app .nex-chat-sidebar {
    max-height: none;
    border-right: 0;
    border-bottom: 1px solid #e4e8f0;
  }

  .nex-chat-app .nex-chat-main {
    min-height: min(620px, calc(100dvh - 112px));
  }

  .nex-chat-app .nex-chat-stream {
    min-height: 320px;
    max-height: calc(100dvh - 330px);
  }
}

@media (max-width: 620px) {
  .nex-chat-app {
    border-radius: 0;
  }

  .nex-chat-topbar {
    padding-top: 16px;
  }

  .nex-chat-tabs button {
    min-height: 52px;
    font-size: 11px;
  }

  .nex-chat-list-row {
    min-height: 68px;
    grid-template-columns: 38px minmax(0, 1fr) auto;
  }

  .nex-chat-row-icon,
  .nex-chat-list-row .mini-avatar {
    width: 38px;
    height: 38px;
  }

  .nex-chat-app .nex-chat-header {
    align-items: flex-start;
    flex-direction: column;
  }

  .nex-chat-app .composer-row {
    grid-template-columns: 40px minmax(0, 1fr);
  }

  .nex-chat-app .composer-row .btn {
    grid-column: 1 / -1;
    width: 100%;
  }

  .chat-mention-menu {
    right: 12px;
    left: 12px;
    width: auto;
    max-height: 280px;
  }

  .chat-mention-menu-header {
    align-items: flex-start;
    flex-direction: column;
  }

  .chat-mention-menu-header small {
    text-align: left;
  }
}

.access-command-center {
  display: grid;
  gap: 14px;
}

.access-command-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background:
    linear-gradient(120deg, rgba(227, 6, 19, 0.08), transparent 34%),
    #ffffff;
  padding: 18px;
  box-shadow: 0 16px 42px rgba(17, 19, 24, 0.055);
}

.access-command-header h3 {
  margin: 0;
  color: #101217;
  font-size: clamp(24px, 3.8vw, 36px);
  font-weight: 950;
  line-height: 1;
}

.access-command-header p:not(.eyebrow) {
  max-width: 780px;
  margin: 7px 0 0;
  color: #5d6674;
  font-size: 14px;
  font-weight: 750;
  line-height: 1.45;
}

.access-command-actions,
.user-table-actions,
.user-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.access-command-actions {
  justify-content: flex-end;
}

.access-summary-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
  gap: 10px;
}

.access-summary-strip > span {
  display: grid;
  gap: 5px;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background: #ffffff;
  padding: 13px 14px;
  box-shadow: 0 12px 28px rgba(17, 19, 24, 0.045);
}

.access-summary-strip > span {
  color: #657081;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.access-summary-strip strong {
  color: #101217;
  font-size: 27px;
  font-weight: 950;
  line-height: 1;
}

.access-create-panel,
.user-management-toolbar,
.user-bulk-toolbar,
.user-management-table-shell {
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 14px 34px rgba(17, 19, 24, 0.052);
}

.access-create-panel {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 14px;
}

.access-form-note {
  grid-column: 1 / -1;
  display: grid;
  gap: 4px;
  border: 1px solid rgba(227, 6, 19, 0.16);
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(227, 6, 19, 0.08), rgba(255, 255, 255, 0.92));
  padding: 11px 12px;
  color: #3a1015;
  font-size: 12px;
  line-height: 1.4;
}

.access-form-note strong {
  color: #101217;
  font-size: 13px;
  font-weight: 950;
}

.user-reconcile-alert,
.user-reconcile-panel {
  border: 1px solid rgba(227, 6, 19, 0.18);
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(255, 245, 246, 0.96), #ffffff 58%);
  box-shadow: 0 16px 36px rgba(17, 19, 24, 0.06);
}

.user-reconcile-alert {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 13px 14px;
}

.user-reconcile-alert > svg {
  color: var(--nex-red);
}

.user-reconcile-alert > div:nth-child(2),
.user-reconcile-row > span {
  display: grid;
  gap: 3px;
}

.user-reconcile-alert strong,
.user-reconcile-row strong {
  color: #101217;
  font-size: 13px;
  font-weight: 950;
}

.user-reconcile-alert span,
.user-reconcile-alert small,
.user-reconcile-row small,
.user-reconcile-row em {
  color: #5d6674;
  font-size: 11px;
  font-weight: 850;
  line-height: 1.4;
}

.user-reconcile-actions,
.user-reconcile-row > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.user-reconcile-panel {
  display: grid;
  gap: 12px;
  padding: 14px;
}

.user-reconcile-panel h4 {
  margin: 0;
  color: #101217;
  font-size: 18px;
  font-weight: 950;
}

.user-reconcile-panel p {
  max-width: 860px;
  margin: 4px 0 0;
  color: #5f6978;
  font-size: 12px;
  font-weight: 780;
  line-height: 1.45;
}

.user-reconcile-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 8px;
}

.user-reconcile-stats span {
  display: grid;
  gap: 3px;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background: #ffffff;
  padding: 10px;
  color: #667083;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.user-reconcile-stats strong {
  color: #101217;
  font-size: 22px;
  font-weight: 950;
  line-height: 1;
}

.user-reconcile-batch {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border: 1px solid rgba(227, 6, 19, 0.22);
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(227, 6, 19, 0.08), rgba(255, 255, 255, 0.92));
  padding: 12px;
}

.user-reconcile-batch > div {
  display: grid;
  gap: 3px;
  min-width: min(100%, 420px);
}

.user-reconcile-batch strong {
  color: #101217;
  font-size: 13px;
  font-weight: 950;
}

.user-reconcile-batch span {
  color: #5d6674;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.4;
}

.user-reconcile-batch small {
  color: #101217;
  font-size: 11px;
  font-weight: 900;
  line-height: 1.4;
}

.user-reconcile-batch-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.user-reconcile-list {
  display: grid;
  gap: 8px;
}

.user-reconcile-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 10px;
  align-items: center;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.84);
  padding: 10px;
}

.user-reconcile-empty {
  display: grid;
  gap: 4px;
  border: 1px dashed rgba(17, 19, 24, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.74);
  padding: 12px;
}

.user-reconcile-empty strong {
  color: #101217;
  font-size: 13px;
  font-weight: 950;
}

.user-reconcile-empty span {
  color: #667083;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
}

.access-create-panel .field:has(textarea),
.access-create-panel .field textarea,
.access-create-panel .toggle-field,
.access-create-panel .btn {
  grid-column: 1 / -1;
}

.access-create-panel .user-headshot-field,
.access-create-panel .field:nth-child(9),
.access-create-panel .field:nth-child(15),
.access-create-panel .field:nth-child(16),
.access-create-panel .field:nth-child(17),
.access-create-panel .field:nth-child(18),
.access-create-panel .field:nth-child(19),
.access-create-panel .field:nth-child(20),
.access-create-panel .field:nth-child(21) {
  grid-column: auto;
}

.user-management-toolbar {
  display: grid;
  gap: 12px;
  padding: 14px;
}

.user-status-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.user-status-tabs button {
  min-height: 34px;
  border: 1px solid rgba(17, 19, 24, 0.1);
  border-radius: 999px;
  background: #f8fafc;
  color: #343b47;
  padding: 0 12px;
  font-size: 12px;
  font-weight: 900;
}

.user-status-tabs button.active {
  border-color: rgba(227, 6, 19, 0.34);
  background: #fff4f5;
  color: var(--nex-red);
}

.user-management-filter-grid {
  display: grid;
  grid-template-columns: minmax(240px, 1.5fr) repeat(4, minmax(130px, 1fr));
  gap: 10px;
  align-items: end;
}

.user-management-filter-grid .field {
  min-width: 0;
}

.user-bulk-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  padding: 12px 14px;
}

.user-bulk-toolbar > span {
  color: #596273;
  font-size: 12px;
  font-weight: 900;
  margin-right: auto;
}

.user-bulk-toolbar > div:first-child {
  display: flex;
  align-items: baseline;
  gap: 6px;
  margin-right: auto;
  color: #657081;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.user-bulk-toolbar > div:first-child strong {
  color: #111318;
  font-size: 18px;
  font-weight: 950;
}

.user-bulk-toolbar select {
  min-height: 38px;
  border: 1px solid rgba(17, 19, 24, 0.12);
  border-radius: 8px;
  background: #ffffff;
  padding: 0 10px;
  color: #202733;
  font-size: 12px;
  font-weight: 850;
}

.user-management-table-shell {
  overflow-x: auto;
  padding-bottom: 4px;
}

.user-management-table {
  width: 100%;
  min-width: 1480px;
  border-collapse: collapse;
}

.user-management-table th,
.user-management-table td {
  border-bottom: 1px solid rgba(17, 19, 24, 0.075);
  padding: 10px 11px;
  text-align: left;
  vertical-align: middle;
}

.user-management-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: #f8fafc;
}

.user-management-table th button {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border: 0;
  background: transparent;
  color: #596273;
  padding: 0;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.user-management-table td {
  color: #242b36;
  font-size: 12px;
  font-weight: 780;
  line-height: 1.35;
}

.user-management-table tbody tr:hover {
  background: #fffafb;
}

.user-table-agent {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  min-width: 250px;
  align-items: center;
  gap: 10px;
}

.user-table-agent span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.user-table-agent strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.user-table-agent small {
  overflow: hidden;
  color: #667081;
  font-size: 11px;
  font-weight: 750;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.user-table-geography {
  display: grid;
  gap: 2px;
  min-width: 170px;
}

.user-table-geography strong {
  color: #111318;
  font-size: 12px;
}

.user-table-geography span {
  color: #4d5867;
  font-size: 11px;
}

.user-table-geography small {
  color: #7a8492;
  font-size: 10px;
}

.access-pill {
  display: inline-flex;
  min-height: 25px;
  align-items: center;
  width: fit-content;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 999px;
  background: #f4f6f8;
  color: #303844;
  padding: 4px 9px;
  font-size: 11px;
  font-weight: 950;
  white-space: nowrap;
}

.access-pill.green {
  border-color: rgba(20, 132, 84, 0.22);
  background: #eefaf5;
  color: #0f7a4d;
}

.access-pill.red {
  border-color: rgba(227, 6, 19, 0.18);
  background: #fff5f6;
  color: var(--nex-red);
}

.access-pill.amber {
  border-color: rgba(217, 119, 6, 0.22);
  background: #fffbeb;
  color: #b45309;
}

.access-pill.muted {
  color: #596273;
  background: #eef1f5;
}

.missing-profile-note {
  display: block;
  margin-top: 5px;
  color: #8a6819;
  font-size: 10px;
  font-weight: 900;
}

.warning-text {
  margin: 8px 0 0;
  border-left: 3px solid #d97706;
  background: #fffbeb;
  color: #744b08;
  padding: 8px 10px;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.45;
}

.user-detail-drawer {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: flex;
  justify-content: flex-end;
}

.user-detail-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(17, 19, 24, 0.42);
  backdrop-filter: blur(3px);
}

.user-detail-panel {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  width: min(720px, 100%);
  max-height: 100vh;
  background: #f7f9fc;
  box-shadow: -20px 0 55px rgba(17, 19, 24, 0.22);
}

.user-detail-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-bottom: 1px solid rgba(17, 19, 24, 0.08);
  background: #ffffff;
  padding: 18px;
}

.user-detail-header h3 {
  margin: 0;
  color: #101217;
  font-size: 24px;
  font-weight: 950;
  line-height: 1.05;
}

.user-detail-header p {
  margin: 4px 0 0;
  color: #667081;
  font-size: 12px;
  font-weight: 800;
}

.user-detail-scroll {
  display: grid;
  gap: 12px;
  overflow-y: auto;
  padding: 14px;
}

.user-detail-section {
  display: grid;
  gap: 12px;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background: #ffffff;
  padding: 14px;
  box-shadow: 0 14px 30px rgba(17, 19, 24, 0.045);
}

.user-detail-section-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid rgba(17, 19, 24, 0.06);
  padding-bottom: 10px;
}

.user-detail-section-head h4 {
  margin: 0;
  color: #111318;
  font-size: 15px;
  font-weight: 950;
}

.user-detail-section-head span {
  color: #7a8494;
  font-size: 11px;
  font-weight: 850;
}

.user-detail-section .user-edit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.user-routing-snapshot {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.user-routing-snapshot span {
  display: grid;
  gap: 5px;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
  color: #303844;
  font-size: 12px;
  font-weight: 850;
}

.user-routing-snapshot strong {
  color: #6b7280;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.user-routing-snapshot em {
  font-style: normal;
}

.user-profile-link-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  border: 1px dashed rgba(17, 19, 24, 0.14);
  border-radius: 8px;
  background: #f8fafc;
  padding: 10px;
  color: #303844;
  font-size: 12px;
  font-weight: 850;
}

.user-profile-link-row svg {
  color: var(--nex-red);
}

.user-profile-link-row em {
  color: #687386;
  font-style: normal;
}

.welcome-meta-card {
  display: grid;
  gap: 10px;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background: linear-gradient(135deg, #ffffff, #f8fafc);
  padding: 12px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.welcome-meta-card > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.welcome-meta-card > div:first-child {
  justify-content: flex-start;
}

.welcome-meta-card svg {
  color: var(--nex-red);
  flex: 0 0 auto;
}

.welcome-meta-card span {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.welcome-meta-card strong {
  color: #111318;
  font-size: 12px;
  font-weight: 950;
}

.welcome-meta-card small,
.welcome-meta-card p {
  margin: 0;
  color: #6b7280;
  font-size: 11px;
  line-height: 1.45;
}

.welcome-meta-card em {
  border-radius: 999px;
  background: rgba(17, 19, 24, 0.06);
  color: #303844;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  padding: 5px 8px;
  white-space: nowrap;
}

.welcome-meta-card.success {
  border-color: rgba(22, 163, 74, 0.28);
  background: linear-gradient(135deg, rgba(22, 163, 74, 0.08), #ffffff);
}

.welcome-meta-card.error {
  border-color: rgba(220, 38, 38, 0.24);
  background: linear-gradient(135deg, rgba(220, 38, 38, 0.08), #ffffff);
}

.welcome-modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 140;
  display: grid;
  place-items: center;
  background: rgba(17, 19, 24, 0.52);
  padding: 18px;
  backdrop-filter: blur(5px);
}

.welcome-modal {
  display: grid;
  gap: 14px;
  width: min(680px, 100%);
  max-height: calc(100vh - 36px);
  overflow: auto;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 28px 80px rgba(17, 19, 24, 0.36);
  padding: 18px;
}

.welcome-modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.welcome-modal-header h3 {
  margin: 0;
  color: #101217;
  font-size: 24px;
  font-weight: 950;
  letter-spacing: 0;
}

.welcome-modal-header p {
  margin: 6px 0 0;
  color: #667085;
  font-size: 13px;
  line-height: 1.45;
}

.welcome-email-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.welcome-email-summary span {
  display: grid;
  gap: 4px;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background: #f8fafc;
  color: #374151;
  font-size: 12px;
  font-weight: 800;
  padding: 10px;
  overflow-wrap: anywhere;
}

.welcome-email-summary strong {
  color: #8b94a3;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.welcome-email-preview {
  display: grid;
  gap: 10px;
  border: 1px solid rgba(17, 19, 24, 0.08);
  border-radius: 8px;
  background: linear-gradient(180deg, #ffffff, #f8fafc);
  padding: 14px;
}

.welcome-email-preview > strong {
  color: #111318;
  font-size: 14px;
  font-weight: 950;
}

.welcome-email-preview pre {
  max-height: 260px;
  overflow: auto;
  margin: 0;
  white-space: pre-wrap;
  color: #303844;
  font-family: inherit;
  font-size: 12px;
  line-height: 1.55;
}

.welcome-modal-note {
  margin: 0;
  border-left: 3px solid var(--nex-red);
  background: rgba(220, 38, 38, 0.06);
  color: #424b5a;
  font-size: 12px;
  line-height: 1.5;
  padding: 10px 12px;
}

.welcome-send-status {
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(17, 19, 24, 0.1);
  border-radius: 8px;
  background: #f8fafc;
  color: #303844;
  font-size: 12px;
  font-weight: 900;
  padding: 10px 12px;
}

.welcome-send-status.success {
  border-color: rgba(22, 163, 74, 0.25);
  background: rgba(22, 163, 74, 0.08);
  color: #14532d;
}

.welcome-send-status.error {
  border-color: rgba(220, 38, 38, 0.22);
  background: rgba(220, 38, 38, 0.08);
  color: #991b1b;
}

.welcome-send-status.sending svg {
  animation: spin 0.9s linear infinite;
}

.welcome-modal-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
  border-top: 1px solid rgba(17, 19, 24, 0.08);
  padding-top: 12px;
}

.user-action-row {
  border-top: 1px solid rgba(17, 19, 24, 0.06);
  padding-top: 12px;
}

.user-profile-unsaved-note {
  margin: 10px 0 0;
  border-left: 3px solid #d97706;
  background: #fffbeb;
  color: #854d0e;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.45;
  padding: 9px 11px;
}

.user-profile-action-status {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
  border: 1px solid rgba(17, 19, 24, 0.1);
  background: #f8fafc;
  color: #303844;
  font-size: 12px;
  font-weight: 900;
  padding: 10px 12px;
}

.user-profile-action-status.success {
  border-color: rgba(22, 163, 74, 0.25);
  background: rgba(22, 163, 74, 0.08);
  color: #14532d;
}

.user-profile-action-status.error {
  border-color: rgba(220, 38, 38, 0.22);
  background: rgba(220, 38, 38, 0.08);
  color: #991b1b;
}

@media (max-width: 1100px) {
  .user-management-filter-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 780px) {
  .access-command-header,
  .user-detail-header,
  .user-detail-section-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .access-command-actions {
    justify-content: flex-start;
  }

  .user-management-filter-grid,
  .access-create-panel,
  .user-routing-snapshot,
  .user-detail-section .user-edit-grid {
    grid-template-columns: 1fr;
  }

  .welcome-email-summary {
    grid-template-columns: 1fr;
  }

  .welcome-modal-header,
  .welcome-meta-card > div {
    align-items: flex-start;
    flex-direction: column;
  }

  .user-detail-panel {
    width: 100%;
  }
}

/* Public consumer QA polish */
.public-page h1,
.public-detail-page h1,
.public-site-main-hero h1 {
  letter-spacing: 0;
}

.public-site-main-hero {
  min-height: clamp(560px, 78vh, 720px);
}

.public-site-main-hero-content {
  gap: 18px;
}

.public-hero-heading h1 {
  max-width: 860px;
  font-size: clamp(42px, 6vw, 76px);
  line-height: 0.98;
}

.public-hero-heading p {
  max-width: 720px;
  font-size: clamp(16px, 1.45vw, 20px);
}

.public-hero-simple-search {
  max-width: 1040px;
  border-radius: 20px;
  box-shadow: 0 24px 80px rgb(17 19 24 / 0.18);
}

.public-hero-simple-search-row input,
.public-search-command-main input,
.public-seo-filter-bar input,
.public-seo-filter-bar select,
.public-lead-form input,
.public-lead-form select,
.public-lead-form textarea {
  font-size: 15px;
}

.public-hero-simple-search-row button,
.public-hero-action-row .btn,
.public-results-actions .btn,
.public-listing-card-actions .btn,
.public-lead-form .btn,
.public-seo-filter-bar .btn {
  border-radius: 12px;
}

.public-featured-search-categories,
.public-market-grid-section,
.public-featured-listings-section,
.public-consumer-paths,
.public-home-lead-capture,
.public-agent-site-showcase,
.public-agent-recruiting-cta,
.public-search-seo-page .public-related-searches {
  padding-top: 18px;
  padding-bottom: 18px;
}

.public-search-category-grid button,
.public-market-card-grid button,
.public-listing-card,
.public-lead-form,
.public-consumer-paths article,
.public-home-lead-capture > article,
.public-seo-fallback-panel,
.public-map-fallback-card {
  border-radius: 14px;
}

.public-search-category-grid button,
.public-market-card-grid button {
  min-height: 134px;
}

.public-listing-card {
  overflow: hidden;
}

.public-listing-body h3 {
  margin: 4px 0 0;
  font-size: 17px;
  line-height: 1.25;
}

.public-listing-body p {
  margin: 0;
}

.public-listing-card-actions {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.public-listing-card-actions .btn {
  min-height: 40px;
  justify-content: center;
}

.public-search-command {
  z-index: 8;
}

.public-results-head {
  align-items: center;
  border-radius: 14px;
}

.public-view-toggle button {
  min-height: 38px;
}

.public-map-fallback-card {
  margin-top: 16px;
}

.public-detail-hero h1 {
  font-size: clamp(32px, 4.3vw, 56px);
  line-height: 1;
}

.public-detail-actions {
  gap: 9px;
}

.public-compliance-card {
  border-radius: 12px;
}

.public-compliance-text p,
.public-compliance-text small,
.public-compliance-text em {
  color: #596373;
}

@media (max-width: 980px) {
  .public-site-main-hero {
    min-height: auto;
    padding: 72px 0 44px;
  }

  .public-search-category-grid,
  .public-market-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .public-consumer-paths,
  .public-home-lead-capture {
    grid-template-columns: 1fr;
  }

  .public-results-head {
    align-items: stretch;
  }
}

@media (max-width: 640px) {
  .public-section,
  .public-page,
  .public-detail-page,
  .public-agent-profile,
  .public-split-section {
    width: min(100% - 24px, 1140px);
    padding: 18px 0;
  }

  .public-hero-heading h1 {
    font-size: clamp(36px, 11vw, 48px);
  }

  .public-hero-simple-search {
    padding: 12px;
  }

  .public-hero-filter-row,
  .public-seo-filter-bar,
  .public-search-command .public-search-panel {
    grid-template-columns: 1fr;
  }

  .public-search-category-grid,
  .public-market-card-grid {
    grid-template-columns: 1fr;
  }

  .public-listing-card-actions .btn span {
    display: inline;
  }

  .public-detail-sticky-cta {
    left: 12px;
    right: 12px;
    bottom: 12px;
  }
}

/* Public consumer simplification pass */
.public-site-main-hero {
  min-height: clamp(500px, 68vh, 640px);
  padding: clamp(56px, 8vw, 92px) 0 clamp(34px, 5vw, 56px);
}

.public-site-main-hero::before {
  background:
    linear-gradient(90deg, rgb(255 255 255 / 0.94), rgb(255 255 255 / 0.76) 48%, rgb(255 255 255 / 0.42)),
    radial-gradient(circle at 18% 18%, rgb(227 6 19 / 0.14), transparent 28%);
}

.public-site-main-hero-content {
  width: min(980px, calc(100% - 32px));
  align-items: flex-start;
  gap: 16px;
}

.public-main-hero-logo {
  max-width: 172px;
}

.public-hero-heading {
  gap: 8px;
}

.public-hero-heading h1 {
  max-width: 760px;
  font-size: clamp(38px, 5.8vw, 68px);
}

.public-hero-heading p {
  max-width: 640px;
  color: #38404b;
  font-size: clamp(15px, 1.35vw, 18px);
}

.public-hero-simple-search {
  width: min(920px, 100%);
  gap: 10px;
  padding: 12px;
  border-radius: 18px;
  border: 1px solid rgb(17 19 24 / 0.10);
  background: rgb(255 255 255 / 0.96);
  box-shadow: 0 22px 64px rgb(17 19 24 / 0.16);
}

.public-hero-simple-search-row {
  gap: 8px;
}

.public-hero-simple-search-row input {
  min-height: 58px;
  border-radius: 13px;
  background: #f7f9fb;
  font-size: clamp(16px, 1.5vw, 19px);
}

.public-hero-simple-search-row button {
  min-width: 132px;
  min-height: 58px;
  border-radius: 13px;
}

.public-hero-filter-row {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
}

.public-hero-filter-row select,
.public-more-filter-button {
  min-height: 40px;
  border-radius: 11px;
  border: 1px solid rgb(17 19 24 / 0.10);
  background: #fff;
  color: #2f3742;
  font-size: 13px;
  font-weight: 850;
}

.public-hero-chip-row {
  gap: 7px;
}

.public-hero-chip-row button {
  min-height: 34px;
  padding: 7px 10px;
  border-radius: 999px;
  background: #f4f6f8;
  color: #343c47;
  font-size: 12px;
}

.public-hero-concierge-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.public-hero-concierge-row button {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 8px 11px;
  border: 1px solid rgb(17 19 24 / 0.10);
  border-radius: 999px;
  background: #fff;
  color: #111318;
  font-size: 13px;
  font-weight: 900;
}

.public-hero-concierge-row button:first-child {
  border-color: rgb(227 6 19 / 0.22);
  color: var(--nex-red);
  background: rgb(227 6 19 / 0.06);
}

.public-featured-search-categories,
.public-market-grid-section,
.public-featured-listings-section {
  padding-top: 14px;
  padding-bottom: 14px;
}

.public-search-category-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.public-market-card-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.public-search-category-grid button,
.public-market-card-grid button {
  min-height: 118px;
  padding: 15px;
}

.public-agent-recruiting-cta {
  margin-bottom: 8px;
}

.public-modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgb(17 19 24 / 0.48);
  backdrop-filter: blur(10px);
}

.public-nia-floating-launcher {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 900;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-areas:
    "icon title"
    "icon copy";
  column-gap: 10px;
  align-items: center;
  max-width: min(330px, calc(100vw - 24px));
  min-height: 64px;
  border: 1px solid rgb(255 255 255 / 0.35);
  border-radius: 18px;
  background:
    linear-gradient(135deg, #111318, #242b34),
    #111318;
  color: #fff;
  padding: 10px 14px 10px 10px;
  box-shadow: 0 20px 54px rgb(17 19 24 / 0.28);
}

.public-nia-floating-launcher > span {
  grid-area: icon;
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 14px;
  background: var(--nex-red);
  color: #fff;
}

.public-nia-floating-launcher strong {
  grid-area: title;
  overflow: hidden;
  color: #fff;
  font-size: 14px;
  font-weight: 950;
  text-align: left;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.public-nia-floating-launcher small {
  grid-area: copy;
  color: rgb(255 255 255 / 0.74);
  font-size: 12px;
  font-weight: 750;
  text-align: left;
}

.public-nia-floating-launcher:hover {
  transform: translateY(-2px);
  box-shadow: 0 24px 64px rgb(17 19 24 / 0.34);
}

.public-nia-modal,
.public-home-value-modal {
  position: relative;
  width: min(620px, 100%);
  max-height: min(760px, calc(100dvh - 32px));
  overflow: auto;
  border: 1px solid rgb(255 255 255 / 0.28);
  border-radius: 22px;
  background:
    radial-gradient(circle at 90% 0%, rgb(227 6 19 / 0.12), transparent 30%),
    #ffffff;
  box-shadow: 0 34px 100px rgb(0 0 0 / 0.28);
  padding: 20px;
}

.public-modal-close {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 1px solid rgb(17 19 24 / 0.10);
  border-radius: 999px;
  background: #fff;
  color: #111318;
}

.public-nia-modal-head,
.public-home-value-head,
.public-nia-flow,
.public-home-value-flow,
.public-nia-result,
.public-home-value-result {
  display: grid;
  gap: 12px;
}

.public-nia-modal-head,
.public-home-value-head {
  padding-right: 44px;
}

.public-nia-modal-head span,
.public-home-value-head span,
.public-home-value-result > span {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 8px;
  color: var(--nex-red);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.public-nia-modal-head span i,
.public-home-value-head span i {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--nex-red);
  box-shadow: 0 0 0 5px rgb(227 6 19 / 0.12);
}

.public-nia-modal h2,
.public-home-value-modal h2 {
  margin: 0;
  font-size: clamp(28px, 4vw, 42px);
  line-height: 1.02;
}

.public-nia-modal p,
.public-home-value-modal p {
  margin: 0;
  color: #5f6976;
  line-height: 1.55;
}

.public-nia-chat-log {
  display: grid;
  align-content: start;
  gap: 10px;
  margin: 16px 0;
  max-height: 260px;
  overflow: auto;
  padding: 12px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 16px;
  background: #f8fafc;
}

.public-nia-bubble {
  max-width: 86%;
  border-radius: 16px;
  padding: 10px 12px;
  box-shadow: 0 10px 22px rgb(17 19 24 / 0.06);
}

.public-nia-bubble.assistant {
  justify-self: start;
  border: 1px solid rgb(17 19 24 / 0.08);
  background: #fff;
}

.public-nia-bubble.user {
  justify-self: end;
  background: #111318;
}

.public-nia-bubble.user p {
  color: #fff;
}

.public-nia-chat-controls {
  display: grid;
  gap: 12px;
  border-top: 1px solid rgb(17 19 24 / 0.08);
  background: #ffffff;
  padding-top: 12px;
}

.public-nia-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.public-nia-message-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

.public-nia-message-form input {
  min-height: 46px;
  border: 1px solid rgb(17 19 24 / 0.11);
  border-radius: 12px;
  padding: 10px 12px;
  color: #111318;
  font-weight: 760;
}

.public-nia-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.public-nia-options button {
  min-height: 44px;
  border: 1px solid rgb(17 19 24 / 0.10);
  border-radius: 12px;
  background: #f8fafc;
  color: #111318;
  font-weight: 900;
}

.public-nia-options button.active {
  border-color: rgb(227 6 19 / 0.34);
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red);
}

.public-nia-flow textarea,
.public-nia-contact-gate input,
.public-home-value-flow input {
  width: 100%;
  min-height: 46px;
  border: 1px solid rgb(17 19 24 / 0.11);
  border-radius: 12px;
  background: #fff;
  padding: 11px 12px;
  color: #111318;
  font-weight: 760;
}

.public-nia-flow textarea {
  resize: vertical;
  line-height: 1.5;
}

.public-nia-contact-gate,
.public-contact-required-card {
  display: grid;
  gap: 9px;
  padding: 12px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 14px;
  background: #f8fafc;
}

.public-nia-contact-gate strong,
.public-contact-required-card strong {
  color: #111318;
}

.public-nia-contact-gate span,
.public-contact-required-card span,
.public-home-value-result small {
  color: #66707d;
  line-height: 1.45;
  font-size: 13px;
}

.public-nia-result,
.public-home-value-result {
  padding: 14px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 16px;
  background: #f8fafc;
}

.public-nia-result > span {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  color: #16814a;
  font-weight: 950;
}

.public-nia-result > div,
.public-home-value-result > div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.public-home-value-result strong {
  color: #111318;
  font-size: clamp(30px, 5vw, 44px);
  line-height: 1;
}

.public-home-value-facts,
.public-cma-result-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.public-home-value-facts em,
.public-cma-result-facts em {
  border-radius: 999px;
  background: #eef2f7;
  color: #253044;
  padding: 7px 10px;
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
}

.public-home-value-comps,
.public-cma-comps {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 14px;
  background: #ffffff;
}

.public-home-value-comps article,
.public-cma-comps article {
  display: grid;
  gap: 3px;
  padding: 9px;
  border-radius: 10px;
  background: #f8fafc;
}

.public-home-value-comps span,
.public-cma-comps strong {
  color: #111318;
  font-weight: 900;
}

.public-home-value-comps em,
.public-cma-comps small {
  color: #647084;
  font-size: 12px;
  font-style: normal;
  line-height: 1.4;
}

@media (max-width: 820px) {
  .public-site-main-hero {
    padding-top: 48px;
  }

  .public-hero-filter-row,
  .public-search-category-grid,
  .public-market-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .public-agent-cta-grid,
  .public-agent-widget-grid,
  .public-agent-page-grid,
  .public-agent-testimonial-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .public-site-main-hero-content {
    width: min(100% - 24px, 980px);
  }

  .public-hero-simple-search-row {
    grid-template-columns: 1fr;
  }

  .public-hero-simple-search-row button {
    width: 100%;
  }

  .public-hero-filter-row,
  .public-search-category-grid,
  .public-market-card-grid,
  .public-nia-options,
  .public-nia-message-form {
    grid-template-columns: 1fr;
  }

  .public-modal-backdrop {
    align-items: end;
    padding: 10px;
  }

  .public-nia-floating-launcher {
    right: 10px;
    bottom: calc(12px + env(safe-area-inset-bottom));
    grid-template-columns: 38px minmax(0, 1fr);
    max-width: min(262px, calc(100vw - 20px));
    min-height: 52px;
    border-radius: 16px;
    column-gap: 8px;
    padding: 8px 10px 8px 8px;
  }

  .public-nia-floating-launcher > span {
    width: 38px;
    height: 38px;
    border-radius: 12px;
  }

  .public-nia-floating-launcher strong {
    font-size: 13px;
  }

  .public-nia-floating-launcher small {
    font-size: 10.5px;
  }

  .public-nia-modal,
  .public-home-value-modal {
    display: grid;
    grid-template-rows: auto minmax(96px, 1fr) auto;
    width: 100%;
    max-height: min(88dvh, calc(100dvh - 18px));
    overflow: hidden;
    border-radius: 18px;
    padding: 16px 16px calc(16px + env(safe-area-inset-bottom));
  }

  .public-home-value-modal {
    display: flex;
    flex-direction: column;
    overflow-y: auto;
  }

  .public-nia-modal-head {
    padding-right: 42px;
  }

  .public-nia-modal h2 {
    font-size: clamp(24px, 9vw, 32px);
  }

  .public-nia-flow,
  .public-nia-chat-controls {
    min-height: 0;
    overflow-y: auto;
    padding-bottom: calc(8px + env(safe-area-inset-bottom));
  }

  .public-nia-chat-log {
    max-height: none;
    min-height: 96px;
    overflow: auto;
  }

  .public-nia-flow > .btn.primary,
  .public-home-value-flow > .btn.primary {
    position: sticky;
    bottom: calc(-1px + env(safe-area-inset-bottom));
    z-index: 4;
    margin-top: 4px;
    border-top: 1px solid rgb(17 19 24 / 0.08);
    background:
      linear-gradient(180deg, rgb(255 255 255 / 0.78), #ffffff 28%),
      #ffffff;
    padding-top: 10px;
    box-shadow: 0 -12px 24px rgb(255 255 255 / 0.86);
  }

  .public-nia-chat-controls {
    position: sticky;
    bottom: 0;
    z-index: 4;
    box-shadow: 0 -12px 26px rgb(255 255 255 / 0.9);
  }

  .public-nia-flow > .btn.primary,
  .public-home-value-flow > .btn.primary,
  .public-nia-action-row .btn,
  .public-nia-message-form .btn {
    width: 100%;
    min-height: 46px;
  }

  .public-nia-action-row {
    display: grid;
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1040px) {
  .public-agent-profile .public-agent-hero {
    grid-template-columns: 1fr;
    width: min(100% - 28px, 920px);
    padding: 26px;
    border-radius: 30px;
  }

  .public-agent-intro-card {
    grid-template-columns: auto minmax(0, 1fr);
    align-items: center;
  }

  .public-agent-card-status,
  .public-agent-intro-links,
  .public-agent-intro-actions {
    grid-column: 1 / -1;
  }

  .public-agent-intro-media {
    width: fit-content;
  }

  .public-agent-intro-card .public-avatar.xl {
    width: 132px;
    height: 132px;
    border-radius: 22px;
    font-size: 42px;
  }
}

@media (max-width: 700px) {
  .public-agent-profile.hosted-agent-site {
    padding-top: 14px;
  }

  .public-agent-profile .public-agent-hero {
    width: min(100% - 20px, 620px);
    gap: 18px;
    padding: 20px;
    border-radius: 24px;
  }

  .public-agent-profile .public-agent-hero h1 {
    font-size: clamp(34px, 12vw, 48px);
    line-height: 0.98;
  }

  .public-agent-profile .public-agent-hero p:not(.eyebrow) {
    font-size: 15px;
  }

  .public-agent-profile .public-hero-simple-search {
    padding: 10px;
    border-radius: 18px;
  }

  .public-agent-profile .public-hero-filter-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .public-agent-intro-card {
    grid-template-columns: 1fr;
    padding: 16px;
    border-radius: 22px;
  }

  .public-agent-intro-media {
    width: 100%;
  }

  .public-agent-intro-actions {
    grid-template-columns: 1fr;
  }

  .public-agent-site-strip {
    width: min(100% - 20px, 620px);
  }
}

/* Public IDX photo and Nex brand pass */
.public-site {
  background:
    linear-gradient(180deg, #ffffff 0, #f5f6f8 520px, #f6f7f9 100%);
}

.public-site-main-hero {
  min-height: clamp(500px, 66vh, 640px);
  background:
    radial-gradient(circle at 82% 16%, rgb(227 6 19 / 0.42), transparent 28%),
    radial-gradient(circle at 20% 70%, rgb(255 255 255 / 0.12), transparent 28%),
    linear-gradient(135deg, #05070b, #111318 52%, #24060a);
}

.public-site-main-hero::before {
  background:
    linear-gradient(90deg, rgb(5 7 11 / 0.90), rgb(17 19 24 / 0.76) 46%, rgb(227 6 19 / 0.30)),
    radial-gradient(circle at 30% 30%, rgb(255 255 255 / 0.08), transparent 36%);
}

.public-site-main-hero .public-hero-photo-cycle span {
  filter: saturate(1.18) contrast(1.08) brightness(0.72);
}

.public-hero-heading p {
  color: rgb(255 255 255 / 0.86);
}

.public-hero-simple-search {
  border: 1px solid rgb(255 255 255 / 0.28);
  background: rgb(255 255 255 / 0.98);
  box-shadow: 0 30px 90px rgb(0 0 0 / 0.34);
}

.public-hero-simple-search-row input {
  background: #f4f6f8;
}

.public-hero-simple-search-row button,
.public-hero-concierge-row button:first-child,
.public-consumer-paths article:first-child .btn {
  background: linear-gradient(135deg, #e30613, #a80b14);
  color: #fff;
  border-color: rgb(227 6 19 / 0.40);
}

.public-hero-concierge-row button {
  box-shadow: 0 10px 24px rgb(17 19 24 / 0.12);
}

.public-hero-concierge-row button:hover,
.public-search-category-grid button:hover,
.public-market-card-grid button:hover,
.public-listing-card:hover {
  transform: translateY(-2px);
}

.public-featured-listings-section {
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 24px 70px rgb(17 19 24 / 0.08);
  padding: clamp(18px, 3vw, 26px);
}

.public-section-head h2,
.public-consumer-paths h2,
.public-agent-recruiting-cta h2 {
  letter-spacing: 0;
}

.public-search-category-grid button,
.public-market-card-grid button,
.public-listing-card {
  border: 1px solid rgb(17 19 24 / 0.08);
  background: #fff;
  box-shadow: 0 14px 40px rgb(17 19 24 / 0.06);
  transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease;
}

.public-search-category-grid button:hover,
.public-market-card-grid button:hover,
.public-listing-card:hover {
  border-color: rgb(227 6 19 / 0.20);
  box-shadow: 0 20px 52px rgb(17 19 24 / 0.10);
}

.public-consumer-paths {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.public-consumer-paths article {
  min-height: auto;
  border-radius: 20px;
  padding: clamp(20px, 3vw, 28px);
  background:
    radial-gradient(circle at 88% 18%, rgb(227 6 19 / 0.24), transparent 28%),
    linear-gradient(135deg, #111318, #24272d);
  color: #fff;
  box-shadow: 0 22px 60px rgb(17 19 24 / 0.13);
}

.public-consumer-paths article:nth-child(2) {
  border-color: rgb(227 6 19 / 0.18);
  background:
    radial-gradient(circle at 88% 18%, rgb(227 6 19 / 0.12), transparent 30%),
    linear-gradient(135deg, #ffffff, #fff5f5);
  color: #111318;
}

.public-consumer-paths article > span {
  color: inherit;
  opacity: 0.86;
}

.public-consumer-paths p {
  color: inherit;
  display: block;
  font-weight: 650;
  line-height: 1.55;
  opacity: 0.78;
}

.public-consumer-paths article > div {
  display: none;
}

.public-consumer-paths article:nth-child(2) .btn {
  background: #111318;
  color: #fff;
}

.public-agent-recruiting-cta {
  border: 1px solid rgb(17 19 24 / 0.10);
  border-radius: 20px;
  background: linear-gradient(135deg, #111318, #1e232b);
  color: #fff;
  box-shadow: 0 18px 52px rgb(17 19 24 / 0.12);
}

.public-agent-recruiting-cta p {
  color: rgb(255 255 255 / 0.74);
}

.public-agent-recruiting-cta .btn {
  background: #fff;
  color: #111318;
}

.public-property-placeholder {
  display: grid;
  place-content: center;
  gap: 5px;
  width: 100%;
  height: 100%;
  min-height: 180px;
  padding: 18px;
  text-align: center;
  background:
    linear-gradient(135deg, rgb(17 19 24 / 0.86), rgb(17 19 24 / 0.60)),
    radial-gradient(circle at 72% 20%, rgb(227 6 19 / 0.55), transparent 34%),
    #111318;
  color: #fff;
}

.public-property-placeholder span {
  color: rgb(255 255 255 / 0.72);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.16em;
}

.public-property-placeholder strong {
  color: #fff;
  font-size: 17px;
  line-height: 1.1;
}

.public-property-placeholder small {
  color: rgb(255 255 255 / 0.62);
  font-size: 12px;
}

.public-listing-photo .public-property-placeholder {
  aspect-ratio: 1.45;
  min-height: 100%;
}

.public-listing-card-skeleton {
  pointer-events: none;
  min-height: 420px;
}

.public-skeleton-photo,
.public-skeleton-line,
.public-listing-card-skeleton .public-listing-stats i,
.public-listing-card-skeleton .public-listing-card-actions i {
  display: block;
  border-radius: 999px;
  background: linear-gradient(90deg, #eceff3 0%, #f8fafc 48%, #eceff3 100%);
  background-size: 220% 100%;
  animation: shimmer 1.25s linear infinite;
}

.public-skeleton-photo {
  aspect-ratio: 1.45;
  width: 100%;
  border-radius: 0;
}

.public-skeleton-line {
  height: 12px;
}

.public-skeleton-line.price {
  width: 38%;
  height: 18px;
}

.public-skeleton-line.title {
  width: 78%;
  height: 15px;
}

.public-skeleton-line.meta {
  width: 58%;
}

.public-skeleton-line.button {
  width: 100%;
  height: 40px;
  border-radius: 10px;
}

.public-skeleton-line.attribution {
  width: 72%;
  height: 9px;
  opacity: 0.8;
}

.public-listing-card-skeleton .public-listing-stats i {
  width: 66px;
  height: 31px;
}

.public-listing-card-skeleton .public-listing-card-actions i {
  min-height: 40px;
  border-radius: 10px;
}

.public-listing-skeleton-grid {
  width: min(1180px, calc(100% - 36px));
  margin: 0 auto;
}

.public-listing-skeleton-grid.embedded {
  width: 100%;
  margin: 0;
}

.public-county-carousel-track.is-loading::before,
.public-county-carousel-track.is-loading::after {
  opacity: 0;
}

.public-county-carousel-skeleton {
  animation: none;
  transform: none;
}

.public-detail-gallery .public-property-placeholder {
  min-height: 100%;
  border-radius: 18px;
}

.public-detail-main-photo,
.public-detail-thumb-photo {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.public-search-hero-head,
.public-search-command,
.public-results-head,
.public-map-fallback-card,
.public-search-support {
  border-color: rgb(17 19 24 / 0.08);
  box-shadow: 0 16px 48px rgb(17 19 24 / 0.07);
}

@media (max-width: 780px) {
  .public-consumer-paths {
    grid-template-columns: 1fr;
  }

  .public-site-main-hero {
    min-height: auto;
  }

  .public-county-carousel-intro,
  .public-county-carousel-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .public-county-carousel-actions,
  .public-county-carousel-actions button {
    width: 100%;
  }

  .public-county-carousel-card {
    flex-basis: min(340px, 78vw);
    max-width: min(340px, 78vw);
  }
}

/* Public site search conversion pass */
.public-site,
.public-site * {
  box-sizing: border-box;
}

.public-site {
  width: 100%;
  max-width: 100vw;
  overflow-x: hidden;
  padding-bottom: calc(94px + env(safe-area-inset-bottom));
}

.public-property-search-v2 {
  overflow-x: clip;
  padding-bottom: calc(110px + env(safe-area-inset-bottom));
}

.public-property-search-v2.agent-context-search {
  width: 100%;
  max-width: none;
  padding-top: 0;
  background:
    linear-gradient(180deg, #090b10 0, #151820 360px, #f5f7fb 360px, #f7f8fb 100%);
}

.public-property-search-v2.agent-context-search > .public-search-v2-hero,
.public-property-search-v2.agent-context-search > .public-search-command,
.public-property-search-v2.agent-context-search > .public-results-head,
.public-property-search-v2.agent-context-search > .public-search-update-pill,
.public-property-search-v2.agent-context-search > .public-list-map-shell,
.public-property-search-v2.agent-context-search > .public-pagination,
.public-property-search-v2.agent-context-search > .public-search-support,
.public-property-search-v2.agent-context-search > .public-compliance-card {
  width: min(1140px, calc(100% - 36px));
  margin-right: auto;
  margin-left: auto;
}

.public-search-v2-hero {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(320px, 0.64fr);
  gap: clamp(16px, 3vw, 28px);
  align-items: end;
  padding: clamp(24px, 4vw, 44px);
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 18px;
  background:
    linear-gradient(135deg, #ffffff 0%, #f7f8fb 58%, #eef3f6 100%),
    #fff;
  box-shadow: 0 18px 54px rgb(17 19 24 / 0.075);
}

.agent-context-search .public-search-v2-hero {
  align-items: center;
  margin-top: 22px;
  border-color: rgb(255 255 255 / 0.16);
  background:
    radial-gradient(circle at 84% 8%, color-mix(in srgb, var(--agent-site-accent, #e30613) 30%, transparent), transparent 28%),
    linear-gradient(125deg, #07090d 0%, #171b23 52%, #2a0609 100%);
  color: #fff;
  box-shadow: 0 22px 70px rgb(0 0 0 / 0.22);
}

.agent-context-search .public-search-v2-hero .eyebrow,
.agent-context-search .public-search-v2-hero h1,
.agent-context-search .public-search-v2-hero p {
  color: #fff;
}

.agent-context-search .public-search-v2-hero p:not(.eyebrow) {
  color: rgb(255 255 255 / 0.82);
}

.public-search-v2-hero h1 {
  max-width: 760px;
  margin: 0;
  color: #111318;
  font-size: clamp(34px, 5vw, 62px);
  line-height: 1;
  letter-spacing: 0;
}

.public-search-v2-hero p {
  max-width: 720px;
  color: #566170;
  line-height: 1.55;
}

.public-search-v2-box {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 8px;
  border: 1px solid rgb(17 19 24 / 0.10);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 32px rgb(17 19 24 / 0.08);
}

.agent-context-search .public-search-v2-box {
  border-color: rgb(255 255 255 / 0.22);
  background: rgb(255 255 255 / 0.95);
  box-shadow: 0 18px 52px rgb(0 0 0 / 0.24);
}

.public-search-v2-box .public-search-autocomplete,
.public-search-v2-box input {
  min-width: 0;
  width: 100%;
}

.public-search-v2-box input {
  min-height: 48px;
  border: 0;
  outline: none;
  padding: 0 10px;
  font-size: 16px;
  font-weight: 850;
}

.public-search-v2-command {
  position: relative;
  z-index: 1;
  margin-bottom: 24px;
}

.agent-context-search .public-search-v2-command {
  margin-top: -10px;
  padding: 14px;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 18px;
  background: rgb(255 255 255 / 0.98);
  box-shadow: 0 18px 48px rgb(17 19 24 / 0.10);
}

.public-search-agent-proof {
  margin-top: 2px;
}

.public-search-v2-mobile-row {
  display: none;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
}

.public-search-v2-filters {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.public-search-filter-actions {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding-top: 2px;
}

.public-search-filter-actions .btn {
  min-height: 42px;
}

.public-active-filter-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.public-active-filter-chips button {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  gap: 7px;
  border: 1px solid rgb(17 19 24 / 0.10);
  border-radius: 999px;
  background: #fff;
  color: #303846;
  padding: 0 11px;
  font-size: 12px;
  font-weight: 900;
}

.public-active-filter-chips .clear-all {
  border-color: rgb(227 6 19 / 0.18);
  color: #c40012;
}

.public-search-v2-results-head {
  align-items: center;
  position: relative;
  z-index: 0;
}

.public-search-update-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  min-height: 38px;
  margin-bottom: 12px;
  padding: 8px 12px;
  border: 1px solid color-mix(in srgb, var(--agent-site-accent, #e30613) 22%, #e5e7eb);
  border-radius: 999px;
  background: #ffffff;
  color: #263040;
  font-size: 13px;
  font-weight: 900;
  box-shadow: 0 12px 32px rgb(17 19 24 / 0.10);
}

.public-search-update-pill svg {
  color: var(--agent-site-accent, var(--nex-red));
}

.public-sort-control {
  display: inline-grid;
  gap: 5px;
  color: #566170;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.public-sort-control select {
  min-height: 40px;
  border: 1px solid rgb(17 19 24 / 0.12);
  border-radius: 12px;
  background: #fff;
  color: #111318;
  padding: 0 12px;
  font-size: 13px;
  font-weight: 850;
  text-transform: none;
}

.public-list-map-shell {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.72fr);
  gap: 16px;
  align-items: start;
}

.public-list-map-shell.is-refreshing {
  opacity: 0.78;
  transition: opacity 160ms ease;
}

.public-list-map-shell.list-active {
  grid-template-columns: 1fr;
}

.public-list-map-shell.list-active .public-list-map-card {
  display: none;
}

.public-search-results-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  min-width: 0;
}

.public-list-map-shell.list-active .public-search-results-list {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.public-list-map-shell.map-active .public-search-results-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.public-search-results-list > div {
  min-width: 0;
}

.public-list-map-card {
  position: sticky;
  top: 94px;
  display: grid;
  overflow: hidden;
  min-width: 0;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 14px 40px rgb(17 19 24 / 0.07);
}

.public-list-map-toolbar {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  padding: 12px 14px;
  border-bottom: 1px solid rgb(17 19 24 / 0.08);
  background: #111318;
  color: #fff;
}

.public-list-map-toolbar span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 950;
}

.public-list-map-toolbar small {
  color: rgb(255 255 255 / 0.72);
  font-size: 12px;
  font-weight: 800;
}

.public-list-map-stage {
  position: relative;
  min-height: 620px;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgb(239 243 246 / 0.92), rgb(248 250 252 / 0.98)),
    #eef2f6;
}

.public-list-map-stage.interactive {
  background: #e8eef4;
}

.public-list-map-interactive {
  position: absolute;
  inset: 0;
  z-index: 1;
  min-height: 100%;
}

.public-list-map-interactive .gm-style,
.public-list-map-interactive .mapboxgl-map {
  font-family: inherit;
}

.public-list-map-grid-bg {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgb(17 19 24 / 0.05) 1px, transparent 1px),
    linear-gradient(0deg, rgb(17 19 24 / 0.05) 1px, transparent 1px),
    radial-gradient(circle at 24% 72%, rgb(227 6 19 / 0.12), transparent 24%),
    radial-gradient(circle at 74% 32%, rgb(30 116 168 / 0.12), transparent 26%);
  background-size: 56px 56px, 56px 56px, auto, auto;
}

.public-mapbox-price-marker,
.public-google-price-marker {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  border: 2px solid #fff;
  border-radius: 999px;
  background: #111318;
  color: #fff;
  cursor: pointer;
  font: inherit;
  font-size: 12px;
  font-weight: 950;
  line-height: 1;
  padding: 0 10px;
  white-space: nowrap;
  box-shadow: 0 12px 26px rgb(17 19 24 / 0.25);
}

.public-google-price-marker {
  position: absolute;
  transform: translate(-50%, -100%);
}

.public-mapbox-price-marker.active,
.public-mapbox-price-marker:hover,
.public-mapbox-price-marker:focus-visible,
.public-google-price-marker.active,
.public-google-price-marker:hover,
.public-google-price-marker:focus-visible {
  background: var(--nex-red);
  outline: none;
  box-shadow: 0 14px 30px rgb(227 6 19 / 0.28);
}

.public-list-map-provider-badge {
  position: absolute;
  right: 12px;
  bottom: 12px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 1px solid rgb(17 19 24 / 0.1);
  border-radius: 999px;
  background: rgb(255 255 255 / 0.94);
  color: #111318;
  padding: 8px 10px;
  font-size: 11px;
  font-weight: 900;
  box-shadow: 0 10px 24px rgb(17 19 24 / 0.12);
}

.public-list-map-load-error {
  position: absolute;
  inset: 18px;
  z-index: 3;
  display: grid;
  place-content: center;
  gap: 8px;
  border: 1px solid rgb(227 6 19 / 0.18);
  border-radius: 16px;
  background: rgb(255 255 255 / 0.94);
  color: #4f5a68;
  padding: 22px;
  text-align: center;
}

.public-list-map-load-error svg {
  margin: 0 auto;
  color: var(--nex-red);
}

.public-list-map-marker {
  position: absolute;
  z-index: 2;
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  gap: 5px;
  transform: translate(-50%, -50%);
  border: 1px solid rgb(255 255 255 / 0.9);
  border-radius: 999px;
  background: #111318;
  color: #fff;
  padding: 0 9px;
  font-size: 12px;
  font-weight: 950;
  box-shadow: 0 12px 28px rgb(17 19 24 / 0.24);
}

.public-list-map-marker.active,
.public-list-map-marker:hover,
.public-list-map-marker:focus-visible {
  background: var(--nex-red);
  outline: none;
  transform: translate(-50%, -50%) scale(1.05);
}

.public-list-map-empty {
  position: absolute;
  inset: 24px;
  display: grid;
  place-content: center;
  gap: 8px;
  text-align: center;
  color: #4f5a68;
}

.public-list-map-empty svg {
  margin: 0 auto;
  color: var(--nex-red);
}

.public-list-map-message {
  margin: 0;
  padding: 11px 14px;
  border-top: 1px solid rgb(17 19 24 / 0.08);
  color: #66717d;
  font-size: 12px;
  line-height: 1.45;
}

.public-list-map-card.not-configured {
  position: relative;
  top: auto;
}

.public-list-map-config-needed {
  display: grid;
  min-height: 420px;
  place-content: center;
  gap: 10px;
  padding: 28px;
  text-align: center;
  background:
    linear-gradient(135deg, rgb(248 250 252 / 0.94), rgb(255 255 255 / 0.98)),
    #fff;
}

.public-list-map-config-needed svg {
  width: 42px;
  height: 42px;
  margin: 0 auto;
  color: var(--nex-red);
}

.public-list-map-config-needed strong {
  color: #111318;
  font-size: 22px;
}

.public-list-map-config-needed p {
  max-width: 420px;
  margin: 0 auto;
  color: #5f6976;
  line-height: 1.55;
}

.public-list-map-config-needed span {
  display: inline-flex;
  width: fit-content;
  justify-self: center;
  border: 1px solid rgb(227 6 19 / 0.14);
  border-radius: 999px;
  background: rgb(227 6 19 / 0.07);
  color: #a80010;
  padding: 8px 11px;
  font-size: 12px;
  font-weight: 950;
}

.public-pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 18px auto 8px;
}

.public-pagination button,
.public-pagination em {
  display: inline-flex;
  min-width: 38px;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border: 1px solid rgb(17 19 24 / 0.10);
  border-radius: 999px;
  background: #fff;
  color: #303846;
  padding: 0 12px;
  font-size: 13px;
  font-weight: 900;
  font-style: normal;
}

.public-pagination button.active {
  background: #111318;
  color: #fff;
}

.public-pagination button:disabled {
  cursor: not-allowed;
  opacity: 0.48;
}

.public-cma-result-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.public-cma-result-facts em {
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 999px;
  background: #fff;
  color: #47515d;
  padding: 7px 9px;
  font-size: 11px;
  font-style: normal;
  font-weight: 900;
}

.public-search-v2-lead-paths {
  grid-template-columns: minmax(0, 0.9fr) minmax(280px, 0.55fr);
}

.public-recruiting-step-indicator {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.public-recruiting-step-indicator span {
  min-width: 0;
  border: 1px solid rgb(17 19 24 / 0.08);
  border-radius: 999px;
  background: #fff;
  color: #66717d;
  padding: 8px 10px;
  font-size: 12px;
  font-weight: 950;
  text-align: center;
}

.public-recruiting-step-indicator span.active {
  border-color: rgb(227 6 19 / 0.24);
  background: #fff5f6;
  color: #c40012;
}

.public-recruiting-lead-form select {
  width: 100%;
  min-height: 44px;
  border: 1px solid rgb(17 19 24 / 0.12);
  border-radius: 14px;
  background: white;
  padding: 10px 12px;
  color: #111318;
}

.public-recruiting-form-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.public-recruiting-form-actions .btn {
  flex: 1 1 150px;
}

@media (max-width: 1180px) {
  .public-list-map-shell {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 0.62fr);
  }

  .public-search-results-list {
    grid-template-columns: 1fr;
  }

  .public-list-map-shell.list-active .public-search-results-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .public-search-v2-hero,
  .public-search-v2-lead-paths,
  .public-list-map-shell {
    grid-template-columns: 1fr;
  }

  .public-inline-search-band,
  .public-seller-value-panel,
  .public-returning-consumer-panel {
    grid-template-columns: 1fr;
  }

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

  .public-search-v2-box {
    grid-template-columns: 1fr;
  }

  .public-search-v2-box .btn {
    width: 100%;
    justify-content: center;
  }

  .public-search-v2-mobile-row {
    display: flex;
  }

  .public-view-toggle-desktop {
    display: none;
  }

  .public-search-v2-filters {
    display: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .public-search-v2-filters.open {
    display: grid;
  }

  .public-list-map-card {
    position: relative;
    top: auto;
  }

  .public-list-map-stage {
    min-height: 520px;
  }

  .public-list-map-shell.list-active .public-list-map-card {
    display: none;
  }

  .public-list-map-shell.list-active .public-search-results-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .public-list-map-shell.map-active .public-search-results-list {
    display: none;
  }

  .public-inline-search-band form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .public-county-carousel-intro,
  .public-county-carousel-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .public-county-carousel-actions {
    flex-wrap: wrap;
  }

  .public-county-carousel-link {
    flex: 1 1 180px;
  }
}

@media (max-width: 560px) {
  .public-page,
  .public-section,
  .public-detail-page,
  .public-agent-profile {
    width: min(100% - 20px, 1180px);
    padding-left: 0;
    padding-right: 0;
  }

  .public-search-v2-hero {
    padding: 20px 14px;
    border-radius: 14px;
  }

  .public-inline-search-band,
  .public-seller-value-panel,
  .public-returning-consumer-panel,
  .public-about-tech-grid {
    width: min(100% - 20px, 1140px);
  }

  .public-inline-search-band,
  .public-seller-value-panel,
  .public-returning-consumer-panel {
    padding: 16px;
    border-radius: 18px;
  }

  .public-search-v2-hero h1 {
    font-size: clamp(32px, 11vw, 44px);
  }

  .public-search-v2-mobile-row,
  .public-results-actions,
  .public-recruiting-form-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .public-search-v2-mobile-row .btn,
  .public-search-filter-actions .btn,
  .public-view-toggle,
  .public-results-actions .btn,
  .public-sort-control,
  .public-sort-control select {
    width: 100%;
  }

  .public-search-filter-actions {
    flex-direction: column;
  }

  .public-view-toggle {
    justify-content: stretch;
  }

  .public-view-toggle button {
    flex: 1 1 0;
    justify-content: center;
  }

  .public-search-v2-filters,
  .public-search-v2-filters.open,
  .public-inline-search-band form,
  .public-about-tech-grid,
  .public-form-row,
  .public-recruiting-step-indicator {
    grid-template-columns: 1fr;
  }

  .public-list-map-shell.list-active .public-search-results-list {
    grid-template-columns: 1fr;
  }

  .public-list-map-stage {
    min-height: 430px;
  }

  .public-list-map-marker span {
    display: none;
  }

  .public-list-map-marker {
    width: 36px;
    justify-content: center;
    padding: 0;
  }

  .public-county-carousel-section {
    gap: 18px;
  }

  .public-county-carousel-intro h2 {
    font-size: clamp(30px, 10vw, 42px);
  }

  .public-county-carousel-stack {
    gap: 24px;
  }

  .public-county-carousel-track {
    max-width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .public-county-carousel-strip {
    gap: 12px;
  }

  .public-county-carousel-card {
    flex-basis: calc(100vw - 42px);
    max-width: calc(100vw - 42px);
  }

  .public-county-carousel-track::before,
  .public-county-carousel-track::after {
    width: 20px;
  }

  .public-county-carousel-actions button {
    min-height: 42px;
  }

  .public-listing-card-actions {
    grid-template-columns: 1fr;
  }

  .public-search-quick-row {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 4px;
  }

  .public-search-quick-row button {
    flex: 0 0 auto;
  }

  .public-returning-actions,
  .public-returning-actions .btn {
    width: 100%;
  }
}

@media (max-width: 760px) {
  .crm-task-command-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

  .crm-task-command-card {
    min-height: 58px;
    padding: 10px;
  }

  .crm-task-table article.crm-task-row {
    align-items: stretch;
    grid-template-columns: 1fr;
  }

  .crm-task-row .row-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .crm-task-row .row-actions .btn {
    justify-content: center;
    width: 100%;
  }
}

@media (max-width: 420px) {
  .crm-lead-command-grid,
  .crm-task-command-strip,
  .crm-task-row .row-actions {
    grid-template-columns: 1fr;
  }
}

.nex-loop-page {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.nex-loop-hero {
  background:
    radial-gradient(circle at 18% 0%, rgba(238, 0, 20, 0.18), transparent 34%),
    linear-gradient(135deg, #111318 0%, #232833 52%, #ee0014 140%);
}

.nex-loop-flag-pill,
.nex-loop-chip,
.nex-loop-draft-label {
  align-items: center;
  border-radius: 999px;
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1;
  padding: 8px 10px;
  text-transform: uppercase;
}

.nex-loop-flag-pill {
  background: rgba(255, 255, 255, 0.16);
  color: #fff;
}

.nex-loop-overview-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.nex-loop-update-command {
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.1);
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.06);
  overflow: hidden;
}

.nex-loop-update-command-head {
  align-items: center;
  background: linear-gradient(110deg, rgba(238, 0, 20, 0.09), transparent 48%);
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
  display: flex;
  gap: 18px;
  justify-content: space-between;
  padding: 18px;
}

.nex-loop-update-command-head h3,
.nex-loop-update-command-head p {
  margin: 0;
}

.nex-loop-update-command-head > div:first-child > p:last-child {
  color: #5b6474;
  font-size: 13px;
  line-height: 1.5;
  margin-top: 5px;
  max-width: 760px;
}

.nex-loop-update-command-safety {
  align-items: center;
  background: #111318;
  color: #fff;
  display: flex;
  flex: 0 1 320px;
  gap: 10px;
  padding: 12px 14px;
}

.nex-loop-update-command-safety svg {
  color: #ff3344;
  flex: 0 0 auto;
}

.nex-loop-update-command-safety span,
.nex-loop-update-command-safety strong {
  display: block;
}

.nex-loop-update-command-safety span {
  color: #d7dce5;
  font-size: 11px;
  line-height: 1.45;
}

.nex-loop-update-command-safety strong {
  color: #fff;
  font-size: 12px;
}

.nex-loop-update-cadence-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  padding: 14px 18px;
}

.nex-loop-update-cadence-grid button {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.12);
  color: #0f172a;
  cursor: pointer;
  display: grid;
  gap: 3px;
  min-height: 62px;
  padding: 10px 12px;
  text-align: left;
}

.nex-loop-update-cadence-grid button:not(:disabled):hover,
.nex-loop-update-cadence-grid button:not(:disabled):focus-visible {
  border-color: #ee0014;
  box-shadow: 0 8px 18px rgba(238, 0, 20, 0.1);
  transform: translateY(-1px);
}

.nex-loop-update-cadence-grid button:disabled {
  cursor: default;
  opacity: 0.58;
}

.nex-loop-update-cadence-grid button.tone-danger {
  border-left: 3px solid #dc0013;
}

.nex-loop-update-cadence-grid button.tone-warning {
  border-left: 3px solid #d97706;
}

.nex-loop-update-cadence-grid button.tone-success {
  border-left: 3px solid #047857;
}

.nex-loop-update-cadence-grid strong {
  font-size: 22px;
}

.nex-loop-update-cadence-grid span {
  color: #5b6474;
  font-size: 11px;
  font-weight: 850;
}

.nex-loop-update-priority {
  align-items: center;
  background: #f8fafc;
  border-top: 1px solid rgba(15, 23, 42, 0.08);
  display: grid;
  gap: 12px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: 14px 18px;
}

.nex-loop-update-priority > div,
.nex-loop-update-priority > div strong,
.nex-loop-update-priority > div span {
  display: block;
  min-width: 0;
}

.nex-loop-update-priority > div strong {
  color: #0f172a;
  font-size: 13px;
}

.nex-loop-update-priority > div span {
  color: #64748b;
  font-size: 11px;
  line-height: 1.45;
  margin-top: 2px;
}

.nex-loop-update-command-state {
  align-items: center;
  color: #64748b;
  display: flex;
  gap: 9px;
  justify-content: center;
  min-height: 112px;
  padding: 18px;
}

.nex-loop-update-cadence-chip {
  background: #e2e8f0;
  border-radius: 999px;
  color: #334155;
  display: inline-flex;
  font-size: 9px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: 0.04em;
  line-height: 1.2;
  padding: 6px 8px;
  text-transform: uppercase;
}

.nex-loop-update-cadence-chip.danger {
  background: #ffe4e6;
  color: #be123c;
}

.nex-loop-update-cadence-chip.warning {
  background: #fef3c7;
  color: #92400e;
}

.nex-loop-update-cadence-chip.success {
  background: #dcfce7;
  color: #047857;
}

.nex-loop-metric,
.nex-loop-panel,
.nex-loop-index-panel,
.nex-loop-detail-panel,
.nex-loop-approval-center {
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 16px;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.06);
}

.sr-only {
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.nex-loop-approval-center {
  overflow: hidden;
}

.nex-loop-approval-head {
  align-items: center;
  background:
    linear-gradient(110deg, rgba(238, 0, 20, 0.09), transparent 45%),
    #fff;
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
  display: flex;
  gap: 18px;
  justify-content: space-between;
  padding: 18px;
}

.nex-loop-approval-head h3,
.nex-loop-approval-head p {
  margin: 0;
}

.nex-loop-approval-head > div:first-child > p:last-child {
  color: #5b6474;
  font-size: 13px;
  margin-top: 5px;
}

.nex-loop-approval-safety {
  align-items: center;
  background: #111318;
  color: #fff;
  display: flex;
  flex: 0 1 410px;
  gap: 11px;
  padding: 12px 14px;
}

.nex-loop-approval-safety svg {
  color: #ff3344;
  flex: 0 0 auto;
}

.nex-loop-approval-safety span,
.nex-loop-approval-safety strong {
  display: block;
}

.nex-loop-approval-safety span {
  color: #d7dce5;
  font-size: 11px;
  line-height: 1.45;
}

.nex-loop-approval-safety strong {
  color: #fff;
  font-size: 12px;
}

.nex-loop-approval-metrics {
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.nex-loop-approval-metrics button {
  background: #fff;
  border: 0;
  border-right: 1px solid rgba(15, 23, 42, 0.08);
  color: #111318;
  cursor: pointer;
  min-height: 72px;
  padding: 12px 14px;
  text-align: left;
}

.nex-loop-approval-metrics button:last-child {
  border-right: 0;
}

.nex-loop-approval-metrics button:hover,
.nex-loop-approval-metrics button.active {
  background: #fff4f5;
  box-shadow: inset 0 -3px 0 #ee0014;
}

.nex-loop-approval-metrics strong,
.nex-loop-approval-metrics span {
  display: block;
}

.nex-loop-approval-metrics strong {
  font-size: 22px;
  line-height: 1;
}

.nex-loop-approval-metrics span {
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
  margin-top: 6px;
}

.nex-loop-approval-toolbar {
  align-items: center;
  background: #f7f8fa;
  display: flex;
  gap: 8px;
  padding: 11px 14px;
}

.nex-loop-approval-toolbar > label {
  align-items: center;
  background: #fff;
  border: 1px solid #d8dde6;
  display: flex;
  flex: 1 1 280px;
  gap: 8px;
  min-width: 180px;
  padding: 0 10px;
}

.nex-loop-approval-toolbar input {
  background: transparent;
  border: 0;
  min-height: 38px;
  min-width: 0;
  outline: 0;
  width: 100%;
}

.nex-loop-approval-toolbar .btn.light {
  background: #fff;
  border-color: #cfd5df;
  color: #1f2937;
}

.nex-loop-approval-toolbar .btn.light:hover:not(:disabled) {
  background: #fff4f5;
  border-color: #ee0014;
  color: #b80010;
}

.nex-loop-approval-toolbar > small {
  color: #64748b;
  font-size: 11px;
  margin-left: auto;
  white-space: nowrap;
}

.nex-loop-approval-loading,
.nex-loop-approval-empty {
  align-items: center;
  color: #64748b;
  display: flex;
  gap: 12px;
  justify-content: center;
  min-height: 150px;
  padding: 24px;
  text-align: left;
}

.nex-loop-approval-empty strong,
.nex-loop-approval-empty span {
  display: block;
}

.nex-loop-approval-empty strong {
  color: #111318;
}

.nex-loop-approval-list {
  display: grid;
  max-height: 520px;
  overflow: auto;
}

.nex-loop-approval-item {
  align-items: center;
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
  display: grid;
  gap: 12px;
  grid-template-columns: auto minmax(125px, 0.55fr) minmax(280px, 2fr) auto;
  min-width: 0;
  padding: 13px 14px;
  position: relative;
}

.nex-loop-approval-item:last-child {
  border-bottom: 0;
}

.nex-loop-approval-item::before {
  background: #d7dde7;
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  top: 0;
  width: 3px;
}

.nex-loop-approval-item.warning::before { background: #d97706; }
.nex-loop-approval-item.danger::before { background: #ee0014; }
.nex-loop-approval-item.success::before { background: #047857; }

.nex-loop-approval-item.selected {
  background: #fff6f7;
}

.nex-loop-approval-select {
  align-items: center;
  display: inline-flex;
  justify-content: center;
}

.nex-loop-approval-select input {
  accent-color: #ee0014;
  height: 18px;
  width: 18px;
}

.nex-loop-approval-channel span,
.nex-loop-approval-channel small {
  display: block;
}

.nex-loop-approval-channel span {
  color: #111318;
  font-size: 12px;
  font-weight: 900;
}

.nex-loop-approval-channel small {
  color: #64748b;
  font-size: 10px;
  margin-top: 3px;
}

.nex-loop-approval-copy {
  min-width: 0;
}

.nex-loop-approval-copy > div:first-child {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 5px 9px;
}

.nex-loop-approval-copy > div:first-child strong {
  color: #111318;
  font-size: 13px;
}

.nex-loop-approval-copy > div:first-child span,
.nex-loop-approval-copy > p {
  color: #64748b;
  font-size: 11px;
}

.nex-loop-approval-copy > p {
  display: -webkit-box;
  line-height: 1.45;
  margin: 5px 0 7px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.nex-loop-approval-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 9px;
}

.nex-loop-approval-meta > span {
  color: #5d6675;
  font-size: 10px;
  font-weight: 750;
}

.nex-loop-approval-meta .nex-loop-chip {
  font-size: 9px;
  padding: 5px 7px;
}

.nex-loop-approval-footer {
  align-items: center;
  background: #111318;
  color: #fff;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(180px, 0.7fr) minmax(280px, 1.4fr) auto;
  padding: 14px;
}

.nex-loop-approval-footer > div strong,
.nex-loop-approval-footer > div span {
  display: block;
}

.nex-loop-approval-footer > div span,
.nex-loop-approval-footer > label span {
  color: #c7cdd7;
  font-size: 10px;
  line-height: 1.4;
}

.nex-loop-approval-footer > label {
  align-items: flex-start;
  display: flex;
  gap: 8px;
}

.nex-loop-approval-footer input {
  accent-color: #ee0014;
  flex: 0 0 auto;
  margin-top: 2px;
}

.nex-loop-approval-actions {
  display: grid;
  gap: 6px;
  min-width: 142px;
}

.nex-loop-calendar {
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 16px;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.06);
  overflow: hidden;
}

.nex-loop-calendar-head {
  align-items: center;
  background:
    linear-gradient(115deg, rgba(238, 0, 20, 0.08), transparent 42%),
    #fff;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  padding: 18px;
}

.nex-loop-calendar-head h3,
.nex-loop-calendar-head p {
  margin: 0;
}

.nex-loop-calendar-head > div:first-child > p:last-child {
  color: #5b6474;
  font-size: 13px;
  line-height: 1.5;
  margin-top: 5px;
  max-width: 720px;
}

.nex-loop-calendar-head-actions {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: 8px;
}

.nex-loop-calendar-head-actions .segmented-control {
  background: #eef1f5;
  border: 1px solid #d7dde6;
  display: inline-grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: 3px;
}

.nex-loop-calendar-head-actions .segmented-control button {
  align-items: center;
  background: transparent;
  border: 0;
  color: #505968;
  display: inline-flex;
  font-size: 11px;
  font-weight: 850;
  gap: 6px;
  justify-content: center;
  min-height: 34px;
  padding: 0 11px;
}

.nex-loop-calendar-head-actions .segmented-control button.active {
  background: #111318;
  color: #fff;
}

.nex-loop-calendar-boundary {
  align-items: center;
  background: #111318;
  color: #fff;
  display: flex;
  gap: 11px;
  padding: 11px 16px;
}

.nex-loop-calendar-boundary svg {
  color: #ff3344;
  flex: 0 0 auto;
}

.nex-loop-calendar-boundary strong,
.nex-loop-calendar-boundary span {
  display: block;
}

.nex-loop-calendar-boundary span {
  color: #cdd3dd;
  font-size: 10px;
  line-height: 1.45;
}

.nex-loop-calendar-metrics {
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.nex-loop-calendar-metrics button {
  background: #fff;
  border: 0;
  border-right: 1px solid rgba(15, 23, 42, 0.08);
  color: #111318;
  min-height: 72px;
  padding: 12px 14px;
  text-align: left;
}

.nex-loop-calendar-metrics button:last-child {
  border-right: 0;
}

.nex-loop-calendar-metrics button:hover,
.nex-loop-calendar-metrics button.active {
  background: #fff4f5;
  box-shadow: inset 0 -3px 0 #ee0014;
}

.nex-loop-calendar-metrics button.warning {
  background: #fff9eb;
  box-shadow: inset 0 -3px 0 #d97706;
}

.nex-loop-calendar-metrics strong,
.nex-loop-calendar-metrics span {
  display: block;
}

.nex-loop-calendar-metrics strong {
  font-size: 22px;
  line-height: 1;
}

.nex-loop-calendar-metrics span {
  color: #64748b;
  font-size: 10px;
  font-weight: 850;
  margin-top: 6px;
}

.nex-loop-calendar-toolbar {
  align-items: end;
  background: #f7f8fa;
  display: grid;
  gap: 9px;
  grid-template-columns: repeat(3, minmax(150px, 1fr)) auto;
  padding: 12px 14px;
}

.nex-loop-calendar-toolbar label,
.nex-loop-calendar-planner label {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.nex-loop-calendar-toolbar label > span,
.nex-loop-calendar-planner label > span {
  color: #596273;
  font-size: 10px;
  font-weight: 850;
}

.nex-loop-calendar-toolbar select,
.nex-loop-calendar-planner input {
  background: #fff;
  border: 1px solid #cfd5df;
  color: #111318;
  min-height: 38px;
  min-width: 0;
  padding: 0 10px;
  width: 100%;
}

.nex-loop-calendar .btn.light {
  background: #fff;
  border-color: #cfd5df;
  color: #1f2937;
}

.nex-loop-calendar-planner {
  align-items: end;
  background: #fff6f7;
  border-bottom: 1px solid #ffcbd0;
  border-top: 1px solid #ffcbd0;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(260px, 1.2fr) minmax(230px, 0.8fr) auto;
  padding: 14px;
}

.nex-loop-calendar-planner > div:first-child strong,
.nex-loop-calendar-planner > div:first-child span {
  display: block;
}

.nex-loop-calendar-planner > div:first-child span,
.nex-loop-calendar-planner > small {
  color: #626b7a;
  font-size: 10px;
  line-height: 1.45;
}

.nex-loop-calendar-planner > small {
  grid-column: 1 / -1;
}

.nex-loop-calendar-planner-actions {
  display: flex;
  gap: 7px;
}

.nex-loop-calendar-empty {
  align-items: center;
  color: #64748b;
  display: flex;
  gap: 12px;
  justify-content: center;
  min-height: 140px;
  padding: 24px;
  text-align: left;
}

.nex-loop-calendar-empty strong,
.nex-loop-calendar-empty span {
  display: block;
}

.nex-loop-calendar-empty strong {
  color: #111318;
}

.nex-loop-calendar-agenda {
  display: grid;
}

.nex-loop-calendar-day > header {
  align-items: center;
  background: #eef1f5;
  color: #253042;
  display: flex;
  font-size: 11px;
  font-weight: 850;
  justify-content: space-between;
  padding: 8px 14px;
}

.nex-loop-calendar-day > header span {
  color: #6b7280;
  font-size: 9px;
}

.nex-loop-calendar-entry {
  align-items: center;
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
  display: grid;
  gap: 12px;
  grid-template-columns: 122px minmax(260px, 1fr) auto;
  padding: 13px 14px;
  position: relative;
}

.nex-loop-calendar-entry::before {
  background: #d7dde7;
  bottom: 0;
  content: "";
  left: 0;
  position: absolute;
  top: 0;
  width: 3px;
}

.nex-loop-calendar-entry.tone-success::before { background: #047857; }
.nex-loop-calendar-entry.tone-warning::before { background: #d97706; }
.nex-loop-calendar-entry.tone-danger::before { background: #ee0014; }

.nex-loop-calendar-entry > time strong,
.nex-loop-calendar-entry > time span,
.nex-loop-calendar-entry-copy > div:first-child strong,
.nex-loop-calendar-entry-copy > div:first-child span {
  display: block;
}

.nex-loop-calendar-entry > time strong {
  color: #111318;
  font-size: 13px;
}

.nex-loop-calendar-entry > time span,
.nex-loop-calendar-entry-copy > div:first-child span {
  color: #64748b;
  font-size: 10px;
  margin-top: 3px;
}

.nex-loop-calendar-entry-copy {
  min-width: 0;
}

.nex-loop-calendar-entry-copy > div:first-child strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nex-loop-calendar-entry-meta {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 5px 9px;
  margin-top: 7px;
}

.nex-loop-calendar-entry-meta span {
  color: #626b7a;
  font-size: 9px;
  font-weight: 750;
}

.nex-loop-calendar-entry-actions {
  display: flex;
  gap: 6px;
}

.nex-loop-month-wrap {
  overflow-x: auto;
}

.nex-loop-month-nav {
  align-items: center;
  display: grid;
  grid-template-columns: 38px 1fr 38px;
  min-width: 760px;
  padding: 11px 14px;
  text-align: center;
}

.nex-loop-month-weekdays,
.nex-loop-month-grid {
  display: grid;
  grid-template-columns: repeat(7, minmax(100px, 1fr));
  min-width: 760px;
}

.nex-loop-month-weekdays span {
  background: #111318;
  color: #fff;
  font-size: 9px;
  font-weight: 850;
  padding: 7px 9px;
  text-align: center;
}

.nex-loop-month-day {
  border-bottom: 1px solid #e0e5ec;
  border-right: 1px solid #e0e5ec;
  min-height: 112px;
  padding: 7px;
}

.nex-loop-month-day.outside {
  background: #f7f8fa;
  color: #9aa3b1;
}

.nex-loop-month-day > time {
  display: block;
  font-size: 10px;
  font-weight: 850;
  margin-bottom: 5px;
}

.nex-loop-month-event {
  background: #eef2f7;
  border: 0;
  border-left: 3px solid #64748b;
  color: #253042;
  display: block;
  margin-top: 4px;
  overflow: hidden;
  padding: 5px 6px;
  text-align: left;
  width: 100%;
}

.nex-loop-month-event.success { border-left-color: #047857; }
.nex-loop-month-event.warning { border-left-color: #d97706; }
.nex-loop-month-event.danger { border-left-color: #ee0014; }

.nex-loop-month-event span,
.nex-loop-month-event strong {
  display: block;
  font-size: 8px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nex-loop-metric {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  min-height: 106px;
  padding: 16px;
}

.nex-loop-metric > span {
  align-items: center;
  background: #10131a;
  border-radius: 12px;
  color: #fff;
  display: inline-flex;
  height: 38px;
  justify-content: center;
  width: 38px;
}

.nex-loop-metric strong {
  color: #0f172a;
  display: block;
  font-size: 28px;
  line-height: 1;
}

.nex-loop-metric small,
.nex-loop-metric em,
.nex-loop-muted {
  color: #64748b;
  display: block;
  font-size: 12px;
  font-style: normal;
}

.nex-loop-metric.tone-success > span,
.nex-loop-chip.success {
  background: #047857;
  color: #fff;
}

.nex-loop-metric.tone-warning > span {
  background: #b45309;
}

.nex-loop-metric.tone-danger > span {
  background: #dc0013;
}

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

.nex-loop-workspace-grid > *,
.nex-loop-two-column > * {
  min-width: 0;
}

.nex-loop-index-panel {
  overflow: hidden;
  position: sticky;
  top: 18px;
}

.nex-loop-index-head,
.nex-loop-detail-header,
.nex-loop-section-heading {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.nex-loop-index-head {
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
  padding: 16px;
}

.nex-loop-index-head h4,
.nex-loop-section-heading h4 {
  margin: 0;
}

.nex-loop-index-list {
  display: grid;
  gap: 10px;
  max-height: 68vh;
  overflow: auto;
  padding: 12px;
}

.nex-loop-filter-stack {
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
  display: grid;
  gap: 10px;
  padding: 12px 16px 14px;
}

.nex-loop-filter-stack label {
  display: grid;
  gap: 6px;
}

.nex-loop-filter-stack label span {
  color: #64748b;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.nex-loop-filter-stack input,
.nex-loop-filter-stack select {
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.14);
  border-radius: 12px;
  color: #0f172a;
  font: inherit;
  min-height: 42px;
  padding: 0 12px;
  width: 100%;
}

.nex-loop-filter-row {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nex-loop-filter-stack small {
  color: #64748b;
  font-size: 11px;
}

.nex-loop-filter-empty {
  align-items: center;
  border: 1px dashed rgba(15, 23, 42, 0.18);
  border-radius: 14px;
  color: #64748b;
  display: grid;
  gap: 8px;
  justify-items: center;
  padding: 22px 14px;
  text-align: center;
}

.nex-loop-filter-empty strong {
  color: #0f172a;
}

.nex-loop-listing-button {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 14px;
  color: #0f172a;
  cursor: pointer;
  display: grid;
  gap: 7px;
  padding: 14px;
  text-align: left;
}

.nex-loop-listing-button.active {
  background: #fff5f6;
  border-color: rgba(238, 0, 20, 0.4);
  box-shadow: inset 3px 0 0 #ee0014;
}

.nex-loop-listing-button strong {
  font-size: 14px;
}

.nex-loop-listing-button small {
  color: #64748b;
  font-size: 12px;
}

.nex-loop-listing-button div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.nex-loop-listing-button em {
  background: #e2e8f0;
  border-radius: 999px;
  color: #334155;
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  letter-spacing: 0.06em;
  padding: 5px 7px;
  text-transform: uppercase;
}

.nex-loop-score-dot {
  align-items: center;
  border-radius: 999px;
  color: #fff;
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  height: 32px;
  justify-content: center;
  width: 32px;
}

.nex-loop-score-dot.success,
.nex-loop-health-card.success {
  background: linear-gradient(135deg, #047857, #10b981);
}

.nex-loop-score-dot.warning,
.nex-loop-health-card.warning {
  background: linear-gradient(135deg, #b45309, #f59e0b);
}

.nex-loop-score-dot.danger,
.nex-loop-health-card.danger {
  background: linear-gradient(135deg, #b91c1c, #ee0014);
}

.nex-loop-progress {
  background: #e2e8f0;
  border-radius: 999px;
  height: 7px;
  overflow: hidden;
}

.nex-loop-progress span {
  background: linear-gradient(90deg, #ee0014, #111318);
  border-radius: inherit;
  display: block;
  height: 100%;
}

.nex-loop-detail-panel {
  display: grid;
  gap: 16px;
  padding: 18px;
}

.nex-loop-detail-header {
  align-items: flex-start;
  gap: 16px;
}

.nex-loop-detail-header h3 {
  color: #0f172a;
  font-size: clamp(26px, 4vw, 42px);
  letter-spacing: 0;
  margin: 0;
}

.nex-loop-detail-header p {
  color: #64748b;
  margin: 4px 0 0;
}

.nex-loop-health-card {
  border-radius: 18px;
  color: #fff;
  min-width: 128px;
  padding: 16px;
  text-align: center;
}

.nex-loop-health-card span {
  display: block;
  font-size: 42px;
  font-weight: 950;
  line-height: 1;
}

.nex-loop-health-card small {
  color: rgba(255, 255, 255, 0.78);
  display: block;
  font-size: 11px;
  margin-top: 4px;
  text-transform: uppercase;
}

.nex-loop-summary-strip,
.nex-loop-engagement-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.nex-loop-summary-strip span,
.nex-loop-engagement-grid span {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 12px;
  color: #0f172a;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 12px;
}

.nex-loop-summary-strip strong,
.nex-loop-engagement-grid strong {
  color: #64748b;
  font-size: 10px;
  letter-spacing: 0.08em;
  overflow-wrap: anywhere;
  text-transform: uppercase;
}

.nex-loop-engagement-grid strong {
  color: #0f172a;
  font-size: 24px;
  line-height: 1;
}

.nex-loop-detail-actions,
.nex-loop-report-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.nex-loop-review-grid,
.nex-loop-touchpoint-grid,
.nex-loop-data-source-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.nex-loop-review-item,
.nex-loop-touchpoint-card,
.nex-loop-data-source-grid span {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 12px;
  display: grid;
  gap: 5px;
  padding: 12px;
}

.nex-loop-review-item span {
  color: #64748b;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.nex-loop-review-item p,
.nex-loop-touchpoint-card p,
.nex-loop-data-source-grid span {
  color: #475569;
  font-size: 12px;
  line-height: 1.45;
  margin: 0;
}

.nex-loop-touchpoint-panel {
  background:
    radial-gradient(circle at 100% 0%, rgba(238, 0, 20, 0.08), transparent 28%),
    #fff;
}

.nex-loop-touchpoint-focus {
  background: #10131a;
  border-radius: 14px;
  color: #fff;
  display: grid;
  gap: 5px;
  padding: 14px;
}

.nex-loop-touchpoint-focus span,
.nex-loop-touchpoint-card span {
  color: #94a3b8;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.nex-loop-touchpoint-focus strong {
  font-size: 16px;
}

.nex-loop-touchpoint-card.success {
  background: #ecfdf5;
  border-color: rgba(4, 120, 87, 0.22);
}

.nex-loop-touchpoint-card.warning {
  background: #fffbeb;
  border-color: rgba(180, 83, 9, 0.22);
}

.nex-loop-touchpoint-card.danger {
  background: #fff1f2;
  border-color: rgba(220, 0, 19, 0.22);
}

.nex-loop-touchpoint-card.neutral {
  background: #f8fafc;
}

.nex-loop-risk-panel {
  background:
    radial-gradient(circle at 100% 0%, rgba(238, 0, 20, 0.08), transparent 28%),
    #fff;
}

.nex-loop-risk-list,
.nex-loop-plan-list {
  display: grid;
  gap: 10px;
}

.nex-loop-risk-item,
.nex-loop-plan-item {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-left: 4px solid #94a3b8;
  border-radius: 12px;
  display: grid;
  gap: 5px;
  padding: 12px;
}

.nex-loop-risk-item span,
.nex-loop-plan-item span {
  color: #64748b;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.nex-loop-risk-item p,
.nex-loop-plan-item p {
  color: #475569;
  font-size: 12px;
  line-height: 1.45;
  margin: 0;
}

.nex-loop-risk-item small,
.nex-loop-plan-item small {
  color: #0f172a;
  font-size: 12px;
  font-weight: 800;
}

.nex-loop-risk-item.danger,
.nex-loop-plan-item.danger {
  background: #fff1f2;
  border-color: rgba(220, 0, 19, 0.22);
  border-left-color: #ee0014;
}

.nex-loop-risk-item.warning,
.nex-loop-plan-item.warning {
  background: #fffbeb;
  border-color: rgba(180, 83, 9, 0.22);
  border-left-color: #f59e0b;
}

.nex-loop-risk-item.success,
.nex-loop-plan-item.success {
  background: #ecfdf5;
  border-color: rgba(4, 120, 87, 0.22);
  border-left-color: #10b981;
}

.nex-loop-risk-item.neutral,
.nex-loop-plan-item.neutral {
  border-left-color: #64748b;
}

.nex-loop-timeline {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.nex-loop-timeline-item {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-top: 4px solid #94a3b8;
  border-radius: 12px;
  display: grid;
  gap: 5px;
  padding: 12px;
}

.nex-loop-timeline-item span {
  color: #64748b;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.nex-loop-timeline-item p {
  color: #475569;
  font-size: 12px;
  line-height: 1.45;
  margin: 0;
}

.nex-loop-timeline-item.success {
  background: #ecfdf5;
  border-color: rgba(4, 120, 87, 0.22);
  border-top-color: #10b981;
}

.nex-loop-timeline-item.warning {
  background: #fffbeb;
  border-color: rgba(180, 83, 9, 0.22);
  border-top-color: #f59e0b;
}

.nex-loop-timeline-item.danger {
  background: #fff1f2;
  border-color: rgba(220, 0, 19, 0.22);
  border-top-color: #ee0014;
}

.nex-loop-notes-history-grid {
  align-items: start;
}

.nex-loop-agent-notes .nex-loop-section-heading,
.nex-loop-operations-history .nex-loop-section-heading {
  align-items: center;
  display: flex;
  gap: 10px;
}

.nex-loop-agent-notes .nex-loop-section-heading > div,
.nex-loop-operations-history .nex-loop-section-heading > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.nex-loop-agent-notes .nex-loop-section-heading h4,
.nex-loop-operations-history .nex-loop-section-heading h4,
.nex-loop-agent-notes .nex-loop-section-heading p,
.nex-loop-operations-history .nex-loop-section-heading p {
  margin: 0;
}

.nex-loop-agent-notes .nex-loop-section-heading .nex-loop-chip {
  margin-left: auto;
  white-space: nowrap;
}

.nex-loop-agent-notes-boundary,
.nex-loop-operations-boundary {
  border-left: 3px solid #ee0014;
  color: #475569;
  font-size: 12px;
  line-height: 1.55;
  margin: 0;
  padding: 8px 10px;
}

.nex-loop-agent-notes-boundary {
  background: #fff7f7;
}

.nex-loop-operations-boundary {
  background: #f8fafc;
  border-left-color: #64748b;
}

.nex-loop-agent-note-composer {
  display: grid;
  gap: 7px;
}

.nex-loop-agent-note-composer > span {
  color: #334155;
  font-size: 12px;
  font-weight: 800;
}

.nex-loop-agent-note-composer textarea {
  min-height: 112px;
  resize: vertical;
}

.nex-loop-agent-note-actions {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.nex-loop-agent-note-actions small {
  color: #64748b;
  font-size: 11px;
}

.nex-loop-agent-note-actions .btn {
  min-height: 44px;
}

.nex-loop-agent-note-list,
.nex-loop-operations-list {
  display: grid;
  max-height: 390px;
  overflow: auto;
  padding-right: 4px;
}

.nex-loop-agent-note-list article {
  border-top: 1px solid rgba(15, 23, 42, 0.09);
  display: grid;
  gap: 6px;
  padding: 12px 2px;
}

.nex-loop-agent-note-list article p {
  color: #1e293b;
  font-size: 13px;
  line-height: 1.55;
  margin: 0;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}

.nex-loop-agent-note-list article span {
  color: #64748b;
  font-size: 11px;
}

.nex-loop-operations-list > article {
  border-top: 1px solid rgba(15, 23, 42, 0.09);
  display: grid;
  gap: 10px;
  grid-template-columns: 32px minmax(0, 1fr);
  padding: 12px 2px;
}

.nex-loop-operation-icon {
  align-items: center;
  background: #f1f5f9;
  border-radius: 8px;
  color: #475569;
  display: flex;
  height: 32px;
  justify-content: center;
  width: 32px;
}

.nex-loop-operations-list > article.tone-note .nex-loop-operation-icon {
  background: #fff1f2;
  color: #dc0013;
}

.nex-loop-operations-list > article.tone-communication .nex-loop-operation-icon {
  background: #ecfdf5;
  color: #047857;
}

.nex-loop-operations-list > article.tone-marketing .nex-loop-operation-icon {
  background: #eff6ff;
  color: #1d4ed8;
}

.nex-loop-operations-list > article > div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.nex-loop-operation-meta {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
}

.nex-loop-operation-meta em {
  color: #dc0013;
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
}

.nex-loop-operation-meta time,
.nex-loop-operations-list article small {
  color: #64748b;
  font-size: 10px;
}

.nex-loop-operations-list article p {
  color: #475569;
  font-size: 12px;
  line-height: 1.45;
  margin: 0;
  overflow-wrap: anywhere;
}

.nex-loop-notes-empty {
  align-items: center;
  color: #64748b;
  display: flex;
  font-size: 12px;
  gap: 8px;
  justify-content: center;
  min-height: 96px;
  padding: 16px;
  text-align: center;
}

.nex-loop-proof-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.nex-loop-proof-card {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 14px;
  display: grid;
  gap: 10px;
  padding: 12px;
}

.nex-loop-proof-head {
  align-items: center;
  color: #0f172a;
  display: flex;
  gap: 8px;
}

.nex-loop-proof-head svg {
  color: #ee0014;
}

.nex-loop-data-source-grid strong {
  color: #0f172a;
  display: block;
  font-size: 13px;
  margin-bottom: 3px;
}

.nex-loop-review-item.success {
  background: #ecfdf5;
  border-color: rgba(4, 120, 87, 0.22);
}

.nex-loop-review-item.warning {
  background: #fffbeb;
  border-color: rgba(180, 83, 9, 0.22);
}

.nex-loop-review-item.danger {
  background: #fff1f2;
  border-color: rgba(220, 0, 19, 0.22);
}

.nex-loop-review-item.neutral {
  background: #f8fafc;
}

.nex-loop-two-column,
.nex-loop-three-column {
  display: grid;
  gap: 14px;
}

.nex-loop-two-column {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nex-loop-action-report-grid {
  grid-template-columns: minmax(240px, 0.65fr) minmax(0, 1.35fr);
}

.nex-loop-three-column {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.nex-loop-panel {
  display: grid;
  gap: 12px;
  padding: 16px;
}

.nex-loop-section-heading {
  justify-content: flex-start;
}

.nex-loop-section-heading svg {
  color: #ee0014;
}

.nex-loop-clean-list,
.nex-loop-row-stack,
.nex-loop-action-list {
  display: grid;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.nex-loop-clean-list li,
.nex-loop-mini-row,
.nex-loop-action {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 12px;
  padding: 11px;
}

.nex-loop-mini-row {
  display: grid;
  gap: 4px;
}

.nex-loop-mini-row span,
.nex-loop-readiness span {
  color: #64748b;
  font-size: 12px;
}

.nex-loop-mini-row.warning {
  background: #fffbeb;
  border-color: rgba(180, 83, 9, 0.2);
}

.nex-loop-mini-row.danger {
  background: #fff1f2;
  border-color: rgba(220, 0, 19, 0.2);
}

.nex-loop-readiness {
  display: grid;
  gap: 9px;
}

.nex-loop-chip.neutral {
  background: #e2e8f0;
  color: #334155;
}

.nex-loop-action {
  border-left: 4px solid #94a3b8;
}

.nex-loop-action span {
  color: #64748b;
  display: block;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.nex-loop-action p {
  color: #475569;
  margin: 4px 0 0;
}

.nex-loop-action.danger {
  border-left-color: #ee0014;
}

.nex-loop-action.warning {
  border-left-color: #f59e0b;
}

.nex-loop-action.info {
  border-left-color: #2563eb;
}

.nex-loop-action.success {
  border-left-color: #10b981;
}

.nex-loop-report-panel {
  align-content: start;
}

.nex-loop-draft-label {
  background: #111318;
  color: #fff;
  width: fit-content;
}

.nex-loop-report-meta {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.nex-loop-report-meta span {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 12px;
  color: #0f172a;
  display: grid;
  gap: 4px;
  min-width: 0;
  overflow-wrap: anywhere;
  padding: 10px;
}

.nex-loop-report-meta strong {
  color: #64748b;
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.nex-loop-report-readiness.success {
  background: #ecfdf5;
  border-color: rgba(4, 120, 87, 0.22);
}

.nex-loop-report-readiness.warning {
  background: #fffbeb;
  border-color: rgba(180, 83, 9, 0.22);
}

.nex-loop-report-warnings {
  display: grid;
  gap: 6px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.nex-loop-report-warnings li {
  background: #fff7ed;
  border: 1px solid rgba(180, 83, 9, 0.16);
  border-radius: 10px;
  color: #7c2d12;
  font-size: 12px;
  padding: 8px 10px;
}

.nex-loop-report-panel pre {
  background: #0f172a;
  border-radius: 14px;
  color: #e2e8f0;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  line-height: 1.6;
  margin: 0;
  max-height: 480px;
  overflow: auto;
  padding: 14px;
  white-space: pre-wrap;
}

.nex-loop-update-studio {
  overflow: hidden;
}

.nex-loop-update-head {
  align-items: flex-start;
  display: flex;
  gap: 14px;
  justify-content: space-between;
}

.nex-loop-update-head .nex-loop-section-heading {
  align-items: flex-start;
  margin: 0;
}

.nex-loop-update-head .eyebrow,
.nex-loop-update-head h4 {
  margin: 0;
}

.nex-loop-update-head h4 {
  font-size: 18px;
  margin-top: 3px;
}

.nex-loop-update-status {
  border-radius: 999px;
  flex: 0 0 auto;
  font-size: 10px;
  font-weight: 900;
  padding: 8px 10px;
  text-transform: uppercase;
}

.nex-loop-update-status.success {
  background: #dcfce7;
  color: #047857;
}

.nex-loop-update-status.warning {
  background: #fff1f2;
  color: #be123c;
}

.nex-loop-update-boundary,
.nex-loop-update-source-alert,
.nex-loop-update-review-proof {
  align-items: center;
  border-radius: 12px;
  display: flex;
  gap: 10px;
  padding: 11px 12px;
}

.nex-loop-update-boundary {
  background: #111318;
  color: #fff;
}

.nex-loop-update-cadence-panel {
  align-items: center;
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.1);
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: 12px;
}

.nex-loop-update-cadence-panel.tone-danger {
  border-left: 4px solid #dc0013;
}

.nex-loop-update-cadence-panel.tone-warning {
  border-left: 4px solid #d97706;
}

.nex-loop-update-cadence-panel.tone-success {
  border-left: 4px solid #047857;
}

.nex-loop-update-cadence-panel > span,
.nex-loop-update-cadence-panel strong,
.nex-loop-update-cadence-panel small {
  display: block;
}

.nex-loop-update-cadence-panel strong {
  color: #0f172a;
  font-size: 12px;
}

.nex-loop-update-cadence-panel small,
.nex-loop-update-cadence-panel time {
  color: #64748b;
  font-size: 10px;
  line-height: 1.45;
}

.nex-loop-update-cadence-panel time {
  font-weight: 800;
  text-align: right;
}

.nex-loop-update-boundary svg {
  color: #ff3444;
  flex: 0 0 auto;
}

.nex-loop-update-boundary strong,
.nex-loop-update-boundary span,
.nex-loop-update-source-alert strong,
.nex-loop-update-source-alert span,
.nex-loop-update-review-proof strong,
.nex-loop-update-review-proof span {
  display: block;
}

.nex-loop-update-boundary span {
  color: #cbd2dc;
  font-size: 10px;
  line-height: 1.45;
}

.nex-loop-update-boundary strong {
  color: #fff;
  font-size: 11px;
}

.nex-loop-update-loading {
  align-items: center;
  color: #64748b;
  display: flex;
  gap: 9px;
  min-height: 120px;
  justify-content: center;
}

.nex-loop-update-empty {
  background: linear-gradient(135deg, #f8fafc, #fff4f5);
  border: 1px dashed #cbd2dc;
  border-radius: 14px;
  display: grid;
  gap: 12px;
  padding: 16px;
}

.nex-loop-update-empty p {
  color: #5d6675;
  font-size: 12px;
  line-height: 1.55;
  margin: 5px 0 0;
}

.nex-loop-update-empty .btn {
  justify-self: start;
}

.nex-loop-update-empty details summary,
.nex-loop-update-history summary {
  color: #303846;
  cursor: pointer;
  font-size: 11px;
  font-weight: 850;
}

.nex-loop-update-evidence {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.nex-loop-update-evidence > span {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 11px;
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 9px;
}

.nex-loop-update-evidence small,
.nex-loop-update-evidence em {
  color: #64748b;
  font-size: 9px;
  font-style: normal;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.nex-loop-update-evidence strong {
  color: #111318;
  font-size: 16px;
  overflow-wrap: anywhere;
}

.nex-loop-update-readiness {
  background: #f8fafc;
  border: 1px solid #dbe1e9;
  border-radius: 8px;
  display: grid;
  gap: 10px;
  padding: 12px;
}

.nex-loop-update-readiness > header {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.nex-loop-update-readiness h5,
.nex-loop-update-readiness p {
  margin: 0;
}

.nex-loop-update-readiness h5 {
  font-size: 14px;
  margin-top: 2px;
}

.nex-loop-update-readiness > header > strong {
  background: #111318;
  color: #fff;
  font-size: 11px;
  padding: 7px 9px;
}

.nex-loop-update-readiness > div {
  display: grid;
  gap: 6px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nex-loop-update-readiness article {
  align-items: flex-start;
  background: #fff;
  border: 1px solid #e2e8f0;
  display: flex;
  gap: 8px;
  min-width: 0;
  padding: 9px;
}

.nex-loop-update-readiness article.complete svg {
  color: #047857;
}

.nex-loop-update-readiness article.open svg {
  color: #be123c;
}

.nex-loop-update-readiness article span,
.nex-loop-update-readiness article strong,
.nex-loop-update-readiness article small {
  display: block;
  min-width: 0;
}

.nex-loop-update-readiness article strong {
  font-size: 10px;
}

.nex-loop-update-readiness article small {
  color: #64748b;
  font-size: 9px;
  line-height: 1.45;
  margin-top: 2px;
}

.nex-loop-update-source-alert {
  align-items: flex-start;
  background: #fff7ed;
  border: 1px solid #fed7aa;
  color: #7c2d12;
}

.nex-loop-update-source-alert > span {
  flex: 1;
  font-size: 11px;
  line-height: 1.45;
}

.nex-loop-update-source-alert svg {
  flex: 0 0 auto;
}

.nex-loop-source-changes {
  color: #9a3412;
  display: block;
  font-size: 9px;
  font-weight: 750;
  margin-top: 5px;
}

.nex-loop-update-editor {
  display: grid;
  gap: 10px;
}

.nex-loop-update-editor label {
  display: grid;
  gap: 5px;
}

.nex-loop-update-editor label > span {
  color: #596273;
  font-size: 10px;
  font-weight: 850;
}

.nex-loop-update-editor input,
.nex-loop-update-editor textarea {
  background: #fff;
  border: 1px solid #cfd5df;
  border-radius: 10px;
  color: #111318;
  font: inherit;
  line-height: 1.55;
  min-width: 0;
  padding: 10px 11px;
  width: 100%;
}

.nex-loop-update-editor input:focus,
.nex-loop-update-editor textarea:focus {
  border-color: #ee0014;
  box-shadow: 0 0 0 3px rgba(238, 0, 20, 0.08);
  outline: none;
}

.nex-loop-update-editor textarea {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  min-height: 350px;
  resize: vertical;
}

.nex-loop-update-acknowledgment {
  align-items: flex-start;
  background: #f8fafc;
  border: 1px solid #dbe1e9;
  border-radius: 11px;
  color: #3f4754;
  display: flex;
  font-size: 11px;
  font-weight: 750;
  gap: 8px;
  line-height: 1.45;
  padding: 10px;
}

.nex-loop-update-acknowledgment input {
  accent-color: #ee0014;
  flex: 0 0 auto;
  margin-top: 2px;
}

.nex-loop-update-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.nex-loop-update-review-proof {
  background: #ecfdf5;
  border: 1px solid rgba(4, 120, 87, 0.22);
  color: #065f46;
}

.nex-loop-update-review-proof span {
  font-size: 10px;
  line-height: 1.45;
}

.nex-loop-communication-log {
  border-top: 1px solid #e2e8f0;
  display: grid;
  gap: 12px;
  padding-top: 14px;
}

.nex-loop-communication-log > header {
  align-items: flex-start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.nex-loop-communication-log > header > div {
  min-width: 0;
}

.nex-loop-communication-log h5,
.nex-loop-communication-log p {
  margin: 0;
}

.nex-loop-communication-log h5 {
  color: #111318;
  font-size: 14px;
  margin-top: 2px;
}

.nex-loop-communication-log > header > div > span {
  color: #64748b;
  display: block;
  font-size: 10px;
  line-height: 1.5;
  margin-top: 4px;
  max-width: 620px;
}

.nex-loop-communication-summary {
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.nex-loop-communication-summary > span {
  background: #f8fafc;
  border-left: 2px solid #dbe1e9;
  display: grid;
  gap: 2px;
  min-width: 0;
  padding: 9px 10px;
}

.nex-loop-communication-summary strong,
.nex-loop-communication-summary small {
  display: block;
  overflow-wrap: anywhere;
}

.nex-loop-communication-summary strong {
  color: #111318;
  font-size: 13px;
}

.nex-loop-communication-summary small {
  color: #64748b;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
}

.nex-loop-communication-form {
  background: #f8fafc;
  border-left: 4px solid #ee0014;
  display: grid;
  gap: 10px;
  padding: 12px;
}

.nex-loop-communication-fields {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nex-loop-communication-form label:not(.nex-loop-communication-attestation) {
  display: grid;
  gap: 5px;
}

.nex-loop-communication-form label > span {
  color: #4b5563;
  font-size: 10px;
  font-weight: 850;
}

.nex-loop-communication-form input,
.nex-loop-communication-form select,
.nex-loop-communication-form textarea {
  background: #fff;
  border: 1px solid #cfd5df;
  color: #111318;
  font: inherit;
  min-width: 0;
  padding: 9px 10px;
  width: 100%;
}

.nex-loop-communication-form textarea {
  line-height: 1.5;
  resize: vertical;
}

.nex-loop-communication-attestation {
  align-items: flex-start;
  color: #3f4754;
  display: flex;
  font-size: 10px;
  font-weight: 750;
  gap: 8px;
  line-height: 1.45;
}

.nex-loop-communication-attestation input {
  accent-color: #ee0014;
  flex: 0 0 auto;
  margin-top: 2px;
  width: auto;
}

.nex-loop-communication-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
}

.nex-loop-communication-timeline {
  display: grid;
}

.nex-loop-communication-timeline article {
  align-items: flex-start;
  border-top: 1px solid #e5e7eb;
  display: grid;
  gap: 9px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: 10px 0;
}

.nex-loop-communication-timeline article:first-child {
  border-top: 0;
}

.nex-loop-communication-icon {
  align-items: center;
  background: #fff1f2;
  color: #c60013;
  display: flex;
  height: 32px;
  justify-content: center;
  width: 32px;
}

.nex-loop-communication-timeline article div,
.nex-loop-communication-timeline strong,
.nex-loop-communication-timeline span,
.nex-loop-communication-timeline small {
  display: block;
  min-width: 0;
}

.nex-loop-communication-timeline strong {
  color: #111318;
  font-size: 10px;
}

.nex-loop-communication-timeline article div > span,
.nex-loop-communication-timeline small {
  color: #64748b;
  font-size: 9px;
  line-height: 1.45;
  margin-top: 2px;
  overflow-wrap: anywhere;
}

.nex-loop-communication-timeline article em {
  background: #f1f5f9;
  color: #475569;
  font-size: 8px;
  font-style: normal;
  font-weight: 900;
  padding: 5px 7px;
  text-transform: uppercase;
}

.nex-loop-communication-empty {
  align-items: center;
  color: #64748b;
  display: flex;
  font-size: 10px;
  gap: 8px;
  justify-content: center;
  min-height: 70px;
}

.nex-loop-update-history {
  border-top: 1px solid #e2e8f0;
  padding-top: 10px;
}

.nex-loop-update-history > div {
  display: grid;
  gap: 6px;
  margin-top: 9px;
}

.nex-loop-update-history article {
  align-items: center;
  background: #f8fafc;
  border-radius: 9px;
  display: flex;
  gap: 8px;
  justify-content: space-between;
  padding: 8px 9px;
}

.nex-loop-update-history article strong {
  font-size: 10px;
  text-transform: capitalize;
}

.nex-loop-update-history article span,
.nex-loop-update-history p {
  color: #64748b;
  font-size: 9px;
  margin: 0;
}

.nex-loop-context-panel {
  background:
    radial-gradient(circle at 100% 0%, rgba(238, 0, 20, 0.08), transparent 30%),
    #fff;
  overflow: hidden;
}

.nex-loop-context-heading {
  align-items: flex-start;
}

.nex-loop-context-heading > div {
  flex: 1;
  min-width: 0;
}

.nex-loop-context-heading p {
  color: #64748b;
  font-size: 12px;
  line-height: 1.45;
  margin: 3px 0 0;
}

.nex-loop-context-heading .nex-loop-chip {
  flex: 0 0 auto;
  margin-left: auto;
}

.nex-loop-chip.warning {
  background: #f59e0b;
  color: #111318;
}

.nex-loop-chip.danger {
  background: #ee0014;
  color: #fff;
}

.nex-loop-context-loading,
.nex-loop-context-error,
.nex-loop-context-stale {
  align-items: center;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 12px;
  display: flex;
  gap: 10px;
  min-height: 48px;
  padding: 11px 12px;
}

.nex-loop-context-loading {
  background: #f8fafc;
  color: #475569;
}

.nex-loop-context-error {
  background: #fff1f2;
  border-color: rgba(220, 0, 19, 0.22);
  color: #9f1239;
}

.nex-loop-context-error span {
  flex: 1;
}

.nex-loop-context-stale {
  background: #fffbeb;
  border-color: rgba(180, 83, 9, 0.22);
  color: #92400e;
}

.nex-loop-context-summary {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.nex-loop-context-summary span {
  background: #10131a;
  border-radius: 12px;
  color: #cbd5e1;
  display: grid;
  font-size: 10px;
  font-weight: 800;
  gap: 5px;
  min-width: 0;
  overflow-wrap: anywhere;
  padding: 12px;
  text-transform: uppercase;
}

.nex-loop-context-summary strong {
  color: #fff;
  font-size: 17px;
  line-height: 1.1;
  text-transform: none;
}

.nex-loop-context-facts {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.nex-loop-context-fact {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 12px;
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 11px;
}

.nex-loop-context-fact > span,
.nex-loop-context-fact small {
  color: #64748b;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1.35;
  overflow-wrap: anywhere;
  text-transform: uppercase;
}

.nex-loop-context-fact strong {
  color: #334155;
  font-size: 11px;
}

.nex-loop-context-fact p {
  color: #0f172a;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.35;
  margin: 0;
  overflow-wrap: anywhere;
}

.nex-loop-context-fact.missing {
  background: #fff1f2;
  border-color: rgba(220, 0, 19, 0.24);
}

.nex-loop-context-columns {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1.35fr) minmax(250px, 0.65fr);
}

.nex-loop-context-media,
.nex-loop-context-restrictions {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 14px;
  display: grid;
  gap: 11px;
  padding: 12px;
}

.nex-loop-context-subhead {
  align-items: flex-start;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.nex-loop-context-subhead > div {
  display: grid;
  gap: 3px;
}

.nex-loop-context-subhead span,
.nex-loop-context-subhead em {
  color: #64748b;
  font-size: 10px;
  font-style: normal;
}

.nex-loop-context-subhead em {
  background: #e2e8f0;
  border-radius: 999px;
  flex: 0 0 auto;
  font-weight: 900;
  padding: 5px 8px;
}

.nex-loop-context-photo-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.nex-loop-context-photo {
  background: #fff;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 10px;
  display: grid;
  gap: 5px;
  min-width: 0;
  overflow: hidden;
  padding: 7px;
}

.nex-loop-context-photo img,
.nex-loop-context-photo > svg {
  aspect-ratio: 4 / 3;
  background: #e2e8f0;
  border-radius: 7px;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.nex-loop-context-photo > svg {
  color: #64748b;
  padding: 28%;
}

.nex-loop-context-photo strong,
.nex-loop-context-photo span {
  font-size: 9px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.nex-loop-context-photo span {
  color: #64748b;
  text-transform: uppercase;
}

.nex-loop-context-photo.approved {
  border-color: rgba(4, 120, 87, 0.28);
  box-shadow: inset 0 -3px 0 #10b981;
}

.nex-loop-context-photo.review {
  border-color: rgba(180, 83, 9, 0.25);
  box-shadow: inset 0 -3px 0 #f59e0b;
}

.nex-loop-context-restrictions p,
.nex-loop-context-restrictions ul,
.nex-loop-context-restrictions small {
  color: #475569;
  font-size: 11px;
  line-height: 1.5;
  margin: 0;
}

.nex-loop-context-restrictions ul {
  display: grid;
  gap: 5px;
  padding-left: 18px;
}

.nex-loop-context-restrictions svg {
  color: #047857;
}

.nex-loop-context-restrictions.blocked {
  background: #fff1f2;
  border-color: rgba(220, 0, 19, 0.24);
}

.nex-loop-context-restrictions.blocked svg {
  color: #ee0014;
}

.nex-loop-context-gaps {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nex-loop-context-gaps article {
  align-items: flex-start;
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-left: 4px solid #2563eb;
  border-radius: 10px;
  display: flex;
  gap: 9px;
  padding: 10px;
}

.nex-loop-context-gaps article.blocker {
  background: #fff1f2;
  border-color: rgba(220, 0, 19, 0.22);
  border-left-color: #ee0014;
}

.nex-loop-context-gaps svg {
  flex: 0 0 auto;
  height: 17px;
  width: 17px;
}

.nex-loop-context-gaps strong,
.nex-loop-context-gaps p {
  color: #0f172a;
  font-size: 11px;
  line-height: 1.4;
  margin: 0;
}

.nex-loop-context-gaps p {
  color: #64748b;
  margin-top: 2px;
}

.nex-loop-context-confirmation {
  align-items: center;
  background: #10131a;
  border-radius: 14px;
  color: #fff;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  padding: 14px;
}

.nex-loop-context-confirmation > div {
  display: grid;
  gap: 4px;
}

.nex-loop-context-confirmation p,
.nex-loop-context-confirmation small {
  color: #cbd5e1;
  font-size: 11px;
  line-height: 1.45;
  margin: 0;
}

.nex-loop-context-confirmation .btn {
  flex: 0 0 auto;
}

.nex-loop-context-next {
  align-items: center;
  background: #ecfdf5;
  border: 1px solid rgba(4, 120, 87, 0.22);
  border-radius: 12px;
  color: #065f46;
  display: flex;
  gap: 10px;
  padding: 11px 12px;
}

.nex-loop-context-next div {
  display: grid;
  gap: 3px;
}

.nex-loop-context-next span {
  color: #047857;
  font-size: 11px;
  line-height: 1.45;
}

.nex-loop-campaign-panel {
  border-color: rgba(227, 6, 19, 0.16);
  overflow: hidden;
}

.nex-loop-campaign-heading {
  align-items: flex-start;
}

.nex-loop-campaign-heading > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.nex-loop-campaign-heading p {
  color: #64748b;
  font-size: 11px;
  line-height: 1.45;
  margin: 0;
}

.nex-loop-campaign-heading .nex-loop-chip {
  margin-left: auto;
}

.nex-loop-campaign-safety,
.nex-loop-campaign-locked,
.nex-loop-campaign-loading {
  align-items: center;
  border-radius: 12px;
  display: flex;
  gap: 10px;
  padding: 11px 12px;
}

.nex-loop-campaign-safety {
  background: #eff6ff;
  border: 1px solid rgba(37, 99, 235, 0.2);
  color: #1e40af;
}

.nex-loop-campaign-safety > div,
.nex-loop-campaign-locked > div {
  display: grid;
  gap: 2px;
}

.nex-loop-campaign-safety span,
.nex-loop-campaign-locked span,
.nex-loop-campaign-loading span {
  color: #475569;
  font-size: 11px;
  line-height: 1.45;
}

.nex-loop-campaign-locked,
.nex-loop-campaign-loading {
  background: #f8fafc;
  border: 1px dashed rgba(15, 23, 42, 0.18);
  color: #64748b;
  min-height: 84px;
  justify-content: center;
}

.nex-loop-campaign-start {
  align-items: center;
  background: linear-gradient(120deg, #10131a 0%, #1f2530 72%, #4a1119 100%);
  border-radius: 16px;
  color: #fff;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  overflow: hidden;
  padding: 20px;
  position: relative;
}

.nex-loop-campaign-start::before {
  background: #ee0014;
  content: "";
  inset: 0 auto 0 0;
  position: absolute;
  width: 4px;
}

.nex-loop-campaign-start > div {
  display: grid;
  gap: 5px;
}

.nex-loop-campaign-start span,
.nex-loop-campaign-start p {
  color: #cbd5e1;
  font-size: 11px;
  line-height: 1.5;
  margin: 0;
}

.nex-loop-campaign-start strong {
  font-size: 22px;
}

.nex-loop-campaign-summary {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.nex-loop-campaign-summary span {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 10px;
  color: #64748b;
  display: grid;
  font-size: 9px;
  font-weight: 800;
  gap: 4px;
  min-width: 0;
  overflow-wrap: anywhere;
  padding: 10px;
  text-transform: uppercase;
}

.nex-loop-campaign-summary strong {
  color: #0f172a;
  font-size: 15px;
  line-height: 1.15;
  text-transform: none;
}

.nex-loop-campaign-workspace {
  background: #eef2f7;
  border: 1px solid rgba(15, 23, 42, 0.09);
  border-radius: 16px;
  display: grid;
  gap: 0;
  grid-template-columns: minmax(220px, 0.34fr) minmax(0, 1fr);
  min-width: 0;
  overflow: hidden;
}

.nex-loop-campaign-queue {
  align-content: start;
  background: #10131a;
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 12px;
}

.nex-loop-campaign-queue-head {
  align-items: flex-start;
  color: #fff;
  display: flex;
  gap: 8px;
  justify-content: space-between;
  margin-bottom: 4px;
  padding: 4px;
}

.nex-loop-campaign-queue-head div {
  display: grid;
  gap: 2px;
}

.nex-loop-campaign-queue-head span,
.nex-loop-campaign-queue-head div span {
  color: #94a3b8;
  font-size: 9px;
  overflow-wrap: anywhere;
}

.nex-loop-campaign-asset-button {
  align-items: center;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 9px;
  color: #fff;
  cursor: pointer;
  display: grid;
  gap: 8px;
  grid-template-columns: 26px minmax(0, 1fr);
  min-height: 58px;
  padding: 8px;
  text-align: left;
  width: 100%;
}

.nex-loop-campaign-asset-button:hover,
.nex-loop-campaign-asset-button.active {
  background: #232936;
  border-color: rgba(255, 255, 255, 0.12);
}

.nex-loop-campaign-asset-button > span {
  align-items: center;
  background: rgba(255, 255, 255, 0.08);
  border-radius: 7px;
  color: #cbd5e1;
  display: flex;
  font-size: 10px;
  height: 26px;
  justify-content: center;
  width: 26px;
}

.nex-loop-campaign-asset-button.active > span {
  background: #ee0014;
  color: #fff;
}

.nex-loop-campaign-asset-button > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.nex-loop-campaign-asset-button strong,
.nex-loop-campaign-asset-button small {
  font-size: 10px;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.nex-loop-campaign-asset-button small {
  color: #94a3b8;
}

.nex-loop-campaign-status-dot {
  color: #fbbf24;
  font-size: 8px;
  font-style: normal;
  font-weight: 900;
  grid-column: 2;
  text-transform: uppercase;
}

.nex-loop-campaign-status-dot.success {
  color: #6ee7b7;
}

.nex-loop-campaign-status-dot.danger {
  color: #fda4af;
}

.nex-loop-campaign-editor {
  background: #fff;
  display: grid;
  gap: 13px;
  min-width: 0;
  padding: 14px;
}

.nex-loop-campaign-editor > header {
  align-items: flex-start;
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
  display: flex;
  gap: 12px;
  justify-content: space-between;
  padding-bottom: 11px;
}

.nex-loop-campaign-editor > header > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.nex-loop-campaign-editor > header h4,
.nex-loop-campaign-editor > header p {
  margin: 0;
}

.nex-loop-campaign-editor > header span {
  color: #64748b;
  font-size: 10px;
}

.nex-loop-campaign-editor-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1.05fr) minmax(240px, 0.75fr);
  min-width: 0;
}

.nex-loop-campaign-fields {
  display: grid;
  gap: 9px;
  min-width: 0;
}

.nex-loop-campaign-fields label,
.nex-loop-campaign-change-reason {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.nex-loop-campaign-fields label > span,
.nex-loop-campaign-change-reason > span {
  color: #475569;
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
}

.nex-loop-campaign-fields textarea,
.nex-loop-campaign-change-reason input {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.13);
  border-radius: 8px;
  color: #0f172a;
  font: inherit;
  font-size: 12px;
  line-height: 1.5;
  max-width: 100%;
  min-width: 0;
  padding: 9px;
  resize: vertical;
  width: 100%;
}

.nex-loop-campaign-fields textarea:focus,
.nex-loop-campaign-change-reason input:focus {
  border-color: #ee0014;
  box-shadow: 0 0 0 3px rgba(238, 0, 20, 0.08);
  outline: none;
}

.nex-loop-campaign-proof {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.nex-loop-campaign-proof-frame {
  background: #111318;
  border-left: 4px solid #ee0014;
  border-radius: 10px;
  color: #fff;
  display: grid;
  gap: 10px;
  max-height: 520px;
  min-height: 260px;
  overflow: auto;
  padding: 15px;
}

.nex-loop-campaign-proof-frame > span {
  color: #fca5a5;
  font-size: 9px;
  font-weight: 900;
  text-transform: uppercase;
}

.nex-loop-campaign-proof-frame div {
  display: grid;
  gap: 3px;
}

.nex-loop-campaign-proof-frame small {
  color: #94a3b8;
  font-size: 8px;
  font-weight: 900;
  text-transform: uppercase;
}

.nex-loop-campaign-proof-frame p,
.nex-loop-campaign-proof-frame ul {
  color: #f8fafc;
  font-size: 11px;
  line-height: 1.55;
  margin: 0;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}

.nex-loop-campaign-proof-frame ul {
  padding-left: 17px;
}

.nex-loop-campaign-proof > p {
  color: #64748b;
  font-size: 9px;
  line-height: 1.45;
  margin: 0;
}

.nex-loop-campaign-evidence {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.nex-loop-campaign-evidence details {
  background: #f8fafc;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 9px;
  padding: 9px;
}

.nex-loop-campaign-evidence summary {
  cursor: pointer;
  font-size: 10px;
  font-weight: 900;
}

.nex-loop-campaign-evidence details > div {
  color: #475569;
  display: grid;
  font-size: 10px;
  gap: 5px;
  line-height: 1.45;
  padding-top: 8px;
}

.nex-loop-campaign-evidence p,
.nex-loop-campaign-evidence ul {
  margin: 0;
  overflow-wrap: anywhere;
}

.nex-loop-campaign-evidence ul {
  padding-left: 17px;
}

.nex-loop-campaign-acknowledgment {
  align-items: flex-start;
  background: #fff7ed;
  border: 1px solid rgba(194, 65, 12, 0.16);
  border-radius: 9px;
  color: #9a3412;
  display: flex;
  font-size: 10px;
  font-weight: 800;
  gap: 8px;
  line-height: 1.4;
  padding: 9px;
}

.nex-loop-campaign-acknowledgment input {
  flex: 0 0 auto;
  margin-top: 1px;
}

.nex-loop-campaign-unsaved {
  align-items: center;
  background: #fffbeb;
  border: 1px solid rgba(180, 83, 9, 0.18);
  border-radius: 9px;
  color: #92400e;
  display: flex;
  font-size: 10px;
  font-weight: 800;
  gap: 8px;
  line-height: 1.4;
  padding: 9px;
}

.nex-loop-campaign-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  justify-content: flex-end;
}

.nex-loop-campaign-finalize {
  align-items: center;
  background: #10131a;
  border-radius: 12px;
  color: #fff;
  display: flex;
  gap: 14px;
  justify-content: space-between;
  padding: 12px;
}

.nex-loop-campaign-finalize > div {
  display: grid;
  gap: 3px;
}

.nex-loop-campaign-finalize span {
  color: #cbd5e1;
  font-size: 10px;
  line-height: 1.45;
}

.nex-loop-skeleton-grid {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.nex-loop-skeleton {
  animation: nex-loop-pulse 1.4s ease-in-out infinite;
  background: linear-gradient(90deg, #eef2f7, #fff, #eef2f7);
  background-size: 200% 100%;
  border-radius: 18px;
  min-height: 220px;
}

.nex-loop-error {
  margin: 0;
}

@keyframes nex-loop-pulse {
  0% { background-position: 100% 0; }
  100% { background-position: -100% 0; }
}

@media (max-width: 1100px) {
  .nex-loop-overview-grid,
  .nex-loop-summary-strip,
  .nex-loop-review-grid,
  .nex-loop-touchpoint-grid,
  .nex-loop-report-meta,
  .nex-loop-timeline,
  .nex-loop-proof-grid,
  .nex-loop-data-source-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-workspace-grid,
  .nex-loop-two-column,
  .nex-loop-three-column {
    grid-template-columns: 1fr;
  }

  .nex-loop-update-cadence-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .nex-loop-index-panel {
    position: static;
  }

  .nex-loop-index-list {
    max-height: none;
  }

  .nex-loop-context-facts,
  .nex-loop-context-photo-grid,
  .nex-loop-campaign-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-campaign-workspace,
  .nex-loop-campaign-editor-grid {
    grid-template-columns: 1fr;
  }

  .nex-loop-campaign-queue {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-campaign-queue-head {
    grid-column: 1 / -1;
  }

  .nex-loop-approval-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .nex-loop-approval-metrics button:nth-child(3) {
    border-right: 0;
  }

  .nex-loop-approval-footer {
    grid-template-columns: minmax(160px, 0.7fr) minmax(240px, 1.3fr);
  }

  .nex-loop-approval-footer .btn {
    grid-column: 1 / -1;
    justify-self: end;
  }

  .nex-loop-calendar-head {
    align-items: stretch;
    flex-direction: column;
  }

  .nex-loop-calendar-head-actions {
    justify-content: space-between;
  }

  .nex-loop-calendar-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .nex-loop-calendar-metrics button:nth-child(3) {
    border-right: 0;
  }

  .nex-loop-calendar-toolbar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-calendar-toolbar .btn {
    justify-content: center;
  }

  .nex-loop-calendar-planner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-calendar-planner-actions {
    grid-column: 1 / -1;
    justify-content: flex-end;
  }

  .nex-loop-calendar-entry {
    grid-template-columns: 100px minmax(0, 1fr);
  }

  .nex-loop-calendar-entry-actions {
    grid-column: 1 / -1;
    justify-content: flex-end;
  }
}

@media (max-width: 560px) {
  .nex-loop-detail-panel {
    padding: 12px;
  }

  .nex-loop-notes-history-grid {
    grid-template-columns: 1fr;
  }

  .nex-loop-agent-notes .nex-loop-section-heading {
    align-items: start;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
  }

  .nex-loop-agent-notes .nex-loop-section-heading .nex-loop-chip {
    grid-column: 1 / -1;
    margin-left: 0;
    width: fit-content;
  }

  .nex-loop-agent-note-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .nex-loop-agent-note-actions .btn {
    justify-content: center;
    width: 100%;
  }

  .nex-loop-operation-meta {
    align-items: start;
    flex-direction: column;
    gap: 3px;
  }

  .nex-loop-agent-note-list,
  .nex-loop-operations-list {
    max-height: none;
  }

  .nex-loop-overview-grid,
  .nex-loop-summary-strip,
  .nex-loop-engagement-grid,
  .nex-loop-review-grid,
  .nex-loop-touchpoint-grid,
  .nex-loop-report-meta,
  .nex-loop-timeline,
  .nex-loop-proof-grid,
  .nex-loop-data-source-grid,
  .nex-loop-skeleton-grid {
    grid-template-columns: 1fr;
  }

  .nex-loop-filter-row {
    grid-template-columns: 1fr;
  }

  .nex-loop-update-command-head {
    align-items: stretch;
    flex-direction: column;
    padding: 15px;
  }

  .nex-loop-update-command-safety {
    flex-basis: auto;
  }

  .nex-loop-update-cadence-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 12px;
  }

  .nex-loop-update-cadence-grid button {
    min-height: 66px;
  }

  .nex-loop-update-cadence-grid button:last-child {
    grid-column: 1 / -1;
  }

  .nex-loop-update-priority,
  .nex-loop-update-cadence-panel {
    align-items: start;
    grid-template-columns: auto minmax(0, 1fr);
    padding: 12px;
  }

  .nex-loop-update-priority .btn,
  .nex-loop-update-cadence-panel time {
    grid-column: 1 / -1;
    justify-content: center;
    text-align: left;
    width: 100%;
  }

  .nex-loop-context-columns,
  .nex-loop-context-gaps {
    grid-template-columns: 1fr;
  }

  .nex-loop-context-summary,
  .nex-loop-context-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-context-summary strong {
    font-size: 15px;
  }

  .nex-loop-context-fact p {
    font-size: 12px;
  }

  .nex-loop-context-photo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-context-heading {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
  }

  .nex-loop-context-heading .nex-loop-chip {
    grid-column: 1 / -1;
    margin-left: 0;
    width: fit-content;
  }

  .nex-loop-context-confirmation {
    align-items: stretch;
    flex-direction: column;
  }

  .nex-loop-campaign-heading {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
  }

  .nex-loop-campaign-heading .nex-loop-chip {
    grid-column: 1 / -1;
    margin-left: 0;
    width: fit-content;
  }

  .nex-loop-campaign-start,
  .nex-loop-campaign-finalize {
    align-items: stretch;
    flex-direction: column;
  }

  .nex-loop-campaign-start .btn,
  .nex-loop-campaign-finalize .btn {
    justify-content: center;
    width: 100%;
  }

  .nex-loop-campaign-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-campaign-summary span:last-child {
    grid-column: 1 / -1;
  }

  .nex-loop-campaign-queue {
    display: flex;
    gap: 7px;
    overflow-x: auto;
    padding-bottom: 10px;
    scroll-snap-type: x proximity;
  }

  .nex-loop-campaign-queue-head {
    display: none;
  }

  .nex-loop-campaign-asset-button {
    flex: 0 0 180px;
    scroll-snap-align: start;
  }

  .nex-loop-campaign-editor {
    padding: 11px;
  }

  .nex-loop-campaign-editor > header {
    display: grid;
  }

  .nex-loop-campaign-editor-grid,
  .nex-loop-campaign-evidence {
    grid-template-columns: 1fr;
  }

  .nex-loop-campaign-proof-frame {
    max-height: 360px;
    min-height: 220px;
  }

  .nex-loop-campaign-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-campaign-actions .btn {
    justify-content: center;
    min-width: 0;
    width: 100%;
  }

  .nex-loop-context-confirmation .btn {
    justify-content: center;
    width: 100%;
  }

  .nex-loop-approval-head {
    align-items: stretch;
    flex-direction: column;
    padding: 15px;
  }

  .nex-loop-approval-safety {
    flex-basis: auto;
  }

  .nex-loop-approval-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-approval-metrics button,
  .nex-loop-approval-metrics button:nth-child(3) {
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    border-right: 1px solid rgba(15, 23, 42, 0.08);
    min-height: 64px;
  }

  .nex-loop-approval-metrics button:nth-child(even) {
    border-right: 0;
  }

  .nex-loop-approval-metrics button:last-child {
    border-bottom: 0;
    grid-column: 1 / -1;
  }

  .nex-loop-approval-toolbar {
    align-items: stretch;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-approval-toolbar > label,
  .nex-loop-approval-toolbar > small {
    grid-column: 1 / -1;
    margin-left: 0;
    min-width: 0;
  }

  .nex-loop-approval-toolbar .btn {
    justify-content: center;
    min-width: 0;
  }

  .nex-loop-approval-list {
    max-height: none;
  }

  .nex-loop-approval-item {
    grid-template-columns: auto minmax(0, 1fr);
    padding: 13px 12px;
  }

  .nex-loop-approval-copy,
  .nex-loop-approval-actions {
    grid-column: 1 / -1;
  }

  .nex-loop-approval-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-width: 0;
  }

  .nex-loop-approval-actions .btn {
    justify-content: center;
    min-width: 0;
    width: 100%;
  }

  .nex-loop-approval-copy > div:first-child,
  .nex-loop-approval-meta {
    align-items: flex-start;
  }

  .nex-loop-approval-copy > div:first-child span,
  .nex-loop-approval-copy > p,
  .nex-loop-approval-meta > span {
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  .nex-loop-approval-footer {
    align-items: stretch;
    grid-template-columns: 1fr;
  }

  .nex-loop-approval-footer .btn {
    grid-column: 1;
    justify-self: stretch;
  }

  .nex-loop-calendar-head {
    gap: 13px;
    padding: 15px;
  }

  .nex-loop-calendar-head-actions {
    align-items: stretch;
    display: grid;
    grid-template-columns: 1fr;
  }

  .nex-loop-calendar-head-actions .segmented-control,
  .nex-loop-calendar-head-actions > .btn {
    justify-content: center;
    width: 100%;
  }

  .nex-loop-calendar-boundary {
    align-items: flex-start;
  }

  .nex-loop-calendar-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-calendar-metrics button,
  .nex-loop-calendar-metrics button:nth-child(3) {
    border-bottom: 1px solid rgba(15, 23, 42, 0.08);
    border-right: 1px solid rgba(15, 23, 42, 0.08);
    min-height: 64px;
  }

  .nex-loop-calendar-metrics button:nth-child(even) {
    border-right: 0;
  }

  .nex-loop-calendar-metrics button:last-child {
    border-bottom: 0;
    grid-column: 1 / -1;
  }

  .nex-loop-calendar-toolbar,
  .nex-loop-calendar-planner {
    grid-template-columns: 1fr;
  }

  .nex-loop-calendar-toolbar .btn {
    width: 100%;
  }

  .nex-loop-calendar-planner-actions {
    display: grid;
    grid-column: 1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-calendar-planner-actions .btn {
    justify-content: center;
    min-width: 0;
    width: 100%;
  }

  .nex-loop-calendar-planner > small {
    grid-column: 1;
  }

  .nex-loop-calendar-entry {
    gap: 9px;
    grid-template-columns: 1fr;
    padding: 12px;
  }

  .nex-loop-calendar-entry-actions {
    display: grid;
    grid-column: 1;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    justify-content: stretch;
  }

  .nex-loop-calendar-entry-actions .btn {
    justify-content: center;
    min-width: 0;
    width: 100%;
  }

  .nex-loop-calendar-empty {
    align-items: flex-start;
    flex-direction: column;
  }

  .nex-loop-calendar-empty .btn {
    justify-content: center;
    width: 100%;
  }

  .nex-loop-month-wrap {
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
  }

  .nex-loop-month-nav {
    background: #fff;
    left: 0;
    min-width: 100%;
    position: sticky;
    z-index: 2;
  }

  .nex-loop-detail-header {
    display: grid;
  }

  .nex-loop-health-card {
    min-width: 0;
    width: 100%;
  }

  .nex-loop-report-panel pre {
    font-size: 11px;
    max-height: 360px;
  }

  .nex-loop-update-head {
    display: grid;
  }

  .nex-loop-update-status {
    justify-self: start;
  }

  .nex-loop-update-evidence {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-update-readiness > div {
    grid-template-columns: 1fr;
  }

  .nex-loop-update-source-alert {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
  }

  .nex-loop-update-source-alert .btn {
    grid-column: 1 / -1;
    justify-content: center;
    width: 100%;
  }

  .nex-loop-update-editor textarea {
    min-height: 300px;
  }

  .nex-loop-update-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-update-actions .btn {
    justify-content: center;
    min-height: 44px;
    min-width: 0;
    width: 100%;
  }

  .nex-loop-update-actions .btn:last-child {
    grid-column: 1 / -1;
  }

  .nex-loop-update-history article {
    align-items: flex-start;
    display: grid;
  }

  .nex-loop-communication-log > header,
  .nex-loop-communication-fields {
    display: grid;
    grid-template-columns: 1fr;
  }

  .nex-loop-communication-log > header .btn,
  .nex-loop-communication-actions .btn {
    justify-content: center;
    min-height: 44px;
    width: 100%;
  }

  .nex-loop-communication-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-communication-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .nex-loop-communication-timeline article {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .nex-loop-communication-timeline article em {
    grid-column: 2;
    justify-self: start;
  }
}
/* County Growth Map */
.county-growth-page {
  --county-current: #e30613;
  --county-target: #f27b74;
  --county-inactive: #d9dde3;
  --county-ink: #111318;
  --county-muted: #657080;
  display: grid;
  gap: 18px;
  min-width: 0;
  padding-bottom: 44px;
}

.county-growth-hero {
  align-items: end;
  background: linear-gradient(118deg, #12151b 0%, #20242d 62%, #68131b 100%);
  color: #fff;
  display: flex;
  gap: 24px;
  justify-content: space-between;
  min-height: 190px;
  overflow: hidden;
  padding: 30px 34px;
  position: relative;
}

.county-growth-hero::after {
  color: rgba(255, 255, 255, .045);
  content: "67";
  font-size: 210px;
  font-weight: 900;
  line-height: .78;
  position: absolute;
  right: 20px;
  top: 18px;
}

.county-growth-hero > * { position: relative; z-index: 1; }
.county-growth-hero h2 { font-size: clamp(32px, 4vw, 54px); line-height: 1; margin: 7px 0 12px; }
.county-growth-hero p:not(.eyebrow) { color: #d9dde5; line-height: 1.6; margin: 0; max-width: 760px; }
.county-growth-hero .eyebrow { color: #ff9299; }
.county-growth-hero-actions { display: flex; flex: 0 0 auto; gap: 10px; }
.county-growth-hero-actions .button { min-height: 42px; text-decoration: none; }
.county-growth-hero-actions a.button.secondary { background: #fff; border-color: #fff; color: #171a20; }
.county-growth-hero-actions button.button.primary { background: #e30613; border-color: #e30613; color: #fff; }

.county-growth-summary {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.county-growth-stat {
  background: #fff;
  border: 1px solid #dfe3e8;
  border-top: 3px solid #ccd1d8;
  display: grid;
  min-height: 100px;
  padding: 15px 16px;
}

.county-growth-stat.current { border-top-color: var(--county-current); }
.county-growth-stat.target { border-top-color: var(--county-target); }
.county-growth-stat.coverage { border-top-color: #20242d; }
.county-growth-stat.agents { border-top-color: #2c6e68; }
.county-growth-stat.added { border-top-color: #bd8c2a; }
.county-growth-stat span { color: var(--county-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.county-growth-stat strong { align-self: end; color: var(--county-ink); font-size: 28px; line-height: 1; }
.county-growth-stat small { color: var(--county-muted); font-size: 10px; margin-top: 6px; }

.county-assignment-quality {
  align-items: start;
  background: #fff;
  border: 1px solid #dfe3e8;
  border-left: 4px solid #e30613;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 18px 20px;
}

.county-assignment-quality h3 {
  font-size: 20px;
  margin: 4px 0 6px;
}

.county-assignment-quality p:not(.eyebrow) {
  color: #5f6977;
  line-height: 1.5;
  margin: 0;
}

.county-assignment-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(86px, 1fr));
}

.county-assignment-metrics span {
  border-left: 1px solid #e2e6eb;
  color: #6b7481;
  display: grid;
  font-size: 9px;
  font-weight: 850;
  min-width: 96px;
  padding: 6px 12px;
  text-transform: uppercase;
}

.county-assignment-metrics strong {
  color: #111318;
  font-size: 22px;
}

.county-assignment-quality details {
  border-top: 1px solid #e6e9ed;
  grid-column: 1 / -1;
  padding-top: 12px;
}

.county-assignment-quality summary {
  cursor: pointer;
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.county-assignment-unassigned {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.county-assignment-unassigned span {
  background: #f3f5f7;
  border: 1px solid #d8dde3;
  font-size: 10px;
  font-weight: 800;
  padding: 6px 8px;
}

.county-growth-toolbar {
  align-items: center;
  background: #fff;
  border: 1px solid #dfe3e8;
  display: grid;
  gap: 10px;
  grid-template-columns: auto minmax(240px, 1fr) repeat(3, minmax(140px, auto));
  padding: 11px;
  position: sticky;
  top: 0;
  z-index: 8;
}

.segmented-control { background: #eef1f4; display: flex; padding: 3px; }
.segmented-control button { align-items: center; background: transparent; border: 0; color: #505967; display: flex; font: inherit; font-size: 12px; font-weight: 800; gap: 6px; min-height: 36px; padding: 0 12px; }
.segmented-control button.active { background: #fff; box-shadow: 0 1px 5px rgba(20, 26, 36, .12); color: #111318; }
.county-growth-search { align-items: center; border: 1px solid #ccd2da; display: flex; gap: 8px; min-height: 42px; padding: 0 12px; }
.county-growth-search svg { color: #6d7684; flex: 0 0 auto; }
.county-growth-search input { border: 0; min-width: 0; outline: 0; width: 100%; }
.county-growth-toolbar select,
.county-table-controls select,
.county-section-heading select { background: #fff; border: 1px solid #ccd2da; min-height: 42px; padding: 0 32px 0 11px; }

.county-growth-workspace { align-items: start; display: grid; gap: 16px; grid-template-columns: minmax(0, 1fr) minmax(330px, 410px); }
.county-growth-main { min-width: 0; }
.county-map-panel,
.county-growth-table-wrap,
.county-growth-drawer,
.county-target-section,
.county-history-section { background: #fff; border: 1px solid #dce1e7; }
.county-map-heading { align-items: start; border-bottom: 1px solid #e3e6eb; display: flex; gap: 20px; justify-content: space-between; padding: 19px 21px; }
.county-map-heading h3 { font-size: 21px; margin: 3px 0 0; }
.county-map-legend { display: flex; flex-wrap: wrap; gap: 8px 16px; justify-content: end; }
.county-map-legend span { align-items: center; color: #505968; display: flex; font-size: 11px; font-weight: 800; gap: 6px; }
.county-map-legend i { border: 1px solid #4f5660; height: 12px; width: 18px; }
.county-map-legend i.current { background: var(--county-current); }
.county-map-legend i.target { background: var(--county-target); }
.county-map-legend i.inactive { background: var(--county-inactive); }

.county-map-stage { background: #f4f6f8; min-height: 520px; overflow: hidden; padding: 20px; position: relative; }
.county-map-stage svg { display: block; height: 500px; margin: 0 auto; max-width: 720px; overflow: visible; width: 100%; }
.county-map-path { cursor: pointer; outline: none; stroke: #3c424b; stroke-width: .17; transition: filter .15s ease, opacity .15s ease, stroke-width .15s ease; vector-effect: non-scaling-stroke; }
.county-map-path.status-current_presence { fill: var(--county-current); }
.county-map-path.status-targeting_next { fill: var(--county-target); }
.county-map-path.status-not_yet_active { fill: var(--county-inactive); }
.county-map-path.filtered { opacity: .18; pointer-events: none; }
.county-map-path:hover,
.county-map-path:focus-visible { filter: brightness(1.08); stroke: #08090b; stroke-width: .7; }
.county-map-path.selected { filter: drop-shadow(0 0 1.8px rgba(0, 0, 0, .65)); stroke: #050505; stroke-width: 1; }
.county-map-tooltip { background: #11151c; box-shadow: 0 8px 24px rgba(10, 15, 22, .25); color: #fff; display: grid; gap: 3px; max-width: 220px; padding: 11px 13px; pointer-events: none; position: absolute; z-index: 5; }
.county-map-tooltip span { color: #ff9ca2; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.county-map-tooltip small { color: #cbd1db; }
.county-map-source { border-top: 1px solid #e3e6eb; color: #687383; font-size: 11px; line-height: 1.5; margin: 0; padding: 11px 20px; }

.county-growth-drawer { max-height: calc(100vh - 135px); overflow-y: auto; position: sticky; top: 72px; }
.county-drawer-header { align-items: start; background: #151820; color: #fff; display: flex; gap: 16px; justify-content: space-between; padding: 20px; }
.county-drawer-header h3 { font-size: 24px; margin: 4px 0; }
.county-drawer-header p { color: #bfc5cf; margin: 0; }
.county-status-pill { border: 1px solid transparent; display: inline-flex; font-size: 10px; font-weight: 900; line-height: 1.2; padding: 6px 8px; text-transform: uppercase; }
.county-status-pill.current_presence { background: #ffe8ea; border-color: #ff9fa6; color: #9e0010; }
.county-status-pill.targeting_next { background: #fff0e9; border-color: #f2a188; color: #8b301b; }
.county-status-pill.not_yet_active { background: #edf0f3; border-color: #d4d8de; color: #515966; }
.county-drawer-metrics { border-bottom: 1px solid #e2e6eb; display: grid; grid-template-columns: repeat(4, 1fr); }
.county-drawer-metrics div { border-right: 1px solid #e2e6eb; display: grid; padding: 11px 8px; text-align: center; }
.county-drawer-metrics div:last-child { border: 0; }
.county-drawer-metrics strong { font-size: 18px; }
.county-drawer-metrics span { color: #737c89; font-size: 9px; font-weight: 800; text-transform: uppercase; }
.county-status-actions { border-bottom: 1px solid #e2e6eb; display: grid; gap: 8px; padding: 16px 18px; }
.county-status-actions > span { font-size: 11px; font-weight: 900; text-transform: uppercase; }
.county-status-actions > div { display: grid; gap: 6px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.county-status-actions button { background: #fff; border: 1px solid #cbd1d9; color: #3c4653; font: inherit; font-size: 10px; font-weight: 800; min-height: 42px; padding: 5px; }
.county-status-actions button:disabled { cursor: not-allowed; opacity: .52; }
.county-status-actions button.active.current { background: var(--county-current); border-color: var(--county-current); color: #fff; }
.county-status-actions button.active.target { background: var(--county-target); border-color: #d55b54; color: #42100d; }
.county-status-actions button.active.inactive { background: #e6e9ed; border-color: #929aa5; color: #242a31; }
.county-status-actions small { color: #6c7581; line-height: 1.45; }
.county-drawer-section { border-bottom: 1px solid #e4e7ec; padding: 17px 18px; }
.county-drawer-section h4 { font-size: 13px; margin: 0 0 12px; text-transform: uppercase; }
.county-field-grid { display: grid; gap: 11px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.county-field-grid label { display: grid; gap: 5px; min-width: 0; }
.county-field-grid label.wide { grid-column: 1 / -1; }
.county-field-grid label > span { color: #505967; font-size: 10px; font-weight: 800; }
.county-field-grid input,
.county-field-grid select,
.county-field-grid textarea { background: #fff; border: 1px solid #cbd1d9; font: inherit; font-size: 12px; min-height: 39px; min-width: 0; padding: 8px 9px; width: 100%; }
.county-field-grid textarea { min-height: 76px; resize: vertical; }
.county-people-section { border-bottom: 1px solid #e2e6eb; padding: 14px 18px; }
.county-people-section > div { display: flex; flex-wrap: wrap; gap: 8px; }
.county-people-section button { align-items: center; background: #f5f7f9; border: 1px solid #d2d7de; display: flex; font: inherit; font-size: 11px; font-weight: 800; gap: 6px; min-height: 36px; padding: 0 10px; }
.county-people-section ul { border-top: 1px solid #e5e8ec; list-style: none; margin: 12px 0 0; padding: 5px 0 0; }
.county-people-section li { display: grid; padding: 7px 0; }
.county-people-section li span { color: #697382; font-size: 11px; }
.county-drawer-footer { align-items: center; background: #f5f7f9; display: flex; gap: 12px; justify-content: space-between; padding: 14px 18px; }
.county-drawer-footer small { color: #6c7581; line-height: 1.4; }
.county-drawer-footer .button { flex: 0 0 auto; }

.county-table-controls { align-items: center; border-bottom: 1px solid #e2e6eb; display: flex; justify-content: space-between; padding: 13px 15px; }
.county-growth-table-scroll { max-height: 690px; overflow: auto; }
.county-growth-table { border-collapse: collapse; font-size: 11px; min-width: 1080px; width: 100%; }
.county-growth-table th { background: #151820; color: #fff; font-size: 9px; padding: 11px 10px; position: sticky; text-align: left; text-transform: uppercase; top: 0; z-index: 2; }
.county-growth-table td { border-bottom: 1px solid #e3e6ea; color: #48515e; padding: 10px; vertical-align: top; }
.county-growth-table tr { cursor: pointer; }
.county-growth-table tr:hover td { background: #fff8f8; }
.county-growth-table tr.selected td { background: #ffeded; }
.county-growth-table td > button { background: transparent; border: 0; color: #111318; display: grid; font: inherit; font-weight: 800; padding: 0; text-align: left; }
.county-growth-table td > button small { color: #7d8590; font-size: 9px; }

.county-target-section,
.county-history-section { padding: 20px; }
.county-section-heading { align-items: end; border-bottom: 1px solid #e2e6eb; display: flex; gap: 16px; justify-content: space-between; margin-bottom: 16px; padding-bottom: 14px; }
.county-section-heading h3 { font-size: 22px; margin: 3px 0 0; }
.county-section-heading > span { color: #66707e; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.county-target-grid { display: grid; gap: 12px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.county-target-grid > button { background: #fff; border: 1px solid #dce1e7; border-top: 3px solid var(--county-target); color: #151820; font: inherit; padding: 15px; text-align: left; transition: box-shadow .15s ease, transform .15s ease; }
.county-target-grid > button:hover { box-shadow: 0 10px 24px rgba(18, 24, 33, .1); transform: translateY(-2px); }
.county-target-grid > button > div:first-child { display: grid; gap: 4px; }
.county-target-grid > button > div:first-child strong { font-size: 16px; }
.county-target-grid > button > div:first-child small { color: #697381; }
.county-priority { font-size: 9px; font-weight: 900; text-transform: uppercase; }
.county-priority.high { color: #be0011; }
.county-priority.medium { color: #9b5a00; }
.county-priority.low { color: #3e6a68; }
.county-target-grid dl { border-bottom: 1px solid #e7eaee; border-top: 1px solid #e7eaee; display: grid; grid-template-columns: repeat(3, 1fr); margin: 12px 0; padding: 10px 0; }
.county-target-grid dl div { display: grid; }
.county-target-grid dt { color: #79818d; font-size: 9px; font-weight: 800; text-transform: uppercase; }
.county-target-grid dd { font-size: 12px; font-weight: 800; margin: 3px 0 0; }
.county-target-grid p { color: #4f5966; font-size: 11px; line-height: 1.45; margin: 0; }
.county-target-grid em { align-items: start; background: #fff2e5; color: #84460a; display: flex; font-size: 10px; font-style: normal; gap: 6px; margin-top: 10px; padding: 8px; }
.county-target-grid em svg { flex: 0 0 auto; }

.county-history-list { list-style: none; margin: 0; padding: 0; }
.county-history-list li { display: grid; gap: 11px; grid-template-columns: 13px 1fr; padding: 0 0 20px; position: relative; }
.county-history-list li::before { background: #d9dde3; content: ""; height: 100%; left: 5px; position: absolute; top: 12px; width: 1px; }
.county-history-list li:last-child::before { display: none; }
.county-history-list i { border: 2px solid #fff; box-shadow: 0 0 0 1px #929aa6; height: 11px; margin-top: 3px; position: relative; width: 11px; z-index: 1; }
.county-history-list i.current_presence { background: var(--county-current); }
.county-history-list i.targeting_next { background: var(--county-target); }
.county-history-list i.not_yet_active { background: var(--county-inactive); }
.county-history-list div { display: grid; gap: 3px; }
.county-history-list span,
.county-history-list small { color: #6d7683; font-size: 10px; }
.county-history-list p { color: #4a5461; font-size: 11px; margin: 3px 0 0; }

.county-confirm-backdrop { align-items: center; background: rgba(9, 12, 17, .66); display: flex; inset: 0; justify-content: center; padding: 20px; position: fixed; z-index: 1000; }
.county-confirm-modal { background: #fff; border-top: 4px solid var(--county-current); box-shadow: 0 28px 70px rgba(0, 0, 0, .3); max-width: 510px; padding: 25px; width: 100%; }
.county-confirm-modal > svg { color: var(--county-current); }
.county-confirm-modal h3 { font-size: 24px; margin: 5px 0 12px; }
.county-confirm-modal > p:not(.eyebrow) { color: #515b68; line-height: 1.55; }
.county-confirm-modal > div:last-child { display: flex; gap: 9px; justify-content: end; margin-top: 18px; }
.county-confirm-warning { background: #fff1e8; border-left: 3px solid #d35f16; color: #7e3e12; font-size: 11px; padding: 10px; }
.county-growth-loading { align-items: center; background: #fff; border: 1px solid #dde2e8; display: flex; flex-direction: column; gap: 8px; justify-content: center; min-height: 520px; padding: 30px; text-align: center; }
.county-growth-loading svg { color: var(--county-current); }
.county-growth-loading span { color: #687281; }

@media (max-width: 1280px) {
  .county-growth-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .county-growth-toolbar { grid-template-columns: auto minmax(210px, 1fr) repeat(2, minmax(135px, auto)); }
  .county-growth-toolbar select:last-child { display: none; }
  .county-growth-workspace { grid-template-columns: minmax(0, 1fr) minmax(310px, 360px); }
  .county-target-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 980px) {
  .county-growth-workspace { grid-template-columns: 1fr; }
  .county-growth-drawer { max-height: none; position: static; }
  .county-growth-toolbar { position: static; }
  .county-map-stage { min-height: 460px; }
  .county-map-stage svg { height: 440px; }
}

@media (max-width: 720px) {
  .county-growth-page { gap: 12px; }
  .county-growth-hero { align-items: start; flex-direction: column; min-height: 0; padding: 24px 20px; }
  .county-growth-hero h2 { font-size: 36px; }
  .county-growth-hero-actions { width: 100%; }
  .county-growth-hero-actions .button { flex: 1; justify-content: center; }
  .county-growth-summary { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 4px; scroll-snap-type: x mandatory; }
  .county-growth-stat { flex: 0 0 142px; min-height: 88px; scroll-snap-align: start; }
  .county-assignment-quality { grid-template-columns: 1fr; }
  .county-assignment-metrics { grid-template-columns: repeat(3, 1fr); width: 100%; }
  .county-growth-toolbar { grid-template-columns: 1fr 1fr; }
  .county-growth-toolbar .segmented-control,
  .county-growth-search { grid-column: 1 / -1; }
  .county-growth-toolbar select { min-width: 0; width: 100%; }
  .county-map-heading { align-items: stretch; flex-direction: column; }
  .county-map-legend { justify-content: start; }
  .county-map-stage { min-height: 400px; padding: 8px; }
  .county-map-stage svg { height: 390px; }
  .county-map-tooltip { display: none; }
  .county-field-grid { grid-template-columns: 1fr; }
  .county-field-grid label.wide { grid-column: auto; }
  .county-drawer-footer { align-items: stretch; flex-direction: column; }
  .county-drawer-footer .button { justify-content: center; width: 100%; }
  .county-target-grid { grid-template-columns: 1fr; }
  .county-target-section,
  .county-history-section { padding: 15px; }
  .county-section-heading { align-items: stretch; flex-direction: column; }
  .county-confirm-modal > div:last-child { flex-direction: column-reverse; }
  .county-confirm-modal .button { justify-content: center; width: 100%; }
}

/* Marketing Studio Creative OS */
.marketing-v3-os-nav {
  position: sticky;
  top: 0;
  z-index: 35;
  display: flex;
  align-items: center;
  gap: 4px;
  min-height: 56px;
  padding: 7px 10px;
  overflow-x: auto;
  background: rgba(255, 255, 255, .96);
  border: 1px solid #dfe3e8;
  box-shadow: 0 10px 28px rgba(17, 19, 24, .06);
  backdrop-filter: blur(14px);
}

.marketing-v3-os-nav button {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 7px;
  min-height: 40px;
  padding: 0 13px;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: #515968;
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
}

.marketing-v3-os-nav button:hover,
.marketing-v3-os-nav button.active {
  border-bottom-color: #e30613;
  color: #111318;
  background: #f6f7f9;
}

.marketing-v3-os-nav svg {
  width: 17px;
  height: 17px;
}

.marketing-v3-page-heading {
  max-width: 780px;
  padding: 34px 2px 22px;
}

.marketing-v3-page-heading h1,
.marketing-v3-page-heading p {
  margin: 0;
}

.marketing-v3-page-heading h1 {
  margin-top: 5px;
  font-size: clamp(28px, 3.4vw, 46px);
  line-height: 1.05;
  letter-spacing: 0;
}

.marketing-v3-page-heading > p:last-child {
  max-width: 680px;
  margin-top: 10px;
  color: #5d6573;
  font-size: 15px;
  line-height: 1.55;
}

.marketing-v3-home-coach {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 28px;
  align-items: center;
  margin: 22px 0 30px;
  padding: 24px 28px;
  border-left: 4px solid #e30613;
  background: #f2f5f7;
}

.marketing-v3-home-coach h2,
.marketing-v3-home-coach p {
  margin: 0;
}

.marketing-v3-home-coach h2 {
  margin-top: 4px;
  font-size: 23px;
  line-height: 1.2;
}

.marketing-v3-home-coach > div:first-child > p:last-child {
  margin-top: 8px;
  color: #616a78;
  font-size: 13px;
}

.marketing-v3-coach-stats {
  display: grid;
  grid-template-columns: repeat(3, minmax(88px, 1fr));
  gap: 1px;
  background: #d8dde4;
}

.marketing-v3-coach-stats article {
  min-width: 100px;
  padding: 16px;
  background: #fff;
}

.marketing-v3-coach-stats strong,
.marketing-v3-coach-stats span {
  display: block;
}

.marketing-v3-coach-stats strong {
  color: #111318;
  font-size: 24px;
}

.marketing-v3-coach-stats span {
  margin-top: 3px;
  color: #646d7a;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.marketing-v3-current-work,
.marketing-v3-campaigns-page,
.marketing-v3-content-library,
.marketing-v3-create-hub {
  padding-bottom: 36px;
}

.marketing-v3-content-vault,
.marketing-v3-calendar-board {
  margin: 22px 0 30px;
  padding: 22px;
  border: 1px solid #dde2e8;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(17, 19, 24, .07);
}

.marketing-v3-content-vault.compact {
  background: linear-gradient(180deg, #fff, #f8fafc);
}

.marketing-v3-vault-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
}

.marketing-v3-vault-heading h2,
.marketing-v3-vault-heading p,
.marketing-v3-calendar-strip h3,
.marketing-v3-calendar-strip p {
  margin: 0;
}

.marketing-v3-vault-heading h2 {
  margin-top: 4px;
  font-size: 24px;
  line-height: 1.15;
}

.marketing-v3-vault-heading p:not(.eyebrow) {
  max-width: 720px;
  margin-top: 7px;
  color: #5f6876;
  font-size: 14px;
  line-height: 1.5;
}

.marketing-v3-vault-tools {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin-bottom: 13px;
}

.marketing-v3-vault-tools .marketing-v3-search {
  max-width: 660px;
  background: #fbfcfd;
}

.marketing-v3-vault-tools > span,
.marketing-v3-calendar-meta {
  color: #6a7280;
  font-size: 11px;
  font-weight: 850;
}

.marketing-v3-calendar-meta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 9px;
}

.marketing-v3-calendar-meta svg {
  width: 13px;
  height: 13px;
  color: #e30613;
}

.marketing-v3-vault-filters {
  display: flex;
  gap: 8px;
  padding: 2px 0 15px;
  overflow-x: auto;
}

.marketing-v3-vault-filters button {
  flex: 0 0 auto;
  min-height: 36px;
  padding: 0 13px;
  border: 1px solid #d8dde4;
  border-radius: 999px;
  background: #f7f8fa;
  color: #4d5664;
  font: inherit;
  font-size: 12px;
  font-weight: 850;
  cursor: pointer;
}

.marketing-v3-vault-filters button:hover,
.marketing-v3-vault-filters button.active {
  border-color: #e30613;
  background: #fff2f3;
  color: #b7000d;
}

.marketing-v3-vault-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 13px;
}

.marketing-v3-vault-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #dfe4eb;
  border-radius: 8px;
  background: #fff;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.marketing-v3-vault-card:hover,
.marketing-v3-vault-card:focus-within {
  transform: translateY(-2px);
  border-color: rgba(227, 6, 19, .5);
  box-shadow: 0 16px 32px rgba(17, 19, 24, .11);
}

.marketing-v3-vault-card > button {
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: #111318;
  text-align: left;
  cursor: pointer;
}

.marketing-v3-vault-card > button > div:last-child {
  display: grid;
  gap: 6px;
  min-height: 136px;
  padding: 14px;
}

.marketing-v3-vault-card h3,
.marketing-v3-vault-card p {
  margin: 0;
}

.marketing-v3-vault-card h3 {
  font-size: 16px;
  line-height: 1.22;
}

.marketing-v3-vault-card p:not(.eyebrow) {
  color: #657080;
  font-size: 12px;
  line-height: 1.42;
}

.marketing-v3-vault-card-includes {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 2px;
}

.marketing-v3-vault-card-includes em {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 0 8px;
  border: 1px solid #e3e7ed;
  border-radius: 999px;
  background: #f8fafc;
  color: #5a6370;
  font-size: 10px;
  font-style: normal;
  font-weight: 850;
}

.marketing-v3-vault-card-action {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #c9000d;
  font-size: 12px;
  font-weight: 900;
}

.marketing-v3-vault-card-action svg {
  width: 14px;
  height: 14px;
}

.marketing-v3-calendar-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(235px, 1fr));
  gap: 12px;
}

.marketing-v3-calendar-strip article {
  min-height: 350px;
  display: flex;
  flex-direction: column;
  gap: 9px;
  padding: 16px;
  border: 1px solid #dfe4eb;
  border-radius: 8px;
  background: linear-gradient(180deg, #f9fafb, #fff);
  overflow: hidden;
}

.marketing-v3-calendar-strip article.rate-day {
  border-color: rgba(227, 6, 19, .4);
  background: linear-gradient(180deg, #fff5f6, #fff);
  box-shadow: inset 0 4px 0 #e30613;
}

.marketing-v3-calendar-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 9px;
}

.marketing-v3-calendar-strip strong {
  flex: 0 0 auto;
  width: 42px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 6px;
  background: #111318;
  color: #fff;
  font-size: 12px;
  font-weight: 950;
}

.marketing-v3-calendar-category {
  min-width: 0;
  color: #e30613;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .08em;
  text-align: right;
  text-transform: uppercase;
}

.marketing-v3-calendar-strip h3 {
  font-size: 16px;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.marketing-v3-calendar-strip p {
  color: #626b79;
  font-size: 12px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.marketing-v3-rate-snapshot {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 2px 8px;
  padding: 10px;
  border: 1px solid rgba(227, 6, 19, .18);
  border-radius: 8px;
  background: #fff;
}

.marketing-v3-rate-snapshot svg {
  grid-row: span 2;
  align-self: center;
  color: #e30613;
}

.marketing-v3-rate-snapshot span {
  color: #111318;
  font-size: 18px;
  font-weight: 950;
  line-height: 1;
}

.marketing-v3-rate-snapshot em {
  color: #657080;
  font-size: 10px;
  font-style: normal;
  font-weight: 850;
  text-transform: uppercase;
}

.marketing-v3-calendar-value {
  display: flex;
  gap: 7px;
  padding: 10px;
  border-radius: 8px;
  background: #f3f5f8;
  color: #2e3541;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.4;
}

.marketing-v3-calendar-value svg {
  flex: 0 0 auto;
  margin-top: 1px;
  color: #e30613;
}

.marketing-v3-calendar-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.marketing-v3-calendar-tags em {
  padding: 4px 7px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid #dfe4eb;
  color: #596371;
  font-size: 9px;
  font-style: normal;
  font-weight: 850;
  text-transform: uppercase;
}

.marketing-v3-calendar-caption {
  margin-top: auto;
  border: 1px solid #e4e8ee;
  border-radius: 8px;
  background: #fff;
}

.marketing-v3-calendar-caption summary {
  display: flex;
  align-items: center;
  min-height: 34px;
  padding: 0 10px;
  color: #111318;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
}

.marketing-v3-calendar-caption p {
  max-height: 135px;
  overflow: auto;
  padding: 0 10px 10px;
  color: #4b5563;
}

.marketing-v3-calendar-strip button {
  width: 100%;
  min-height: 34px;
  border: 1px solid #e30613;
  border-radius: 6px;
  background: #fff;
  color: #b7000d;
  font: inherit;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
}

.marketing-v3-calendar-strip button:hover {
  background: #e30613;
  color: #fff;
}

.marketing-v3-template-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 8px;
}

.marketing-v3-template-meta em {
  padding: 4px 6px;
  border-radius: 999px;
  background: #eef1f4;
  color: #596371;
  font-size: 9px;
  font-style: normal;
  font-weight: 850;
  text-transform: uppercase;
}

.marketing-v3-section-title button {
  border: 0;
  background: transparent;
  color: #c9000d;
  font: inherit;
  font-size: 13px;
  font-weight: 850;
  cursor: pointer;
}

.marketing-v3-create-paths {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 1px solid #dfe3e8;
  background: #fff;
}

.marketing-v3-create-paths article {
  position: relative;
  min-height: 285px;
  padding: 26px;
  border-right: 1px solid #dfe3e8;
}

.marketing-v3-create-paths article:last-child {
  border-right: 0;
}

.marketing-v3-create-paths article.nia-path {
  background: #111318;
  color: #fff;
}

.marketing-v3-create-paths article > span {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  margin-bottom: 38px;
  background: #e30613;
  color: #fff;
}

.marketing-v3-create-paths article > span svg {
  width: 21px;
  height: 21px;
}

.marketing-v3-create-paths h2,
.marketing-v3-create-paths p {
  margin: 0;
}

.marketing-v3-create-paths h2 {
  margin: 6px 0 8px;
  font-size: 22px;
}

.marketing-v3-create-paths article > p:not(.eyebrow) {
  min-height: 66px;
  color: #606977;
  font-size: 14px;
  line-height: 1.5;
}

.marketing-v3-create-paths article.nia-path > p:not(.eyebrow) {
  color: #c7ccd4;
}

.marketing-v3-create-paths .btn {
  margin-top: 20px;
}

.marketing-v3-nia-brief {
  display: grid;
  grid-template-columns: minmax(220px, .72fr) minmax(320px, 1.25fr) auto;
  gap: 18px;
  align-items: end;
  margin: 18px 0 30px;
  padding: 24px;
  border: 1px solid #efb7bc;
  background: #fff5f6;
}

.marketing-v3-nia-brief h2,
.marketing-v3-nia-brief p {
  margin: 0;
}

.marketing-v3-nia-brief h2 {
  margin: 4px 0 7px;
  font-size: 21px;
}

.marketing-v3-nia-brief textarea {
  width: 100%;
  min-height: 118px;
  resize: vertical;
  border: 1px solid #ccd2da;
  background: #fff;
  padding: 13px;
  font: inherit;
}
.marketing-v3-nia-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.marketing-v3-nia-facts label,
.marketing-v3-standalone-setup label {
  display: grid;
  gap: 7px;
  color: #5d6574;
  font-size: 12px;
  font-weight: 800;
}
.marketing-v3-nia-facts input,
.marketing-v3-standalone-setup select {
  min-height: 46px;
  border: 1px solid #d9dde4;
  background: #fff;
  color: #111318;
  padding: 0 13px;
  font: inherit;
}
.marketing-v3-standalone-setup {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.75fr);
  gap: 24px;
  align-items: end;
  margin: 18px 0;
  padding: 22px;
  border-left: 4px solid #ed0712;
  background: #f5f6f8;
}
.marketing-v3-standalone-setup h2,
.marketing-v3-standalone-setup p { margin: 0; }
.marketing-v3-standalone-setup p:last-child { margin-top: 7px; color: #5d6574; }

.marketing-v3-nia-plan {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 16px;
  border-left: 3px solid #e30613;
  background: #fff;
}

.marketing-v3-nia-plan div,
.marketing-v3-nia-plan strong,
.marketing-v3-nia-plan span,
.marketing-v3-nia-plan small {
  display: block;
}

.marketing-v3-nia-plan span {
  margin: 4px 0;
  color: #505967;
  font-size: 13px;
}

.marketing-v3-nia-plan small {
  color: #a0000a;
  font-weight: 800;
}

.marketing-v3-basic-layouts {
  padding: 32px 0 22px;
}

.marketing-v3-basic-layouts > div:nth-child(2) {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.marketing-v3-basic-layouts > div:nth-child(2) > button {
  display: grid;
  grid-template-columns: 52px 1fr;
  gap: 3px 12px;
  align-items: center;
  min-height: 90px;
  padding: 13px;
  text-align: left;
  border: 1px solid #dfe3e8;
  background: #fff;
  color: #111318;
  font: inherit;
  cursor: pointer;
}

.marketing-v3-basic-layouts > div:nth-child(2) > button:disabled {
  cursor: not-allowed;
  opacity: .56;
}

.marketing-v3-basic-layouts .starter-art {
  grid-row: 1 / 3;
  width: 52px;
  height: 52px;
  background: linear-gradient(135deg, #17191f 0 48%, #e30613 48% 52%, #f2f4f7 52%);
}

.marketing-v3-basic-layouts strong,
.marketing-v3-basic-layouts small {
  display: block;
}

.marketing-v3-basic-layouts small {
  color: #687180;
  line-height: 1.35;
}

.marketing-v3-template-library {
  padding-top: 24px;
}

.marketing-v3-template-library .marketing-v3-library-toolbar select {
  min-height: 44px;
  padding: 0 34px 0 12px;
  border: 1px solid #dfe3e8;
  background: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
}

.marketing-v3-creative-template-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.marketing-v3-creative-template {
  min-width: 0;
  border: 1px solid #dce1e7;
  background: #fff;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.marketing-v3-creative-template:hover {
  transform: translateY(-3px);
  border-color: #e30613;
  box-shadow: 0 16px 34px rgba(17, 19, 24, .12);
}

.marketing-v3-creative-template > button {
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.marketing-v3-creative-template > button > div:last-child {
  min-height: 170px;
  padding: 15px;
}

.marketing-v3-template-example {
  display: grid;
  place-items: center;
  width: 100%;
  aspect-ratio: 1.35 / 1;
  overflow: hidden;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, .88), rgba(245, 247, 250, .72)),
    #e8ecf2;
  container-type: inline-size;
}

.marketing-v3-template-example .marketing-v3-canvas {
  width: 100%;
  max-width: none;
  box-shadow: none;
  pointer-events: none;
}

.marketing-v3-template-example.compact {
  aspect-ratio: 4 / 3;
  border: 1px solid rgba(17, 19, 24, .08);
  background: #eef1f5;
}

.marketing-v3-template-example.compact .marketing-v3-canvas {
  width: 112%;
}

.marketing-v3-nia-live-preview {
  padding: 10px;
  border: 1px solid #dde3eb;
  background: #fff;
  box-shadow: 0 16px 34px rgba(17, 19, 24, .08);
}

.marketing-v3-nia-live-preview .marketing-v3-canvas {
  width: 100%;
  box-shadow: none;
  pointer-events: none;
}

.marketing-v3-creative-template h3,
.marketing-v3-creative-template p {
  margin: 0;
}

.marketing-v3-creative-template h3 {
  margin: 5px 0 6px;
  font-size: 17px;
}

.marketing-v3-creative-template p:not(.eyebrow) {
  color: #626b78;
  font-size: 12px;
  line-height: 1.45;
}

.marketing-v3-template-use {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-top: 15px;
  color: #c9000d;
  font-size: 12px;
  font-weight: 850;
}

.marketing-v3-template-use svg {
  width: 14px;
}

.marketing-v3-creative-template-art {
  position: relative;
  width: 100%;
  aspect-ratio: 1.35 / 1;
  overflow: hidden;
  background: #f0f2f5;
}

.marketing-v3-creative-template-art span {
  position: absolute;
  display: block;
}

.marketing-v3-creative-template-art .rail {
  z-index: 4;
  left: 7%;
  bottom: 13%;
  width: 34%;
  height: 3px;
  background: #e30613;
}

.marketing-v3-creative-template-art .photo {
  top: 0;
  right: 0;
  width: 52%;
  height: 100%;
  background: linear-gradient(145deg, #59616d, #242830);
}

.marketing-v3-creative-template-art .headline {
  left: 7%;
  top: 20%;
  width: 35%;
  height: 13%;
  background: #111318;
}

.marketing-v3-creative-template-art .copy {
  left: 7%;
  top: 40%;
  width: 30%;
  height: 5%;
  box-shadow: 0 12px 0 #aeb5bf, 0 24px 0 #d5d9df;
  background: #727b88;
}

.family-full-bleed .marketing-v3-creative-template-art,
.marketing-v3-template-card.family-full-bleed .marketing-v3-creative-template-art {
  background: linear-gradient(145deg, #313740, #050505);
}

.family-full-bleed .marketing-v3-creative-template-art .photo,
.marketing-v3-template-card.family-full-bleed .marketing-v3-creative-template-art .photo {
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: .72;
  background: linear-gradient(135deg, #59616d, #111318 70%);
}

.family-full-bleed .marketing-v3-creative-template-art .headline,
.family-full-bleed .marketing-v3-creative-template-art .copy,
.marketing-v3-template-card.family-full-bleed .marketing-v3-creative-template-art .headline,
.marketing-v3-template-card.family-full-bleed .marketing-v3-creative-template-art .copy {
  z-index: 3;
  background: #fff;
}

.family-editorial .marketing-v3-creative-template-art .photo,
.family-list .marketing-v3-creative-template-art .photo,
.marketing-v3-template-card.family-editorial .marketing-v3-creative-template-art .photo {
  top: 0;
  left: 0;
  width: 100%;
  height: 57%;
}

.family-editorial .marketing-v3-creative-template-art .headline,
.family-list .marketing-v3-creative-template-art .headline,
.marketing-v3-template-card.family-editorial .marketing-v3-creative-template-art .headline {
  top: 68%;
  width: 48%;
}

.family-editorial .marketing-v3-creative-template-art .copy,
.family-list .marketing-v3-creative-template-art .copy,
.marketing-v3-template-card.family-editorial .marketing-v3-creative-template-art .copy {
  top: 83%;
  width: 54%;
}

.family-editorial .marketing-v3-creative-template-art .rail,
.family-list .marketing-v3-creative-template-art .rail,
.marketing-v3-template-card.family-editorial .marketing-v3-creative-template-art .rail {
  top: 62%;
  bottom: auto;
  width: 22%;
}

.family-framed .marketing-v3-creative-template-art .photo,
.family-brochure .marketing-v3-creative-template-art .photo,
.marketing-v3-template-card.family-framed .marketing-v3-creative-template-art .photo {
  top: 8%;
  right: 8%;
  width: 84%;
  height: 55%;
  box-shadow: 0 0 0 6px #fff, 0 0 0 7px #b9c0ca;
}

.family-framed .marketing-v3-creative-template-art .headline,
.family-brochure .marketing-v3-creative-template-art .headline,
.marketing-v3-template-card.family-framed .marketing-v3-creative-template-art .headline {
  top: 73%;
  width: 44%;
}

.family-data .marketing-v3-creative-template-art,
.family-quote .marketing-v3-creative-template-art,
.family-comparison .marketing-v3-creative-template-art,
.family-steps .marketing-v3-creative-template-art,
.marketing-v3-template-card.family-data .marketing-v3-creative-template-art {
  background: #111318;
}

.family-data .marketing-v3-creative-template-art .headline,
.family-quote .marketing-v3-creative-template-art .headline,
.family-comparison .marketing-v3-creative-template-art .headline,
.family-steps .marketing-v3-creative-template-art .headline,
.marketing-v3-template-card.family-data .marketing-v3-creative-template-art .headline {
  width: 55%;
  height: 26%;
  background: #fff;
}

.family-data .marketing-v3-creative-template-art .photo,
.family-quote .marketing-v3-creative-template-art .photo,
.family-comparison .marketing-v3-creative-template-art .photo,
.family-steps .marketing-v3-creative-template-art .photo,
.marketing-v3-template-card.family-data .marketing-v3-creative-template-art .photo {
  top: 12%;
  right: 8%;
  width: 25%;
  height: 32%;
  background: #e30613;
}

.family-minimal .marketing-v3-creative-template-art .photo,
.marketing-v3-template-card.family-minimal .marketing-v3-creative-template-art .photo {
  top: 10%;
  right: 8%;
  width: 26%;
  height: 30%;
}

.family-minimal .marketing-v3-creative-template-art .rail,
.marketing-v3-template-card.family-minimal .marketing-v3-creative-template-art .rail {
  top: 10%;
  bottom: auto;
  width: 12%;
}

.marketing-v3-template-grid.creative-directions {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.marketing-v3-template-grid.creative-directions .marketing-v3-template-card {
  display: block;
  padding: 11px;
  text-align: left;
}

.marketing-v3-template-grid.creative-directions .marketing-v3-template-card > .marketing-v3-creative-template-art {
  width: 100%;
  aspect-ratio: 1.35 / 1;
  margin-bottom: 12px;
}

.marketing-v3-template-grid.creative-directions .marketing-v3-template-card .eyebrow {
  margin: 0 0 4px;
  font-size: 9px;
}

.marketing-v3-personal-template-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 30px;
}

.marketing-v3-personal-template-grid article {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  padding: 17px;
  border: 1px solid #dce1e7;
  background: #fff;
}

.marketing-v3-personal-template-grid article > span {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  background: #111318;
  color: #fff;
}

.marketing-v3-personal-template-grid h3,
.marketing-v3-personal-template-grid p {
  margin: 0;
}

.marketing-v3-personal-template-grid p,
.marketing-v3-personal-template-grid small {
  color: #626b78;
  font-size: 12px;
}

.marketing-v3-personal-template-grid footer {
  grid-column: 1 / -1;
  display: flex;
  gap: 7px;
  justify-content: flex-end;
}

.marketing-v3-mode-switch {
  display: inline-flex;
  height: 38px;
  padding: 3px;
  background: #eef1f4;
}

.marketing-v3-mode-switch button {
  min-width: 64px;
  border: 0;
  background: transparent;
  color: #646d79;
  font: inherit;
  font-size: 11px;
  font-weight: 850;
  cursor: pointer;
}

.marketing-v3-mode-switch button.active {
  background: #fff;
  color: #111318;
  box-shadow: 0 2px 7px rgba(17, 19, 24, .12);
}

.template-family-dot {
  width: 30px !important;
  height: 30px !important;
  background: linear-gradient(135deg, #111318 0 46%, #e30613 46% 54%, #f2f4f7 54%) !important;
}

.marketing-v3-panel-note {
  margin: 0 0 12px;
  color: #626b78;
  font-size: 12px;
  line-height: 1.45;
}

.marketing-v3-resize-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.marketing-v3-resize-options button {
  min-width: 0;
  padding: 10px;
  border: 1px solid #dce1e7;
  background: #fff;
  color: #111318;
  text-align: left;
  cursor: pointer;
}

.marketing-v3-resize-options button:hover {
  border-color: #e30613;
}

.marketing-v3-resize-options span,
.marketing-v3-resize-options small {
  display: block;
}

.marketing-v3-resize-options span {
  overflow: hidden;
  font-size: 12px;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.marketing-v3-resize-options small {
  margin-top: 2px;
  color: #747d8b;
  font-size: 9px;
}

.marketing-v3-page-manager article {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding: 8px 0;
  border-bottom: 1px solid #e4e7eb;
}

.marketing-v3-page-manager article > span {
  display: grid;
  width: 26px;
  height: 26px;
  place-items: center;
  background: #111318;
  color: #fff;
  font-size: 10px;
  font-weight: 850;
}

.marketing-v3-page-manager article > div {
  display: flex;
  gap: 2px;
}

.marketing-v3-page-manager article button {
  display: grid;
  width: 27px;
  height: 27px;
  place-items: center;
  padding: 0;
  border: 1px solid #dce1e7;
  background: #fff;
  cursor: pointer;
}

.marketing-v3-page-manager article button:disabled {
  opacity: .35;
}

.marketing-v3-page-manager article svg {
  width: 13px;
  height: 13px;
}

.marketing-v3-nia-creator {
  overflow: hidden;
  border: 1px solid #d9dde3;
  border-top: 4px solid #e30613;
  background: #fff;
  box-shadow: 0 22px 54px rgba(17, 19, 24, .1);
}

.marketing-v3-nia-creator > header {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 24px 26px;
  color: #fff;
  background: linear-gradient(112deg, #111318 0%, #20232b 62%, #5d0710 100%);
}

.marketing-v3-nia-creator > header h2 { margin: 3px 0 7px; font-size: 28px; letter-spacing: 0; }
.marketing-v3-nia-creator > header p:not(.eyebrow) { max-width: 820px; margin: 0; color: #d8dce3; line-height: 1.55; }
.marketing-v3-nia-creator > header .eyebrow { color: #ff9ca3; }
.marketing-v3-nia-orbit { display: grid; flex: 0 0 54px; width: 54px; height: 54px; place-items: center; border: 1px solid rgba(255,255,255,.24); background: #e30613; box-shadow: 0 0 0 8px rgba(227,6,19,.12); }
.marketing-v3-nia-orbit svg { width: 25px; height: 25px; }

.marketing-v3-nia-creator-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(330px, .85fr);
  min-height: 610px;
}

.marketing-v3-nia-inputs { display: grid; align-content: start; gap: 16px; padding: 25px; border-right: 1px solid #e0e4e9; }
.marketing-v3-prompt-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.marketing-v3-prompt-chips button { min-height: 34px; padding: 0 12px; border: 1px solid #d7dce3; background: #f7f8fa; color: #303641; font: inherit; font-size: 11px; font-weight: 800; cursor: pointer; }
.marketing-v3-prompt-chips button:hover { border-color: #e30613; background: #fff2f3; color: #b7000d; }
.marketing-v3-nia-inputs .marketing-v3-field textarea { min-height: 138px; resize: vertical; }
.marketing-v3-nia-facts label { display: grid; gap: 7px; }
.marketing-v3-nia-facts label > span,
.marketing-v3-nia-channels > span,
.marketing-v3-nia-result label > span { color: #505866; font-size: 10px; font-weight: 900; text-transform: uppercase; }

.marketing-v3-nia-channels { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.marketing-v3-nia-channels > span { margin-right: 4px; }
.marketing-v3-nia-channels button { display: inline-flex; align-items: center; gap: 6px; min-height: 38px; padding: 0 12px; border: 1px solid #d8dde4; background: #fff; color: #4b5360; font: inherit; font-size: 11px; font-weight: 800; text-transform: capitalize; cursor: pointer; }
.marketing-v3-nia-channels button svg { width: 14px; height: 14px; }
.marketing-v3-nia-channels button.active { border-color: #e30613; background: #fff0f1; color: #b7000d; box-shadow: inset 0 -2px 0 #e30613; }

.marketing-v3-nia-photo-drop { display: grid; min-height: 126px; place-items: center; align-content: center; gap: 6px; padding: 18px; border: 1px dashed #b9c0ca; background: #f8f9fa; text-align: center; cursor: pointer; }
.marketing-v3-nia-photo-drop:hover { border-color: #e30613; background: #fff7f7; }
.marketing-v3-nia-photo-drop input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.marketing-v3-nia-photo-drop svg { color: #e30613; }
.marketing-v3-nia-photo-drop span { color: #697280; font-size: 11px; }
.marketing-v3-nia-photo-strip { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; }
.marketing-v3-nia-photo-strip article { position: relative; overflow: hidden; aspect-ratio: 1; border: 1px solid #d8dde3; background: #eceff2; }
.marketing-v3-nia-photo-strip img { width: 100%; height: 100%; object-fit: cover; }
.marketing-v3-nia-photo-strip span { position: absolute; left: 5px; bottom: 5px; padding: 3px 5px; background: rgba(17,19,24,.82); color: #fff; font-size: 8px; font-weight: 900; text-transform: uppercase; }
.marketing-v3-nia-photo-strip button { position: absolute; top: 4px; right: 4px; display: grid; width: 25px; height: 25px; padding: 0; place-items: center; border: 0; background: rgba(255,255,255,.92); color: #b7000d; cursor: pointer; }
.marketing-v3-nia-photo-strip button svg { width: 13px; height: 13px; }
.marketing-v3-nia-generate { justify-content: center; min-height: 48px; }

.marketing-v3-nia-result { display: grid; align-content: start; gap: 13px; padding: 25px; background: #f5f6f8; }
.marketing-v3-nia-result.ready { background: linear-gradient(180deg, #f5f6f8 0%, #fff 48%); }
.marketing-v3-nia-result-empty { display: grid; min-height: 420px; place-items: center; align-content: center; gap: 10px; color: #68717e; text-align: center; }
.marketing-v3-nia-result-empty svg { width: 34px; height: 34px; color: #e30613; }
.marketing-v3-nia-result-empty strong { color: #171a20; font-size: 18px; }
.marketing-v3-nia-result-empty p { max-width: 330px; margin: 0; line-height: 1.55; }
.marketing-v3-nia-result-heading { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.marketing-v3-nia-result-heading span { display: inline-flex; align-items: center; gap: 7px; color: #146040; font-size: 11px; font-weight: 900; text-transform: uppercase; }
.marketing-v3-nia-result-heading span svg { width: 15px; height: 15px; }
.marketing-v3-nia-result-heading em { padding: 5px 7px; background: #171a20; color: #fff; font-size: 9px; font-style: normal; font-weight: 900; text-transform: uppercase; }
.marketing-v3-nia-notice { margin: 0; padding: 9px 11px; border-left: 3px solid #3d6f92; background: #edf6fc; color: #2a506a; font-size: 11px; line-height: 1.45; }
.marketing-v3-nia-missing { display: grid; gap: 3px; padding: 10px 12px; border-left: 3px solid #d06a00; background: #fff4e8; color: #77420e; font-size: 11px; }
.marketing-v3-nia-result label { display: grid; gap: 6px; }
.marketing-v3-nia-result input,
.marketing-v3-nia-result textarea { width: 100%; border: 1px solid #cfd5dd; background: #fff; }
.marketing-v3-nia-result details { border: 1px solid #d9dee5; background: #fff; }
.marketing-v3-nia-result summary { padding: 11px 12px; font-size: 11px; font-weight: 900; cursor: pointer; }
.marketing-v3-nia-result details > *:not(summary) { margin: 10px 12px; }
.marketing-v3-nia-result details p { color: #505967; font-size: 11px; line-height: 1.5; }
.marketing-v3-nia-format-list { display: flex; flex-wrap: wrap; gap: 6px; }
.marketing-v3-nia-format-list span { padding: 5px 7px; border: 1px solid #dce1e7; background: #fff; color: #404854; font-size: 9px; font-weight: 900; text-transform: uppercase; }
.marketing-v3-nia-result > .btn { justify-content: center; min-height: 46px; }
.marketing-v3-nia-result > small { color: #747d89; line-height: 1.45; text-align: center; }

.marketing-v3-automation-actions { display: flex; flex-wrap: wrap; justify-content: end; gap: 8px; }
.marketing-v3-provider-guide { margin-top: 12px; padding: 17px; border: 1px solid #d8dde4; border-top: 3px solid #e30613; background: #f7f8fa; }
.marketing-v3-provider-guide > div { display: flex; align-items: center; gap: 11px; }
.marketing-v3-provider-guide > div > div { flex: 1; }
.marketing-v3-provider-guide h3 { margin: 2px 0 0; font-size: 18px; }
.marketing-v3-provider-guide ol { display: grid; gap: 8px; margin: 15px 0; padding-left: 20px; color: #454e5a; font-size: 11px; line-height: 1.5; }
.marketing-v3-provider-guide > p { display: flex; align-items: start; gap: 7px; margin: 0 0 12px; padding: 9px; background: #fff; color: #5b6471; font-size: 10px; line-height: 1.45; }
.marketing-v3-provider-guide > p svg { flex: 0 0 auto; width: 14px; height: 14px; color: #146040; }
.marketing-v3-provider-guide > strong { color: #59616d; font-size: 9px; text-transform: uppercase; }
.marketing-v3-provider-setup { display: grid; gap: 9px; margin-top: 14px; }
.marketing-v3-provider-setup p { margin: 0; color: #4f5967; font-size: 12px; line-height: 1.5; }
.marketing-v3-provider-setup strong { color: #111318; font-size: 10px; letter-spacing: 0; text-transform: uppercase; }
.marketing-v3-provider-setup code {
  display: block;
  min-height: 42px;
  padding: 10px 12px;
  border: 1px solid #d9dee6;
  background: #fff;
  color: #111318;
  white-space: pre-wrap;
  font-size: 11px;
  line-height: 1.55;
}
.marketing-v3-provider-setup small { color: #68717d; font-size: 11px; }

@media (max-width: 1100px) {
  .marketing-v3-nia-creator-grid { grid-template-columns: 1fr; }
  .marketing-v3-nia-inputs { border-right: 0; border-bottom: 1px solid #e0e4e9; }
  .marketing-v3-vault-tools { grid-template-columns: 1fr; }
  .marketing-v3-free-edit-bar { position: static; }
  .marketing-v3-vault-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .marketing-v3-calendar-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .marketing-v3-creative-template-grid,
  .marketing-v3-basic-layouts > div:nth-child(2) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .marketing-v3-nia-brief {
    grid-template-columns: 1fr 1fr;
  }

  .marketing-v3-nia-brief > .btn {
    justify-self: start;
  }
}

@media (max-width: 760px) {
  .marketing-v3-nia-creator > header { align-items: flex-start; padding: 20px 17px; }
  .marketing-v3-nia-creator > header h2 { font-size: 23px; }
  .marketing-v3-nia-orbit { flex-basis: 44px; width: 44px; height: 44px; }
  .marketing-v3-nia-inputs,
  .marketing-v3-nia-result { padding: 17px; }
  .marketing-v3-nia-photo-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .marketing-v3-automation-actions { width: 100%; justify-content: stretch; }
  .marketing-v3-automation-actions .btn { flex: 1; justify-content: center; }
  .marketing-v3-nia-facts,
  .marketing-v3-standalone-setup { grid-template-columns: 1fr; }
  .marketing-v3-os-nav {
    margin-inline: -8px;
    border-right: 0;
    border-left: 0;
  }

  .marketing-v3-os-nav button {
    min-height: 42px;
    padding-inline: 11px;
  }

  .marketing-v3-home-coach,
  .marketing-v3-create-paths,
  .marketing-v3-nia-brief {
    grid-template-columns: 1fr;
  }

  .marketing-v3-content-vault,
  .marketing-v3-calendar-board {
    padding: 17px;
  }

  .marketing-v3-vault-heading {
    display: grid;
  }

  .marketing-v3-vault-heading .btn {
    width: 100%;
    justify-content: center;
  }

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

  .marketing-v3-calendar-strip {
    grid-template-columns: 1fr;
  }

  .marketing-v3-home-coach {
    padding: 19px;
  }

  .marketing-v3-coach-stats {
    width: 100%;
  }

  .marketing-v3-create-paths article {
    min-height: 0;
    border-right: 0;
    border-bottom: 1px solid #dfe3e8;
  }

  .marketing-v3-create-paths article:last-child {
    border-bottom: 0;
  }

  .marketing-v3-create-paths article > span {
    margin-bottom: 18px;
  }

  .marketing-v3-create-paths article > p:not(.eyebrow) {
    min-height: 0;
  }

  .marketing-v3-nia-plan {
    display: grid;
  }

  .marketing-v3-basic-layouts > div:nth-child(2),
  .marketing-v3-creative-template-grid,
  .marketing-v3-personal-template-grid,
  .marketing-v3-template-grid.creative-directions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .marketing-v3-editor-actions .marketing-v3-mode-switch,
  .marketing-v3-editor-actions .btn span {
    display: none;
  }

  .marketing-v3-free-edit-bar button,
  .marketing-v3-free-upload {
    flex: 1 1 96px;
    justify-content: center;
  }
}

@media (max-width: 480px) {
  .marketing-v3-page-heading {
    padding-top: 24px;
  }

  .marketing-v3-page-heading h1 {
    font-size: 30px;
  }

  .marketing-v3-coach-stats {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .marketing-v3-coach-stats article {
    min-width: 0;
    padding: 12px 8px;
  }

  .marketing-v3-coach-stats strong {
    font-size: 20px;
  }

  .marketing-v3-basic-layouts > div:nth-child(2),
  .marketing-v3-vault-grid,
  .marketing-v3-creative-template-grid,
  .marketing-v3-personal-template-grid,
  .marketing-v3-template-grid.creative-directions {
    grid-template-columns: 1fr;
  }

  .marketing-v3-template-library .marketing-v3-library-toolbar {
    display: grid;
  }

  .marketing-v3-template-library .marketing-v3-library-toolbar > * {
    width: 100%;
  }
}
.agent-preview-sidebar-btn {
  width: 100%;
  min-height: 40px;
  margin: 12px 0 8px;
  border: 1px solid rgba(255, 255, 255, 0.24);
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}

.agent-preview-sidebar-btn:hover { background: rgba(239, 0, 21, 0.22); border-color: rgba(255, 88, 102, 0.75); }

.admin-agent-preview-banner {
  position: sticky;
  top: 0;
  z-index: 90;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  padding: 12px 18px;
  border-bottom: 1px solid #ef0015;
  background: #fff4f5;
  box-shadow: 0 8px 24px rgba(16, 21, 30, 0.1);
}

.admin-agent-preview-mark {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  background: #ef0015;
  color: #fff;
}

.admin-agent-preview-banner strong,
.admin-agent-preview-banner span { display: block; }
.admin-agent-preview-banner strong { font-size: 15px; }
.admin-agent-preview-banner span { margin-top: 2px; color: #586171; font-size: 12px; }

.admin-agent-preview-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(7, 10, 15, 0.74);
  backdrop-filter: blur(8px);
}

.admin-agent-preview-modal {
  width: min(720px, 100%);
  max-height: min(760px, calc(100vh - 40px));
  overflow: hidden;
  display: grid;
  grid-template-rows: auto auto minmax(180px, 1fr) auto;
  background: #fff;
  border-top: 4px solid #ef0015;
  box-shadow: 0 28px 90px rgba(0, 0, 0, 0.34);
}

.admin-agent-preview-modal > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding: 24px 26px 18px;
}

.admin-agent-preview-modal h2 { margin: 3px 0 6px; font-size: 28px; }
.admin-agent-preview-modal header p:last-child { margin: 0; color: #5c6472; }

.agent-preview-search {
  margin: 0 26px 14px;
  min-height: 46px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 14px;
  border: 1px solid #d7dce4;
  background: #f7f8fa;
}

.agent-preview-search input { flex: 1; border: 0; outline: 0; background: transparent; font: inherit; }
.admin-agent-preview-list { overflow: auto; padding: 0 26px 20px; }
.admin-agent-preview-list > button {
  width: 100%;
  min-height: 64px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border: 1px solid #e0e4ea;
  border-bottom: 0;
  background: #fff;
  text-align: left;
  cursor: pointer;
}
.admin-agent-preview-list > button:last-of-type { border-bottom: 1px solid #e0e4ea; }
.admin-agent-preview-list > button:hover { background: #fff5f6; border-color: #f4a9b0; }
.admin-agent-preview-list button span strong,
.admin-agent-preview-list button span em { display: block; }
.admin-agent-preview-list button span em { margin-top: 3px; color: #657082; font-size: 12px; font-style: normal; }
.admin-agent-preview-list button small { color: #596273; font-weight: 700; }
.admin-agent-preview-modal > footer { display: flex; gap: 9px; padding: 14px 26px; background: #151a23; color: #fff; font-size: 12px; }

@media (max-width: 640px) {
  .admin-agent-preview-banner { grid-template-columns: 38px minmax(0, 1fr); padding: 10px 12px; }
  .admin-agent-preview-banner .btn { grid-column: 1 / -1; width: 100%; }
  .admin-agent-preview-modal { max-height: calc(100vh - 20px); }
  .admin-agent-preview-modal > header { padding: 20px 18px 14px; }
  .agent-preview-search { margin: 0 18px 12px; }
  .admin-agent-preview-list { padding: 0 18px 16px; }
  .admin-agent-preview-list > button { grid-template-columns: auto minmax(0, 1fr) auto; }
  .admin-agent-preview-list button small { display: none; }
}

/* Lead Machine campaign engine */
.lead-engine-shell {
  --lead-red: #ed071c;
  --lead-ink: #11151c;
  --lead-muted: #5f6876;
  --lead-line: #dce1e8;
  --lead-soft: #f5f7fa;
  display: grid;
  gap: 16px;
  color: var(--lead-ink);
}

.lead-engine-hero {
  position: relative;
  isolation: isolate;
  min-height: 238px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 28px;
  padding: 34px;
  overflow: hidden;
  color: #fff;
  background: #121720;
  border-left: 5px solid var(--lead-red);
}

.lead-engine-hero::after {
  content: "LEADS";
  position: absolute;
  z-index: -1;
  right: -18px;
  top: -38px;
  color: rgba(237, 7, 28, 0.15);
  font-size: 150px;
  font-weight: 900;
  line-height: 1;
}

.lead-engine-hero-copy { max-width: 780px; }
.lead-engine-hero .eyebrow { color: #ff909a; }
.lead-engine-hero h1 { max-width: 760px; margin: 8px 0 12px; color: #fff; font-size: clamp(34px, 4vw, 58px); line-height: 1.02; letter-spacing: 0; }
.lead-engine-hero p { max-width: 720px; margin: 0; color: #d6dae1; font-size: 16px; line-height: 1.55; }
.lead-engine-hero-status { min-width: 220px; display: grid; justify-items: stretch; gap: 10px; }
.lead-engine-hero-status > span { min-height: 42px; display: flex; align-items: center; gap: 8px; padding: 10px 12px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.16); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.lead-engine-hero-status > span.ready { color: #8df0bd; }
.lead-engine-hero-status > span.needs-connection { color: #ffc7cc; }

.lead-engine-nav { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border: 1px solid var(--lead-line); background: #fff; }
.lead-engine-nav button { min-height: 52px; display: flex; align-items: center; justify-content: center; gap: 9px; border: 0; border-right: 1px solid var(--lead-line); background: #fff; color: #4f5968; font: inherit; font-weight: 800; cursor: pointer; }
.lead-engine-nav button:last-child { border-right: 0; }
.lead-engine-nav button:hover { background: #f9fafb; color: #11151c; }
.lead-engine-nav button.active { color: #b60013; box-shadow: inset 0 -3px 0 var(--lead-red); }
.lead-engine-notice { padding: 12px 14px; border-left: 3px solid #168654; background: #effaf5; color: #105f3e; font-weight: 750; }
.lead-engine-notice.error { border-color: var(--lead-red); background: #fff1f2; color: #9e0012; }

.lead-engine-overview { display: grid; gap: 16px; }
.lead-engine-nia-launch { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 8px 16px; padding: 26px; background: #fff; border: 1px solid var(--lead-line); border-top: 4px solid var(--lead-red); box-shadow: 0 16px 36px rgba(20, 25, 34, .08); }
.lead-engine-nia-mark { grid-row: 1 / span 2; width: 50px; height: 50px; display: grid; place-items: center; color: #fff; background: var(--lead-red); }
.lead-engine-nia-copy h2 { margin: 4px 0 7px; font-size: 28px; }
.lead-engine-nia-copy p:last-child { margin: 0; color: var(--lead-muted); line-height: 1.5; }
.lead-engine-nia-launch form { grid-column: 2; display: grid; gap: 12px; margin-top: 8px; }
.lead-engine-nia-launch textarea,
.lead-engine-nia-launch input,
.lead-engine-nia-launch select,
.lead-engine-edit-grid input,
.lead-engine-edit-grid textarea,
.lead-engine-copy-variations textarea { width: 100%; border: 1px solid #cfd5dd; background: #fff; color: #131820; font: inherit; }
.lead-engine-nia-launch textarea { min-height: 104px; padding: 14px; resize: vertical; font-size: 16px; }
.lead-engine-prompt-chips { display: flex; flex-wrap: wrap; gap: 7px; }
.lead-engine-prompt-chips button { padding: 7px 10px; border: 1px solid #d9dee5; border-radius: 999px; background: #f7f8fa; color: #3e4652; font: inherit; font-size: 12px; font-weight: 750; cursor: pointer; }
.lead-engine-prompt-chips button:hover { border-color: #f08a94; color: #a70011; background: #fff4f5; }
.lead-engine-launch-actions { display: flex; justify-content: space-between; gap: 10px; }
.lead-engine-advanced { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 14px; background: var(--lead-soft); border: 1px solid #e0e4ea; }
.lead-engine-advanced label,
.lead-engine-edit-grid label { display: grid; gap: 5px; color: #485160; font-size: 12px; font-weight: 800; }
.lead-engine-advanced label.wide,
.lead-engine-edit-grid label.wide { grid-column: 1 / -1; }
.lead-engine-advanced input,
.lead-engine-advanced select,
.lead-engine-edit-grid input,
.lead-engine-edit-grid textarea { min-height: 42px; padding: 9px 10px; }

.lead-engine-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); background: #fff; border: 1px solid var(--lead-line); }
.lead-engine-metrics article { min-height: 94px; display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 4px 10px; padding: 17px; border-right: 1px solid var(--lead-line); }
.lead-engine-metrics article:last-child { border-right: 0; }
.lead-engine-metrics svg { grid-row: 1 / span 2; color: var(--lead-red); }
.lead-engine-metrics span { color: var(--lead-muted); font-size: 12px; font-weight: 800; text-transform: uppercase; }
.lead-engine-metrics strong { font-size: 27px; }

.lead-engine-overview-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.lead-engine-overview-grid > section { padding: 20px; background: #fff; border: 1px solid var(--lead-line); }
.lead-engine-section-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin-bottom: 14px; }
.lead-engine-section-heading h2,
.lead-engine-section-heading h3 { margin: 3px 0 0; font-size: 22px; }
.lead-engine-section-heading p:not(.eyebrow) { margin: 5px 0 0; color: var(--lead-muted); }
.lead-engine-overview-grid > section > button { width: 100%; min-height: 56px; display: grid; grid-template-columns: auto minmax(0, 1fr) auto auto; align-items: center; gap: 10px; padding: 10px 0; border: 0; border-bottom: 1px solid #e4e7ec; background: transparent; text-align: left; cursor: pointer; }
.lead-engine-overview-grid > section > button:last-child { border-bottom: 0; }
.lead-engine-overview-grid button span strong,
.lead-engine-overview-grid button span small { display: block; }
.lead-engine-overview-grid button span small { margin-top: 3px; color: var(--lead-muted); }
.lead-engine-overview-grid button em { color: #a40011; font-size: 12px; font-style: normal; font-weight: 800; }
.lead-engine-empty { min-height: 130px; display: grid; place-items: center; align-content: center; gap: 6px; padding: 18px; color: var(--lead-muted); text-align: center; border: 1px dashed #cdd3dc; }
.lead-engine-empty svg { color: var(--lead-red); }
.lead-engine-empty span { max-width: 360px; font-size: 13px; line-height: 1.45; }

.lead-engine-templates > .lead-engine-section-heading { padding: 18px 20px; background: #fff; border: 1px solid var(--lead-line); }
.lead-engine-templates > div:last-child { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.lead-engine-templates article { min-height: 208px; display: grid; grid-template-columns: auto minmax(0, 1fr); grid-template-rows: 1fr auto; gap: 14px; padding: 18px; background: #fff; border: 1px solid var(--lead-line); border-top: 3px solid #202631; }
.lead-engine-templates article > span { width: 42px; height: 42px; display: grid; place-items: center; color: #fff; background: #1a2029; }
.lead-engine-templates article h3 { margin: 4px 0 8px; font-size: 18px; }
.lead-engine-templates article p { margin: 0 0 9px; color: var(--lead-muted); font-size: 13px; line-height: 1.45; }
.lead-engine-templates article small { color: #a00011; font-weight: 850; text-transform: uppercase; }
.lead-engine-templates article em { color: #4f5967; font-size: 12px; font-style: normal; font-weight: 800; }
.lead-engine-templates article .btn { grid-column: 1 / -1; justify-self: stretch; }

.lead-engine-campaigns { display: grid; grid-template-columns: minmax(245px, 300px) minmax(0, 1fr); gap: 16px; align-items: start; }
.lead-engine-campaigns > aside { position: sticky; top: 10px; padding: 15px; background: #fff; border: 1px solid var(--lead-line); }
.lead-engine-campaigns > aside > button:not(.btn) { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 10px; border: 0; border-bottom: 1px solid #e3e7ec; background: transparent; text-align: left; cursor: pointer; }
.lead-engine-campaigns > aside > button.active { background: #fff0f2; box-shadow: inset 3px 0 0 var(--lead-red); }
.lead-engine-campaigns > aside button span strong,
.lead-engine-campaigns > aside button span small { display: block; }
.lead-engine-campaigns > aside button span small { margin-top: 4px; color: var(--lead-muted); font-size: 11px; }
.lead-engine-campaigns > aside button em,
.lead-engine-status { padding: 5px 7px; color: #505967; background: #eef1f4; font-size: 10px; font-style: normal; font-weight: 850; text-transform: uppercase; white-space: nowrap; }
.lead-engine-workspace { display: grid; gap: 14px; min-width: 0; }
.lead-engine-workspace > header { display: flex; justify-content: space-between; gap: 20px; padding: 20px; background: #151a23; color: #fff; border-top: 4px solid var(--lead-red); }
.lead-engine-workspace > header h2 { margin: 4px 0 6px; color: #fff; font-size: 27px; }
.lead-engine-workspace > header p:last-child { margin: 0; color: #c4cad3; }
.lead-engine-workspace > header > div:last-child { display: flex; align-items: flex-start; gap: 8px; }
.lead-engine-workspace > header .lead-engine-status { color: #fff; background: #a90a19; }
.lead-engine-legacy { display: flex; gap: 10px; padding: 12px 14px; color: #755100; background: #fff8dd; border: 1px solid #ead58b; }
.lead-engine-performance { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); background: #fff; border: 1px solid var(--lead-line); }
.lead-engine-performance article { padding: 15px; border-right: 1px solid var(--lead-line); }
.lead-engine-performance article:last-child { border-right: 0; }
.lead-engine-performance span,
.lead-engine-performance strong { display: block; }
.lead-engine-performance span { color: var(--lead-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.lead-engine-performance strong { margin-top: 5px; font-size: 22px; }
.lead-engine-edit-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 18px; background: #fff; border: 1px solid var(--lead-line); }
.lead-engine-components,
.lead-engine-creative,
.lead-engine-followup { padding: 18px; background: #fff; border: 1px solid var(--lead-line); }
.lead-engine-components > div:last-child { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.lead-engine-components article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; padding: 13px; background: var(--lead-soft); border-left: 3px solid #7d8795; }
.lead-engine-components article.state-ready,
.lead-engine-components article.state-live { border-color: #17995f; }
.lead-engine-components article.state-needs_review,
.lead-engine-components article.state-needs_information { border-color: #d29a13; }
.lead-engine-components article.state-error { border-color: var(--lead-red); }
.lead-engine-components article small,
.lead-engine-components article strong { display: block; }
.lead-engine-components article small { color: var(--lead-muted); font-size: 10px; font-weight: 850; text-transform: uppercase; }
.lead-engine-components article p { margin: 5px 0 0; color: #596372; font-size: 12px; line-height: 1.4; }
.lead-engine-copy-variations { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 9px; }
.lead-engine-copy-variations article { display: grid; gap: 7px; }
.lead-engine-copy-variations span { color: var(--lead-muted); font-size: 11px; font-weight: 850; text-transform: uppercase; }
.lead-engine-copy-variations textarea { min-height: 145px; padding: 11px; resize: vertical; line-height: 1.45; }
.lead-engine-followup > article { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 12px; padding: 11px 0; border-top: 1px solid #e4e7eb; }
.lead-engine-followup > article > span { width: 36px; height: 36px; display: grid; place-items: center; color: #fff; background: #1b2029; }
.lead-engine-followup article small { color: #a00011; font-weight: 800; text-transform: uppercase; }
.lead-engine-followup article strong { display: block; margin: 3px 0; }
.lead-engine-followup article p { margin: 0; color: var(--lead-muted); line-height: 1.45; }
.lead-engine-followup > article.automated-step { border-left: 3px solid #168654; padding-left: 12px; }
.lead-engine-followup > article.agent-step { border-left: 3px solid #d5960c; padding-left: 12px; }
.lead-engine-followup > article.automated-step > span { background: #14754c; }
.lead-engine-followup > article.agent-step > span { background: #9a6a00; }
.lead-engine-followup-guide { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; margin-bottom: 4px; padding: 12px 14px; color: #26313e; background: #f1f8f4; border: 1px solid #c5e2d1; }
.lead-engine-followup-guide > svg { color: #168654; }
.lead-engine-followup-guide strong { display: inline; margin: 0; }
.lead-engine-followup-meta { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.lead-engine-followup-meta em { padding: 4px 7px; color: #3f4956; background: #eef1f4; font-size: 10px; font-style: normal; font-weight: 850; text-transform: uppercase; white-space: nowrap; }
.lead-engine-workspace-actions { position: sticky; bottom: 0; z-index: 4; display: flex; justify-content: flex-end; gap: 8px; padding: 12px; background: rgba(255,255,255,.96); border: 1px solid var(--lead-line); box-shadow: 0 -8px 24px rgba(15, 20, 27, .09); }

.lead-engine-preview-backdrop { position: fixed; inset: 0; z-index: 1200; display: grid; place-items: center; padding: 22px; background: rgba(7, 10, 15, .74); backdrop-filter: blur(7px); }
.lead-engine-preview-modal { width: min(1480px, 100%); max-height: calc(100vh - 44px); display: grid; grid-template-rows: auto auto minmax(0, 1fr) auto; overflow: hidden; color: #151a22; background: #f7f8fa; border-top: 5px solid var(--lead-red); box-shadow: 0 30px 90px rgba(0, 0, 0, .34); }
.lead-engine-preview-modal > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 20px 22px 16px; background: #fff; border-bottom: 1px solid #dde2e8; }
.lead-engine-preview-modal > header h2 { margin: 3px 0 5px; font-size: 26px; }
.lead-engine-preview-modal > header p:last-child { max-width: 760px; margin: 0; color: #626c79; }
.lead-engine-preview-toolbar { min-height: 54px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 8px 22px; background: #f0f2f5; border-bottom: 1px solid #d8dde4; }
.lead-engine-preview-toolbar > span { display: inline-flex; align-items: center; gap: 6px; color: #52606e; font-size: 12px; font-weight: 750; }
.lead-engine-preview-toolbar > span svg { color: #168654; }
.lead-engine-preview-viewport { display: flex; gap: 4px; padding: 3px; background: #dde2e8; }
.lead-engine-preview-viewport button { min-height: 36px; display: inline-flex; align-items: center; gap: 6px; padding: 7px 11px; border: 0; background: transparent; color: #4c5664; font: inherit; font-size: 12px; font-weight: 800; cursor: pointer; }
.lead-engine-preview-viewport button.active { color: #11161e; background: #fff; box-shadow: 0 2px 7px rgba(17, 22, 30, .12); }
.lead-engine-preview-body { min-height: 0; display: grid; grid-template-columns: 270px minmax(0, 1fr); gap: 18px; padding: 18px 22px; overflow: auto; }
.lead-engine-preview-body > aside { align-self: start; display: grid; gap: 15px; padding: 17px; background: #fff; border: 1px solid #dbe0e6; }
.lead-engine-preview-body > aside ol { display: grid; gap: 15px; margin: 0; padding: 0; list-style: none; }
.lead-engine-preview-body > aside li { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 9px; }
.lead-engine-preview-body > aside li > span { width: 28px; height: 28px; display: grid; place-items: center; color: #fff; background: #171d26; font-size: 12px; font-weight: 900; }
.lead-engine-preview-body > aside li strong,
.lead-engine-preview-body > aside li small { display: block; }
.lead-engine-preview-body > aside li strong { font-size: 13px; line-height: 1.35; }
.lead-engine-preview-body > aside li small { margin-top: 4px; color: #66717f; line-height: 1.4; }
.lead-engine-preview-device { width: 100%; min-width: 0; align-self: start; margin: 0 auto; overflow: hidden; background: #fff; border: 1px solid #cfd5dc; box-shadow: 0 16px 35px rgba(18, 24, 32, .13); transition: width .2s ease; }
.lead-engine-preview-device.mobile { width: min(390px, 100%); }
.lead-engine-preview-browser { height: 35px; display: flex; align-items: center; gap: 5px; padding: 0 11px; color: #6c7582; background: #e9ecf0; border-bottom: 1px solid #d2d7de; }
.lead-engine-preview-browser > span { width: 8px; height: 8px; border-radius: 50%; background: #adb5c0; }
.lead-engine-preview-browser > span:first-child { background: #ed071c; }
.lead-engine-preview-browser small { min-width: 0; margin-left: 7px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lead-engine-preview-page { min-height: 520px; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(330px, .92fr); }
.lead-engine-preview-copy { position: relative; isolation: isolate; display: flex; flex-direction: column; justify-content: center; gap: 13px; padding: clamp(30px, 4vw, 64px); overflow: hidden; color: #fff; background: #151a22; }
.lead-engine-preview-copy::after { content: "NEX"; position: absolute; z-index: -1; left: -12px; bottom: -30px; color: rgba(237, 7, 28, .15); font-size: 170px; font-weight: 950; line-height: .75; }
.lead-engine-preview-copy .eyebrow { color: #ff949f; }
.lead-engine-preview-copy h3 { max-width: 600px; margin: 0; color: #fff; font-size: clamp(34px, 4vw, 58px); line-height: 1; }
.lead-engine-preview-copy > p:not(.eyebrow) { margin: 0; color: #d6dbe2; line-height: 1.55; }
.lead-engine-preview-copy > div { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; margin-top: 8px; padding: 14px; color: #171c24; background: #fff; border-left: 4px solid var(--lead-red); }
.lead-engine-preview-copy > div > svg { color: var(--lead-red); }
.lead-engine-preview-copy > div small,
.lead-engine-preview-copy > div strong { display: block; }
.lead-engine-preview-copy > div small { color: #66717f; font-size: 10px; font-weight: 850; text-transform: uppercase; }
.lead-engine-preview-copy footer { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 10px; color: #c9cfd7; font-size: 11px; font-weight: 750; }
.lead-engine-preview-copy footer span { display: inline-flex; align-items: center; gap: 5px; }
.lead-engine-preview-form { display: flex; flex-direction: column; justify-content: center; padding: clamp(24px, 4vw, 54px); background: linear-gradient(150deg, #fff 0%, #fff 72%, #fff0f2 100%); border-top: 4px solid var(--lead-red); }
.lead-engine-preview-form h3 { margin: 3px 0 6px; font-size: 26px; }
.lead-engine-preview-form > p:not(.eyebrow) { margin: 0 0 14px; color: #626c79; font-size: 12px; line-height: 1.45; }
.lead-engine-preview-form > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.lead-engine-preview-form label { display: grid; gap: 4px; }
.lead-engine-preview-form label > span { color: #4d5765; font-size: 10px; font-weight: 800; }
.lead-engine-preview-form input { width: 100%; min-height: 39px; padding: 8px 9px; border: 1px solid #d2d7de; background: #fff; }
.lead-engine-preview-form .lead-engine-preview-consent { grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 7px; margin: 12px 0; }
.lead-engine-preview-form .lead-engine-preview-consent input { width: 16px; min-height: 16px; }
.lead-engine-preview-form > .btn { width: 100%; }
.lead-engine-preview-device.mobile .lead-engine-preview-page { grid-template-columns: 1fr; }
.lead-engine-preview-device.mobile .lead-engine-preview-copy { min-height: 390px; padding: 34px 22px; }
.lead-engine-preview-device.mobile .lead-engine-preview-copy h3 { font-size: 38px; }
.lead-engine-preview-device.mobile .lead-engine-preview-form { padding: 28px 20px; }
.lead-engine-preview-device.mobile .lead-engine-preview-form > div { grid-template-columns: 1fr; }
.lead-engine-preview-modal > footer { display: flex; justify-content: flex-end; gap: 8px; padding: 12px 22px; background: #fff; border-top: 1px solid #d9dee5; }

/* Public Lead Machine campaign landing pages */
.public-campaign-page { color: #11151c; background: #f5f6f8; }
.public-campaign-band { min-height: 650px; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(380px, .92fr); align-items: stretch; background: #141920; }
.public-campaign-copy { position: relative; isolation: isolate; display: flex; flex-direction: column; justify-content: center; padding: clamp(44px, 6vw, 92px); overflow: hidden; color: #fff; }
.public-campaign-copy::before { content: "NEX"; position: absolute; z-index: -1; left: -10px; bottom: -50px; color: rgba(237,7,28,.13); font-size: clamp(150px, 24vw, 340px); font-weight: 950; line-height: .75; }
.public-campaign-copy .eyebrow { color: #ff9aa3; }
.public-campaign-copy h1 { max-width: 790px; margin: 10px 0 18px; color: #fff; font-size: clamp(40px, 5.5vw, 78px); line-height: 1; letter-spacing: 0; }
.public-campaign-intro { max-width: 680px; margin: 0; color: #d8dce3; font-size: 18px; line-height: 1.6; }
.public-campaign-offer { max-width: 660px; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 12px; margin-top: 28px; padding: 17px; color: #171b22; background: #fff; border-left: 5px solid #ed071c; }
.public-campaign-offer > svg { color: #ed071c; }
.public-campaign-offer span,
.public-campaign-offer strong { display: block; }
.public-campaign-offer span { color: #697282; font-size: 11px; font-weight: 850; text-transform: uppercase; }
.public-campaign-offer strong { margin-top: 4px; font-size: 17px; line-height: 1.35; }
.public-campaign-trust { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-top: 25px; color: #c9ced6; font-size: 12px; font-weight: 750; }
.public-campaign-trust span { display: inline-flex; align-items: center; gap: 6px; }
.public-campaign-form-wrap { display: grid; align-items: center; padding: clamp(28px, 5vw, 72px); background: linear-gradient(145deg, #fff 0%, #fff 70%, #fff2f3 100%); border-top: 5px solid #ed071c; }
.public-campaign-form-wrap form { width: min(620px, 100%); margin: 0 auto; }
.public-campaign-form-wrap h2 { margin: 5px 0 8px; font-size: 30px; }
.public-campaign-form-wrap form > p:not(.eyebrow) { margin: 0 0 20px; color: #606a79; line-height: 1.5; }
.public-campaign-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 11px; }
.public-campaign-fields label { display: grid; gap: 5px; }
.public-campaign-fields label.wide { grid-column: 1 / -1; }
.public-campaign-fields label > span { color: #4b5462; font-size: 12px; font-weight: 800; }
.public-campaign-fields input,
.public-campaign-fields select,
.public-campaign-fields textarea { width: 100%; min-height: 47px; padding: 11px 12px; border: 1px solid #cfd5dd; background: #fff; color: #11151c; font: inherit; }
.public-campaign-fields textarea { min-height: 90px; resize: vertical; }
.public-campaign-fields input:focus,
.public-campaign-fields select:focus,
.public-campaign-fields textarea:focus { outline: 2px solid rgba(237,7,28,.18); border-color: #ed071c; }
.public-campaign-consent { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 9px; margin: 16px 0; color: #596270; font-size: 11px; line-height: 1.48; }
.public-campaign-consent input { width: 18px; height: 18px; margin: 1px 0 0; accent-color: #ed071c; }
.public-campaign-error { display: flex; align-items: flex-start; gap: 7px; margin-bottom: 12px; padding: 10px 12px; color: #9d0011; background: #fff0f1; border-left: 3px solid #ed071c; font-size: 12px; font-weight: 750; }
.public-campaign-submit { width: 100%; min-height: 52px; }
.public-campaign-privacy { display: flex; justify-content: center; align-items: center; gap: 5px; margin-top: 10px; color: #707988; text-align: center; }
.public-campaign-thanks { width: min(540px, 100%); display: grid; justify-items: start; gap: 8px; margin: auto; }
.public-campaign-thanks > span { width: 54px; height: 54px; display: grid; place-items: center; color: #fff; background: #168654; }
.public-campaign-thanks h2 { margin: 2px 0; font-size: 34px; }
.public-campaign-thanks p:not(.eyebrow) { margin: 0 0 12px; color: #606a79; line-height: 1.55; }
.public-campaign-property { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 16px; max-width: 1180px; margin: 0 auto; padding: 34px 24px; }
.public-campaign-property > span { width: 52px; height: 52px; display: grid; place-items: center; color: #fff; background: #ed071c; }
.public-campaign-property h2 { margin: 3px 0 4px; font-size: 26px; }
.public-campaign-property p:last-child { margin: 0; color: #626b79; }
.public-campaign-loading,
.public-campaign-not-found { min-height: 560px; display: grid; place-items: center; align-content: center; gap: 10px; padding: 30px; text-align: center; background: #f6f7f9; }
.public-campaign-not-found h1 { margin: 0; }
.public-campaign-not-found p { max-width: 520px; color: #626b79; }

@media (max-width: 1050px) {
  .lead-engine-templates > div:last-child { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lead-engine-components > div:last-child { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lead-engine-copy-variations { grid-template-columns: 1fr; }
  .lead-engine-copy-variations textarea { min-height: 110px; }
  .public-campaign-band { grid-template-columns: 1fr; }
  .public-campaign-copy { min-height: 520px; }
}

@media (max-width: 760px) {
  .lead-engine-shell { gap: 11px; }
  .lead-engine-hero { min-height: 0; grid-template-columns: 1fr; align-items: start; gap: 18px; padding: 24px 19px; }
  .lead-engine-hero::after { top: 8px; font-size: 88px; }
  .lead-engine-hero h1 { font-size: 36px; }
  .lead-engine-hero p { font-size: 14px; }
  .lead-engine-hero-status { min-width: 0; }
  .lead-engine-nav button { min-height: 48px; font-size: 12px; }
  .lead-engine-nia-launch { grid-template-columns: 42px minmax(0, 1fr); padding: 18px 14px; }
  .lead-engine-nia-mark { width: 42px; height: 42px; }
  .lead-engine-nia-copy h2 { font-size: 21px; }
  .lead-engine-nia-launch form { grid-column: 1 / -1; }
  .lead-engine-launch-actions { flex-direction: column-reverse; }
  .lead-engine-launch-actions .btn { width: 100%; }
  .lead-engine-advanced,
  .lead-engine-edit-grid { grid-template-columns: 1fr; }
  .lead-engine-advanced label.wide,
  .lead-engine-edit-grid label.wide { grid-column: auto; }
  .lead-engine-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lead-engine-metrics article { border-bottom: 1px solid var(--lead-line); }
  .lead-engine-metrics article:nth-child(2) { border-right: 0; }
  .lead-engine-metrics article:nth-last-child(-n+2) { border-bottom: 0; }
  .lead-engine-overview-grid,
  .lead-engine-templates > div:last-child,
  .lead-engine-campaigns { grid-template-columns: 1fr; }
  .lead-engine-campaigns > aside { position: static; }
  .lead-engine-campaigns > aside > button:not(.btn) { min-height: 58px; }
  .lead-engine-workspace > header { display: grid; padding: 17px; }
  .lead-engine-workspace > header > div:last-child { flex-wrap: wrap; }
  .lead-engine-performance { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lead-engine-performance article { border-bottom: 1px solid var(--lead-line); }
  .lead-engine-components > div:last-child { grid-template-columns: 1fr; }
  .lead-engine-followup-meta { align-items: flex-start; flex-direction: column; gap: 5px; }
  .lead-engine-workspace-actions { display: grid; grid-template-columns: 1fr; }
  .lead-engine-workspace-actions .btn { width: 100%; min-height: 46px; }
  .lead-engine-preview-backdrop { padding: 0; }
  .lead-engine-preview-modal { width: 100%; height: 100%; max-height: none; border-top-width: 4px; }
  .lead-engine-preview-modal > header { padding: 15px; }
  .lead-engine-preview-modal > header h2 { font-size: 21px; }
  .lead-engine-preview-toolbar { align-items: flex-start; flex-direction: column; padding: 9px 15px; }
  .lead-engine-preview-body { grid-template-columns: 1fr; padding: 13px 15px; }
  .lead-engine-preview-body > aside { order: 2; }
  .lead-engine-preview-page { grid-template-columns: 1fr; }
  .lead-engine-preview-copy { min-height: 390px; padding: 34px 22px; }
  .lead-engine-preview-copy h3 { font-size: 38px; }
  .lead-engine-preview-form { padding: 28px 20px; }
  .lead-engine-preview-form > div { grid-template-columns: 1fr; }
  .lead-engine-preview-modal > footer { padding: 10px 15px; }
  .public-campaign-copy { min-height: 460px; padding: 48px 22px; }
  .public-campaign-copy h1 { font-size: 44px; }
  .public-campaign-intro { font-size: 16px; }
  .public-campaign-form-wrap { padding: 35px 20px; }
  .public-campaign-fields { grid-template-columns: 1fr; }
  .public-campaign-fields label.wide { grid-column: auto; }
}

@media (max-width: 410px) {
  .lead-engine-nav button { gap: 5px; padding: 0 5px; }
  .lead-engine-nav button svg { width: 17px; }
  .lead-engine-prompt-chips { display: grid; grid-template-columns: 1fr 1fr; }
  .lead-engine-prompt-chips button { min-height: 40px; white-space: normal; }
  .lead-engine-nia-launch textarea { min-height: 120px; }
  .lead-engine-metrics article { min-height: 86px; padding: 12px; }
  .lead-engine-overview-grid > section,
  .lead-engine-components,
  .lead-engine-creative,
  .lead-engine-followup { padding: 14px; }
  .lead-engine-workspace > header h2 { font-size: 23px; }
  .lead-engine-performance strong { font-size: 18px; }
  .public-campaign-copy { min-height: 430px; padding: 42px 18px; }
  .public-campaign-copy h1 { font-size: 38px; }
  .public-campaign-offer { padding: 14px; }
  .public-campaign-form-wrap { padding: 30px 16px; }
  .public-campaign-form-wrap h2 { font-size: 26px; }
}

/* CRM conversion workspace */
.crm-my-day,
.crm-lead-workspace {
  display: grid;
  gap: 16px;
}

.crm-my-day-head,
.crm-lead-workspace-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 24px;
  border: 1px solid #e2e5ea;
  border-left: 4px solid #ef0015;
  background: #fff;
}

.crm-my-day-head h2,
.crm-lead-workspace-head h2 { margin: 3px 0 5px; font-size: clamp(24px, 3vw, 36px); }
.crm-my-day-head p:last-child,
.crm-lead-workspace-head > div > span { margin: 0; color: #596273; }
.crm-lead-head-actions { display: flex; flex-wrap: wrap; gap: 8px; }

.crm-my-day-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 1px solid #e1e5eb;
  background: #fff;
}

.crm-my-day-metrics button {
  min-height: 96px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  gap: 4px 14px;
  padding: 18px 20px;
  border: 0;
  border-right: 1px solid #e1e5eb;
  background: #fff;
  color: #151a23;
  text-align: left;
  cursor: pointer;
}
.crm-my-day-metrics button:last-child { border-right: 0; }
.crm-my-day-metrics button:hover { background: #fff5f6; }
.crm-my-day-metrics span { align-self: end; color: #4d5665; font-size: 12px; font-weight: 800; text-transform: uppercase; }
.crm-my-day-metrics strong { grid-row: 1 / 3; grid-column: 2; align-self: center; font-size: 34px; }
.crm-my-day-metrics em { color: #ef0015; font-size: 12px; font-style: normal; font-weight: 800; }

.crm-my-day-grid,
.crm-lead-focus-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(300px, 0.85fr);
  gap: 16px;
  align-items: start;
}
.crm-my-day-side,
.crm-lead-focus-main,
.crm-lead-focus-side { display: grid; gap: 16px; }

.crm-work-list { display: grid; }
.crm-work-list > article {
  min-height: 84px;
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  border-top: 1px solid #e5e8ed;
}
.crm-work-list > article:first-child { border-top: 0; }
.crm-work-rank {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #151a23;
  color: #fff;
  font-weight: 900;
}
.crm-work-person { display: grid; gap: 3px; padding: 0; border: 0; background: transparent; text-align: left; cursor: pointer; }
.crm-work-person strong { font-size: 16px; }
.crm-work-person small { color: #687180; }
.crm-work-person span { color: #202631; font-weight: 750; }
.crm-work-flags { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 5px; }
.crm-work-flags em {
  padding: 5px 7px;
  border: 1px solid #d9dee6;
  border-radius: 999px;
  color: #485263;
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
}
.crm-work-flags em.danger,
.crm-work-flags em.hot { border-color: #f2a2aa; background: #fff0f2; color: #bd0011; }
.crm-work-flags em.warm { border-color: #edcf84; background: #fff9e9; color: #735600; }
.crm-work-actions { display: flex; align-items: center; gap: 7px; }

.crm-core-lists { display: grid; gap: 0; }
.crm-core-lists > button {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-height: 46px;
  padding: 8px 0;
  border: 0;
  border-top: 1px solid #e6e9ee;
  background: transparent;
  text-align: left;
  cursor: pointer;
}
.crm-core-lists > button:hover { color: #ef0015; }
.crm-core-lists > button strong { min-width: 28px; text-align: right; }

.crm-lead-tabs {
  display: flex;
  gap: 2px;
  overflow-x: auto;
  border: 1px solid #dde2e9;
  background: #f3f5f8;
}
.crm-lead-tabs button {
  min-width: 118px;
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 16px;
  border: 0;
  border-bottom: 3px solid transparent;
  background: transparent;
  color: #535d6d;
  font: inherit;
  font-weight: 800;
  white-space: nowrap;
  cursor: pointer;
}
.crm-lead-tabs button.active { border-bottom-color: #ef0015; background: #fff; color: #151a23; }

.crm-next-move {
  min-height: 138px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 20px;
  padding: 22px 24px;
  border-left: 5px solid #ef0015;
  background: #171c25;
  color: #fff;
}
.crm-next-move h3 { margin: 4px 0 8px; font-size: 24px; }
.crm-next-move p { margin: 0; color: #dce0e7; }
.crm-next-move-score { width: 86px; min-height: 78px; display: grid; place-content: center; text-align: center; background: #fff; color: #151a23; }
.crm-next-move-score strong { font-size: 28px; }
.crm-next-move-score span { font-size: 10px; font-weight: 900; text-transform: uppercase; }
.crm-focus-alerts { display: flex; flex-wrap: wrap; gap: 7px; }
.crm-focus-alerts span { display: inline-flex; align-items: center; gap: 6px; padding: 8px 10px; border: 1px solid #e0e4ea; background: #fff; color: #515b6b; font-size: 12px; font-weight: 750; }
.crm-focus-alerts span.danger { border-color: #f2a1aa; background: #fff1f2; color: #b60010; }
.crm-ai-provider-label { color: #687180; font-size: 11px; font-weight: 800; }
.crm-ai-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.ai-output-card { margin-top: 12px; padding: 15px; border: 1px solid #f1a6ad; border-left: 4px solid #ef0015; background: #fff7f8; }
.ai-output-card p { white-space: pre-wrap; line-height: 1.55; }
.ai-output-card small { display: block; margin-top: 10px; color: #687180; }
.output-card-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-size: 11px; font-weight: 900; text-transform: uppercase; }

.crm-inline-form,
.crm-communication-form { display: grid; gap: 12px; }
.crm-communication-workspace { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; align-items: start; }
.crm-communication-workspace .crm-log-outcome { grid-column: 1 / -1; }
.crm-meaningful-timeline { display: grid; gap: 0; }
.crm-meaningful-timeline article { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 9px; padding: 11px 0; border-top: 1px solid #e5e8ed; }
.crm-meaningful-timeline article:first-of-type { border-top: 0; }
.crm-meaningful-timeline article span { display: block; margin-top: 2px; color: #727b89; font-size: 11px; }
.crm-meaningful-timeline article p { margin: 5px 0 0; color: #4d5665; font-size: 12px; line-height: 1.45; }
.crm-focused-tasks .crm-communication-form { grid-template-columns: 2fr 1fr 1fr 1fr auto; align-items: end; }
.crm-action-plan-preview { display: grid; margin: 14px 0; border: 1px solid #e0e4ea; }
.crm-action-plan-preview article { min-height: 60px; display: grid; grid-template-columns: 60px 26px minmax(0, 1fr); align-items: center; gap: 10px; padding: 9px 12px; border-top: 1px solid #e5e8ed; }
.crm-action-plan-preview article:first-child { border-top: 0; }
.crm-action-plan-preview em { color: #ef0015; font-size: 11px; font-style: normal; font-weight: 900; text-transform: uppercase; }
.crm-action-plan-preview span { display: block; margin-top: 3px; color: #6a7381; font-size: 11px; }

.crm-campaign-channel-pills span.safety { border-color: #a9d9c6; background: #effaf5; color: #17694a; }
.crm-action-plan-guardrails { display: grid; gap: 8px; padding: 14px; border: 1px solid #dce2e9; background: #f6f8fa; }
.crm-toggle-row { display: grid !important; grid-template-columns: 18px minmax(0, 1fr); align-items: start; gap: 9px; cursor: pointer; }
.crm-toggle-row input { margin-top: 3px; accent-color: #ef0015; }
.crm-toggle-row b,
.crm-toggle-row small { display: block; }
.crm-toggle-row small { margin-top: 2px; color: #687180; line-height: 1.35; }

@media (max-width: 980px) {
  .crm-my-day-grid,
  .crm-lead-focus-grid { grid-template-columns: 1fr; }
  .crm-communication-workspace { grid-template-columns: 1fr; }
  .crm-communication-workspace .crm-log-outcome { grid-column: auto; }
  .crm-focused-tasks .crm-communication-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  .crm-my-day-head,
  .crm-lead-workspace-head { display: grid; padding: 18px; }
  .crm-lead-head-actions,
  .crm-my-day-head .row-actions { width: 100%; }
  .crm-lead-head-actions .btn,
  .crm-my-day-head .row-actions .btn { flex: 1; }
  .crm-my-day-metrics { grid-template-columns: 1fr; }
  .crm-my-day-metrics button { min-height: 76px; border-right: 0; border-bottom: 1px solid #e1e5eb; }
  .crm-my-day-metrics button:last-child { border-bottom: 0; }
  .crm-work-list > article { grid-template-columns: 30px minmax(0, 1fr); }
  .crm-work-flags { grid-column: 2; justify-content: flex-start; }
  .crm-work-actions { grid-column: 1 / -1; }
  .crm-work-actions .btn { flex: 1; }
  .crm-next-move { grid-template-columns: 1fr; }
  .crm-next-move-score { width: 100%; min-height: 58px; grid-auto-flow: column; gap: 8px; align-items: center; }
  .crm-focused-tasks .crm-communication-form { grid-template-columns: 1fr; }
  .crm-lead-tabs button { min-width: 104px; }
}

@media (max-width: 760px) {
  .crm-people-heading {
    align-items: stretch;
    flex-direction: column;
    padding: 18px 15px 14px;
  }
  .crm-people-heading-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .crm-people-heading-actions .btn { justify-content: center; }
  .crm-people-saved-views { padding-inline: 7px; }
  .crm-people-saved-views button { min-height: 46px; padding-inline: 10px; }
  .crm-people-toolbar { grid-template-columns: minmax(0, 1fr) auto auto; padding: 12px; }
  .crm-people-search { grid-column: 1 / -1; }
  .crm-people-bulk-actions { grid-column: 1 / -1; }
  .crm-people-filter-panel { grid-template-columns: 1fr 1fr; padding: 14px 12px; }
  .crm-people-table-shell { overflow: visible; padding: 10px; }
  .crm-people-table,
  .crm-people-table tbody,
  .crm-people-table tr,
  .crm-people-table td { display: block; min-width: 0; width: 100%; }
  .crm-people-table { border-collapse: separate; }
  .crm-people-table thead { display: none; }
  .crm-people-table tbody { display: grid; gap: 10px; }
  .crm-people-table tbody tr {
    border: 1px solid #d7dbe2;
    display: grid;
    gap: 0;
    grid-template-columns: 36px minmax(0, 1fr);
    padding: 11px 12px;
  }
  .crm-people-table td { border: 0; max-width: none; padding: 8px 0; }
  .crm-people-table td.select { grid-row: 1 / 3; padding: 5px 0; }
  .crm-people-table td.person { grid-column: 2; min-width: 0; padding-top: 3px; }
  .crm-people-table td:not(.select):not(.person) {
    border-top: 1px solid #eceef2;
    display: grid;
    gap: 8px;
    grid-column: 1 / -1;
    grid-template-columns: 94px minmax(0, 1fr);
  }
  .crm-people-table td:not(.select):not(.person)::before {
    color: #7a8290;
    content: attr(data-label);
    font-size: 9px;
    font-weight: 950;
    grid-column: 1;
    grid-row: 1 / span 2;
    text-transform: uppercase;
  }
  .crm-people-table td:not(.select):not(.person) > * { grid-column: 2; }
  .crm-people-pagination { align-items: stretch; flex-direction: column; gap: 11px; }
  .crm-people-pagination > div,
  .crm-people-pagination label { justify-content: space-between; }
  .crm-people-column-menu { position: fixed; right: 12px; top: 160px; }
  .crm-people-drawer { max-width: 100vw; padding-inline: 12px; }
  .crm-people-drawer-head { margin-inline: -12px; }
}


/* Full-page CRM contact workspace */
.crm-contact-page {
  display: grid;
  gap: 14px;
  min-width: 0;
  width: 100%;
}

.crm-contact-page-bar {
  align-items: center;
  background: #ffffff;
  border: 1px solid #dfe3e9;
  border-top: 3px solid var(--nex-red);
  display: grid;
  gap: 16px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: 12px 16px;
  position: sticky;
  top: 0;
  z-index: 45;
}

.crm-contact-page-bar > div {
  min-width: 0;
}

.crm-contact-page-bar strong {
  color: #151820;
  display: block;
  font-size: 16px;
  margin-top: 2px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.crm-contact-page-bar > span {
  align-items: center;
  color: #657080;
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  gap: 6px;
  white-space: nowrap;
}

.crm-contact-page .crm-lead-workspace {
  max-width: none;
  min-width: 0;
  width: 100%;
}

.crm-contact-page .crm-lead-workspace-head {
  align-items: center;
}

.crm-lead-identity {
  min-width: min(340px, 100%);
}

.crm-lead-stage-control {
  align-items: stretch;
  background: #f6f7f9;
  border: 1px solid #dce1e7;
  display: grid;
  min-width: 170px;
}

.crm-lead-stage-control > span {
  color: #707887;
  font-size: 9px;
  font-weight: 950;
  line-height: 1;
  padding: 7px 10px 0;
  text-transform: uppercase;
}

.crm-lead-stage-control select {
  appearance: none;
  background: transparent;
  border: 0;
  color: #151820;
  cursor: pointer;
  font: inherit;
  font-size: 13px;
  font-weight: 900;
  min-height: 32px;
  outline: none;
  padding: 2px 30px 7px 10px;
}

.crm-lead-head-actions {
  align-items: stretch;
  justify-content: flex-end;
}

.crm-lead-head-actions .btn {
  min-height: 47px;
}

.crm-lead-head-actions .icon-btn {
  align-self: center;
}

.crm-delivery-note {
  color: #697383;
  font-size: 11px;
  font-weight: 800;
}

.crm-contact-page #crm-focused-email,
.crm-contact-page #crm-focused-sms {
  scroll-margin-top: 78px;
}

.crm-contact-page .crm-lead-tabs {
  position: sticky;
  top: 72px;
  z-index: 40;
}

.crm-contact-page .crm-lead-tabs button {
  flex: 1 0 132px;
}

.crm-contact-page .crm-lead-focus-grid {
  grid-template-columns: minmax(0, 1.7fr) minmax(320px, 0.75fr);
}

.crm-contact-page .crm-next-move {
  min-height: 120px;
}

.crm-contact-page .crm-focus-note textarea {
  min-height: 92px;
}

@media (max-width: 1040px) {
  .crm-contact-page .crm-lead-workspace-head {
    align-items: stretch;
    display: grid;
  }

  .crm-contact-page .crm-lead-head-actions {
    justify-content: flex-start;
  }

  .crm-contact-page .crm-lead-focus-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .crm-contact-page {
    gap: 10px;
  }

  .crm-contact-page-bar {
    align-items: stretch;
    gap: 9px;
    grid-template-columns: 1fr;
    padding: 10px;
    position: relative;
  }

  .crm-contact-page-bar .btn {
    justify-content: center;
    width: 100%;
  }

  .crm-contact-page-bar > span {
    justify-content: center;
  }

  .crm-contact-page .crm-lead-workspace-head {
    gap: 14px;
    padding: 16px 14px;
  }

  .crm-contact-page .crm-lead-head-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .crm-contact-page .crm-lead-stage-control {
    grid-column: 1 / -1;
    min-width: 0;
  }

  .crm-contact-page .crm-lead-head-actions .btn {
    justify-content: center;
    min-width: 0;
    width: 100%;
  }

  .crm-contact-page .crm-lead-head-actions .icon-btn {
    display: none;
  }

  .crm-contact-page .crm-lead-tabs {
    top: 0;
  }

  .crm-contact-page .crm-lead-tabs button {
    flex-basis: 106px;
    min-width: 106px;
    padding-inline: 10px;
  }

  .crm-contact-page .crm-lead-tabs button span {
    font-size: 12px;
  }

  .crm-contact-page .crm-communication-workspace {
    grid-template-columns: 1fr;
  }

  .crm-contact-page .crm-action-plan-preview article {
    grid-template-columns: 52px 22px minmax(0, 1fr);
  }
}


/* CRM listing alerts */
.crm-listing-alerts {
  display: grid;
  gap: 20px;
}

.crm-listing-alerts .panel-heading > div > p:not(.eyebrow) {
  margin: 6px 0 0;
  color: #5d6676;
  max-width: 720px;
}

.crm-listing-alert-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(280px, 0.85fr);
  gap: 18px;
  align-items: start;
}

.crm-listing-alert-builder,
.crm-listing-alert-saved,
.crm-listing-alert-preview,
.crm-listing-alert-history {
  border: 1px solid #dce1e8;
  background: #fff;
  border-radius: 6px;
}

.crm-listing-alert-builder {
  padding: 20px;
}

.crm-listing-alert-builder-head,
.crm-listing-alert-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.crm-listing-alert-builder-head {
  margin-bottom: 18px;
}

.crm-listing-alert-builder-head > div,
.crm-listing-alert-card-head > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.crm-listing-alert-builder-head strong {
  font-size: 20px;
}

.crm-listing-alert-builder-head span,
.crm-listing-alert-card-head span,
.crm-listing-alert-card small,
.crm-listing-alert-empty span {
  color: #667085;
  line-height: 1.45;
}

.crm-listing-alerts .status-pill {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 4px 8px;
  border: 1px solid #d8dee8;
  border-radius: 999px;
  background: #f2f4f7;
  color: #344054;
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
  white-space: nowrap;
}

.crm-listing-alerts .status-pill.active {
  border-color: #84d6b0;
  background: #ecfdf3;
  color: #067647;
}

.crm-listing-alerts .status-pill.paused {
  border-color: #f1d389;
  background: #fffaeb;
  color: #93370d;
}

.crm-listing-alert-options {
  display: grid;
  grid-template-columns: minmax(220px, 0.7fr) minmax(280px, 1.3fr);
  gap: 18px;
  margin-top: 16px;
  padding: 16px;
  border: 1px solid #e2e6ec;
  background: #f8f9fb;
  border-radius: 6px;
}

.crm-listing-alert-channel-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 10px;
}

.crm-listing-alert-channel-row label,
.crm-listing-alert-consent {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  color: #1d2430;
  font-weight: 700;
}

.crm-listing-alert-channel-row label {
  min-height: 40px;
  align-items: center;
  padding: 8px 12px;
  border: 1px solid #d8dee8;
  background: #fff;
  border-radius: 5px;
}

.crm-listing-alert-options input {
  width: 17px;
  height: 17px;
  accent-color: #ed0b19;
}

.crm-listing-alert-consent span {
  display: grid;
  gap: 3px;
}

.crm-listing-alert-consent small {
  color: #667085;
  font-weight: 500;
  line-height: 1.4;
}

.crm-listing-alert-actions {
  margin-top: 18px;
}

.crm-listing-alert-actions .btn {
  min-height: 42px;
}

.crm-listing-alert-saved {
  padding: 16px;
}

.crm-listing-alert-card {
  display: grid;
  gap: 12px;
  margin-top: 12px;
  padding: 14px;
  border: 1px solid #e1e5eb;
  border-left: 3px solid #aeb5c0;
  border-radius: 5px;
}

.crm-listing-alert-card.selected {
  border-color: #ef3340;
  border-left-color: #ed0b19;
  box-shadow: 0 0 0 2px rgba(237, 11, 25, 0.08);
}

.crm-listing-alert-card-head strong {
  font-size: 16px;
}

.crm-listing-alert-card-head span {
  overflow-wrap: anywhere;
}

.crm-listing-alert-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  color: #475467;
  font-size: 12px;
  font-weight: 700;
}

.crm-listing-alert-meta span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.crm-listing-alert-card .row-actions {
  gap: 7px;
}

.crm-listing-alert-card .icon-btn {
  width: 36px;
  height: 36px;
}

.crm-listing-alert-empty,
.crm-listing-alert-no-matches {
  display: grid;
  place-items: center;
  gap: 7px;
  min-height: 170px;
  padding: 24px;
  border: 1px dashed #cbd2dc;
  text-align: center;
}

.crm-listing-alert-empty svg,
.crm-listing-alert-no-matches svg {
  color: #ed0b19;
}

.crm-listing-alert-preview,
.crm-listing-alert-history {
  padding: 18px;
}

.crm-listing-alert-preview-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.crm-listing-alert-preview-grid article {
  overflow: hidden;
  border: 1px solid #dde2e9;
  border-radius: 6px;
  background: #fff;
}

.crm-listing-alert-preview-grid article > img,
.crm-listing-alert-photo-fallback {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  background: #171b22;
}

.crm-listing-alert-photo-fallback {
  display: grid;
  place-items: center;
  color: #fff;
}

.crm-listing-alert-preview-grid article > div:last-child {
  display: grid;
  gap: 5px;
  padding: 12px;
}

.crm-listing-alert-preview-grid strong {
  font-size: 20px;
}

.crm-listing-alert-preview-grid span {
  font-weight: 750;
  line-height: 1.3;
}

.crm-listing-alert-preview-grid small,
.crm-listing-alert-preview-grid em {
  color: #667085;
  font-size: 11px;
  font-style: normal;
  line-height: 1.4;
}

.crm-listing-alert-attribution {
  margin-top: 5px;
  padding-top: 7px;
  border-top: 1px solid #eceff3;
  font-size: 9px !important;
  color: #7a8391 !important;
}

.crm-listing-alert-history {
  display: grid;
  gap: 0;
}

.crm-listing-alert-history article {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 10px;
  padding: 11px 0;
  border-top: 1px solid #e5e8ed;
}

.crm-listing-alert-history article > div {
  display: grid;
  gap: 3px;
}

.crm-listing-alert-history article span {
  color: #667085;
  font-size: 12px;
}

@media (max-width: 980px) {
  .crm-listing-alert-layout,
  .crm-listing-alert-options {
    grid-template-columns: 1fr;
  }

  .crm-listing-alert-preview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .crm-listing-alert-builder,
  .crm-listing-alert-saved,
  .crm-listing-alert-preview,
  .crm-listing-alert-history {
    padding: 14px;
  }

  .crm-listing-alert-preview-grid {
    grid-template-columns: 1fr;
  }

  .crm-listing-alert-builder-head,
  .crm-listing-alert-card-head {
    align-items: flex-start;
  }

  .crm-listing-alert-actions .btn,
  .crm-listing-alert-card .btn.full-width {
    width: 100%;
    justify-content: center;
  }

  .crm-listing-alert-card .row-actions {
    display: grid;
    grid-template-columns: 1fr 1fr auto;
  }
}


/* CRM property search workspace and complete client timeline */
.crm-property-search-workspace {
  --crm-property-ink: #111318;
  --crm-property-muted: #5d6674;
  --crm-property-line: #dfe3e9;
  --crm-property-soft: #f5f6f8;
  display: grid;
  gap: 18px;
  padding-bottom: 96px;
}

.crm-property-search-head {
  align-items: center;
  background: linear-gradient(118deg, #12151c 0%, #1f232c 66%, #680916 100%);
  border-left: 4px solid #ed0016;
  color: #fff;
  display: grid;
  gap: 22px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: 24px;
}

.crm-property-search-head .btn {
  align-self: start;
  background: #fff;
  border-color: #fff;
  color: #111318;
}

.crm-property-search-head h2,
.crm-property-search-head p {
  color: inherit;
  margin: 0;
}

.crm-property-search-head h2 {
  font-size: clamp(24px, 3vw, 38px);
  line-height: 1.08;
  margin-top: 4px;
}

.crm-property-search-head > div > p:last-child {
  color: #e4e7ed;
  line-height: 1.55;
  margin-top: 8px;
  max-width: 760px;
}

.crm-property-search-head-status {
  align-items: center;
  background: rgba(255, 255, 255, 0.09);
  border: 1px solid rgba(255, 255, 255, 0.22);
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 92px;
  min-width: 126px;
  padding: 14px 18px;
  text-align: center;
}

.crm-property-search-head-status strong {
  font-size: 32px;
  line-height: 1;
}

.crm-property-search-head-status span {
  color: #e4e7ed;
  font-size: 12px;
  font-weight: 800;
  margin-top: 7px;
  text-transform: uppercase;
}

.crm-property-profile-band,
.crm-property-results-toolbar,
.crm-property-automation-band,
.crm-saved-property-searches,
.crm-client-timeline,
.crm-listing-alert-launcher {
  background: #fff;
  border: 1px solid var(--crm-property-line, #dfe3e9);
}

.crm-property-profile-band {
  border-top: 3px solid #ed0016;
  padding: 20px;
}

.crm-property-search-title {
  align-items: end;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(180px, 0.6fr) minmax(280px, 1.5fr) auto;
}

.crm-property-search-run {
  min-height: 44px;
  white-space: nowrap;
}

.crm-property-essential-filters,
.crm-property-advanced-filters {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(5, minmax(130px, 1fr));
  margin-top: 16px;
}

.crm-property-advanced-filters {
  background: var(--crm-property-soft);
  border: 1px solid var(--crm-property-line);
  grid-template-columns: repeat(3, minmax(150px, 1fr));
  padding: 16px;
}

.crm-property-lifestyle-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 14px;
}

.crm-property-filter-chip {
  align-items: center;
  background: #fff;
  border: 1px solid #cfd5dd;
  color: #28303c;
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  gap: 7px;
  min-height: 38px;
  padding: 8px 12px;
}

.crm-property-filter-chip:hover,
.crm-property-filter-chip:focus-visible,
.crm-property-filter-chip.active {
  background: #fff0f2;
  border-color: #ed0016;
  color: #b50013;
}

.crm-property-filter-chip svg {
  height: 16px;
  width: 16px;
}

.crm-property-results-toolbar {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding: 13px 16px;
}

.crm-property-results-toolbar > div:first-child {
  display: grid;
  gap: 2px;
}

.crm-property-results-toolbar span {
  color: var(--crm-property-muted);
  font-size: 12px;
}

.crm-property-view-toggle {
  display: inline-flex;
  gap: 0;
}

.crm-property-view-toggle button {
  align-items: center;
  background: #fff;
  border: 1px solid #cfd5dd;
  color: #343c48;
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  gap: 7px;
  min-height: 40px;
  padding: 8px 13px;
}

.crm-property-view-toggle button + button {
  border-left: 0;
}

.crm-property-view-toggle button.active {
  background: #161a22;
  border-color: #161a22;
  color: #fff;
}

.crm-property-search-empty {
  align-items: center;
  background: #fff;
  border: 1px dashed #cbd1d9;
  color: var(--crm-property-muted);
  display: flex;
  flex-direction: column;
  gap: 8px;
  justify-content: center;
  min-height: 260px;
  padding: 28px;
  text-align: center;
}

.crm-property-search-empty svg {
  color: #ed0016;
  height: 28px;
  width: 28px;
}

.crm-property-map-layout {
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.8fr);
}

.crm-property-map {
  background: #e9ecf0;
  border: 1px solid var(--crm-property-line);
  min-height: 520px;
  overflow: hidden;
}

.crm-property-map iframe {
  border: 0;
  display: block;
  height: 100%;
  min-height: 520px;
  width: 100%;
}

.crm-property-map-empty {
  align-items: center;
  color: var(--crm-property-muted);
  display: flex;
  flex-direction: column;
  gap: 10px;
  justify-content: center;
  min-height: 520px;
  padding: 30px;
  text-align: center;
}

.crm-property-map-empty svg {
  color: #ed0016;
  height: 34px;
  width: 34px;
}

.crm-property-map-rail {
  display: grid;
  gap: 8px;
  max-height: 520px;
  overflow: auto;
  padding-right: 4px;
}

.crm-property-map-row {
  align-items: center;
  background: #fff;
  border: 1px solid var(--crm-property-line);
  cursor: pointer;
  display: grid;
  gap: 10px;
  grid-template-columns: auto 1fr auto;
  min-height: 70px;
  padding: 10px;
}

.crm-property-map-row:hover,
.crm-property-map-row.selected {
  border-color: #ed0016;
  box-shadow: inset 3px 0 0 #ed0016;
}

.crm-property-map-row strong,
.crm-property-map-row span {
  display: block;
}

.crm-property-map-row span {
  color: var(--crm-property-muted);
  font-size: 12px;
  margin-top: 3px;
}

.crm-property-result-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.crm-property-result-card {
  background: #fff;
  border: 1px solid var(--crm-property-line);
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  position: relative;
}

.crm-property-result-card.selected {
  border-color: #ed0016;
  box-shadow: 0 0 0 2px rgba(237, 0, 22, 0.12);
}

.crm-property-result-select {
  align-items: center;
  background: #fff;
  border: 0;
  box-shadow: 0 3px 12px rgba(17, 19, 24, 0.16);
  cursor: pointer;
  display: flex;
  height: 40px;
  justify-content: center;
  left: 12px;
  position: absolute;
  top: 12px;
  width: 40px;
  z-index: 2;
}

.crm-property-result-select svg {
  height: 19px;
  width: 19px;
}

.crm-property-result-card.selected .crm-property-result-select {
  background: #ed0016;
  color: #fff;
}

.crm-property-result-photo {
  aspect-ratio: 16 / 10;
  background: #dfe3e9;
  object-fit: cover;
  width: 100%;
}

.crm-property-photo-fallback {
  align-items: center;
  aspect-ratio: 16 / 10;
  background: linear-gradient(125deg, #181b22 0%, #2c313b 68%, #8d0b1c 100%);
  color: #fff;
  display: flex;
  justify-content: center;
}

.crm-property-photo-fallback svg {
  height: 42px;
  width: 42px;
}

.crm-property-status {
  background: #fff;
  color: #161a22;
  font-size: 11px;
  font-weight: 900;
  padding: 7px 10px;
  position: absolute;
  right: 12px;
  text-transform: uppercase;
  top: 12px;
  z-index: 2;
}

.crm-property-result-body {
  display: grid;
  flex: 1;
  gap: 8px;
  padding: 16px;
}

.crm-property-price {
  font-size: 24px;
  line-height: 1;
}

.crm-property-result-body h3 {
  font-size: 17px;
  line-height: 1.3;
  margin: 0;
}

.crm-property-result-body > p {
  color: var(--crm-property-muted);
  font-size: 13px;
  margin: 0;
}

.crm-property-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 12px;
}

.crm-property-facts span {
  color: #252c36;
  font-size: 13px;
  font-weight: 800;
}

.crm-property-result-body small {
  color: #687180;
  font-size: 10px;
  line-height: 1.45;
  margin-top: auto;
}

.crm-property-result-actions {
  display: grid;
  gap: 8px;
  grid-template-columns: 1fr auto;
  margin-top: 4px;
}

.crm-property-result-actions .btn {
  min-height: 42px;
}

.crm-property-automation-band {
  border-top: 3px solid #171b23;
  padding: 20px;
}

.crm-property-automation-band .panel-heading,
.crm-saved-property-searches .panel-heading {
  align-items: start;
}

.crm-property-automation-controls {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(160px, 1fr));
}

.crm-property-automation-controls fieldset {
  border: 1px solid var(--crm-property-line);
  margin: 0;
  padding: 10px 12px;
}

.crm-property-automation-controls legend {
  font-size: 12px;
  font-weight: 900;
  padding: 0 4px;
  text-transform: uppercase;
}

.crm-property-automation-controls label {
  align-items: center;
  display: flex;
  font-size: 13px;
  font-weight: 750;
  gap: 8px;
  margin-top: 7px;
}

.crm-property-automation-actions {
  align-items: center;
  border-top: 1px solid var(--crm-property-line);
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  justify-content: flex-end;
  margin-top: 16px;
  padding-top: 16px;
}

.crm-saved-property-searches {
  padding: 20px;
}

.crm-saved-property-search-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.crm-saved-property-search-grid > article {
  border: 1px solid var(--crm-property-line);
  display: grid;
  gap: 9px;
  padding: 15px;
}

.crm-saved-property-search-grid h4,
.crm-saved-property-search-grid p {
  margin: 0;
}

.crm-saved-property-search-grid p {
  color: var(--crm-property-muted);
  font-size: 13px;
}

.crm-engagement-temperature {
  align-items: center;
  background: #eef1f4;
  color: #3f4753;
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  min-height: 28px;
  padding: 5px 9px;
  text-transform: uppercase;
  width: max-content;
}

.crm-engagement-temperature.hot {
  background: #ffe1e5;
  color: #a50012;
}

.crm-engagement-temperature.warm {
  background: #fff0c7;
  color: #735000;
}

.crm-engagement-temperature.cold {
  background: #e5efff;
  color: #154879;
}

.crm-property-share-tray {
  align-items: center;
  background: #151922;
  bottom: 14px;
  box-shadow: 0 14px 40px rgba(17, 19, 24, 0.28);
  color: #fff;
  display: flex;
  gap: 16px;
  justify-content: space-between;
  left: max(20px, calc(var(--sidebar-width, 0px) + 20px));
  margin: 0 auto;
  max-width: 1000px;
  padding: 14px 16px;
  position: fixed;
  right: 20px;
  z-index: 40;
}

.crm-property-share-tray > div:first-child {
  display: grid;
  gap: 3px;
}

.crm-property-share-tray span {
  color: #cbd0d9;
  font-size: 12px;
}

.crm-property-share-tray > div:last-child {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.crm-property-share-tray .btn {
  min-height: 42px;
}

.crm-listing-alert-launcher {
  border-left: 4px solid #ed0016;
  display: grid;
  gap: 20px;
  grid-template-columns: minmax(0, 1.4fr) minmax(230px, 0.6fr);
  padding: 22px;
}

.crm-listing-alert-launch-copy h3,
.crm-listing-alert-launch-copy p {
  margin: 0;
}

.crm-listing-alert-launch-copy h3 {
  font-size: 25px;
  margin-top: 5px;
}

.crm-listing-alert-launch-copy > p:last-of-type {
  color: var(--crm-property-muted);
  line-height: 1.5;
  margin-top: 8px;
}

.crm-listing-alert-launch-benefits {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 16px 0;
}

.crm-listing-alert-launch-benefits span {
  align-items: center;
  background: var(--crm-property-soft);
  color: #2c3440;
  display: inline-flex;
  font-size: 12px;
  font-weight: 800;
  gap: 6px;
  padding: 7px 9px;
}

.crm-listing-alert-launch-stats {
  border-left: 1px solid var(--crm-property-line);
  display: grid;
  gap: 10px;
  padding-left: 20px;
}

.crm-listing-alert-launch-stats > div {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.crm-listing-alert-launch-stats strong {
  font-size: 22px;
}

.crm-listing-alert-launch-stats span {
  color: var(--crm-property-muted);
  font-size: 12px;
  font-weight: 800;
}

.crm-listing-alert-launch-list {
  border-top: 1px solid var(--crm-property-line);
  display: grid;
  gap: 8px;
  grid-column: 1 / -1;
  padding-top: 14px;
}

.crm-listing-alert-launch-list > article {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto auto;
  padding: 8px 0;
}

.crm-client-timeline {
  border-top: 3px solid #161a22;
  padding: 22px;
}

.crm-client-timeline-head {
  align-items: end;
  display: flex;
  gap: 20px;
  justify-content: space-between;
}

.crm-client-timeline-head h3,
.crm-client-timeline-head p {
  margin: 0;
}

.crm-client-timeline-head h3 {
  font-size: 25px;
  margin-top: 4px;
}

.crm-client-timeline-head > div > p:last-child {
  color: var(--crm-property-muted);
  line-height: 1.5;
  margin-top: 7px;
  max-width: 760px;
}

.crm-client-timeline-head > span {
  color: var(--crm-property-muted);
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.crm-client-timeline-list {
  display: grid;
  margin-top: 20px;
  padding-left: 17px;
}

.crm-client-timeline-list > article {
  display: grid;
  gap: 14px;
  grid-template-columns: 42px minmax(0, 1fr);
  padding-bottom: 20px;
  position: relative;
}

.crm-client-timeline-list > article::before {
  background: #d8dde4;
  content: "";
  left: 20px;
  position: absolute;
  top: 42px;
  bottom: 0;
  width: 1px;
}

.crm-client-timeline-list > article:last-child::before {
  display: none;
}

.crm-client-timeline-icon {
  align-items: center;
  background: #171b23;
  color: #fff;
  display: flex;
  height: 42px;
  justify-content: center;
  position: relative;
  width: 42px;
  z-index: 1;
}

.crm-client-timeline-icon.sms,
.crm-client-timeline-icon.text,
.crm-client-timeline-icon.listing_engagement {
  background: #ed0016;
}

.crm-client-timeline-icon svg {
  height: 18px;
  width: 18px;
}

.crm-client-timeline-content {
  border-bottom: 1px solid var(--crm-property-line);
  min-width: 0;
  padding: 2px 0 18px;
}

.crm-client-timeline-content > div {
  align-items: start;
  display: flex;
  gap: 14px;
  justify-content: space-between;
}

.crm-client-timeline-content strong {
  font-size: 15px;
}

.crm-client-timeline-content time,
.crm-client-timeline-content > span {
  color: #747d89;
  font-size: 11px;
}

.crm-client-timeline-content p {
  color: #343c48;
  line-height: 1.5;
  margin: 7px 0;
  white-space: pre-wrap;
}

.crm-client-timeline-content > span {
  font-weight: 800;
  text-transform: uppercase;
}

.crm-client-timeline-empty {
  align-items: center;
  border: 1px dashed #cbd1d9;
  color: var(--crm-property-muted);
  display: flex;
  flex-direction: column;
  gap: 7px;
  padding: 28px;
  text-align: center;
}

@media (max-width: 1100px) {
  .crm-property-essential-filters {
    grid-template-columns: repeat(3, minmax(140px, 1fr));
  }

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

  .crm-property-map-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .crm-property-map-rail {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-height: none;
    overflow: visible;
  }
}

@media (max-width: 760px) {
  .crm-property-search-workspace {
    gap: 12px;
    padding-bottom: 140px;
  }

  .crm-property-search-head {
    align-items: start;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 18px;
  }

  .crm-property-search-head > .btn {
    grid-column: 1 / -1;
    justify-self: start;
  }

  .crm-property-search-head-status {
    min-height: 76px;
    min-width: 92px;
  }

  .crm-property-search-head-status strong {
    font-size: 26px;
  }

  .crm-property-profile-band,
  .crm-property-automation-band,
  .crm-saved-property-searches,
  .crm-client-timeline {
    padding: 16px;
  }

  .crm-property-search-title,
  .crm-property-essential-filters,
  .crm-property-advanced-filters,
  .crm-property-automation-controls,
  .crm-saved-property-search-grid,
  .crm-listing-alert-launcher {
    grid-template-columns: minmax(0, 1fr);
  }

  .crm-property-search-run,
  .crm-property-search-title .field {
    width: 100%;
  }

  .crm-property-results-toolbar,
  .crm-client-timeline-head {
    align-items: stretch;
    flex-direction: column;
  }

  .crm-property-view-toggle {
    width: 100%;
  }

  .crm-property-view-toggle button {
    flex: 1;
    justify-content: center;
  }

  .crm-property-result-grid,
  .crm-property-map-rail {
    grid-template-columns: minmax(0, 1fr);
  }

  .crm-property-map,
  .crm-property-map iframe,
  .crm-property-map-empty {
    min-height: 360px;
  }

  .crm-property-automation-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .crm-property-automation-actions .btn {
    justify-content: center;
    width: 100%;
  }

  .crm-property-share-tray {
    align-items: stretch;
    bottom: 8px;
    flex-direction: column;
    left: 8px;
    max-width: none;
    right: 8px;
  }

  .crm-property-share-tray > div:last-child {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .crm-property-share-tray .btn {
    font-size: 12px;
    justify-content: center;
    min-width: 0;
    padding-inline: 8px;
  }

  .crm-listing-alert-launch-stats {
    border-left: 0;
    border-top: 1px solid var(--crm-property-line);
    padding-left: 0;
    padding-top: 14px;
  }

  .crm-listing-alert-launch-list > article {
    align-items: start;
    grid-template-columns: minmax(0, 1fr);
  }

  .crm-client-timeline-list {
    padding-left: 0;
  }

  .crm-client-timeline-list > article {
    gap: 10px;
    grid-template-columns: 36px minmax(0, 1fr);
  }

  .crm-client-timeline-icon {
    height: 36px;
    width: 36px;
  }

  .crm-client-timeline-list > article::before {
    left: 17px;
    top: 36px;
  }

  .crm-client-timeline-content > div {
    display: grid;
    gap: 3px;
  }
}

@media (max-width: 420px) {
  .crm-property-search-head {
    grid-template-columns: minmax(0, 1fr);
  }

  .crm-property-search-head-status {
    align-items: start;
    min-width: 0;
    width: 100%;
  }

  .crm-property-share-tray > div:last-child {
    grid-template-columns: 1fr;
  }
}


/* CRM property search polish: interactive map, internal details, and honest sharing */
.crm-property-search-workspace {
  gap: 14px;
  max-width: 1680px;
  margin: 0 auto;
}

.crm-property-step-strip {
  align-items: center;
  background: #fff;
  border: 1px solid #dce1e8;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  min-height: 58px;
}

.crm-property-step-strip span {
  align-items: center;
  color: #697280;
  display: flex;
  font-size: 12px;
  font-weight: 900;
  gap: 9px;
  justify-content: center;
  padding: 12px 16px;
  text-transform: uppercase;
}

.crm-property-step-strip span + span {
  border-left: 1px solid #e3e7ed;
}

.crm-property-step-strip b {
  align-items: center;
  background: #edf0f4;
  border-radius: 50%;
  display: inline-flex;
  height: 26px;
  justify-content: center;
  width: 26px;
}

.crm-property-step-strip span.active {
  color: #b60015;
}

.crm-property-step-strip span.active b {
  background: #ed0016;
  color: #fff;
}

.crm-property-profile-band {
  border-radius: 8px;
  box-shadow: 0 12px 34px rgba(20, 26, 36, 0.07);
}

.crm-property-search-title {
  grid-template-columns: minmax(170px, 0.65fr) minmax(340px, 1.8fr) auto;
}

.crm-property-search-title .field input,
.crm-property-essential-filters .field input,
.crm-property-essential-filters .field select,
.crm-property-advanced-filters .field input,
.crm-property-advanced-filters .field select {
  background: #fff;
  border-color: #cbd2dc;
  border-radius: 6px;
  min-height: 46px;
}

.crm-property-location-search .public-search-autocomplete {
  width: 100%;
}

.crm-property-location-search .public-search-autocomplete-menu {
  border-radius: 6px;
  box-shadow: 0 18px 42px rgba(20, 26, 36, 0.16);
  margin-top: 2px;
}

.crm-property-search-run {
  border-radius: 6px;
  min-height: 46px;
  padding-inline: 22px;
}

.crm-property-filter-chip,
.crm-property-view-toggle button {
  border-radius: 6px;
}

.crm-property-results-toolbar {
  border-radius: 8px;
  box-shadow: 0 7px 22px rgba(20, 26, 36, 0.05);
  gap: 12px;
}

.crm-property-result-grid {
  grid-template-columns: repeat(3, minmax(260px, 1fr));
}

.crm-property-result-card {
  border-radius: 8px;
  box-shadow: 0 7px 24px rgba(18, 24, 34, 0.08);
  transition: border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
}

.crm-property-result-card:hover {
  box-shadow: 0 14px 34px rgba(18, 24, 34, 0.13);
  transform: translateY(-2px);
}

.crm-property-result-photo {
  border: 0;
  cursor: pointer;
  display: block;
  overflow: hidden;
  padding: 0;
  position: relative;
  width: 100%;
}

.crm-property-result-photo > img {
  aspect-ratio: 16 / 10;
  display: block;
  height: 100%;
  object-fit: cover;
  transition: transform 220ms ease;
  width: 100%;
}

.crm-property-result-card:hover .crm-property-result-photo > img {
  transform: scale(1.025);
}

.crm-property-choice {
  align-items: center;
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid rgba(17, 19, 24, 0.16);
  border-radius: 6px;
  box-shadow: 0 4px 14px rgba(17, 19, 24, 0.14);
  color: #161a22;
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-size: 12px;
  font-weight: 900;
  gap: 6px;
  left: 12px;
  min-height: 38px;
  padding: 8px 11px;
  position: absolute;
  top: 12px;
  z-index: 4;
}

.crm-property-choice svg {
  height: 16px;
  width: 16px;
}

.crm-property-choice.selected {
  background: #ed0016;
  border-color: #ed0016;
  color: #fff;
}

.crm-property-address-link {
  background: transparent;
  border: 0;
  color: #151922;
  cursor: pointer;
  font: inherit;
  font-size: 17px;
  font-weight: 900;
  line-height: 1.3;
  padding: 0;
  text-align: left;
}

.crm-property-address-link:hover,
.crm-property-address-link:focus-visible {
  color: #c60016;
  text-decoration: underline;
}

.crm-property-result-body footer {
  border-top: 1px solid #e8ebef;
  color: #697280;
  display: grid;
  font-size: 10px;
  gap: 3px;
  line-height: 1.35;
  margin-top: 7px;
  padding-top: 9px;
}

.crm-property-map-layout {
  grid-template-columns: minmax(0, 1.55fr) minmax(330px, 0.72fr);
}

.crm-property-interactive-map-shell {
  background: #e7ebef;
  border: 1px solid #d7dce4;
  border-radius: 8px;
  min-height: 600px;
  overflow: hidden;
  position: relative;
}

.crm-property-interactive-map {
  height: 600px;
  width: 100%;
  z-index: 1;
}

.crm-property-interactive-map .leaflet-control-zoom a {
  color: #171b23;
}

.crm-property-map-error {
  align-items: center;
  color: #4e5866;
  display: flex;
  flex-direction: column;
  gap: 10px;
  inset: 0;
  justify-content: center;
  padding: 28px;
  position: absolute;
  text-align: center;
}

.crm-property-map-error svg {
  color: #ed0016;
  height: 32px;
  width: 32px;
}

.crm-map-price-marker-wrap {
  background: transparent;
  border: 0;
}

.crm-map-price-marker {
  background: #b70016;
  border: 2px solid #fff;
  border-radius: 16px;
  box-shadow: 0 3px 10px rgba(17, 19, 24, 0.34);
  color: #fff;
  display: block;
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  min-width: 48px;
  padding: 7px 8px;
  text-align: center;
  transform: translate(-50%, -50%);
  white-space: nowrap;
}

.crm-map-price-marker-wrap.selected .crm-map-price-marker {
  background: #111318;
  box-shadow: 0 0 0 4px rgba(237, 0, 22, 0.24), 0 4px 12px rgba(17, 19, 24, 0.35);
}

.crm-map-popup {
  display: grid;
  gap: 7px;
  min-width: 210px;
}

.crm-map-popup strong {
  font-size: 18px;
}

.crm-map-popup span,
.crm-map-popup small {
  color: #5e6774;
}

.crm-map-popup-actions {
  display: grid;
  gap: 6px;
  grid-template-columns: 1fr 1fr;
}

.crm-map-popup-actions button {
  background: #fff;
  border: 1px solid #cfd5de;
  border-radius: 5px;
  cursor: pointer;
  font: inherit;
  font-size: 11px;
  font-weight: 900;
  min-height: 34px;
}

.crm-map-popup-actions button:last-child {
  background: #ed0016;
  border-color: #ed0016;
  color: #fff;
}

.crm-property-map-rail {
  gap: 10px;
  max-height: 600px;
}

.crm-property-map-row {
  border-radius: 7px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 0;
}

.crm-property-map-row-main {
  background: transparent;
  border: 0;
  cursor: pointer;
  display: grid;
  font: inherit;
  gap: 4px;
  min-width: 0;
  padding: 14px;
  text-align: left;
}

.crm-property-map-row-main strong {
  font-size: 18px;
}

.crm-property-map-row-main small {
  color: #697280;
  font-size: 11px;
}

.crm-property-map-row-select {
  align-items: center;
  align-self: stretch;
  background: #f4f6f8;
  border: 0;
  border-left: 1px solid #dfe3e9;
  color: #303844;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  font: inherit;
  font-size: 10px;
  font-weight: 900;
  gap: 4px;
  justify-content: center;
  min-width: 70px;
  padding: 10px;
}

.crm-property-map-row-select.selected {
  background: #ed0016;
  color: #fff;
}

.crm-property-pagination {
  align-items: center;
  background: #fff;
  border: 1px solid #dfe3e9;
  border-radius: 8px;
  display: flex;
  gap: 14px;
  justify-content: center;
  padding: 13px;
}

.crm-property-pagination span {
  color: #5d6674;
  font-size: 13px;
}

.crm-property-delivery-options {
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
}

.crm-property-one-time-panel,
.crm-property-automation-band {
  background: #fff;
  border: 1px solid #dfe3e9;
  border-radius: 8px;
  padding: 20px;
}

.crm-property-one-time-panel {
  border-top: 3px solid #ed0016;
  display: grid;
  gap: 15px;
}

.crm-property-one-time-panel h3,
.crm-property-one-time-panel p,
.crm-property-automation-band h3,
.crm-property-automation-band p {
  margin: 0;
}

.crm-property-one-time-panel h3,
.crm-property-automation-band h3 {
  margin-top: 4px;
}

.crm-property-one-time-panel > div:first-child > p:last-child,
.crm-property-automation-band > div:first-child > p:last-child {
  color: #616b78;
  line-height: 1.5;
  margin-top: 7px;
}

.crm-property-channel-readiness {
  display: grid;
  gap: 8px;
}

.crm-property-channel-readiness span {
  align-items: center;
  background: #effaf5;
  border: 1px solid #b7e2cf;
  border-radius: 6px;
  color: #126141;
  display: flex;
  font-size: 12px;
  font-weight: 800;
  gap: 7px;
  min-height: 38px;
  padding: 8px 10px;
}

.crm-property-channel-readiness span.missing {
  background: #fff4f5;
  border-color: #f2bec5;
  color: #9c0a1c;
}

.crm-property-permission {
  align-items: flex-start;
  background: #f6f7f9;
  border: 1px solid #dde2e9;
  border-radius: 7px;
  cursor: pointer;
  display: grid;
  gap: 10px;
  grid-template-columns: 24px minmax(0, 1fr);
  padding: 12px;
}

.crm-property-permission input {
  accent-color: #ed0016;
  height: 19px;
  margin: 2px 0 0;
  width: 19px;
}

.crm-property-permission span {
  display: grid;
  gap: 3px;
}

.crm-property-permission small {
  color: #687180;
  line-height: 1.4;
}

.crm-property-one-time-actions,
.crm-property-automation-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.crm-delivery-receipt {
  background: #f7f8fa;
  border: 1px solid #dce1e8;
  border-radius: 7px;
  display: grid;
  gap: 7px;
  padding: 12px;
}

.crm-delivery-receipt span {
  align-items: center;
  display: flex;
  font-size: 12px;
  font-weight: 800;
  gap: 7px;
}

.crm-delivery-receipt .sent {
  color: #087648;
}

.crm-delivery-receipt .failed {
  color: #ae0c21;
}

.crm-property-automation-controls {
  align-items: end;
  grid-template-columns: minmax(180px, 1fr) auto auto;
}

.crm-property-channel-toggle {
  align-items: center;
  background: #fff;
  border: 1px solid #cfd5de;
  border-radius: 6px;
  color: #343c48;
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-size: 13px;
  font-weight: 900;
  gap: 7px;
  justify-content: center;
  min-height: 46px;
  padding: 10px 14px;
}

.crm-property-channel-toggle.active {
  background: #171b23;
  border-color: #171b23;
  color: #fff;
}

.crm-property-workspace-topbar {
  align-items: center;
  background: #fff;
  border: 1px solid #dce1e8;
  border-radius: 8px;
  display: grid;
  gap: 16px;
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding: 14px;
  position: sticky;
  top: 8px;
  z-index: 15;
}

.crm-property-workspace-topbar > div {
  display: grid;
  gap: 3px;
}

.crm-property-detail-hero {
  background: #fff;
  border: 1px solid #dce1e8;
  border-radius: 8px;
  display: grid;
  gap: 24px;
  grid-template-columns: minmax(0, 1.45fr) minmax(320px, 0.72fr);
  overflow: hidden;
}

.crm-property-detail-gallery {
  min-width: 0;
}

.crm-property-detail-main-photo {
  background: #e7eaee;
  min-height: 480px;
  overflow: hidden;
  position: relative;
}

.crm-property-detail-main-photo > img {
  display: block;
  height: 100%;
  min-height: 480px;
  object-fit: cover;
  width: 100%;
}

.crm-property-detail-main-photo .crm-property-status {
  left: 16px;
  right: auto;
}

.crm-property-detail-thumbnails {
  display: grid;
  gap: 4px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  padding-top: 4px;
}

.crm-property-detail-thumbnails img {
  aspect-ratio: 4 / 3;
  display: block;
  object-fit: cover;
  width: 100%;
}

.crm-property-detail-summary {
  align-content: center;
  display: grid;
  gap: 15px;
  padding: 28px 28px 28px 4px;
}

.crm-property-detail-price {
  font-size: clamp(32px, 4vw, 48px);
  line-height: 1;
}

.crm-property-detail-summary h2 {
  font-size: 23px;
  line-height: 1.25;
  margin: 0;
}

.crm-property-detail-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 18px;
}

.crm-property-detail-facts span {
  color: #4f5967;
  font-size: 13px;
}

.crm-property-detail-facts b {
  color: #171b23;
  font-size: 17px;
}

.crm-property-detail-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.crm-property-compliance-note {
  border-top: 1px solid #e2e6ec;
  color: #5d6674;
  display: grid;
  font-size: 11px;
  gap: 4px;
  line-height: 1.45;
  padding-top: 12px;
}

.crm-property-compliance-note strong {
  color: #2e3540;
  font-size: 12px;
}

.crm-property-detail-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.75fr);
}

.crm-property-detail-grid > .panel {
  margin: 0;
  padding: 20px;
}

.crm-property-description h3,
.crm-property-description p {
  margin: 0;
}

.crm-property-description > p:last-of-type {
  color: #4f5966;
  line-height: 1.7;
  margin-top: 9px;
  white-space: pre-line;
}

.crm-property-feature-list {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: 18px;
}

.crm-property-feature-list span {
  align-items: flex-start;
  background: #f6f7f9;
  display: flex;
  font-size: 12px;
  font-weight: 750;
  gap: 7px;
  padding: 9px;
}

.crm-property-detail-sharebar {
  align-items: center;
  background: #161a22;
  border-radius: 8px;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
  padding: 16px;
}

.crm-property-detail-sharebar > div {
  display: grid;
  gap: 3px;
  margin-right: auto;
}

.crm-property-detail-sharebar .eyebrow {
  color: #ff9ba7;
}

.crm-property-share-tray {
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 8px;
}

@media (max-width: 1120px) {
  .crm-property-search-title,
  .crm-property-essential-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .crm-property-search-run {
    width: 100%;
  }

  .crm-property-result-grid {
    grid-template-columns: repeat(2, minmax(260px, 1fr));
  }

  .crm-property-delivery-options,
  .crm-property-detail-hero,
  .crm-property-detail-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .crm-property-detail-summary {
    padding: 24px;
  }
}

@media (max-width: 780px) {
  .crm-property-search-workspace {
    padding-bottom: 190px;
  }

  .crm-property-search-head {
    grid-template-columns: minmax(0, 1fr);
  }

  .crm-property-search-head-status {
    align-items: flex-start;
    min-height: 0;
    min-width: 0;
    width: 100%;
  }

  .crm-property-step-strip {
    display: flex;
    overflow-x: auto;
  }

  .crm-property-step-strip span {
    flex: 0 0 auto;
    justify-content: flex-start;
    min-width: 165px;
  }

  .crm-property-search-title,
  .crm-property-essential-filters,
  .crm-property-advanced-filters,
  .crm-property-automation-controls {
    grid-template-columns: minmax(0, 1fr);
  }

  .crm-property-results-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .crm-property-view-toggle {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .crm-property-result-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .crm-property-map-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .crm-property-interactive-map-shell,
  .crm-property-interactive-map {
    height: 420px;
    min-height: 420px;
  }

  .crm-property-map-rail {
    display: flex;
    max-height: none;
    overflow-x: auto;
    padding: 0 0 6px;
    scroll-snap-type: x mandatory;
  }

  .crm-property-map-row {
    flex: 0 0 min(84vw, 340px);
    scroll-snap-align: start;
  }

  .crm-property-workspace-topbar {
    grid-template-columns: minmax(0, 1fr);
    position: static;
  }

  .crm-property-workspace-topbar > .btn {
    justify-content: center;
    width: 100%;
  }

  .crm-property-detail-main-photo,
  .crm-property-detail-main-photo > img {
    min-height: 320px;
  }

  .crm-property-detail-thumbnails {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .crm-property-feature-list {
    grid-template-columns: minmax(0, 1fr);
  }

  .crm-property-detail-sharebar {
    align-items: stretch;
    flex-direction: column;
  }

  .crm-property-detail-sharebar > div {
    margin: 0;
  }

  .crm-property-detail-sharebar .btn {
    justify-content: center;
    width: 100%;
  }

  .crm-property-one-time-actions,
  .crm-property-automation-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .crm-property-one-time-actions .btn,
  .crm-property-automation-actions .btn {
    justify-content: center;
    width: 100%;
  }

  .crm-property-share-tray {
    align-items: stretch;
    bottom: 8px;
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    left: 8px;
    right: 8px;
  }

  .crm-property-share-tray > div:first-child {
    grid-column: 1 / -1;
  }

  .crm-property-share-tray .btn {
    font-size: 11px;
    justify-content: center;
    min-width: 0;
    padding-inline: 7px;
  }
}

@media (max-width: 440px) {
  .crm-property-search-head,
  .crm-property-profile-band,
  .crm-property-one-time-panel,
  .crm-property-automation-band,
  .crm-saved-property-searches {
    padding: 14px;
  }

  .crm-property-result-actions {
    grid-template-columns: minmax(0, 1fr);
  }

  .crm-property-detail-main-photo,
  .crm-property-detail-main-photo > img {
    min-height: 250px;
  }

  .crm-property-detail-thumbnails {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Market Data Center */
.market-data-shell {
  color: #12151b;
  display: grid;
  gap: 18px;
  padding-bottom: 44px;
}

.market-data-hero {
  align-items: end;
  background: #171a20;
  border-left: 5px solid #ed0016;
  color: #fff;
  display: flex;
  justify-content: space-between;
  min-height: 210px;
  overflow: hidden;
  padding: 38px 42px;
  position: relative;
}

.market-data-hero::after {
  color: rgba(255, 255, 255, 0.035);
  content: "FLORIDA";
  font-size: 112px;
  font-weight: 900;
  line-height: 1;
  position: absolute;
  right: 20px;
  top: 14px;
}

.market-data-hero > * {
  position: relative;
  z-index: 1;
}

.market-data-hero h2 {
  color: #fff;
  font-size: clamp(34px, 4vw, 54px);
  line-height: 1;
  margin: 8px 0 12px;
}

.market-data-hero p:not(.eyebrow) {
  color: #d8dce4;
  line-height: 1.55;
  margin: 0;
  max-width: 700px;
}

.market-data-hero-source {
  align-items: center;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  display: flex;
  flex: 0 0 auto;
  gap: 12px;
  padding: 13px 16px;
}

.market-data-hero-source svg {
  color: #ed0016;
  height: 24px;
  width: 24px;
}

.market-data-hero-source span {
  color: #cfd4dd;
  font-size: 12px;
  line-height: 1.4;
}

.market-data-hero-source strong {
  color: #fff;
}

.market-data-search-panel,
.market-data-section,
.market-data-client-report {
  background: #fff;
  border: 1px solid #dfe3e9;
  padding: 24px;
}

.market-data-search-panel {
  border-top: 3px solid #ed0016;
  display: grid;
  gap: 15px;
}

.market-data-levels {
  display: inline-flex;
  gap: 4px;
}

.market-data-levels button,
.market-data-quick-markets button {
  background: #f1f3f6;
  border: 1px solid transparent;
  color: #4c5563;
  cursor: pointer;
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  padding: 9px 14px;
}

.market-data-levels button.active {
  background: #171a20;
  color: #fff;
}

.market-data-search-row {
  align-items: stretch;
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto;
}

.market-data-search-input {
  align-items: center;
  background: #f6f7f9;
  border: 1px solid #cfd5de;
  display: flex;
  min-height: 54px;
  padding: 0 16px;
  position: relative;
}

.market-data-search-input > svg {
  color: #ed0016;
  flex: 0 0 auto;
  height: 20px;
  width: 20px;
}

.market-data-search-input input {
  background: transparent;
  border: 0;
  color: #16191f;
  flex: 1;
  font: inherit;
  font-size: 16px;
  min-width: 0;
  outline: 0;
  padding: 0 12px;
}

.market-data-searching {
  color: #667080;
  font-size: 12px;
  font-weight: 700;
}

.market-data-suggestions {
  background: #fff;
  border: 1px solid #cfd5de;
  box-shadow: 0 14px 30px rgba(16, 24, 40, 0.14);
  display: grid;
  left: -1px;
  max-height: 280px;
  overflow-y: auto;
  position: absolute;
  right: -1px;
  top: calc(100% + 6px);
  z-index: 30;
}

.market-data-suggestions button {
  align-items: center;
  background: #fff;
  border: 0;
  border-bottom: 1px solid #edf0f4;
  color: #15181d;
  cursor: pointer;
  display: flex;
  gap: 12px;
  padding: 13px 15px;
  text-align: left;
}

.market-data-suggestions button:hover,
.market-data-suggestions button:focus {
  background: #fff2f3;
}

.market-data-suggestions button > svg {
  color: #ed0016;
  height: 18px;
  width: 18px;
}

.market-data-suggestions span {
  display: grid;
  gap: 2px;
}

.market-data-suggestions small {
  color: #697384;
}

.market-data-quick-markets {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.market-data-quick-markets > span {
  color: #6c7584;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 1px;
  margin-right: 3px;
  text-transform: uppercase;
}

.market-data-quick-markets button {
  background: #fff;
  border-color: #dfe3e9;
  padding: 7px 10px;
}

.market-data-quick-markets button:hover {
  border-color: #ed0016;
  color: #b90011;
}

.market-data-error,
.market-data-loading {
  align-items: center;
  display: flex;
  gap: 12px;
  padding: 14px 16px;
}

.market-data-error {
  background: #fff0f1;
  border-left: 3px solid #ed0016;
  color: #8b0010;
}

.market-data-loading {
  background: #171a20;
  color: #fff;
  min-height: 110px;
}

.market-data-loading > svg {
  animation: nex-spin 1s linear infinite;
  color: #ed0016;
  height: 28px;
  width: 28px;
}

.market-data-loading div {
  display: grid;
  gap: 4px;
}

.market-data-loading span {
  color: #cfd4dc;
}

.market-data-empty {
  align-items: center;
  border: 1px dashed #cbd2dc;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 300px;
  padding: 36px;
  text-align: center;
}

.market-data-empty svg {
  color: #ed0016;
  height: 36px;
  width: 36px;
}

.market-data-empty h3 {
  margin: 14px 0 6px;
}

.market-data-empty p {
  color: #687181;
  line-height: 1.55;
  margin: 0;
  max-width: 600px;
}

.market-data-report {
  display: grid;
  gap: 18px;
}

.market-data-report-heading,
.market-data-section-heading {
  align-items: end;
  display: flex;
  gap: 18px;
  justify-content: space-between;
}

.market-data-report-heading {
  border-bottom: 1px solid #dfe3e9;
  padding: 4px 4px 18px;
}

.market-data-report-heading h3 {
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1.08;
  margin: 4px 0 6px;
}

.market-data-report-heading span,
.market-data-section-heading > span {
  color: #687181;
  font-size: 12px;
}

.market-data-report-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.market-data-section {
  display: grid;
  gap: 18px;
}

.market-data-section-heading h4 {
  font-size: 23px;
  margin: 4px 0 0;
}

.market-data-metrics {
  display: grid;
  gap: 1px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.market-data-metrics-primary {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.market-data-metrics article,
.market-data-client-grid article {
  background: #f4f5f7;
  border-left: 3px solid transparent;
  display: grid;
  gap: 7px;
  min-height: 112px;
  padding: 17px;
}

.market-data-metrics-primary article {
  border-left-color: #ed0016;
}

.market-data-metrics article > span,
.market-data-client-grid article > span {
  color: #667080;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.market-data-metrics article strong,
.market-data-client-grid article strong {
  font-size: 23px;
  line-height: 1.1;
}

.market-data-metrics article small {
  color: #777f8d;
  line-height: 1.35;
}

.market-data-type-mix {
  display: grid;
  gap: 10px;
}

.market-data-type-mix > div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.market-data-type-mix span {
  background: #171a20;
  color: #fff;
  display: inline-flex;
  font-size: 12px;
  gap: 14px;
  padding: 8px 10px;
}

.market-data-type-mix b {
  color: #ff5b69;
}

.market-data-agent-readout {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.market-data-agent-readout article {
  background:
    linear-gradient(180deg, #ffffff, #f8fafc);
  border: 1px solid #dfe4ea;
  border-left: 3px solid #171a20;
  display: grid;
  gap: 7px;
  min-height: 126px;
  padding: 15px;
}

.market-data-agent-readout span,
.market-data-price-bands > strong {
  color: #667080;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.market-data-agent-readout strong {
  color: #111318;
  font-size: 21px;
  font-weight: 950;
  line-height: 1.12;
}

.market-data-agent-readout small {
  color: #667080;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.4;
}

.market-data-price-bands {
  display: grid;
  gap: 12px;
}

.market-data-distribution-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.market-data-price-bands > div {
  display: grid;
  gap: 8px;
}

.market-data-price-bands span {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: 120px minmax(0, 1fr) 88px;
}

.market-data-price-bands em,
.market-data-price-bands small {
  color: #1f2937;
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
}

.market-data-price-bands i {
  background: #e5e7eb;
  display: block;
  height: 11px;
  overflow: hidden;
}

.market-data-price-bands b {
  background: linear-gradient(90deg, #171a20, #ed0016);
  display: block;
  height: 100%;
}

.market-data-tenure {
  align-items: center;
  display: grid;
  gap: 20px;
  grid-template-columns: minmax(190px, 0.35fr) minmax(0, 1fr);
}

.market-data-tenure-copy {
  display: grid;
  gap: 5px;
}

.market-data-tenure-copy span {
  color: #606a79;
  font-size: 13px;
}

.market-data-tenure-bar {
  background: #e9ecf1;
  display: flex;
  height: 16px;
  overflow: hidden;
}

.market-data-tenure-bar span {
  background: #171a20;
}

.market-data-tenure-bar i {
  background: #ed0016;
}

.market-data-client-report {
  border-top: 6px solid #ed0016;
  display: grid;
  gap: 22px;
}

.market-data-client-report > header {
  align-items: center;
  border-bottom: 1px solid #dfe3e9;
  display: flex;
  justify-content: space-between;
  padding-bottom: 15px;
}

.market-data-client-report > header div {
  align-items: baseline;
  display: flex;
  gap: 6px;
}

.market-data-client-report > header div span {
  color: #ed0016;
  font-size: 25px;
  font-weight: 900;
}

.market-data-client-report > header p,
.market-data-client-report > footer p {
  color: #697383;
  margin: 0;
}

.market-data-client-brand {
  align-items: center;
  display: flex;
  gap: 13px;
}

.market-data-client-brand .brand-logo {
  max-height: 42px;
  width: 118px;
}

.market-data-client-brand > span {
  border-left: 1px solid #d9dde5;
  color: #171a20;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.1em;
  padding-left: 12px;
  text-transform: uppercase;
}

.market-data-client-cover {
  background:
    linear-gradient(135deg, #111318 0%, #1f232b 62%, #ed0016 100%);
  color: #fff;
  display: grid;
  gap: 28px;
  grid-template-columns: minmax(0, 1fr) minmax(270px, 0.34fr);
  padding: 30px;
}

.market-data-client-cover .eyebrow,
.market-data-client-cover span,
.market-data-client-cover small,
.market-data-client-cover em,
.market-data-client-cover b {
  color: rgba(255, 255, 255, 0.78);
}

.market-data-client-cover h2 {
  color: #fff;
  font-size: 36px;
  line-height: 1.02;
  margin: 7px 0 12px;
}

.market-data-client-cover aside {
  align-self: stretch;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.18);
  display: grid;
  gap: 7px;
  padding: 18px;
}

.market-data-client-cover aside strong {
  color: #fff;
  font-size: 22px;
  line-height: 1.12;
}

.market-data-client-cover aside em,
.market-data-client-cover aside b {
  font-style: normal;
  line-height: 1.35;
}

.market-data-client-title h2 {
  font-size: 34px;
  margin: 5px 0 8px;
}

.market-data-client-grid {
  display: grid;
  gap: 2px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.market-data-client-insights {
  display: grid;
  gap: 20px;
}

.market-data-client-insights h3 {
  font-size: 24px;
  margin: 3px 0 12px;
}

.market-data-client-insights ul {
  display: grid;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.market-data-client-insights li {
  border-left: 3px solid #ed0016;
  display: grid;
  gap: 3px;
  padding: 3px 0 3px 12px;
}

.market-data-client-insights li span {
  color: #687282;
  font-size: 12px;
  line-height: 1.35;
}

.market-data-client-distributions {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.market-data-client-sources,
.market-data-client-report > footer {
  display: grid;
  gap: 6px;
}

.market-data-client-sources span,
.market-data-client-report > footer span,
.market-data-client-report > footer p {
  font-size: 11px;
  line-height: 1.5;
}

@media (max-width: 1000px) {
  .market-data-metrics,
  .market-data-agent-readout,
  .market-data-distribution-grid,
  .market-data-client-cover,
  .market-data-client-distributions,
  .market-data-client-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .market-data-hero {
    align-items: flex-start;
    flex-direction: column;
    gap: 24px;
    min-height: 0;
    padding: 28px 24px;
  }

  .market-data-hero-source {
    width: 100%;
  }

  .market-data-search-panel,
  .market-data-section,
  .market-data-client-report {
    padding: 18px;
  }

  .market-data-search-row,
  .market-data-tenure,
  .market-data-client-cover,
  .market-data-client-distributions {
    grid-template-columns: minmax(0, 1fr);
  }

  .market-data-price-bands span {
    align-items: start;
    grid-template-columns: minmax(0, 1fr);
  }

  .market-data-search-row > .btn {
    width: 100%;
  }

  .market-data-report-heading,
  .market-data-section-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .market-data-report-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
  }

  .market-data-report-actions .btn {
    justify-content: center;
  }
}

@media (max-width: 480px) {
  .market-data-levels,
  .market-data-metrics,
  .market-data-metrics-primary,
  .market-data-agent-readout,
  .market-data-distribution-grid,
  .market-data-client-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .market-data-levels button {
    width: 100%;
  }

  .market-data-report-actions {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media print {
  @page {
    margin: 0.35in;
    size: letter;
  }

  html:has(body.market-data-printing),
  body.market-data-printing {
    background: #fff !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    print-color-adjust: exact;
    -webkit-print-color-adjust: exact;
  }

  body.market-data-printing .app-shell,
  body.market-data-printing .main-area,
  body.market-data-printing .market-data-shell,
  body.market-data-printing .market-data-report {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    padding: 0 !important;
  }

  body.market-data-printing .sidebar,
  body.market-data-printing .topbar,
  body.market-data-printing .market-data-hero,
  body.market-data-printing .market-data-search-panel,
  body.market-data-printing .market-data-loading,
  body.market-data-printing .market-data-empty,
  body.market-data-printing .market-data-report-heading,
  body.market-data-printing .market-data-report > .market-data-section,
  body.market-data-printing .app-update-toast,
  body.market-data-printing .toast {
    display: none !important;
  }

  body.market-data-printing .market-data-client-report,
  body.market-data-printing .market-data-client-report * {
    visibility: visible !important;
  }

  body.market-data-printing .market-data-client-report {
    border: 0;
    border-top: 6px solid #ed0016;
    box-shadow: none;
    margin: 0;
    min-height: auto;
    overflow: visible;
    padding: 0;
    position: static;
    width: 100%;
  }

  body.market-data-printing .market-data-client-report,
  body.market-data-printing .market-data-client-report > header,
  body.market-data-printing .market-data-client-cover,
  body.market-data-printing .market-data-client-grid,
  body.market-data-printing .market-data-client-insights,
  body.market-data-printing .market-data-client-distributions,
  body.market-data-printing .market-data-client-sources,
  body.market-data-printing .market-data-client-report > footer {
    break-inside: avoid;
    page-break-inside: avoid;
  }

  body.market-data-printing .market-data-client-cover {
    grid-template-columns: minmax(0, 1fr) 250px;
    padding: 24px;
  }

  body.market-data-printing .market-data-client-cover h2 {
    font-size: 30px;
  }

  body.market-data-printing .market-data-client-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  body.market-data-printing .market-data-client-report article {
    min-height: 88px;
    padding: 12px;
  }

  body.market-data-printing .market-data-client-report article strong {
    font-size: 18px;
  }

  body.market-data-printing .market-data-client-insights h3 {
    font-size: 20px;
  }

  body.market-data-printing .market-data-client-distributions {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.market-data-printing .market-data-price-bands span {
    grid-template-columns: 102px minmax(0, 1fr) 72px;
  }
}

/* Connected MLS workspace */
.mls-workspace {
  background: #f4f5f7;
  color: #111318;
  min-height: 100%;
  padding: 24px;
  padding-bottom: 118px;
}

.mls-workspace-hero {
  align-items: center;
  background: #171a20;
  border-left: 5px solid #ed0016;
  color: #fff;
  display: flex;
  gap: 28px;
  justify-content: space-between;
  padding: 30px 34px;
}

.mls-workspace-hero h1 {
  font-size: clamp(34px, 4vw, 58px);
  line-height: 1;
  margin: 5px 0 10px;
}

.mls-workspace-hero p { margin: 0; }
.mls-workspace-hero .eyebrow { color: #ff7b87; }

.mls-workspace-source-summary {
  align-items: center;
  background: #fff;
  color: #16191f;
  display: flex;
  gap: 13px;
  min-width: 280px;
  padding: 16px;
}

.mls-workspace-source-summary svg { color: #ed0016; height: 28px; width: 28px; }
.mls-workspace-source-summary span { display: grid; gap: 3px; }
.mls-workspace-source-summary small { color: #626a78; }

.mls-workspace-search {
  background: #fff;
  border: 1px solid #d9dde4;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(0, 1fr) auto;
  margin-top: 16px;
  padding: 16px;
}

.mls-workspace-primary-search {
  align-items: center;
  background: #f3f5f7;
  border: 1px solid #d7dbe2;
  display: flex;
  gap: 10px;
  min-width: 0;
  padding: 0 15px;
}

.mls-workspace-primary-search .public-search-autocomplete {
  flex: 1;
  min-width: 0;
}

.mls-workspace-primary-search .public-search-autocomplete-menu {
  left: -41px;
  right: -8px;
}

.mls-workspace-primary-search input {
  background: transparent;
  border: 0;
  font-size: 17px;
  min-height: 50px;
  outline: 0;
  width: 100%;
}

.mls-workspace-filter-row {
  display: grid;
  gap: 9px;
  grid-column: 1 / -1;
  grid-template-columns: repeat(6, minmax(110px, 1fr));
}

.mls-workspace-filter-row input,
.mls-workspace-filter-row select,
.mls-workspace-share-modal input,
.mls-workspace-share-modal select,
.mls-workspace-share-modal textarea {
  background: #fff;
  border: 1px solid #cfd4dc;
  border-radius: 0;
  color: #111318;
  font: inherit;
  min-height: 44px;
  padding: 10px 12px;
  width: 100%;
}

.mls-workspace-quick-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  grid-column: 1 / -1;
}

.mls-workspace-quick-row button,
.mls-workspace-toolbar-actions > button,
.mls-workspace-view-switch button {
  align-items: center;
  background: #fff;
  border: 1px solid #d5d9e0;
  color: #20242c;
  display: inline-flex;
  font-weight: 800;
  gap: 7px;
  justify-content: center;
  min-height: 38px;
  padding: 8px 13px;
}

.mls-workspace-quick-row button:hover,
.mls-workspace-toolbar-actions > button:hover,
.mls-workspace-view-switch button.active {
  border-color: #ed0016;
  color: #c70012;
}

.mls-workspace-toolbar {
  align-items: center;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  padding: 18px 2px 12px;
}

.mls-workspace-toolbar > div:first-child { display: grid; gap: 3px; }
.mls-workspace-toolbar > div:first-child strong { font-size: 22px; }
.mls-workspace-toolbar > div:first-child span { color: #666e7a; }
.mls-workspace-toolbar-actions { align-items: center; display: flex; gap: 8px; }
.mls-workspace-view-switch { display: flex; }
.mls-workspace-view-switch button { padding: 8px 11px; }

.mls-workspace-saved-strip {
  align-items: center;
  background: #fff;
  border-left: 4px solid #ed0016;
  display: grid;
  gap: 18px;
  grid-template-columns: auto minmax(0, 1fr);
  margin-bottom: 14px;
  padding: 14px 16px;
}

.mls-workspace-saved-strip p { margin: 0; }
.mls-workspace-saved-list { display: flex; gap: 8px; overflow-x: auto; }
.mls-workspace-saved-list button { background: #f5f6f8; border: 1px solid #daddE3; display: grid; gap: 3px; min-width: 180px; padding: 10px; text-align: left; }
.mls-workspace-saved-list small { color: #68717e; }

.mls-workspace-results {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mls-workspace-results.list { grid-template-columns: 1fr; }

.mls-workspace-card {
  background: #fff;
  border: 1px solid #dadee5;
  display: grid;
  min-width: 0;
  overflow: hidden;
  position: relative;
}

.mls-workspace-card.selected { border-color: #ed0016; box-shadow: inset 0 0 0 2px #ed0016; }
.mls-workspace-card.compact { grid-template-columns: minmax(220px, 34%) minmax(0, 1fr); }

.mls-workspace-card-photo {
  aspect-ratio: 16 / 10;
  background: #22262d;
  border: 0;
  display: block;
  overflow: hidden;
  padding: 0;
  position: relative;
  width: 100%;
}

.mls-workspace-card-photo img { height: 100%; object-fit: cover; width: 100%; }
.mls-workspace-photo-fallback { align-items: center; color: #fff; display: flex; inset: 0; justify-content: center; position: absolute; }
.mls-workspace-card-photo img + .mls-workspace-photo-fallback { display: none; }
.mls-workspace-card-photo.image-unavailable .mls-workspace-photo-fallback { display: flex; }
.mls-workspace-status { background: #ed0016; color: #fff; font-size: 11px; font-weight: 900; left: 10px; padding: 6px 9px; position: absolute; text-transform: uppercase; top: 10px; }
.mls-workspace-card-body { display: grid; gap: 12px; padding: 15px; }
.mls-workspace-card-heading { align-items: start; display: flex; gap: 10px; justify-content: space-between; }
.mls-workspace-card-heading > div { display: grid; gap: 3px; min-width: 0; }
.mls-workspace-card-heading strong { font-size: 24px; }
.mls-workspace-card-heading span { font-weight: 800; overflow-wrap: anywhere; }
.mls-workspace-card-heading small { color: #69717d; }
.mls-workspace-card-heading .icon-button.active { background: #ed0016; color: #fff; }
.mls-workspace-facts { display: flex; flex-wrap: wrap; gap: 12px; }
.mls-workspace-facts span { color: #59616d; }
.mls-workspace-facts b { color: #16191f; }
.mls-workspace-attribution { border-top: 1px solid #e3e6eb; color: #59616d; display: flex; flex-wrap: wrap; font-size: 11px; gap: 5px 10px; padding-top: 10px; }
.mls-workspace-attribution small { flex-basis: 100%; }
.mls-workspace-card-actions { display: grid; gap: 8px; grid-template-columns: 1fr 1fr; }

.mls-workspace-map-layout {
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
  height: min(680px, calc(100vh - 230px));
  min-height: 520px;
}

.crm-property-interactive-map-shell,
.crm-property-interactive-map { height: 100%; min-height: 420px; width: 100%; }
.crm-property-interactive-map-shell { background: #e9edf1; position: relative; }
.crm-property-map-error { background: #fff1f2; border: 1px solid #ef9ba4; bottom: 12px; color: #8e0010; left: 12px; padding: 10px; position: absolute; right: 12px; z-index: 500; }
.crm-property-map-empty { align-items: center; background: #e9edf1; color: #4e5662; display: flex; flex-direction: column; gap: 8px; height: 100%; justify-content: center; min-height: 360px; padding: 24px; text-align: center; }
.crm-map-price-marker { background: #b90013; border: 2px solid #fff; border-radius: 16px; box-shadow: 0 3px 9px #0005; color: #fff; display: inline-block; font-size: 11px; font-weight: 900; padding: 6px 8px; white-space: nowrap; }
.crm-map-price-marker.selected { background: #101319; }
.crm-map-popup { display: grid; gap: 5px; min-width: 190px; }
.crm-map-popup strong { font-size: 17px; }
.crm-map-popup span, .crm-map-popup small { overflow-wrap: anywhere; }
.crm-map-popup-actions { display: grid; gap: 5px; grid-template-columns: 1fr 1fr; margin-top: 5px; }
.crm-map-popup-actions button { background: #171a20; border: 0; color: #fff; font-weight: 800; padding: 7px; }
.crm-map-popup-actions button:last-child { background: #ed0016; }
.mls-workspace-map-results { display: grid; gap: 10px; overflow-y: auto; padding-right: 4px; }
.mls-workspace-map-results .mls-workspace-card.compact { grid-template-columns: 150px minmax(0, 1fr); }
.mls-workspace-map-results .mls-workspace-card-heading strong { font-size: 18px; }

.mls-workspace-selection-tray {
  align-items: center;
  background: #171a20;
  bottom: 14px;
  box-shadow: 0 12px 40px #0006;
  color: #fff;
  display: grid;
  gap: 18px;
  grid-template-columns: auto 1fr auto;
  left: max(16px, calc(var(--sidebar-width, 0px) + 16px));
  padding: 12px 15px;
  position: fixed;
  right: 16px;
  z-index: 950;
}

.mls-workspace-selection-tray > div { align-items: center; display: flex; gap: 10px; }
.mls-workspace-selection-tray small { color: #bac0ca; display: block; }
.mls-workspace-selection-count { align-items: center; background: #ed0016; border-radius: 50%; display: inline-flex; font-size: 16px; font-weight: 900; height: 40px; justify-content: center; width: 40px; }
.mls-workspace-selection-thumbs span { background: #333842; display: block; height: 42px; overflow: hidden; width: 58px; }
.mls-workspace-selection-thumbs img { height: 100%; object-fit: cover; width: 100%; }
.mls-workspace-selection-actions { justify-content: end; }
.mls-workspace-selection-actions button { align-items: center; background: #fff; border: 0; color: #171a20; display: flex; font-weight: 900; gap: 6px; min-height: 40px; padding: 8px 11px; }
.mls-workspace-selection-actions button.primary { background: #ed0016; color: #fff; }

.mls-workspace-modal-backdrop {
  align-items: center;
  background: #090b0ee0;
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 22px;
  position: fixed;
  z-index: 2500;
}

.mls-workspace-share-modal,
.mls-workspace-detail-modal {
  background: #fff;
  box-shadow: 0 24px 80px #0008;
  max-height: 92dvh;
  overflow-y: auto;
  position: relative;
  width: min(760px, 100%);
}

.mls-workspace-share-modal { display: grid; gap: 15px; padding: 24px; }
.mls-workspace-share-modal > header { align-items: start; display: flex; gap: 12px; justify-content: space-between; }
.mls-workspace-share-modal h2 { margin: 4px 0; }
.mls-workspace-share-modal label { display: grid; font-weight: 800; gap: 7px; }
.mls-workspace-share-modal fieldset { border: 1px solid #d8dce3; display: flex; gap: 8px; margin: 0; padding: 12px; }
.mls-workspace-share-modal fieldset label { align-items: center; background: #f2f4f6; display: flex; flex: 1; justify-content: center; min-height: 46px; }
.mls-workspace-share-modal fieldset label.selected { background: #ffecef; border: 1px solid #ed0016; color: #a40012; }
.mls-workspace-share-modal fieldset input { height: 18px; min-height: 0; width: 18px; }
.mls-workspace-consent-check,
.mls-workspace-send-current { align-items: start; background: #f6f7f9; border: 1px solid #cfd4dc; display: grid !important; gap: 12px !important; grid-template-columns: auto 1fr; padding: 14px; }
.mls-workspace-consent-check { background: #fff4f5; border-color: #e77e89; }
.mls-workspace-consent-check input,
.mls-workspace-send-current input { accent-color: #ed0016; height: 22px; margin-top: 2px; min-height: 0; width: 22px; }
.mls-workspace-consent-check span,
.mls-workspace-send-current span { display: grid; gap: 4px; }
.mls-workspace-consent-check small,
.mls-workspace-send-current small { color: #626a76; font-weight: 500; line-height: 1.4; }
.mls-workspace-consent-help { align-items: center; background: #fff8dd; border-left: 4px solid #c39300; color: #574300; display: flex; gap: 8px; margin: 0; padding: 10px 12px; }
.mls-workspace-share-modal > footer { background: #fff; bottom: -24px; display: flex; gap: 8px; justify-content: flex-end; margin: 0 -24px -24px; padding: 14px 24px; position: sticky; z-index: 3; }

.mls-workspace-detail-modal { border-top: 4px solid #ed0016; display: block; width: min(1180px, 100%); }
.mls-workspace-detail-modal > .modal-close { background: #171a20eb; border-color: #ffffff38; color: #fff; position: absolute; right: 14px; top: 14px; z-index: 5; }
.mls-workspace-detail-gallery { background: #171a20; display: grid; gap: 3px; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); height: clamp(340px, 48vh, 540px); min-height: 0; overflow: hidden; }
.mls-workspace-detail-gallery img { height: 100%; min-height: 0; object-fit: cover; width: 100%; }
.mls-workspace-detail-gallery img:first-child { grid-column: span 2; grid-row: span 2; }
.mls-workspace-detail-gallery.empty { align-items: center; color: #fff; display: flex; justify-content: center; }
.mls-workspace-detail-gallery.empty > div { align-items: center; display: flex; flex-direction: column; gap: 7px; text-align: center; }
.mls-workspace-detail-gallery.empty svg { color: #ed0016; height: 34px; width: 34px; }
.mls-workspace-detail-gallery.empty span { color: #c7ccd4; }
.mls-workspace-detail-shell { padding: 28px 30px 34px; }
.mls-workspace-detail-header { align-items: end; display: flex; gap: 24px; justify-content: space-between; }
.mls-workspace-detail-header h2 { font-size: clamp(34px, 4vw, 48px); line-height: 1; margin: 7px 0 9px; }
.mls-workspace-detail-header h3 { font-size: 22px; line-height: 1.2; margin: 0 0 5px; }
.mls-workspace-detail-header p:not(.eyebrow) { color: #626a76; margin: 0; }
.mls-workspace-detail-header .eyebrow span { color: #ed0016; margin: 0 4px; }
.mls-workspace-detail-facts { border-bottom: 1px solid #dfe2e7; border-top: 1px solid #dfe2e7; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 24px; }
.mls-workspace-detail-facts > div { display: grid; gap: 3px; min-width: 0; padding: 17px 12px; }
.mls-workspace-detail-facts > div:not(:nth-child(4n + 1)) { border-left: 1px solid #e2e5e9; }
.mls-workspace-detail-facts small { color: #68707c; font-size: 10px; font-weight: 900; text-transform: uppercase; }
.mls-workspace-detail-facts strong { font-size: 16px; overflow-wrap: anywhere; }
.mls-workspace-detail-facts span { color: #68707c; font-size: 11px; }
.mls-workspace-detail-grid { display: grid; gap: 30px; grid-template-columns: minmax(0, 1.5fr) minmax(300px, .75fr); margin-top: 28px; }
.mls-workspace-detail-grid main,
.mls-workspace-detail-grid aside { align-content: start; display: grid; gap: 20px; min-width: 0; }
.mls-workspace-detail-section { border-bottom: 1px solid #e0e3e8; padding-bottom: 22px; }
.mls-workspace-detail-section h4 { font-size: 22px; margin: 4px 0 12px; }
.mls-workspace-description { color: #454d59; line-height: 1.65; margin: 0; max-height: none; overflow: visible; white-space: pre-line; }
.mls-workspace-detail-list { display: grid; grid-template-columns: 1fr 1fr; margin: 0; }
.mls-workspace-detail-list > div { align-items: start; border-bottom: 1px solid #e4e7eb; display: flex; gap: 12px; justify-content: space-between; padding: 11px 4px; }
.mls-workspace-detail-list > div:nth-child(odd) { margin-right: 18px; }
.mls-workspace-detail-list dt { color: #626a76; }
.mls-workspace-detail-list dd { font-weight: 900; margin: 0; text-align: right; }
.mls-workspace-feature-groups { display: grid; gap: 10px; grid-template-columns: 1fr 1fr; }
.mls-workspace-feature-groups > div { background: #f2f4f6; border-left: 3px solid #ed0016; min-width: 0; padding: 13px 14px; }
.mls-workspace-feature-groups strong { display: block; margin-bottom: 5px; }
.mls-workspace-feature-groups p { color: #5d6571; line-height: 1.45; margin: 0; overflow-wrap: anywhere; }
.mls-workspace-agent-panel { background: #171b23; border-top: 4px solid #ed0016; color: #fff; display: grid; gap: 16px; padding: 20px; }
.mls-workspace-agent-panel-heading { align-items: center; display: flex; gap: 10px; }
.mls-workspace-agent-panel-heading > svg { color: #ed0016; }
.mls-workspace-agent-panel-heading span,
.mls-workspace-agent-identity { display: grid; gap: 4px; }
.mls-workspace-agent-panel-heading small { color: #aeb5c0; font-size: 9px; font-weight: 900; }
.mls-workspace-agent-panel-heading strong { font-size: 18px; }
.mls-workspace-agent-identity > strong { font-size: 19px; }
.mls-workspace-agent-identity > span,
.mls-workspace-agent-panel > p { color: #cbd0d8; margin: 0; overflow-wrap: anywhere; }
.mls-workspace-agent-actions { display: grid; gap: 8px; }
.mls-workspace-agent-actions .btn { background: #fff; color: #171a20; justify-content: flex-start; min-width: 0; overflow-wrap: anywhere; }
.mls-workspace-agent-unavailable { line-height: 1.5; }
.mls-workspace-internal-note { border-top: 1px solid #ffffff24; color: #aeb5c0; display: block; line-height: 1.45; padding-top: 13px; }
.mls-workspace-detail-attribution { background: #f1f3f5; border: 1px solid #d8dce2; display: grid; font-size: 12px; gap: 7px; padding: 18px; }
.mls-workspace-detail-attribution b,
.mls-workspace-detail-attribution span { overflow-wrap: anywhere; }
.mls-workspace-detail-attribution small { color: #616975; line-height: 1.45; }
.mls-workspace-empty,
.mls-workspace-loading { align-items: center; background: #fff; border: 1px dashed #cbd0d8; display: flex; flex-direction: column; gap: 8px; justify-content: center; min-height: 320px; padding: 30px; text-align: center; }
.mls-workspace-error { align-items: center; background: #fff1f2; border: 1px solid #eb8993; color: #85000f; display: flex; gap: 10px; margin-top: 12px; padding: 12px; }
.mls-workspace-error button { margin-left: auto; }
.mls-workspace-result-skeleton { display: grid; gap: 14px; grid-template-columns: repeat(3, 1fr); }
.mls-workspace-result-skeleton span { animation: public-skeleton-pulse 1.4s ease-in-out infinite; aspect-ratio: 4/3; background: #e1e4e9; }
.mls-workspace-pagination { align-items: center; display: flex; gap: 16px; justify-content: center; padding: 22px; }
.mls-workspace-pagination button { align-items: center; background: #fff; border: 1px solid #ccd1d9; display: flex; font-weight: 800; gap: 6px; min-height: 40px; padding: 8px 13px; }
.mls-workspace-disclaimer { background: #eceff2; color: #4d5561; font-size: 11px; line-height: 1.45; margin-top: 16px; padding: 15px; }

/* Public client property collection */
.public-mls-collection { background: #f2f3f5; color: #121419; min-height: 70vh; padding: 34px clamp(18px, 4vw, 64px) 58px; }
.public-mls-collection-hero { align-items: center; background: #171a20; border-bottom: 5px solid #ed0016; color: #fff; display: grid; gap: 30px; grid-template-columns: minmax(0, 1fr) auto; padding: clamp(26px, 4vw, 54px); }
.public-mls-collection-hero h1 { font-size: clamp(36px, 5vw, 68px); line-height: 1; margin: 7px 0 14px; max-width: 860px; }
.public-mls-collection-hero > div > p:not(.eyebrow) { color: #d8dce2; font-size: 18px; line-height: 1.45; max-width: 760px; }
.public-mls-collection-summary { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-top: 20px; }
.public-mls-collection-summary span { align-items: center; display: flex; font-weight: 800; gap: 7px; }
.public-mls-collection-summary svg { color: #ed0016; }
.public-mls-agent-card { align-items: center; background: #fff; color: #15171c; display: flex; gap: 14px; max-width: 360px; padding: 17px; }
.public-mls-agent-card img,
.public-mls-agent-initials { border-radius: 50%; height: 66px; object-fit: cover; width: 66px; }
.public-mls-agent-initials { align-items: center; background: #ed0016; color: #fff; display: flex; font-size: 20px; font-weight: 900; justify-content: center; }
.public-mls-agent-card > div { display: grid; gap: 3px; }
.public-mls-agent-card small { color: #68707c; }
.public-mls-agent-card a { color: #a70012; font-size: 13px; font-weight: 800; overflow-wrap: anywhere; }
.public-mls-collection-toolbar { align-items: center; display: flex; gap: 18px; justify-content: space-between; padding: 22px 0 14px; }
.public-mls-collection-toolbar > div:first-child { display: grid; gap: 3px; }
.public-mls-collection-toolbar span { color: #606874; }
.public-mls-continue-search {
  align-items: center;
  align-self: start;
  background: #ed0016;
  border: 1px solid #ed0016;
  color: #fff;
  display: inline-flex;
  font-weight: 800;
  gap: 8px;
  margin-top: 10px;
  min-height: 44px;
  padding: 10px 15px;
}
.public-mls-continue-search:hover { background: #bb0012; border-color: #bb0012; }
.public-mls-view-toggle { display: flex; }
.public-mls-view-toggle button { align-items: center; background: #fff; border: 1px solid #cdd2da; display: flex; height: 42px; justify-content: center; width: 46px; }
.public-mls-view-toggle button.active { background: #ed0016; border-color: #ed0016; color: #fff; }
.public-mls-results { display: grid; gap: 15px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.public-mls-results.list { grid-template-columns: 1fr; }
.public-mls-results.list .public-mls-card { grid-template-columns: minmax(280px, 36%) minmax(0, 1fr); }
.public-mls-card { background: #fff; border: 1px solid #d6dae1; display: grid; min-width: 0; overflow: hidden; }
.public-mls-card-photo { aspect-ratio: 16/10; background: #252a32; border: 0; overflow: hidden; padding: 0; position: relative; width: 100%; }
.public-mls-card-photo img { height: 100%; object-fit: cover; width: 100%; }
.public-mls-card-photo > span { align-items: center; color: #fff; display: flex; gap: 7px; inset: 0; justify-content: center; position: absolute; }
.public-mls-card-photo > b { background: #ed0016; color: #fff; font-size: 11px; left: 10px; padding: 6px 9px; position: absolute; text-transform: uppercase; top: 10px; }
.public-mls-card-photo > em { align-items: center; background: #fff; color: #b40013; display: flex; font-size: 12px; font-style: normal; font-weight: 900; gap: 5px; padding: 6px 8px; position: absolute; right: 10px; top: 10px; }
.public-mls-card-content { display: grid; gap: 9px; padding: 17px; }
.public-mls-card-price { font-size: 25px; }
.public-mls-card-content h2 { font-size: 17px; line-height: 1.25; margin: 0; overflow-wrap: anywhere; }
.public-mls-card-content > p { color: #646c78; margin: 0; }
.public-mls-card-facts { display: flex; flex-wrap: wrap; gap: 12px; }
.public-mls-card-actions { display: grid; gap: 6px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.public-mls-card-actions button { align-items: center; background: #f3f4f6; border: 1px solid #d8dce2; display: flex; font-size: 12px; font-weight: 900; gap: 5px; justify-content: center; min-height: 38px; padding: 6px; }
.public-mls-card-actions button.active { background: #ed0016; color: #fff; }
.public-mls-card-actions button.muted { background: #30353d; }
.public-mls-card-attribution { border-top: 1px solid #e1e4e9; color: #666e7a; display: flex; flex-wrap: wrap; font-size: 10px; gap: 4px 8px; padding-top: 9px; }
.public-mls-card-attribution small { flex-basis: 100%; }
.public-mls-map-layout { display: grid; gap: 14px; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr); height: min(720px, 72vh); min-height: 520px; }
.public-mls-map-list { display: grid; gap: 7px; overflow-y: auto; }
.public-mls-map-list button { background: #fff; border: 1px solid #d9dde3; border-left: 4px solid #ed0016; display: grid; gap: 4px; padding: 13px; text-align: left; }
.public-mls-map-list strong { font-size: 19px; }
.public-mls-map-list span { font-weight: 800; overflow-wrap: anywhere; }
.public-mls-map-list small { color: #626a75; }
.public-mls-compliance { background: #e4e7eb; color: #4f5762; font-size: 11px; line-height: 1.5; margin-top: 22px; padding: 18px; }
.public-mls-compliance strong { color: #171a20; }
.public-collection-state { align-items: center; display: flex; flex-direction: column; gap: 10px; justify-content: center; min-height: 65vh; padding: 40px; text-align: center; }
.public-collection-state strong { font-size: 24px; }
.public-collection-state p { color: #626a75; }
.public-collection-loader { animation: spin .8s linear infinite; border: 4px solid #d8dce2; border-radius: 50%; border-top-color: #ed0016; height: 42px; width: 42px; }
.public-mls-detail-modal { background: #fff; max-height: 92dvh; overflow-y: auto; position: relative; width: min(1160px, 100%); }
.public-mls-detail-gallery { display: grid; gap: 3px; grid-template-columns: repeat(4, 1fr); height: min(440px, 46vh); }
.public-mls-detail-gallery img { height: 100%; object-fit: cover; width: 100%; }
.public-mls-detail-gallery img:first-child { grid-column: span 2; grid-row: span 2; }
.public-mls-detail-content { display: grid; gap: 10px; padding: 25px; }
.public-mls-detail-content h2 { font-size: 38px; margin: 0; }
.public-mls-detail-content h3 { font-size: 22px; margin: 0; }
.public-mls-detail-facts { display: flex; flex-wrap: wrap; gap: 18px; }
.public-mls-description { color: #4f5762; line-height: 1.55; }
.public-mls-detail-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.public-mls-request-modal { background: #fff; display: grid; gap: 14px; max-height: 90dvh; overflow-y: auto; padding: 26px; position: relative; width: min(560px, 100%); }
.public-mls-request-modal h2 { margin: 0; }
.public-mls-request-modal label { display: grid; font-weight: 800; gap: 7px; }
.public-mls-request-modal textarea { border: 1px solid #cbd0d8; border-radius: 0; font: inherit; padding: 12px; width: 100%; }

@media (max-width: 1120px) {
  .mls-workspace-results,
  .public-mls-results { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mls-workspace-filter-row { grid-template-columns: repeat(3, 1fr); }
  .mls-workspace-selection-tray { grid-template-columns: auto 1fr; }
  .mls-workspace-selection-actions { grid-column: 1 / -1; justify-content: stretch; }
  .mls-workspace-selection-actions button { flex: 1; justify-content: center; }
}

@media (max-width: 780px) {
  .mls-workspace { padding: 14px; padding-bottom: 170px; }
  .mls-workspace-hero,
  .public-mls-collection-hero { align-items: stretch; grid-template-columns: 1fr; padding: 24px 20px; }
  .mls-workspace-source-summary { min-width: 0; }
  .mls-workspace-search { grid-template-columns: 1fr; }
  .mls-workspace-search > .btn { width: 100%; }
  .mls-workspace-filter-row { grid-template-columns: 1fr 1fr; }
  .mls-workspace-toolbar { align-items: stretch; flex-direction: column; }
  .mls-workspace-toolbar-actions { justify-content: space-between; }
  .mls-workspace-saved-strip { grid-template-columns: 1fr; }
  .mls-workspace-map-layout,
  .public-mls-map-layout { height: auto; grid-template-columns: 1fr; }
  .mls-workspace-map-layout .crm-property-interactive-map-shell,
  .public-mls-map-layout .crm-property-interactive-map-shell { height: 430px; }
  .mls-workspace-map-results,
  .public-mls-map-list { max-height: 520px; }
  .mls-workspace-selection-tray { bottom: 8px; grid-template-columns: 1fr; left: 8px; right: 8px; }
  .mls-workspace-selection-thumbs { display: none !important; }
  .mls-workspace-selection-actions { grid-column: auto; }
  .mls-workspace-detail-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: 2fr 1fr; height: 360px; }
  .mls-workspace-detail-gallery img:first-child { grid-column: 1 / -1; grid-row: auto; }
  .mls-workspace-detail-gallery img:nth-child(n + 4) { display: none; }
  .mls-workspace-detail-shell { padding: 22px 18px 30px; }
  .mls-workspace-detail-header { align-items: stretch; flex-direction: column; }
  .mls-workspace-detail-header .btn { justify-content: center; }
  .mls-workspace-detail-facts { grid-template-columns: 1fr 1fr; }
  .mls-workspace-detail-facts > div:not(:nth-child(4n + 1)) { border-left: 0; }
  .mls-workspace-detail-facts > div:nth-child(even) { border-left: 1px solid #e2e5e9; }
  .mls-workspace-detail-grid { grid-template-columns: 1fr; }
  .mls-workspace-modal-backdrop { align-items: flex-end; padding: 0; }
  .mls-workspace-share-modal,
  .mls-workspace-detail-modal { max-height: 94dvh; width: 100%; }
  .public-mls-collection { padding: 18px 14px 44px; }
  .public-mls-agent-card { max-width: none; }
  .public-mls-detail-gallery { grid-template-columns: 1fr 1fr; height: 350px; }
}

@media (max-width: 560px) {
  .mls-workspace-hero h1 { font-size: 38px; }
  .mls-workspace-filter-row,
  .mls-workspace-results,
  .public-mls-results,
  .public-mls-results.list { grid-template-columns: 1fr; }
  .mls-workspace-card.compact,
  .mls-workspace-map-results .mls-workspace-card.compact { grid-template-columns: 1fr; }
  .mls-workspace-toolbar-actions { align-items: stretch; display: grid; grid-template-columns: 1fr 1fr; }
  .mls-workspace-view-switch { grid-column: 1 / -1; }
  .mls-workspace-view-switch button { flex: 1; }
  .mls-workspace-selection-actions { display: grid !important; grid-template-columns: 1fr 1fr; }
  .mls-workspace-selection-actions button span { display: inline; }
  .mls-workspace-share-modal fieldset { display: grid; grid-template-columns: 1fr 1fr; }
  .mls-workspace-share-modal > footer { align-items: stretch; display: grid; grid-template-columns: 1fr; }
  .mls-workspace-detail-gallery { height: 300px; }
  .mls-workspace-detail-header h2 { font-size: 34px; }
  .mls-workspace-detail-list,
  .mls-workspace-feature-groups { grid-template-columns: 1fr; }
  .mls-workspace-detail-list > div:nth-child(odd) { margin-right: 0; }
  .public-mls-collection-toolbar { align-items: stretch; flex-direction: column; }
  .public-mls-view-toggle button { flex: 1; }
  .public-mls-card-actions { grid-template-columns: 1fr 1fr; }
  .public-mls-detail-actions { display: grid; }
}


/* CRM property sharing consent: keep the required confirmation beside the send controls. */
.crm-property-share-tray {
  align-items: center;
  display: grid;
  gap: 12px;
  grid-template-columns: minmax(170px, 0.8fr) minmax(260px, 1.25fr) auto;
}

.crm-property-share-summary {
  display: grid;
  gap: 3px;
}

.crm-property-share-consent {
  align-items: center;
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 7px;
  cursor: pointer;
  display: grid;
  gap: 10px;
  grid-template-columns: 22px minmax(0, 1fr);
  min-width: 0;
  padding: 9px 11px;
  text-align: left;
  width: 100%;
}

.crm-property-share-consent > svg {
  color: #fff;
  height: 20px;
  width: 20px;
}

.crm-property-share-consent > span {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.crm-property-share-consent strong {
  color: #fff;
  font-size: 12px;
}

.crm-property-share-consent small {
  color: #cbd0d9;
  font-size: 11px;
  line-height: 1.3;
}

.crm-property-share-tray.permission-needed .crm-property-share-consent {
  border-color: rgba(255, 164, 174, 0.7);
}

.crm-property-share-tray.permission-ready .crm-property-share-consent {
  background: rgba(22, 143, 92, 0.18);
  border-color: rgba(98, 220, 169, 0.62);
}

.crm-property-share-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.crm-property-share-actions .btn:disabled {
  cursor: not-allowed;
  opacity: 0.48;
}

.toast {
  z-index: 90;
}

.crm-property-consent-backdrop {
  align-items: center;
  background: rgba(10, 12, 17, 0.72);
  display: flex;
  inset: 0;
  justify-content: center;
  padding: 20px;
  position: fixed;
  z-index: 240;
}

.crm-property-consent-modal {
  background: #fff;
  border-top: 5px solid #ed0016;
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.32);
  display: grid;
  gap: 18px;
  max-height: calc(100dvh - 32px);
  max-width: 570px;
  overflow-y: auto;
  padding: 26px;
  width: 100%;
}

.crm-property-consent-modal > header,
.crm-property-consent-modal > footer {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.crm-property-consent-modal h3,
.crm-property-consent-modal p {
  margin: 0;
}

.crm-property-consent-confirmation {
  align-items: start;
  background: #fff4f5;
  border: 2px solid #ed0016;
  cursor: pointer;
  display: grid;
  gap: 12px;
  grid-template-columns: 24px minmax(0, 1fr);
  padding: 16px;
}

.crm-property-consent-confirmation input {
  accent-color: #ed0016;
  height: 22px;
  margin: 1px 0 0;
  width: 22px;
}

.crm-property-consent-confirmation span {
  display: grid;
  gap: 5px;
}

.crm-property-consent-confirmation small {
  color: #5e6571;
  line-height: 1.4;
}

.crm-property-consent-summary {
  background: #f3f4f6;
  display: grid;
  gap: 8px;
  padding: 14px;
}

.crm-property-consent-summary span {
  align-items: center;
  display: flex;
  gap: 8px;
  overflow-wrap: anywhere;
}

@media (max-width: 540px) {
  .crm-property-consent-backdrop {
    align-items: flex-end;
    padding: 0;
  }

  .crm-property-consent-modal {
    max-height: 92dvh;
    padding: 20px;
  }

  .crm-property-consent-modal > footer {
    align-items: stretch;
    display: grid;
    grid-template-columns: 1fr;
  }
}

@media (max-width: 780px) {
  .crm-property-share-tray {
    align-items: stretch;
    grid-template-columns: minmax(0, 1fr);
    max-height: calc(100dvh - 24px);
    overflow-y: auto;
  }

  .crm-property-share-tray > .crm-property-share-summary,
  .crm-property-share-tray > .crm-property-share-consent,
  .crm-property-share-tray > .crm-property-share-actions {
    grid-column: 1 / -1;
  }

  .crm-property-share-actions {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 440px) {
  .crm-property-share-summary span {
    display: none;
  }

  .crm-property-share-actions .btn {
    font-size: 11px;
    padding-inline: 6px;
  }
}


/* Public recruiting device preview */
.public-nex-device-showcase {
  position: relative;
  isolation: isolate;
  min-height: 500px;
  padding: 24px 32px 12px 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.public-nex-device-showcase::before {
  content: "";
  position: absolute;
  inset: 7% 0 5% 8%;
  z-index: -1;
  border: 1px solid #d8dde5;
  background: #edf0f4;
}

.public-nex-laptop {
  width: min(100%, 610px);
  filter: drop-shadow(0 24px 26px rgb(15 20 28 / 0.18));
}

.public-nex-browser-bar {
  min-height: 34px;
  display: grid;
  grid-template-columns: 80px 1fr 80px;
  align-items: center;
  padding: 0 14px;
  border: 1px solid #bfc5cf;
  border-bottom: 0;
  border-radius: 8px 8px 0 0;
  background: #e5e8ed;
  color: #56606f;
  font-size: 10px;
}

.public-nex-browser-dots {
  display: flex;
  gap: 5px;
}

.public-nex-browser-dots i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #9da5b1;
}

.public-nex-browser-dots i:first-child {
  background: #ef1324;
}

.public-nex-browser-url {
  grid-column: 2;
  justify-self: center;
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 4px 20px;
  border: 1px solid #cdd2da;
  border-radius: 4px;
  background: #fff;
  white-space: nowrap;
}

.public-nex-browser-url svg {
  width: 10px;
  height: 10px;
}

.public-nex-laptop-screen {
  min-height: 330px;
  display: grid;
  grid-template-columns: 105px 1fr;
  border: 7px solid #171b22;
  border-bottom-width: 12px;
  background: #f7f8fa;
}

.public-nex-mini-sidebar {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 20px 10px;
  background: #11151c;
  color: #fff;
}

.public-nex-mini-sidebar strong {
  margin: 0 8px 14px;
  color: #ef1324;
  font-size: 22px;
}

.public-nex-mini-sidebar span {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 8px;
  border-radius: 4px;
  color: #c2c7d0;
  font-size: 9px;
  font-weight: 800;
}

.public-nex-mini-sidebar span.active {
  background: #ef1324;
  color: #fff;
}

.public-nex-mini-sidebar svg {
  width: 12px;
  height: 12px;
}

.public-nex-mini-main {
  overflow: hidden;
  padding: 20px;
}

.public-nex-mini-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
}

.public-nex-mini-heading div {
  display: grid;
  gap: 4px;
}

.public-nex-mini-heading small {
  color: #ef1324;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.public-nex-mini-heading strong {
  font-size: 18px;
}

.public-nex-mini-heading > span {
  padding: 5px 7px;
  border: 1px solid #dfe3e9;
  background: #fff;
  font-size: 8px;
  font-weight: 800;
}

.public-nex-mini-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin: 16px 0 10px;
}

.public-nex-mini-metrics article {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 2px 7px;
  padding: 10px;
  border: 1px solid #dfe3e9;
  border-radius: 6px;
  background: #fff;
}

.public-nex-mini-metrics svg {
  grid-row: 1 / 3;
  width: 17px;
  color: #ef1324;
}

.public-nex-mini-metrics strong {
  font-size: 17px;
}

.public-nex-mini-metrics span {
  color: #667080;
  font-size: 8px;
  font-weight: 700;
}

.public-nex-mini-action {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  padding: 13px;
  border-left: 4px solid #ef1324;
  background: #171b22;
  color: #fff;
}

.public-nex-mini-action div {
  display: grid;
  gap: 4px;
}

.public-nex-mini-action small {
  color: #ff7b83;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: 1px;
}

.public-nex-mini-action strong {
  font-size: 12px;
}

.public-nex-mini-action span {
  color: #cbd0d7;
  font-size: 8px;
}

.public-nex-mini-action button {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 8px;
  border: 0;
  background: #ef1324;
  color: #fff;
  font: inherit;
  font-size: 8px;
  font-weight: 900;
  pointer-events: none;
}

.public-nex-mini-action svg {
  width: 10px;
  height: 10px;
}

.public-nex-mini-activity {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px;
  margin-top: 10px;
}

.public-nex-mini-activity > strong {
  grid-column: 1 / -1;
  font-size: 9px;
}

.public-nex-mini-activity span {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px;
  border: 1px solid #e0e3e8;
  background: #fff;
  color: #535d6a;
  font-size: 8px;
}

.public-nex-mini-activity i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #ef1324;
}

.public-nex-laptop-base {
  height: 16px;
  margin: -1px -36px 0;
  border-top: 4px solid #dce0e5;
  border-radius: 0 0 50% 50%;
  background: #adb3bc;
}

.public-nex-phone {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 174px;
  overflow: hidden;
  border: 7px solid #11151c;
  border-radius: 28px;
  background: #11151c;
  box-shadow: 0 22px 35px rgb(15 20 28 / 0.25);
}

.public-nex-phone-speaker {
  position: absolute;
  top: 7px;
  left: 50%;
  z-index: 2;
  width: 50px;
  height: 5px;
  border-radius: 8px;
  background: #2d333d;
  transform: translateX(-50%);
}

.public-nex-phone-screen {
  min-height: 316px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 26px 13px 14px;
  background: #fff;
}

.public-nex-phone-brand {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.public-nex-phone-brand b {
  color: #ef1324;
  font-size: 14px;
}

.public-nex-phone-brand span {
  font-size: 8px;
  font-weight: 800;
}

.public-nex-phone-screen > small {
  margin-top: 6px;
  color: #707887;
  font-size: 7px;
  font-weight: 900;
  letter-spacing: 1.2px;
}

.public-nex-phone-screen h3 {
  margin: 0;
  font-size: 19px;
  line-height: 1.05;
}

.public-nex-phone-screen article {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 8px;
  padding: 9px;
  border: 1px solid #dfe3e9;
  border-left: 3px solid #ef1324;
  border-radius: 5px;
}

.public-nex-phone-screen article svg {
  width: 16px;
  color: #ef1324;
}

.public-nex-phone-screen article div {
  display: grid;
  gap: 2px;
}

.public-nex-phone-screen article strong {
  font-size: 9px;
}

.public-nex-phone-screen article span {
  color: #747d8b;
  font-size: 7px;
}

.public-nex-phone-screen article em {
  padding: 3px 5px;
  border-radius: 50%;
  background: #ef1324;
  color: #fff;
  font-size: 8px;
  font-style: normal;
}

.public-nex-phone-screen button {
  margin-top: auto;
  padding: 10px;
  border: 0;
  background: #ef1324;
  color: #fff;
  font: inherit;
  font-size: 9px;
  font-weight: 900;
  pointer-events: none;
}

.public-recruiting-seo-links {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 16px;
}

.public-recruiting-seo-links a {
  color: #171b22;
  font-size: 12px;
  font-weight: 800;
  text-decoration: underline;
  text-decoration-color: #ef1324;
  text-underline-offset: 4px;
}

@media (max-width: 1060px) {
  .public-nex-device-showcase {
    min-height: 455px;
    padding-right: 24px;
  }

  .public-nex-laptop-screen {
    grid-template-columns: 88px 1fr;
  }

  .public-nex-phone {
    width: 158px;
  }
}

@media (max-width: 680px) {
  .public-nex-device-showcase {
    min-height: 405px;
    padding: 12px 0 0;
  }

  .public-nex-laptop {
    width: 100%;
  }

  .public-nex-laptop-screen {
    min-height: 285px;
    grid-template-columns: 1fr;
    border-width: 5px;
    border-bottom-width: 9px;
  }

  .public-nex-mini-sidebar {
    display: none;
  }

  .public-nex-mini-main {
    padding: 14px;
  }

  .public-nex-mini-heading > span,
  .public-nex-mini-activity {
    display: none;
  }

  .public-nex-mini-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .public-nex-mini-metrics article {
    padding: 8px 6px;
  }

  .public-nex-mini-action {
    margin-right: 76px;
  }

  .public-nex-phone {
    right: 4px;
    width: 142px;
    border-width: 5px;
    border-radius: 23px;
  }

  .public-nex-phone-screen {
    min-height: 270px;
    padding: 23px 10px 10px;
  }

  .public-nex-phone-screen article:nth-of-type(2) {
    display: none;
  }
}


/* Recruiting technology showcase polish */
.public-nex-device-showcase {
  min-height: 548px;
  padding: 58px 38px 28px 18px;
  overflow: hidden;
  border: 1px solid #cfd5df;
  border-radius: 28px;
  background: #e9edf3;
  box-shadow: 0 26px 70px rgb(15 20 28 / 0.16);
}

.public-nex-device-showcase::before {
  content: "NEX  CENTRAL";
  inset: auto auto 22px 22px;
  z-index: -1;
  border: 0;
  background: transparent;
  color: rgb(17 21 28 / 0.055);
  font-size: clamp(54px, 8vw, 116px);
  font-weight: 950;
  letter-spacing: 0.08em;
  line-height: 0.82;
  white-space: nowrap;
  transform: rotate(-90deg) translateY(100%);
  transform-origin: bottom left;
}

.public-nex-device-showcase::after {
  content: "";
  position: absolute;
  inset: 14px;
  z-index: -1;
  border: 1px solid rgb(255 255 255 / 0.85);
  border-radius: 20px;
  pointer-events: none;
}

.public-nex-showcase-label {
  position: absolute;
  top: 25px;
  left: 31px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #343b47;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.public-nex-showcase-label i,
.public-nex-mini-heading > span i,
.public-nex-phone-live i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #20bf6b;
  box-shadow: 0 0 0 5px rgb(32 191 107 / 0.12);
}

.public-nex-laptop {
  position: relative;
  z-index: 2;
  width: min(100%, 630px);
  filter: drop-shadow(0 30px 30px rgb(15 20 28 / 0.22));
  transform: translateX(-14px);
  transition: transform 220ms ease, filter 220ms ease;
}

.public-nex-device-showcase:hover .public-nex-laptop {
  filter: drop-shadow(0 36px 34px rgb(15 20 28 / 0.25));
  transform: translate(-14px, -4px);
}

.public-nex-browser-bar {
  min-height: 38px;
  grid-template-columns: 80px minmax(150px, 1fr) 80px;
  border-color: #9ca5b2;
  border-radius: 10px 10px 0 0;
  background: #d9dee6;
  color: #424b59;
}

.public-nex-browser-dots i {
  width: 8px;
  height: 8px;
  border: 1px solid rgb(17 21 28 / 0.12);
}

.public-nex-browser-dots i:nth-child(2) {
  background: #e5b94c;
}

.public-nex-browser-dots i:nth-child(3) {
  background: #21b66f;
}

.public-nex-browser-url {
  width: min(100%, 250px);
  justify-content: center;
  border-color: #b8c0cb;
  border-radius: 6px;
  box-shadow: inset 0 1px 0 #fff;
}

.public-nex-browser-status {
  justify-self: end;
  color: #2b6d4a;
  font-size: 8px;
  font-weight: 950;
  letter-spacing: 0.12em;
}

.public-nex-laptop-screen {
  min-height: 354px;
  grid-template-columns: 116px minmax(0, 1fr);
  border: 9px solid #0d1117;
  border-bottom-width: 14px;
  background: #f4f6f9;
  box-shadow: inset 0 0 0 1px #2f3742;
}

.public-nex-mini-sidebar {
  gap: 7px;
  padding: 20px 10px;
  background: #0c1016;
}

.public-nex-mini-sidebar strong {
  display: grid;
  gap: 0;
  margin: 0 10px 18px;
  line-height: 1;
}

.public-nex-mini-sidebar strong span {
  color: #ef1324;
  font-size: 23px;
  letter-spacing: 0;
}

.public-nex-mini-sidebar strong small {
  margin-top: 3px;
  color: #fff;
  font-size: 7px;
  letter-spacing: 0.25em;
}

.public-nex-mini-sidebar button {
  display: flex;
  min-height: 34px;
  align-items: center;
  gap: 7px;
  padding: 8px;
  border: 1px solid transparent;
  border-radius: 5px;
  background: transparent;
  color: #aeb6c2;
  font: inherit;
  font-size: 9px;
  font-weight: 850;
  text-align: left;
  cursor: pointer;
  transition: background 140ms ease, color 140ms ease, border-color 140ms ease;
}

.public-nex-mini-sidebar button:hover,
.public-nex-mini-sidebar button:focus-visible {
  border-color: rgb(255 255 255 / 0.16);
  color: #fff;
  outline: none;
}

.public-nex-mini-sidebar button.active {
  border-color: #ef1324;
  background: #ef1324;
  color: #fff;
  box-shadow: 0 8px 18px rgb(239 19 36 / 0.24);
}

.public-nex-mini-sidebar button svg {
  width: 13px;
  height: 13px;
}

.public-nex-mini-main {
  position: relative;
  padding: 22px;
  background: #f5f7fa;
}

.public-nex-mini-main::before {
  content: "NEX";
  position: absolute;
  right: -8px;
  top: -24px;
  color: rgb(239 19 36 / 0.035);
  font-size: 116px;
  font-weight: 950;
  pointer-events: none;
}

.public-nex-mini-heading {
  position: relative;
  z-index: 1;
}

.public-nex-mini-heading small {
  letter-spacing: 0.14em;
}

.public-nex-mini-heading strong {
  max-width: 260px;
  color: #11151c;
  font-size: 20px;
  line-height: 1.05;
}

.public-nex-mini-heading > span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border-color: #d3d9e2;
  border-radius: 999px;
  color: #3e4754;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.public-nex-mini-metrics {
  position: relative;
  z-index: 1;
  gap: 9px;
  margin: 18px 0 12px;
}

.public-nex-mini-metrics article {
  min-height: 74px;
  border-color: #d6dce5;
  border-radius: 8px;
  box-shadow: 0 8px 18px rgb(15 20 28 / 0.045);
}

.public-nex-mini-metrics strong {
  color: #11151c;
  font-size: 19px;
}

.public-nex-mini-action {
  position: relative;
  z-index: 1;
  min-height: 80px;
  border-left-width: 5px;
  background: #111720;
  box-shadow: 0 12px 24px rgb(15 20 28 / 0.15);
}

.public-nex-mini-action strong {
  font-size: 13px;
  line-height: 1.2;
}

.public-nex-mini-action button {
  min-width: 68px;
  justify-content: center;
  cursor: pointer;
  pointer-events: auto;
  transition: background 140ms ease, transform 140ms ease;
}

.public-nex-mini-action button:hover,
.public-nex-mini-action button:focus-visible {
  background: #bd0714;
  outline: 2px solid #fff;
  outline-offset: 2px;
  transform: translateY(-1px);
}

.public-nex-mini-activity {
  position: relative;
  z-index: 1;
}

.public-nex-mini-activity span {
  min-height: 34px;
  border-color: #d8dde5;
  border-radius: 5px;
}

.public-nex-laptop-base {
  position: relative;
  height: 18px;
  margin: -1px -42px 0;
  border-top: 4px solid #edf0f4;
  border-bottom: 1px solid #8b939f;
  background: #aab1bb;
  box-shadow: 0 8px 14px rgb(15 20 28 / 0.16);
}

.public-nex-laptop-base span {
  position: absolute;
  top: 0;
  left: 50%;
  width: 88px;
  height: 5px;
  border-radius: 0 0 8px 8px;
  background: #858d98;
  transform: translateX(-50%);
}

.public-nex-phone {
  z-index: 4;
  right: 8px;
  bottom: 15px;
  width: 184px;
  border: 8px solid #090d13;
  border-radius: 32px;
  box-shadow: 0 26px 46px rgb(15 20 28 / 0.34), 0 0 0 2px #616a76;
  transition: transform 220ms ease, box-shadow 220ms ease;
}

.public-nex-device-showcase:hover .public-nex-phone {
  box-shadow: 0 30px 54px rgb(15 20 28 / 0.4), 0 0 0 2px #747e8b;
  transform: translateY(-4px);
}

.public-nex-phone::after {
  content: "";
  position: absolute;
  inset: 3px;
  border: 1px solid rgb(255 255 255 / 0.13);
  border-radius: 22px;
  pointer-events: none;
}

.public-nex-phone-speaker {
  top: 8px;
  height: 4px;
  background: #404956;
}

.public-nex-phone-screen {
  min-height: 336px;
  gap: 9px;
  padding: 28px 13px 13px;
  background: #fff;
}

.public-nex-phone-brand b {
  display: flex;
  align-items: baseline;
  gap: 4px;
}

.public-nex-phone-brand b small {
  color: #11151c;
  font-size: 6px;
  letter-spacing: 0.14em;
}

.public-nex-phone-live {
  display: inline-flex;
  width: max-content;
  align-items: center;
  gap: 6px;
  margin-top: 2px;
  color: #23734d;
  font-size: 7px;
  font-weight: 950;
  letter-spacing: 0.12em;
}

.public-nex-phone-screen h3 {
  min-height: 42px;
  color: #11151c;
  font-size: 19px;
}

.public-nex-phone-screen article {
  min-height: 52px;
  border-color: #d8dde5;
  border-radius: 7px;
  background: #f9fafb;
  box-shadow: 0 7px 14px rgb(15 20 28 / 0.045);
}

.public-nex-phone-screen button {
  min-height: 38px;
  cursor: pointer;
  pointer-events: auto;
  transition: background 140ms ease;
}

.public-nex-phone-screen button:hover,
.public-nex-phone-screen button:focus-visible {
  background: #bd0714;
  outline: 2px solid #11151c;
  outline-offset: 2px;
}

.public-platform-module-grid {
  gap: 14px;
}

.public-platform-module-grid .public-platform-module-card {
  position: relative;
  display: grid;
  min-width: 0;
  min-height: 208px;
  align-content: start;
  gap: 10px;
  overflow: hidden;
  padding: 20px;
  border: 1px solid #d7dce4;
  border-top: 3px solid #11151c;
  border-radius: 10px;
  background: #fff;
  color: #111318;
  font: inherit;
  text-align: left;
  cursor: pointer;
  box-shadow: 0 14px 34px rgb(17 19 24 / 0.07);
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background 180ms ease;
}

.public-platform-module-grid .public-platform-module-card::after {
  content: "";
  position: absolute;
  right: -35px;
  bottom: -35px;
  width: 88px;
  height: 88px;
  border: 18px solid rgb(239 19 36 / 0.06);
  border-radius: 50%;
  pointer-events: none;
}

.public-platform-module-grid .public-platform-module-card:hover,
.public-platform-module-grid .public-platform-module-card:focus-visible {
  border-color: #ef1324;
  box-shadow: 0 20px 44px rgb(17 19 24 / 0.13);
  outline: none;
  transform: translateY(-4px);
}

.public-platform-module-grid .public-platform-module-card.active {
  border-color: #ef1324;
  border-top-color: #ef1324;
  background: #111720;
  color: #fff;
  box-shadow: 0 22px 48px rgb(17 19 24 / 0.2);
}

.public-platform-module-icon {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid #ffd0d4;
  border-radius: 8px;
  background: #fff3f4;
  color: #ef1324;
}

.public-platform-module-grid .public-platform-module-card.active .public-platform-module-icon {
  border-color: #ef1324;
  background: #ef1324;
  color: #fff;
}

.public-platform-module-grid .public-platform-module-card strong {
  color: inherit;
  font-size: 17px;
}

.public-platform-module-grid .public-platform-module-card > span:not(.public-platform-module-icon) {
  color: #66707d;
  line-height: 1.55;
  font-size: 13px;
}

.public-platform-module-grid .public-platform-module-card.active > span:not(.public-platform-module-icon) {
  color: #cbd1d9;
}

.public-platform-module-grid .public-platform-module-card em {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-top: auto;
  color: #bd0714;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.public-platform-module-grid .public-platform-module-card.active em {
  color: #ff7d86;
}

.public-platform-module-grid .public-platform-module-card em svg {
  width: 13px;
  height: 13px;
}

@media (max-width: 1060px) {
  .public-nex-device-showcase {
    min-height: 500px;
    padding: 54px 28px 24px 12px;
  }

  .public-nex-laptop-screen {
    grid-template-columns: 96px minmax(0, 1fr);
  }

  .public-nex-mini-sidebar strong {
    margin-inline: 6px;
  }

  .public-nex-phone {
    width: 164px;
  }
}

@media (max-width: 760px) {
  .public-nex-device-showcase {
    min-height: 448px;
    padding: 52px 12px 18px;
    border-radius: 20px;
  }

  .public-nex-showcase-label {
    top: 22px;
    left: 24px;
  }

  .public-nex-laptop {
    width: 100%;
    transform: none;
  }

  .public-nex-device-showcase:hover .public-nex-laptop {
    transform: translateY(-2px);
  }

  .public-nex-laptop-screen {
    min-height: 300px;
    grid-template-columns: 1fr;
    border-width: 6px;
    border-bottom-width: 10px;
  }

  .public-nex-mini-sidebar {
    display: none;
  }

  .public-nex-mini-main {
    padding: 15px;
  }

  .public-nex-mini-heading > span,
  .public-nex-mini-activity {
    display: none;
  }

  .public-nex-mini-metrics article {
    min-height: 66px;
    padding: 8px 6px;
  }

  .public-nex-mini-action {
    margin-right: 72px;
  }

  .public-nex-mini-action button {
    display: none;
  }

  .public-nex-phone {
    right: 9px;
    bottom: 10px;
    width: 148px;
    border-width: 6px;
    border-radius: 25px;
  }

  .public-nex-phone-screen {
    min-height: 282px;
    padding: 24px 10px 10px;
  }

  .public-nex-phone-screen article:nth-of-type(2) {
    display: none;
  }

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

  .public-platform-module-grid .public-platform-module-card {
    min-height: 188px;
  }
}

@media (max-width: 480px) {
  .public-nex-browser-bar {
    grid-template-columns: 48px 1fr;
    padding-inline: 9px;
  }

  .public-nex-browser-status {
    display: none;
  }

  .public-nex-browser-url {
    padding-inline: 8px;
    font-size: 8px;
  }

  .public-nex-mini-heading strong {
    font-size: 17px;
  }

  .public-nex-mini-metrics span {
    font-size: 7px;
  }

  .public-nex-mini-action strong {
    font-size: 11px;
  }

  .public-platform-module-grid {
    grid-template-columns: 1fr;
  }

  .public-platform-module-grid .public-platform-module-card {
    min-height: 160px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .public-nex-laptop,
  .public-nex-phone,
  .public-platform-module-grid .public-platform-module-card {
    transition: none;
  }
}


/* Recruiting technology showcase refinement */
.public-nex-device-showcase {
  min-height: 590px;
  padding: 58px 26px 28px 12px;
  background: #e8ecf2;
  box-shadow: 0 28px 68px rgba(18, 24, 33, 0.13);
}

.public-nex-device-showcase::after {
  inset: 12px;
  border-color: rgba(255, 255, 255, 0.92);
}

.public-nex-showcase-label {
  gap: 8px;
  font-size: 10px;
}

.public-nex-showcase-label::after {
  width: 48px;
  height: 1px;
  background: #e50914;
  content: "";
}

.public-nex-laptop {
  width: min(100%, 670px);
  transform: translateX(-20px);
}

.public-nex-device-showcase:hover .public-nex-laptop {
  transform: translate(-20px, -4px);
}

.public-nex-browser-bar {
  min-height: 36px;
  grid-template-columns: 64px minmax(120px, 1fr) 58px;
}

.public-nex-browser-url {
  min-width: 0;
  max-width: 220px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.public-nex-laptop-screen {
  min-height: 400px;
  grid-template-columns: 116px minmax(0, 1fr);
}

.public-nex-mini-sidebar {
  gap: 3px;
  overflow: hidden;
  padding: 14px 8px 12px;
}

.public-nex-mini-sidebar strong {
  margin: 0 7px 8px;
}

.public-nex-mini-sidebar strong span {
  font-size: 19px;
}

.public-nex-mini-sidebar button {
  min-width: 0;
  min-height: 28px;
  gap: 6px;
  overflow: hidden;
  padding: 5px 7px;
  font-size: 8px;
  line-height: 1;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.public-nex-mini-sidebar button svg {
  width: 12px;
  height: 12px;
  flex: 0 0 12px;
}

.public-nex-mini-main {
  min-width: 0;
  overflow: hidden;
  padding: 18px;
}

.public-nex-mini-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  min-width: 0;
}

.public-nex-mini-heading div {
  min-width: 0;
}

.public-nex-mini-heading strong {
  display: block;
  max-width: 210px;
  overflow-wrap: anywhere;
  font-size: 18px;
  line-height: 1.05;
}

.public-nex-mini-heading > span {
  max-width: 86px;
  gap: 5px;
  overflow: hidden;
  padding: 4px 6px;
  font-size: 6.5px;
  white-space: nowrap;
}

.public-nex-mini-heading > span i {
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
}

.public-nex-mini-metrics {
  gap: 6px;
  margin: 14px 0 10px;
}

.public-nex-mini-metrics article {
  min-width: 0;
  min-height: 66px;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 2px 5px;
  overflow: hidden;
  padding: 8px;
}

.public-nex-mini-metrics svg {
  width: 14px;
  flex-shrink: 0;
}

.public-nex-mini-metrics strong {
  min-width: 0;
  font-size: 16px;
}

.public-nex-mini-metrics span {
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 6.5px;
  line-height: 1.15;
}

.public-nex-mini-action {
  min-width: 0;
  min-height: 88px;
  gap: 8px;
  overflow: hidden;
  padding: 11px;
}

.public-nex-mini-action div {
  min-width: 0;
}

.public-nex-mini-action strong {
  display: block;
  max-width: 100%;
  overflow-wrap: anywhere;
  font-size: 12px;
  line-height: 1.12;
}

.public-nex-mini-action span {
  display: -webkit-box;
  overflow: hidden;
  font-size: 7px;
  line-height: 1.25;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.public-nex-mini-action button {
  min-width: 58px;
  flex: 0 0 58px;
  padding: 7px 5px;
}

.public-nex-mini-activity {
  gap: 5px;
  margin-top: 8px;
}

.public-nex-mini-activity span {
  min-width: 0;
  min-height: 30px;
  overflow: hidden;
  padding: 6px;
  font-size: 7px;
  line-height: 1.15;
}

.public-nex-phone {
  right: 6px;
  bottom: 12px;
}

@media (max-width: 1060px) {
  .public-nex-device-showcase {
    min-height: 560px;
    padding: 56px 20px 26px 10px;
  }

  .public-nex-laptop {
    transform: translateX(-14px);
  }

  .public-nex-device-showcase:hover .public-nex-laptop {
    transform: translate(-14px, -3px);
  }

  .public-nex-laptop-screen {
    grid-template-columns: 106px minmax(0, 1fr);
  }

  .public-nex-mini-sidebar button {
    font-size: 7px;
  }

  .public-nex-mini-main {
    padding: 14px;
  }

  .public-nex-mini-heading strong {
    max-width: 170px;
    font-size: 16px;
  }

  .public-nex-mini-heading > span {
    max-width: 70px;
    font-size: 6px;
  }

  .public-nex-mini-metrics article {
    padding: 6px;
  }

  .public-nex-mini-action button {
    min-width: 50px;
    flex-basis: 50px;
    font-size: 7px;
  }
}

@media (max-width: 760px) {
  .public-nex-device-showcase {
    min-height: 470px;
  }

  .public-nex-laptop {
    transform: none;
  }

  .public-nex-device-showcase:hover .public-nex-laptop {
    transform: translateY(-2px);
  }

  .public-nex-laptop-screen {
    min-height: 320px;
    grid-template-columns: 1fr;
  }

  .public-nex-mini-main {
    padding: 14px;
  }

  .public-nex-mini-heading {
    grid-template-columns: 1fr;
  }

  .public-nex-mini-heading strong {
    max-width: 220px;
  }

  .public-nex-mini-heading > span {
    display: none;
  }

  .public-nex-mini-action {
    margin-right: 68px;
  }
}

@media (max-width: 480px) {
  .public-nex-device-showcase {
    min-height: 420px;
  }

  .public-nex-mini-heading strong {
    max-width: 180px;
    font-size: 14px;
  }

  .public-nex-mini-action {
    min-height: 74px;
  }
}

/* CRM contact record */
.crm-contact-record-shell {
  gap: 0;
}

.crm-record-layout {
  align-items: start;
  display: grid;
  gap: 14px;
  grid-template-columns: minmax(250px, 0.72fr) minmax(560px, 2.1fr) minmax(270px, 0.78fr);
}

.crm-record-left,
.crm-record-main,
.crm-record-right,
.crm-record-side-list {
  display: grid;
  gap: 12px;
  min-width: 0;
}

.crm-record-left,
.crm-record-right {
  position: sticky;
  top: 130px;
}

.crm-record-profile-card,
.crm-record-accordion-card,
.crm-record-center-card,
.crm-record-action-card,
.crm-record-side-panel {
  background: #ffffff;
  border: 1px solid #dfe4ea;
  border-radius: 8px;
  box-shadow: 0 10px 24px rgb(18 22 30 / 0.055);
  min-width: 0;
}

.crm-record-profile-card {
  display: grid;
  gap: 13px;
  padding: 16px;
}

.crm-record-profile-top {
  align-items: start;
  display: flex;
  gap: 12px;
  justify-content: space-between;
}

.crm-record-profile-top h2 {
  color: #111318;
  font-size: 23px;
  font-weight: 950;
  letter-spacing: 0;
  line-height: 1.05;
  margin: 2px 0 0;
  overflow-wrap: anywhere;
}

.crm-record-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.crm-record-badges span {
  align-items: center;
  background: #111318;
  border-radius: 999px;
  color: #ffffff;
  display: inline-flex;
  font-size: 10px;
  font-weight: 950;
  min-height: 22px;
  padding: 4px 8px;
}

.crm-record-badges span:nth-child(even) {
  background: #eef1f5;
  color: #313844;
}

.crm-record-rating {
  align-items: center;
  display: flex;
  gap: 5px;
}

.crm-record-rating span {
  color: #343a46;
  font-size: 11px;
  font-weight: 950;
  margin-right: 2px;
}

.crm-record-rating svg {
  color: #c6ccd5;
  height: 15px;
  width: 15px;
}

.crm-record-rating svg.active {
  color: #f59e0b;
  fill: #f59e0b;
}

.crm-record-profile-facts {
  display: grid;
  gap: 8px;
}

.crm-record-profile-facts div {
  align-items: start;
  display: grid;
  gap: 2px 8px;
  grid-template-columns: 18px 74px minmax(0, 1fr);
}

.crm-record-profile-facts svg {
  color: #111318;
  height: 15px;
  margin-top: 1px;
  width: 15px;
}

.crm-record-profile-facts span {
  color: #5f6673;
  font-size: 11px;
  font-weight: 950;
}

.crm-record-profile-facts strong {
  color: #111318;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.crm-record-accordion-card summary {
  align-items: center;
  cursor: pointer;
  display: flex;
  gap: 8px;
  min-height: 46px;
  padding: 0 14px;
  color: #111318;
  font-size: 13px;
  font-weight: 950;
  list-style: none;
}

.crm-record-accordion-card summary::-webkit-details-marker {
  display: none;
}

.crm-record-accordion-card summary svg {
  color: var(--nex-red);
}

.crm-record-accordion-card details > div {
  border-top: 1px solid #edf0f4;
  display: grid;
  gap: 9px;
  padding: 12px 14px 14px;
}

.crm-record-qualification-form {
  border-top: 1px solid #edf0f4;
  display: grid;
  gap: 10px;
  padding: 12px 14px 14px;
}

.crm-record-qualification-form label {
  display: grid;
  gap: 5px;
}

.crm-record-qualification-form label > span {
  color: #687182;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.crm-record-qualification-form input,
.crm-record-qualification-form select,
.crm-record-note-composer input,
.crm-record-note-composer select,
.crm-record-note-composer textarea {
  background: #fbfcfd;
  border: 1px solid #d8dee7;
  border-radius: 6px;
  color: #111318;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  min-height: 38px;
  padding: 8px 10px;
  width: 100%;
}

.crm-record-qualification-form input:focus,
.crm-record-qualification-form select:focus,
.crm-record-note-composer input:focus,
.crm-record-note-composer select:focus,
.crm-record-note-composer textarea:focus {
  border-color: rgb(227 6 19 / 0.62);
  box-shadow: 0 0 0 3px rgb(227 6 19 / 0.1);
  outline: 0;
}

.crm-record-accordion-card details span {
  color: #343a46;
  display: grid;
  font-size: 12px;
  gap: 2px;
  line-height: 1.35;
}

.crm-record-accordion-card details strong {
  color: #687182;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.crm-record-topline {
  align-items: stretch;
  background: #ffffff;
  border: 1px solid #dfe4ea;
  border-left: 4px solid var(--nex-red);
  display: flex;
  gap: 10px;
  justify-content: space-between;
  padding: 12px;
}

.crm-record-top-actions {
  align-items: stretch;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

.crm-record-top-actions .btn {
  min-height: 47px;
}

.crm-record-center-card {
  display: grid;
  gap: 0;
  padding: 0;
}

.crm-record-center-head {
  align-items: center;
  border-bottom: 1px solid #e5e9ef;
  display: flex;
  gap: 10px;
  justify-content: space-between;
  padding: 14px 16px;
}

.crm-record-center-head h3 {
  color: #111318;
  font-size: 18px;
  font-weight: 950;
  margin: 1px 0 0;
}

.crm-record-center-head select {
  background: #fbfcfd;
  border: 1px solid #dfe4ea;
  border-radius: 6px;
  color: #111318;
  font: inherit;
  font-size: 12px;
  font-weight: 850;
  min-height: 34px;
  padding: 0 9px;
}

.crm-record-note-composer {
  background:
    linear-gradient(135deg, rgb(17 19 24 / 0.035), transparent 42%),
    #ffffff;
  border-bottom: 1px solid #e5e9ef;
  display: grid;
  gap: 10px;
  padding: 14px 16px 16px;
}

.crm-record-note-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.crm-record-note-composer .field {
  margin: 0;
}

.crm-record-note-composer textarea {
  min-height: 82px;
  resize: vertical;
}

.crm-record-note-composer .btn {
  justify-self: start;
  min-height: 40px;
}

.crm-record-timeline-list {
  display: grid;
  gap: 0;
  padding: 0 16px 8px;
}

.crm-record-timeline-list > article {
  border-bottom: 1px solid #edf0f4;
  border-left: 4px solid #94a3b8;
  display: grid;
  gap: 14px;
  grid-template-columns: 72px 28px minmax(0, 1fr);
  min-height: 86px;
  padding: 14px 12px;
}

.crm-record-timeline-list > article.needs-response {
  border-left-color: var(--nex-red);
}

.crm-record-timeline-list > article.property {
  border-left-color: #0891b2;
}

.crm-record-timeline-list > article.email {
  border-left-color: #2563eb;
}

.crm-record-timeline-list > article.report {
  border-left-color: #b45309;
}

.crm-record-timeline-list > article.automation {
  border-left-color: #7c3aed;
}

.crm-record-event-date {
  display: grid;
  gap: 2px;
  justify-items: end;
}

.crm-record-event-date time {
  color: #111318;
  font-size: 11px;
  font-weight: 950;
  line-height: 1.2;
  text-align: right;
}

.crm-record-event-date span {
  color: #6b7280;
  font-size: 10px;
  font-weight: 850;
  text-align: right;
}

.crm-record-event-icon {
  align-items: center;
  background: #f1f5f9;
  border-radius: 999px;
  color: #475569;
  display: inline-flex;
  height: 28px;
  justify-content: center;
  margin-top: 2px;
  width: 28px;
}

.crm-record-event-icon.property {
  background: #ecfeff;
  color: #0e7490;
}

.crm-record-event-icon.email {
  background: #eff6ff;
  color: #2563eb;
}

.crm-record-event-icon.report {
  background: #fffbeb;
  color: #b45309;
}

.crm-record-event-icon.text,
.crm-record-event-icon.sms {
  background: #fff1f2;
  color: var(--nex-red);
}

.crm-record-event-icon.automation {
  background: #f5f3ff;
  color: #6d28d9;
}

.crm-record-event-body {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.crm-record-event-body > div {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.crm-record-event-body strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.crm-record-event-body span {
  color: #687182;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}

.crm-record-event-body p {
  color: #343a46;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.48;
  margin: 0;
  overflow-wrap: anywhere;
  white-space: pre-line;
}

.crm-record-event-body footer {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.crm-record-action-card,
.crm-record-side-panel {
  display: grid;
  gap: 10px;
  padding: 12px;
}

.crm-record-action-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.crm-record-action-grid button {
  align-items: center;
  background: #ffffff;
  border: 1px solid #dfe4ea;
  border-radius: 6px;
  color: #111318;
  cursor: pointer;
  display: inline-flex;
  gap: 7px;
  justify-content: center;
  min-height: 39px;
  padding: 6px 8px;
  font-size: 12px;
  font-weight: 950;
}

.crm-record-action-grid button:hover {
  border-color: rgb(227 6 19 / 0.34);
  color: var(--nex-red);
}

.crm-record-action-grid button:disabled {
  color: #a3acb8;
  cursor: not-allowed;
}

.crm-record-side-panel.compact {
  gap: 0;
}

.crm-client-asset-panel {
  gap: 8px;
}

.crm-client-asset-panel p {
  color: #4b5563;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.38;
  margin: 8px 0 0;
}

.crm-client-asset-panel > span {
  color: #6b7280;
  font-size: 10px;
  font-weight: 900;
}

.crm-record-side-panel header {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: space-between;
}

.crm-record-side-panel header strong {
  align-items: center;
  color: #111318;
  display: inline-flex;
  gap: 7px;
  font-size: 13px;
  font-weight: 950;
  min-width: 0;
}

.crm-record-side-panel header strong em {
  align-items: center;
  background: #eef1f5;
  border-radius: 999px;
  color: #111318;
  display: inline-flex;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  justify-content: center;
  min-width: 20px;
  padding: 2px 6px;
}

.crm-record-side-panel header button,
.crm-record-side-list article button {
  background: transparent;
  border: 0;
  color: #0f55b5;
  cursor: pointer;
  font: inherit;
  font-size: 11px;
  font-weight: 950;
  padding: 0;
}

.crm-record-side-list article,
.crm-record-campaign-row {
  border: 1px solid #e5e9ef;
  border-radius: 7px;
  display: grid;
  gap: 6px;
  padding: 10px;
}

.crm-record-side-list article strong,
.crm-record-campaign-row strong {
  color: #111318;
  font-size: 12px;
  font-weight: 950;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.crm-record-side-list article span,
.crm-record-empty-line,
.crm-record-campaign-row span {
  color: #687182;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.35;
}

.crm-record-side-panel .field {
  margin: 0;
}

.crm-record-side-panel .full-width {
  justify-content: center;
  width: 100%;
}

.crm-action-plan-status {
  align-items: center;
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-left: 4px solid #16a34a;
  display: grid;
  gap: 10px;
  grid-template-columns: 34px minmax(0, 1fr);
  margin: 10px 0;
  padding: 12px;
}

.crm-action-plan-status.paused {
  background: #fffbeb;
  border-color: #fde68a;
  border-left-color: #d97706;
}

.crm-action-plan-status svg {
  color: #16a34a;
}

.crm-action-plan-status.paused svg {
  color: #d97706;
}

.crm-action-plan-status strong,
.crm-action-plan-status span {
  display: block;
}

.crm-action-plan-status strong {
  color: #111318;
  font-size: 13px;
  font-weight: 950;
}

.crm-action-plan-status span {
  color: #4b5563;
  font-size: 11px;
  font-weight: 850;
  margin-top: 2px;
}

.crm-activity-copy-highlight {
  background: #f8fafc;
  border: 1px solid #dfe4ea;
  border-left: 3px solid #111318;
  color: #111827;
  display: block;
  font: inherit;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.45;
  margin: 2px 0 0;
  overflow-wrap: anywhere;
  padding: 9px 10px;
  white-space: pre-line;
}

@media (max-width: 1280px) {
  .crm-record-layout {
    grid-template-columns: minmax(230px, 0.7fr) minmax(0, 1.8fr);
  }

  .crm-record-right {
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    position: static;
  }

  .crm-record-action-card {
    grid-column: 1 / -1;
  }
}

@media (max-width: 920px) {
  .crm-record-layout {
    grid-template-columns: 1fr;
  }

  .crm-record-left,
  .crm-record-right {
    position: static;
  }

  .crm-record-right {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .crm-record-topline,
  .crm-record-center-head {
    align-items: stretch;
    display: grid;
  }

  .crm-record-note-grid {
    grid-template-columns: 1fr;
  }

  .crm-record-top-actions {
    justify-content: stretch;
  }

  .crm-record-top-actions .btn {
    justify-content: center;
  }

  .crm-record-timeline-list {
    padding-inline: 10px;
  }

  .crm-record-timeline-list > article {
    gap: 9px;
    grid-template-columns: 28px minmax(0, 1fr);
    padding-inline: 8px;
  }

  .crm-record-event-date {
    grid-column: 1 / -1;
    justify-items: start;
  }

  .crm-record-event-date time,
  .crm-record-event-date span {
    text-align: left;
  }

  .crm-record-action-grid {
    grid-template-columns: 1fr;
  }
}

/* CRM activity luxury polish */
.crm-activity-board {
  background:
    linear-gradient(180deg, #ffffff 0%, #f7f8fa 62%, #f2f4f7 100%);
  border-top: 3px solid #111318;
  box-shadow: inset 0 1px 0 #ffffff;
  margin-inline: -2px;
  padding: 16px 2px 20px;
}

.crm-activity-command-band {
  background:
    linear-gradient(135deg, rgb(17 19 24 / 0.96), rgb(35 39 48 / 0.94) 58%, rgb(227 6 19 / 0.9)),
    #111318;
  border-color: rgb(255 255 255 / 0.08);
  box-shadow: 0 22px 52px rgb(17 19 24 / 0.18);
  color: #ffffff;
  overflow: hidden;
  position: relative;
}

.crm-activity-command-band::after {
  background: linear-gradient(90deg, transparent, rgb(255 255 255 / 0.2), transparent);
  content: "";
  height: 1px;
  left: 20px;
  position: absolute;
  right: 20px;
  top: 0;
}

.crm-activity-command-band .eyebrow,
.crm-activity-command-band h2,
.crm-activity-command-band p:not(.eyebrow) {
  color: #ffffff;
}

.crm-activity-command-band p:not(.eyebrow) {
  color: #d9dde5;
}

.crm-activity-last-updated {
  background: rgb(255 255 255 / 0.1);
  border: 1px solid rgb(255 255 255 / 0.18);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.16);
}

.crm-activity-stat-row button,
.crm-activity-card {
  border-color: #d8dee7;
  box-shadow: 0 16px 38px rgb(17 19 24 / 0.08);
}

.crm-activity-stat-row button {
  background:
    linear-gradient(180deg, #ffffff, #fbfcfd);
  border-top: 1px solid #eef1f5;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.crm-activity-stat-row button.active,
.crm-activity-stat-row button:hover {
  background: #ffffff;
  border-color: rgb(227 6 19 / 0.44);
  box-shadow: 0 20px 46px rgb(17 19 24 / 0.12);
  transform: translateY(-1px);
}

.crm-activity-filter-group {
  background: #ffffff;
  border-color: #d8dee7;
  box-shadow: 0 10px 24px rgb(17 19 24 / 0.055);
}

.crm-activity-filter-group button.active {
  background: #111318;
  box-shadow: 0 8px 18px rgb(17 19 24 / 0.18);
}

.crm-activity-card {
  background:
    linear-gradient(180deg, #ffffff 0%, #ffffff 66%, #fbfcfd 100%);
  border-left-width: 3px;
  transition: box-shadow 0.18s ease, transform 0.18s ease, border-color 0.18s ease;
}

.crm-activity-card.report {
  border-left-color: #b45309;
}

.crm-activity-card:hover {
  border-color: #cfd6e0;
  box-shadow: 0 22px 54px rgb(17 19 24 / 0.13);
  transform: translateY(-2px);
}

.crm-activity-card-main {
  background:
    linear-gradient(180deg, #fbfcfd, #ffffff);
  border-color: #e4e9f0;
  box-shadow: inset 0 1px 0 #ffffff;
}

.crm-activity-card-main p {
  white-space: pre-line;
}

.crm-activity-card footer button,
.crm-activity-card footer a {
  background: #fbfcfd;
  color: #111318;
}

.crm-activity-card footer button:hover,
.crm-activity-card footer a:hover {
  background: #111318;
  color: #ffffff;
}

.market-data-community-empty {
  align-items: center;
  background:
    linear-gradient(135deg, rgb(17 19 24 / 0.04), transparent 45%),
    #f3f5f8;
  border: 1px dashed #cfd6e0;
  color: #111318;
  display: grid;
  gap: 7px;
  justify-items: center;
  min-height: 150px;
  padding: 24px;
  text-align: center;
}

.market-data-community-empty svg {
  color: var(--nex-red);
}

.market-data-community-empty strong {
  font-size: 15px;
  font-weight: 950;
}

.market-data-community-empty span {
  color: #5f6673;
  font-size: 12px;
  font-weight: 750;
  max-width: 560px;
}

.public-recruiting-funnel-page {
  background:
    linear-gradient(180deg, #ffffff 0%, #f5f7fb 100%);
  display: grid;
  gap: 20px;
  min-height: 70vh;
  padding: clamp(22px, 5vw, 68px);
}

.public-funnel-progress {
  background: #dfe5ee;
  height: 7px;
  margin: 0 auto;
  max-width: 980px;
  overflow: hidden;
  width: 100%;
}

.public-funnel-progress span {
  background: linear-gradient(90deg, var(--nex-red), #111318);
  display: block;
  height: 100%;
  transition: width 0.25s ease;
}

.public-recruiting-question,
.public-recruiting-result {
  background: #ffffff;
  border: 1px solid #dbe1ea;
  box-shadow: 0 24px 80px rgb(17 19 24 / 0.09);
  display: grid;
  gap: 18px;
  margin: 0 auto;
  max-width: 980px;
  padding: clamp(22px, 4vw, 52px);
  width: 100%;
}

.public-recruiting-question h1,
.public-recruiting-result h1 {
  color: #111318;
  font-size: clamp(34px, 5vw, 62px);
  line-height: 1;
  margin: 0;
  max-width: 850px;
}

.public-recruiting-question > p:not(.eyebrow),
.public-recruiting-result > p:not(.eyebrow) {
  color: #596474;
  font-size: 17px;
  line-height: 1.65;
  margin: 0;
  max-width: 760px;
}

.public-choice-grid,
.public-funnel-card-grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.public-choice-grid button,
.public-funnel-card-button,
.public-funnel-card-grid article {
  background: #fbfcfe;
  border: 1px solid #dbe1ea;
  color: #111318;
  display: grid;
  gap: 10px;
  min-height: 118px;
  padding: 18px;
  text-align: left;
}

.public-choice-grid button {
  align-content: center;
  font-size: 15px;
  font-weight: 900;
}

.public-choice-grid button.active,
.public-funnel-card-button:hover,
.public-funnel-card-button:focus-visible {
  background: #111318;
  border-color: #111318;
  color: #ffffff;
}

.public-funnel-card-button svg,
.public-funnel-card-grid article svg {
  color: var(--nex-red);
}

.public-funnel-card-button strong,
.public-funnel-card-grid article strong {
  font-size: 17px;
  font-weight: 950;
}

.public-funnel-card-button span,
.public-funnel-card-grid article span {
  color: #667282;
  font-size: 13px;
  line-height: 1.5;
}

.public-funnel-card-button:hover span,
.public-funnel-card-button:focus-visible span {
  color: rgb(255 255 255 / 0.74);
}

.public-funnel-card-button em {
  align-items: center;
  color: var(--nex-red);
  display: inline-flex;
  font-size: 12px;
  font-style: normal;
  font-weight: 950;
  gap: 6px;
  text-transform: uppercase;
}

.public-form-grid,
.public-funnel-form {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.public-form-grid .wide,
.public-funnel-form button {
  grid-column: 1 / -1;
}

.public-recruiting-question input,
.public-recruiting-question select,
.public-recruiting-question textarea,
.public-funnel-form input,
.public-funnel-form select {
  background: #ffffff;
  border: 1px solid #ccd4df;
  color: #111318;
  font: inherit;
  min-height: 48px;
  padding: 12px 14px;
  width: 100%;
}

.public-recruiting-question label,
.public-funnel-form label {
  color: #111318;
  display: grid;
  gap: 7px;
  font-size: 13px;
  font-weight: 900;
}

.public-funnel-actions,
.public-funnel-metric-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.public-funnel-metric-row span {
  background: #f3f6fa;
  border: 1px solid #dbe1ea;
  color: #667282;
  display: grid;
  min-width: 170px;
  padding: 14px 16px;
}

.public-funnel-metric-row strong {
  color: #111318;
  font-size: 24px;
  font-weight: 950;
}

.public-proposal-section {
  border-left: 4px solid var(--nex-red);
  display: grid;
  gap: 8px;
  padding: 4px 0 4px 18px;
}

.public-proposal-section h2 {
  color: #111318;
  font-size: 22px;
  margin: 0;
}

.public-proposal-section p {
  color: #4f5b6b;
  line-height: 1.65;
  margin: 0;
}

.recruiting-metric-grid.growth {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.recruiting-flywheel-strip {
  background: #ffffff;
  border: 1px solid #dfe4ec;
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin: 16px 0;
  padding: 12px;
}

.recruiting-flywheel-strip span {
  align-items: center;
  background: #f7f9fc;
  border: 1px solid #e1e7ef;
  color: #111318;
  display: grid;
  font-weight: 900;
  gap: 6px;
  min-height: 76px;
  padding: 12px;
}

.recruiting-flywheel-strip strong {
  align-items: center;
  background: var(--nex-red);
  color: #ffffff;
  display: inline-flex;
  height: 26px;
  justify-content: center;
  width: 26px;
}

.recruiting-growth-qr {
  background: #ffffff;
  border: 1px solid #dfe4ec;
  display: block;
  height: 156px;
  image-rendering: pixelated;
  object-fit: contain;
  padding: 10px;
  width: 156px;
}

.recruiting-qr-locked {
  align-items: center;
  background: #f7f9fc;
  border: 1px dashed #cfd6e2;
  color: #697385;
  display: grid;
  gap: 6px;
  min-height: 156px;
  padding: 16px;
  width: 156px;
}

.recruiting-qr-locked strong {
  color: #111318;
  font-size: 13px;
}

.public-agent-recruiting .agent-recruiting-hero {
  align-items: stretch;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.72fr);
}

.agent-referrer-card {
  align-items: center;
  background: rgb(255 255 255 / 0.1);
  border: 1px solid rgb(255 255 255 / 0.2);
  color: #ffffff;
  display: grid;
  gap: 14px;
  grid-template-columns: auto minmax(0, 1fr);
  margin-top: 22px;
  padding: 16px;
}

.agent-referrer-card img {
  border: 2px solid rgb(255 255 255 / 0.48);
  height: 70px;
  object-fit: cover;
  width: 70px;
}

.agent-referrer-card div {
  display: grid;
  gap: 4px;
}

.agent-referrer-card span,
.agent-referrer-card small {
  color: rgb(255 255 255 / 0.76);
  line-height: 1.45;
}

.public-recruiting-form.compact {
  background: #ffffff;
  border: 1px solid #dfe4ec;
  box-shadow: 0 18px 50px rgb(17 19 24 / 0.12);
  color: #111318;
  display: grid;
  gap: 12px;
  padding: 18px;
}

.public-recruiting-form.compact h2 {
  font-size: 24px;
  margin: 0 0 4px;
}

.public-recruiting-form.compact label {
  color: #111318;
  display: grid;
  font-size: 13px;
  font-weight: 900;
  gap: 6px;
}

.public-recruiting-form.compact input,
.public-recruiting-form.compact select,
.public-recruiting-form.compact textarea {
  border: 1px solid #ccd4df;
  color: #111318;
  font: inherit;
  min-height: 46px;
  padding: 11px 12px;
  width: 100%;
}

.public-recruiting-form.compact textarea {
  min-height: 92px;
  resize: vertical;
}

.public-checkbox {
  align-items: flex-start;
  grid-template-columns: auto minmax(0, 1fr);
}

.public-checkbox input {
  margin-top: 4px;
  min-height: auto;
  width: auto;
}

.agent-recruiting-paths {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.agent-recruiting-paths button {
  background: #ffffff;
  border: 1px solid #dfe4ec;
  color: #111318;
  cursor: pointer;
  display: grid;
  gap: 8px;
  min-height: 130px;
  padding: 18px;
  text-align: left;
}

.agent-recruiting-paths button:hover,
.agent-recruiting-paths button:focus-visible {
  border-color: var(--nex-red);
  box-shadow: inset 0 4px 0 var(--nex-red);
  outline: none;
}

.agent-recruiting-paths span {
  color: var(--nex-red);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.agent-recruiting-paths strong {
  font-size: 18px;
  line-height: 1.25;
}

.agent-recruiting-disclosure {
  border-left: 5px solid var(--nex-red);
}

.agent-recruiting-disclosure p {
  margin: 0 0 8px;
}

@media (max-width: 860px) {
  .recruiting-metric-grid.growth,
  .recruiting-flywheel-strip,
  .agent-recruiting-paths,
  .public-choice-grid,
  .public-funnel-card-grid,
  .public-form-grid,
  .public-funnel-form {
    grid-template-columns: 1fr;
  }

  .public-agent-recruiting .agent-recruiting-hero,
  .recruiting-command-center.growth {
    grid-template-columns: 1fr;
  }

  .recruiting-command-center.growth {
    background: #111318;
  }

  .public-recruiting-funnel-page {
    padding: 16px;
  }

  .public-recruiting-question,
  .public-recruiting-result {
    padding: 22px;
  }

  .public-funnel-actions .btn,
  .public-funnel-actions button {
    width: 100%;
  }
}
