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

* {
  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-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;
}

.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 {
    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-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-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;
}

@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-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 {
    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-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 {
    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 {
    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;
  }
}

.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-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);
}

@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;
  }

  .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-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;
}

.nav-item span {
  min-width: 0;
  overflow-wrap: anywhere;
  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);
}

.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;
}

.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;
}

.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);
}

.app-refresh-btn {
  border-color: rgb(17 24 39 / 0.14);
  color: #171b22;
}

.app-refresh-btn.update-ready {
  border-color: rgb(227 6 19 / 0.34);
  background: rgb(227 6 19 / 0.08);
  color: var(--nex-red);
  box-shadow: 0 10px 24px rgb(227 6 19 / 0.12);
}

.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: 1.74 / 1;
  border-radius: 8px;
  border: 1px solid rgb(17 19 24 / 0.08);
  background: #fff;
  object-fit: contain;
}

.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-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.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-layout {
  display: grid;
  grid-template-columns: minmax(320px, 0.85fr) minmax(0, 1.6fr);
  gap: 16px;
  align-items: start;
}

.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-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-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;
}

@media (max-width: 760px) {
  .crm-drip-grid {
    grid-template-columns: 1fr;
  }
}

.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-timeline-list,
.crm-task-stack,
.crm-task-table {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

.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-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-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-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-cockpit-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .crm-cockpit-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .crm-module .module-hero.crm-hero,
  .crm-cockpit-hero {
    grid-template-columns: 1fr;
    padding: 14px;
  }

  .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;
}

.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;
  }

  .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 {
  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;
}

.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;
}

.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-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-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;
}

.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-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-recovery-banner {
  position: fixed;
  left: max(18px, env(safe-area-inset-left));
  right: max(18px, env(safe-area-inset-right));
  bottom: max(18px, env(safe-area-inset-bottom));
  z-index: 80;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border: 1px solid rgb(227 6 19 / 0.28);
  background: rgb(255 255 255 / 0.96);
  color: #101217;
  padding: 14px 16px;
  box-shadow: 0 24px 80px rgb(0 0 0 / 0.22);
  backdrop-filter: blur(16px);
}

.app-recovery-banner.update {
  border-color: rgb(227 6 19 / 0.38);
}

.app-recovery-banner.reconnect {
  border-color: rgb(20 24 32 / 0.18);
}

.app-recovery-copy {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.app-recovery-copy svg {
  flex: 0 0 auto;
  color: var(--nex-red);
}

.app-recovery-copy strong {
  display: block;
  font-size: 14px;
  font-weight: 950;
}

.app-recovery-copy p {
  margin: 2px 0 0;
  color: #566070;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.35;
}

.app-recovery-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
}

@media (max-width: 780px) {
  .app-recovery-banner {
    flex-direction: column;
    align-items: stretch;
    bottom: calc(96px + env(safe-area-inset-bottom));
    gap: 12px;
  }

  .app-recovery-actions {
    width: 100%;
  }

  .app-recovery-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-dashboard-grid,
  .crm-import-grid,
  .crm-settings-grid,
  .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;
  }

  .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;
  }

  .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: hidden;
    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-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;
  }

  .nav-item.active {
    box-shadow: inset 0 3px 0 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,
  .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-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%;
  max-height: 154px;
  object-fit: contain;
}

.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 {
  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-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;
}

.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);
}

.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(255 255 255 / 0.12), rgb(227 6 19 / 0.05)),
    #eef6fb;
}

.public-hero-photo-cycle span {
  position: absolute;
  inset: 0;
  opacity: 0;
  background-size: cover;
  background-position: center;
  transform: scale(1.04);
  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.04);
  }

  5% {
    opacity: 1;
    transform: scale(1.045);
  }

  18% {
    opacity: 1;
    transform: scale(1.065);
  }

  26% {
    opacity: 0;
    transform: scale(1.085);
  }

  100% {
    opacity: 0;
    transform: scale(1.09);
  }
}

@keyframes publicFirstHeroPhotoFade {
  0%,
  18% {
    opacity: 1;
    transform: scale(1.04);
  }

  26%,
  94% {
    opacity: 0;
    transform: scale(1.09);
  }

  100% {
    opacity: 1;
    transform: scale(1.04);
  }
}

.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-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-intro-card {
  align-self: stretch;
  display: grid;
  gap: 10px;
  min-width: 260px;
  padding: 18px;
  border: 1px solid rgb(255 255 255 / 0.38);
  border-radius: 18px;
  background: rgb(255 255 255 / 0.88);
  color: #111318;
  box-shadow: 0 18px 48px rgb(17 19 24 / 0.16);
}

.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;
}

.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-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 {
  height: 130px;
  border-radius: 24px;
  background: linear-gradient(90deg, #eef0f3, #ffffff, #eef0f3);
  background-size: 200% 100%;
  animation: shimmer 1.2s infinite linear;
}

@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;
  }

  .market-pulse-ticker {
    grid-template-columns: 1fr;
    gap: 6px;
    min-height: auto;
    padding: 8px 14px;
  }

  .market-pulse-label {
    justify-content: center;
  }

  .market-pulse-ticker > small {
    display: none;
  }

  .market-pulse-marquee {
    width: 100%;
  }

  .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;
}

@media (max-width: 980px) {
  .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) {
  .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%;
  }
}

.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;
}

.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;
}

.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;
}

@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 {
    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;
  }
}

/* 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-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-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);
}

.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);
}

.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;
}

.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-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 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.72fr);
  gap: 16px;
  align-items: start;
}

.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%;
  }
}
