:root {
  color-scheme: light;
  --bg: #f8fafc;
  --surface: #ffffff;
  --surface-soft: #f8fafc;
  --ink: #0f172a;
  --muted: #64748b;
  --line: #e2e8f0;
  --blue: #0875f5;
  --blue-soft: #eff6ff;
  --green: #16a34a;
  --green-soft: #f0fdf4;
  --orange: #f97316;
  --orange-soft: #fff2e8;
  --purple: #7047eb;
  --purple-soft: #f1edff;
  --shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
  --cx-color-bg-canvas: #f8fafc;
  --cx-color-bg-surface: #ffffff;
  --cx-color-text-primary: #0f172a;
  --cx-color-text-secondary: #475569;
  --cx-color-text-muted: #64748b;
  --cx-color-border-divider: #e9eef5;
  --cx-color-border-default: #e2e8f0;
  --cx-color-border-strong: #cbd5e1;
  --cx-color-action-primary: #0875f5;
  --cx-color-action-border: #1683ff;
  --cx-color-action-soft: #eff6ff;
  --cx-color-status-success: #16a34a;
  --cx-color-status-success-soft: #f0fdf4;
}

body.auth-required {
  overflow: hidden;
}

body:not([data-auth-admin="true"]) [data-route="admin"] {
  display: none !important;
}

.auth-screen[hidden] {
  display: none;
}

.auth-screen {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  grid-template-columns: minmax(340px, 0.9fr) minmax(480px, 1.1fr);
  min-height: 100vh;
  color: #0b1638;
  background: #f6f9ff;
}

.auth-brand {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(48px, 8vw, 120px);
  color: #fff;
  background: #071c4d;
}

.auth-brand > img {
  width: min(260px, 72%);
  padding: 12px 16px;
  background: #fff;
  border-radius: 6px;
}

.auth-brand > p {
  max-width: 520px;
  margin: 34px 0 42px;
  color: #cbd8f4;
  font-size: 18px;
  line-height: 1.65;
}

.auth-brand ul {
  display: grid;
  gap: 25px;
  max-width: 520px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.auth-brand li {
  display: grid;
  grid-template-columns: 44px 1fr;
  gap: 16px;
  align-items: start;
}

.auth-brand li > svg {
  width: 42px;
  height: 42px;
  padding: 10px;
  color: #54a3ff;
  background: #102c65;
  border: 1px solid #27477f;
  border-radius: 6px;
}

.auth-brand li span {
  color: #aebfe1;
  font-size: 14px;
  line-height: 1.5;
}

.auth-brand li strong {
  display: block;
  margin-bottom: 3px;
  color: #fff;
  font-size: 15px;
}

.auth-panel {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 42px;
}

.auth-card {
  position: relative;
  width: min(100%, 460px);
  padding: 48px;
  background: #fff;
  border: 1px solid #dbe4f2;
  border-radius: 8px;
  box-shadow: 0 22px 65px rgba(21, 49, 95, 0.12);
}

.auth-lock {
  display: grid;
  width: 48px;
  height: 48px;
  margin-bottom: 28px;
  place-items: center;
  color: #0868f7;
  background: #eaf3ff;
  border: 1px solid #d4e6ff;
  border-radius: 6px;
}

.auth-lock svg {
  width: 24px;
  height: 24px;
}

.auth-card header > p {
  margin: 0 0 8px;
  color: #0868f7;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
}

.auth-card header h1 {
  margin: 0 0 10px;
  font-size: 30px;
  line-height: 1.2;
  letter-spacing: 0;
}

.auth-card header > span {
  display: block;
  color: #64708a;
  font-size: 14px;
  line-height: 1.55;
}

.auth-card form {
  display: grid;
  gap: 18px;
  margin-top: 30px;
}

.auth-card form > label {
  display: grid;
  gap: 7px;
  color: #22304e;
  font-size: 13px;
  font-weight: 700;
}

.auth-card input[type="email"],
.auth-card input[type="password"],
.auth-card input[type="text"] {
  width: 100%;
  height: 46px;
  padding: 0 13px;
  color: #0b1638;
  background: #fff;
  border: 1px solid #cdd8e8;
  border-radius: 5px;
  outline: none;
}

.auth-card input:focus {
  border-color: #0877ff;
  box-shadow: 0 0 0 3px rgba(8, 119, 255, 0.12);
}

.auth-password-field {
  position: relative;
  display: block;
}

.auth-password-field input {
  padding-right: 46px !important;
}

.auth-password-field button {
  position: absolute;
  top: 5px;
  right: 5px;
  display: grid;
  width: 36px;
  height: 36px;
  padding: 0;
  color: #61708e;
  background: transparent;
  border: 0;
  place-items: center;
}

.auth-password-field svg {
  width: 18px;
}

.auth-form-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  color: #53617b;
  font-size: 13px;
}

.auth-form-row label {
  display: flex;
  align-items: center;
  gap: 8px;
}

.auth-form-row button,
.auth-back {
  padding: 0;
  color: #0868f7;
  background: transparent;
  border: 0;
  font-weight: 700;
}

.auth-message {
  min-height: 20px;
  margin: -4px 0;
  color: #c32929;
  font-size: 13px;
  line-height: 1.45;
}

.auth-message.success {
  color: #07854a;
}

.auth-submit {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  height: 48px;
  color: #fff;
  background: #0877ff;
  border: 1px solid #0877ff;
  border-radius: 5px;
  font-size: 14px;
  font-weight: 750;
}

.auth-submit:hover {
  background: #0566db;
}

.auth-submit svg {
  width: 18px;
}

.auth-back {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  height: 32px;
}

.auth-back svg {
  width: 16px;
}

.auth-card footer {
  margin-top: 28px;
  padding-top: 22px;
  color: #7a869d;
  border-top: 1px solid #e6ebf3;
  font-size: 12px;
  line-height: 1.5;
}

.auth-security-note {
  display: flex;
  gap: 8px;
  align-items: center;
  margin-top: 22px;
  color: #7a869d;
  font-size: 12px;
}

.auth-security-note svg {
  width: 15px;
}

@media (max-width: 840px) {
  .auth-screen {
    grid-template-columns: 1fr;
    overflow-y: auto;
  }

  .auth-brand {
    min-height: 220px;
    padding: 36px;
  }

  .auth-brand > p {
    margin: 20px 0 0;
    font-size: 15px;
  }

  .auth-brand ul {
    display: none;
  }

  .auth-panel {
    padding: 28px 18px 46px;
  }

  .auth-card {
    padding: 30px 24px;
  }
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  background: var(--bg);
  color: var(--ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  overflow-x: hidden;
}

button,
input,
select {
  font: inherit;
}

button,
select {
  white-space: nowrap;
}

a {
  color: var(--blue);
  font-weight: 750;
  text-decoration: none;
}

.linkedin-mark {
  display: inline-grid;
  place-items: center;
  width: 15px;
  height: 15px;
  flex: 0 0 auto;
  border-radius: 2px;
  background: #0a66c2;
  color: #fff;
  font-size: 8px;
  font-weight: 900;
  line-height: 1;
}

.linkedin-mark.tiny {
  width: 11px;
  height: 11px;
  font-size: 6px;
  vertical-align: -1px;
}

.dashboard-shell {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  min-height: 100vh;
}

.sidebar {
  display: flex;
  flex-direction: column;
  gap: 18px;
  border-right: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.92);
  padding: 22px 18px;
}

.sidebar-brand img {
  width: 190px;
  height: 64px;
  object-fit: contain;
  object-position: left center;
}

.nav-group {
  display: grid;
  gap: 5px;
}

.nav-group p {
  margin: 16px 10px 6px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
}

.nav-item {
  min-height: 42px;
  border-radius: 8px;
  color: var(--ink);
  display: flex;
  align-items: center;
  padding: 0 14px;
  font-size: 14px;
  font-weight: 800;
}

.nav-item.active,
.nav-item:hover {
  background: var(--blue-soft);
  color: var(--blue);
}

.plan-card {
  margin-top: auto;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
  padding: 14px;
  box-shadow: var(--shadow);
}

.plan-card span,
.plan-card small {
  color: var(--muted);
  font-size: 12px;
}

.plan-card strong {
  display: block;
  margin-top: 4px;
  color: var(--blue);
}

.plan-card button {
  width: 100%;
  min-height: 34px;
  margin-top: 12px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  color: var(--ink);
  font-weight: 800;
}

.usage-bar {
  height: 8px;
  margin: 14px 0 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #e8eefb;
}

.usage-bar span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--blue);
}

.main-shell {
  min-width: 0;
  overflow-x: hidden;
}

.product-brand,
.product-nav {
  display: none;
}

.app-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 78px;
  border-bottom: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.92);
  padding: 14px 28px;
  position: sticky;
  top: 0;
  z-index: 5;
  min-width: 0;
}

.global-search {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) minmax(120px, 170px) 72px 86px;
  gap: 8px;
  width: min(920px, 100%);
  min-width: 0;
}

input,
select {
  min-height: 42px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  outline: none;
  padding: 0 12px;
}

input:focus,
select:focus {
  border-color: rgba(21, 93, 252, 0.7);
  box-shadow: 0 0 0 3px rgba(21, 93, 252, 0.1);
}

.header-actions,
.hero-actions,
.card-header,
.table-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.header-actions {
  justify-content: flex-end;
  flex-wrap: wrap;
}

.icon-button,
.secondary-button,
.primary-button,
.ghost-button {
  min-height: 42px;
  border-radius: 8px;
  border: 1px solid var(--line);
  background: #fff;
  color: var(--ink);
  cursor: pointer;
  font-weight: 850;
  padding: 0 14px;
}

.primary-button {
  min-width: 94px;
  border-color: var(--blue);
  background: var(--blue);
  color: #fff;
}

.primary-button:disabled,
.directory-detail-actions button:disabled {
  border-color: #d8dee8;
  background: #eef1f5;
  color: #8a94a6;
  cursor: not-allowed;
  opacity: 1;
}

.secondary-button {
  color: var(--blue);
}

.ghost-button {
  min-height: 34px;
  color: var(--muted);
}

.user-chip {
  display: flex;
  align-items: center;
  gap: 10px;
}

.user-chip span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--blue);
  color: #fff;
  font-size: 12px;
  font-weight: 900;
}

.user-chip strong,
.user-chip small {
  display: block;
  white-space: nowrap;
}

.user-chip strong {
  font-size: 13px;
}

.user-chip small {
  color: var(--muted);
  font-size: 12px;
}

.dashboard-main {
  display: grid;
  gap: 16px;
  padding: 24px;
  min-width: 0;
}

.hero-row {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}

.hero-row h1 {
  margin: 0 0 8px;
  font-size: 27px;
}

.hero-row p,
.filter-heading p,
.card-header p {
  margin: 0;
  color: var(--muted);
  font-size: 14px;
}

.filter-panel,
.contact-enrichment,
.card,
.metric-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface);
  box-shadow: var(--shadow);
  min-width: 0;
}

.filter-panel {
  padding: 16px;
}

.filter-panel.collapsed {
  display: none;
}

.filter-heading {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}

.filter-heading h2,
.card-header h2 {
  margin: 0;
  font-size: 18px;
}

.filter-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 12px;
}

label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
}

.toggle-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
  align-self: end;
}

.toggle-grid label {
  display: flex;
  align-items: center;
  min-height: 42px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 0 10px;
  color: var(--ink);
}

.active-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.chip,
.pill {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  border-radius: 999px;
  background: var(--blue-soft);
  color: var(--blue);
  padding: 3px 9px;
  font-size: 12px;
  font-weight: 850;
}

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

.contact-enrichment {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
  padding: 16px;
}

.contact-copy {
  min-width: 0;
}

.contact-copy span {
  display: inline-flex;
  min-height: 24px;
  align-items: center;
  border-radius: 999px;
  background: var(--green-soft);
  color: var(--green);
  padding: 3px 9px;
  font-size: 12px;
  font-weight: 850;
}

.contact-copy h2 {
  margin: 10px 0 6px;
  font-size: 18px;
}

.contact-copy p {
  margin: 0;
  color: var(--muted);
  font-size: 14px;
}

.contact-actions {
  display: flex;
  gap: 8px;
}

.contact-list {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.contact-item {
  display: grid;
  gap: 4px;
  min-height: 74px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px;
  background: var(--surface-soft);
}

.contact-item strong,
.contact-item small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.contact-item small {
  color: var(--muted);
}

.contact-item span {
  color: var(--green);
  font-size: 12px;
  font-weight: 850;
}

.metric-card {
  min-height: 142px;
  padding: 16px;
  color: inherit;
  text-align: left;
  font: inherit;
  cursor: pointer;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
  overflow: hidden;
  white-space: normal;
}

.metric-card:hover,
.metric-card:focus-visible {
  border-color: rgba(21, 93, 252, 0.38);
  box-shadow: 0 18px 45px rgba(16, 31, 70, 0.13);
  transform: translateY(-1px);
}

.metric-title {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.2;
}

.metric-value {
  margin: 12px 0 6px;
  font-size: 28px;
  font-weight: 900;
}

.metric-change {
  color: var(--green);
  font-size: 12px;
  font-weight: 850;
}

.sparkline {
  width: 100%;
  height: 34px;
  margin-top: 14px;
  border-radius: 8px;
  background:
    linear-gradient(135deg, transparent 0 44%, rgba(21, 93, 252, 0.22) 45% 48%, transparent 49% 100%),
    linear-gradient(170deg, transparent 0 55%, rgba(21, 93, 252, 0.18) 56% 60%, transparent 61% 100%),
    var(--surface-soft);
}

.content-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(300px, 0.95fr);
  gap: 14px;
  min-width: 0;
}

.lower-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(290px, 0.9fr) minmax(270px, 0.8fr);
  gap: 14px;
  min-width: 0;
}

.lower-grid > * {
  min-width: 0;
}

.card {
  padding: 16px;
}

.card-header {
  justify-content: space-between;
  margin-bottom: 14px;
}

.table-wrap {
  overflow: auto;
  max-width: 100%;
}

table {
  width: 100%;
  border-collapse: collapse;
}

.priority-card table {
  min-width: 760px;
}

.priority-card th:nth-child(2),
.priority-card td:nth-child(2) {
  width: 112px;
}

.priority-card th:nth-child(4),
.priority-card td:nth-child(4) {
  width: 146px;
}

th,
td {
  border-bottom: 1px solid var(--line);
  padding: 12px 10px;
  text-align: left;
  vertical-align: middle;
}

th {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
}

td {
  font-size: 13px;
}

.company-cell {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 230px;
}

.company-cell > div:last-child {
  min-width: 0;
}

.company-mark {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 8px;
  background: var(--blue-soft);
  color: var(--blue);
  font-size: 12px;
  font-weight: 900;
  border: 0;
  flex: 0 0 auto;
}

.company-name {
  display: block;
  margin-bottom: 4px;
  border: 0;
  background: transparent;
  color: var(--ink);
  cursor: pointer;
  font-weight: 850;
  padding: 0;
  text-align: left;
  white-space: normal;
}

.company-name:hover,
.company-name:focus-visible {
  color: var(--blue);
}

.company-cell span {
  display: block;
  line-height: 1.25;
}

.company-cell span,
.why-copy,
.activity-item small,
.schedule-item small,
.recommendation small {
  color: var(--muted);
}

.score-box {
  display: inline-grid;
  place-items: center;
  min-width: 44px;
  min-height: 34px;
  border-radius: 8px;
  background: var(--green-soft);
  color: var(--green);
  font-weight: 900;
}

.action-buttons {
  display: flex;
  gap: 8px;
  min-width: max-content;
}

.action-buttons button {
  min-width: 42px;
  height: 38px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--blue);
  cursor: pointer;
  font-weight: 900;
  padding: 0 8px;
}

.company-row {
  transition: background 140ms ease;
}

.company-row:hover {
  background: var(--surface-soft);
}

.recommendation-list,
.activity-list,
.schedule-list,
.pipeline-list {
  display: grid;
  gap: 12px;
}

.recommendation,
.activity-item,
.schedule-item,
.pipeline-item {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border-bottom: 1px solid var(--line);
  padding-bottom: 12px;
}

button.recommendation {
  width: 100%;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
  font: inherit;
  text-align: left;
  white-space: normal;
  overflow: hidden;
}

button.recommendation:hover strong,
button.recommendation:focus-visible strong {
  color: var(--blue);
}

.recommendation:last-child,
.activity-item:last-child,
.schedule-item:last-child,
.pipeline-item:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.rec-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 8px;
  background: var(--green-soft);
  color: var(--green);
  font-weight: 900;
}

.recommendation strong,
.activity-item strong,
.schedule-item strong {
  display: block;
  margin-bottom: 4px;
  line-height: 1.2;
}

.recommendation small,
.activity-item small,
.schedule-item small {
  display: block;
  line-height: 1.25;
}

.likelihood {
  border-radius: 8px;
  background: var(--green-soft);
  color: var(--green);
  padding: 6px 8px;
  font-weight: 900;
}

.pipeline-body {
  display: grid;
  grid-template-columns: 150px minmax(190px, 1fr);
  gap: 18px;
  align-items: center;
}

.pipeline-list {
  min-width: 0;
}

.pipeline-item {
  grid-template-columns: 40px minmax(110px, 1fr) minmax(76px, auto);
}

.pipeline-item strong {
  min-width: 0;
  line-height: 1.15;
}

.pipeline-item > span:last-child {
  justify-self: end;
  color: var(--muted);
  font-weight: 800;
  white-space: nowrap;
}

.donut {
  display: grid;
  place-items: center;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  background: conic-gradient(var(--blue) 0 28%, #68c49a 28% 57%, #fb923c 57% 75%, #8b5cf6 75% 90%, #64748b 90% 100%);
  position: relative;
}

.donut::after {
  content: "";
  position: absolute;
  width: 92px;
  height: 92px;
  border-radius: 50%;
  background: #fff;
}

.donut span {
  position: relative;
  z-index: 1;
  text-align: center;
  font-size: 26px;
  font-weight: 900;
}

.donut small {
  color: var(--muted);
  font-size: 11px;
}

.empty-row {
  color: var(--muted);
  text-align: center;
  padding: 24px;
}

body.drawer-open {
  overflow: hidden;
}

.drawer-backdrop {
  position: fixed;
  inset: 0;
  z-index: 30;
  background: rgba(7, 19, 58, 0.34);
  backdrop-filter: blur(2px);
}

.company-drawer {
  position: fixed;
  inset: 0 0 0 auto;
  z-index: 31;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
  width: min(760px, calc(100vw - 64px));
  height: 100dvh;
  border-left: 1px solid var(--line);
  background: var(--surface);
  box-shadow: -24px 0 70px rgba(7, 19, 58, 0.2);
}

.company-drawer[hidden],
.drawer-backdrop[hidden] {
  display: none;
}

.drawer-header {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  border-bottom: 1px solid var(--line);
  padding: 22px 24px 18px;
}

.drawer-heading {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.company-mark-large {
  width: 52px;
  height: 52px;
  font-size: 14px;
}

.company-mark,
.directory-avatar.company-avatar {
  position: relative;
  overflow: hidden;
}

.company-logo-fallback {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
}

.company-logo-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background: #fff;
  object-fit: contain;
  padding: 4px;
}

.company-logo-image[hidden] {
  display: none;
}

.drawer-heading > div:last-child {
  min-width: 0;
}

.drawer-heading h2 {
  margin: 3px 0 4px;
  font-size: 24px;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.drawer-heading p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.35;
}

.drawer-eyebrow {
  color: var(--blue);
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
}

.drawer-close {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 38px;
  height: 38px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--muted);
  cursor: pointer;
  font-size: 25px;
  line-height: 1;
}

.drawer-tabs {
  display: flex;
  gap: 24px;
  overflow-x: auto;
  border-bottom: 1px solid var(--line);
  padding: 0 24px;
}

.drawer-tab {
  min-height: 48px;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: var(--muted);
  cursor: pointer;
  font-weight: 800;
  padding: 0;
}

.drawer-tab.active {
  border-bottom-color: var(--blue);
  color: var(--blue);
}

.drawer-body {
  overflow-y: auto;
  padding: 20px 24px 40px;
}

.drawer-loading,
.drawer-error {
  display: grid;
  min-height: 280px;
  place-items: center;
  color: var(--muted);
  text-align: center;
}

.drawer-error {
  color: #b42318;
}

.detail-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 20px;
}

.detail-actions.inline {
  margin: 0;
}

.detail-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  cursor: pointer;
  font-weight: 800;
  padding: 0 12px;
}

.detail-action:hover,
.detail-action:focus-visible {
  border-color: rgba(21, 93, 252, 0.45);
  color: var(--blue);
}

.detail-action.primary {
  border-color: var(--blue);
  background: var(--blue);
  color: #fff;
}

.detail-summary,
.score-hero {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 18px;
  align-items: start;
  border-bottom: 1px solid var(--line);
  padding: 0 0 22px;
}

.detail-summary h3,
.detail-section h3 {
  margin: 0 0 8px;
  font-size: 16px;
}

.detail-summary p,
.detail-note p,
.reason-list p,
.motion-grid p,
.committee-list p,
.founder-list p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.detail-score {
  display: grid;
  place-items: center;
  width: 96px;
  min-height: 88px;
  border-radius: 8px;
  background: var(--green-soft);
  color: var(--green);
}

.detail-score strong {
  font-size: 30px;
  line-height: 1;
}

.detail-score span {
  font-size: 11px;
  font-weight: 850;
}

.detail-section {
  border-bottom: 1px solid var(--line);
  padding: 22px 0;
}

.detail-section:last-child {
  border-bottom: 0;
}

.detail-section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.detail-section-heading h3 {
  margin: 0;
}

.validation-badge {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  border-radius: 8px;
  background: var(--orange-soft);
  color: var(--orange);
  padding: 4px 9px;
  font-size: 12px;
  font-weight: 850;
  text-transform: capitalize;
}

.validation-badge.accepted {
  background: var(--green-soft);
  color: var(--green);
}

.validation-badge.rejected {
  background: #fff0f0;
  color: #c83232;
}

.verified-refresh .detail-note {
  margin-top: 16px;
}

.detail-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px 20px;
}

.detail-field {
  min-width: 0;
}

.detail-field span,
.detail-note span,
.motion-grid span {
  display: block;
  margin-bottom: 5px;
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-transform: uppercase;
}

.detail-field strong {
  display: block;
  font-size: 13px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.detail-tags,
.founder-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

.detail-tags span,
.founder-search {
  min-height: 30px;
  border: 1px solid #dbe6ff;
  border-radius: 8px;
  background: var(--blue-soft);
  color: var(--blue);
  font-size: 12px;
  font-weight: 800;
  padding: 5px 9px;
}

.founder-search {
  cursor: pointer;
}

.detail-note {
  margin-top: 18px;
}

.score-hero {
  grid-template-columns: 110px minmax(0, 1fr);
}

.score-factors {
  display: grid;
  gap: 9px;
}

.score-factor > div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 4px;
  font-size: 12px;
}

.score-track {
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: #e8eef8;
}

.score-track span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--green);
}

.score-factor.penalty {
  color: #b42318;
}

.score-factor.penalty .score-track span {
  background: #d92d20;
}

.similarity-section > p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.55;
}

.similarity-coverage {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
  color: var(--muted);
  font-size: 11px;
}

.similarity-coverage strong {
  color: var(--ink);
}

.similarity-factors {
  display: grid;
  gap: 11px;
}

.similarity-factor > div:first-child {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  margin-bottom: 5px;
  font-size: 11px;
}

.similarity-factor span {
  min-width: 0;
  color: var(--muted);
  overflow-wrap: anywhere;
}

.similarity-factor em {
  color: var(--blue);
  font-style: normal;
  font-weight: 800;
}

.similarity-section .score-track span {
  background: var(--blue);
}

.relationship-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  margin-top: 12px;
}

.relationship-list button {
  display: grid;
  min-width: 0;
  gap: 3px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  padding: 11px;
  text-align: left;
  cursor: pointer;
}

.relationship-list button:hover {
  border-color: #b7cdf8;
  background: #f8fbff;
}

.relationship-list span,
.relationship-list small {
  color: var(--muted);
  font-size: 10px;
}

.relationship-list strong {
  overflow-wrap: anywhere;
  color: var(--ink);
  font-size: 12px;
}

.section-helper {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 10px;
}

.similar-company-list {
  display: grid;
  border-top: 1px solid var(--line);
}

.similar-company-list > button {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 48px 42px;
  align-items: center;
  gap: 10px;
  min-width: 0;
  border: 0;
  border-bottom: 1px solid var(--line);
  background: #fff;
  padding: 11px 2px;
  text-align: left;
  cursor: pointer;
}

.similar-company-list > button:hover {
  background: #f8fbff;
}

.similar-company-list .company-logo-shell {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
}

.similar-company-list .company-logo-image {
  max-width: 27px;
  max-height: 27px;
  object-fit: contain;
}

.similar-company-list > button > div {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.similar-company-list strong,
.similar-company-list small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.similar-company-list strong {
  color: var(--ink);
  font-size: 11px;
}

.similar-company-list small {
  color: var(--muted);
  font-size: 9px;
}

.similar-company-list > button > em {
  display: grid;
  gap: 1px;
  color: var(--blue);
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
  text-align: right;
}

.similar-company-list > button > em:last-child {
  color: var(--green);
}

.similar-company-list > button > em small {
  color: inherit;
  font-size: 8px;
  font-weight: 700;
  text-transform: uppercase;
}

.reason-list,
.committee-list,
.motion-grid {
  display: grid;
  gap: 10px;
}

.reason-list > div {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 8px;
}

.reason-list > div > span {
  color: var(--green);
  font-weight: 900;
}

.risk-list > div > span {
  color: #b42318;
}

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

.motion-grid > div {
  min-width: 0;
  border-left: 2px solid var(--line);
  padding-left: 12px;
}

.motion-grid > div:first-child {
  grid-column: 1 / -1;
}

.committee-list > div {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
}

.committee-list strong {
  font-size: 13px;
}

.contact-coverage {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  border-bottom: 1px solid var(--line);
  padding-bottom: 22px;
}

.contact-coverage > div {
  display: grid;
  gap: 4px;
  min-height: 88px;
  align-content: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface-soft);
  padding: 12px;
}

.contact-coverage strong {
  font-size: 24px;
}

.contact-coverage span {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.3;
}

.drawer-people-section .detail-section-heading {
  align-items: flex-start;
}

.drawer-people-section .detail-section-heading p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 11px;
}

.drawer-contact-tools {
  display: flex;
  justify-content: flex-end;
  gap: 7px;
  flex-wrap: wrap;
}

.drawer-contact-tools .detail-action {
  min-height: 34px;
  padding: 0 9px;
  font-size: 10px;
}

.drawer-contact-tools .detail-action:disabled {
  border-color: var(--line);
  background: #eef1f6;
  color: #8a94a7;
  cursor: default;
}

.drawer-contact-list {
  border-top: 1px solid var(--line);
}

.drawer-contact-row {
  display: grid;
  grid-template-columns: 40px minmax(180px, 1fr) 76px auto;
  align-items: center;
  gap: 11px;
  min-width: 0;
  border-bottom: 1px solid var(--line);
  padding: 12px 0;
}

.drawer-contact-avatar {
  position: relative;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid #d7e2f4;
  border-radius: 50%;
  background: #eef4ff;
  color: var(--blue);
  font-size: 10px;
  font-weight: 900;
}

.drawer-contact-avatar span {
  position: relative;
  z-index: 0;
}

.drawer-contact-photo {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  object-fit: cover;
}

.drawer-contact-person,
.drawer-contact-fit {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.drawer-contact-person strong,
.drawer-contact-person span,
.drawer-contact-person small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.drawer-contact-person strong {
  color: var(--ink);
  font-size: 12px;
}

.drawer-contact-person span,
.drawer-contact-person small,
.drawer-contact-fit span {
  color: var(--muted);
  font-size: 10px;
}

.drawer-contact-fit {
  text-align: center;
}

.drawer-contact-fit strong {
  color: var(--green);
  font-size: 17px;
}

.drawer-contact-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
}

.drawer-contact-actions a {
  display: grid;
  place-items: center;
  width: 31px;
  height: 31px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
}

.drawer-contact-actions button {
  min-height: 32px;
  border: 1px solid #cfdcf8;
  border-radius: 6px;
  background: #f7faff;
  color: var(--blue);
  padding: 0 9px;
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
  cursor: pointer;
}

.drawer-contact-actions button:disabled {
  border-color: #cce6d5;
  background: #f2fff6;
  color: var(--green);
  cursor: default;
}

.drawer-contact-loading,
.drawer-contact-error,
.drawer-contact-empty {
  display: grid;
  min-height: 120px;
  align-content: center;
  justify-items: center;
  color: var(--muted);
  text-align: center;
}

.drawer-contact-error {
  color: #b42318;
}

.drawer-contact-empty strong {
  color: var(--ink);
  font-size: 13px;
}

.drawer-contact-empty p {
  max-width: 420px;
  margin: 5px 0 0;
  font-size: 11px;
  line-height: 1.5;
}

@media (max-width: 1500px) {
  .lower-grid {
    grid-template-columns: minmax(0, 1fr) minmax(360px, 1fr);
  }

  .lower-grid > .card:last-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 1380px) {
  .dashboard-shell {
    grid-template-columns: 88px minmax(0, 1fr);
  }

  .sidebar {
    padding: 16px 10px;
  }

  .sidebar-brand img {
    width: 58px;
  }

  .nav-item {
    justify-content: center;
    padding: 0 8px;
    font-size: 0;
  }

  .nav-item::first-letter {
    font-size: 14px;
  }

  .nav-group p,
  .plan-card {
    display: none;
  }

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

@media (max-width: 1220px) {
  .contact-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .content-grid,
  .lower-grid {
    grid-template-columns: 1fr;
  }
}

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

  .sidebar {
    display: none;
  }

  .app-header,
  .hero-row {
    align-items: stretch;
    flex-direction: column;
  }

  .global-search,
  .filter-grid,
  .metric-grid,
  .contact-enrichment,
  .contact-list {
    grid-template-columns: 1fr;
  }

  .header-actions {
    justify-content: flex-start;
    flex-wrap: wrap;
  }

  .dashboard-main {
    padding: 14px;
  }

  .company-drawer {
    width: 100vw;
  }

  .drawer-header,
  .drawer-body {
    padding-left: 16px;
    padding-right: 16px;
  }

  .drawer-tabs {
    gap: 18px;
    padding: 0 16px;
  }

  .detail-grid,
  .contact-coverage,
  .motion-grid {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 560px) {
  .pipeline-body {
    grid-template-columns: minmax(0, 1fr);
  }

  .pipeline-item {
    grid-template-columns: 36px minmax(0, 1fr) auto;
  }

  .donut {
    margin: 0 auto;
  }

  .detail-summary,
  .score-hero {
    grid-template-columns: 1fr;
  }

  .detail-score {
    width: 100%;
  }

  .detail-grid,
  .contact-coverage,
  .motion-grid {
    grid-template-columns: 1fr;
  }

  .motion-grid > div:first-child {
    grid-column: auto;
  }

  .drawer-people-section .detail-section-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .drawer-contact-tools {
    justify-content: flex-start;
  }

  .drawer-contact-row {
    grid-template-columns: 38px minmax(0, 1fr) 62px;
  }

  .drawer-contact-actions {
    grid-column: 2 / -1;
    justify-content: flex-start;
  }
}

/* AI-derived Work Queue */
.work-queue-workspace {
  display: none;
  min-width: 0;
  color: #111a31;
}

.dashboard-main.work-queue-view {
  display: block;
  max-width: none;
  padding: 20px;
}

.dashboard-main.work-queue-view > :not(#work-queue) {
  display: none;
}

.dashboard-main.work-queue-view #work-queue {
  display: block;
}

.wq-page-header,
.wq-page-actions,
.wq-automation-strip,
.wq-rail-title,
.wq-filter-heading,
.wq-list-toolbar,
.wq-decision-head,
.wq-decision-meta,
.wq-decision-actions,
.wq-detail-heading,
.wq-confidence-row,
.wq-context-person,
.wq-detail-actions,
.wq-quiet-note {
  display: flex;
  align-items: center;
}

.wq-page-header {
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 16px;
}

.wq-page-header h1 {
  margin: 3px 0 4px;
  font-size: 27px;
  letter-spacing: 0;
}

.wq-page-header p,
.wq-quiet-note p,
.wq-detail-panel p {
  margin: 0;
  color: #66728b;
  line-height: 1.45;
}

.wq-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #0768f5;
  font-size: 11px;
  font-weight: 850;
  text-transform: uppercase;
}

.wq-eyebrow svg,
.wq-page-actions svg,
.wq-automation-strip svg,
.wq-rail-title svg,
.wq-suggestion svg,
.wq-quiet-note svg,
.wq-detail-section h3 svg {
  width: 17px;
  height: 17px;
}

.wq-page-actions {
  gap: 9px;
}

.wq-button-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  text-decoration: none;
}

.wq-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.wq-metric {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-height: 92px;
  border: 1px solid #dfe5ef;
  border-radius: 8px;
  background: #fff;
  padding: 14px;
}

.wq-metric > span,
.wq-decision-icon,
.wq-avatar,
.wq-evidence-icon {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
}

.wq-metric > span {
  width: 42px;
  height: 42px;
  border-radius: 7px;
  background: #ebf3ff;
  color: #0768f5;
}

.wq-metric.warn > span { background: #fff2e6; color: #e76f00; }
.wq-metric.danger > span { background: #fff0f0; color: #dc3c3c; }
.wq-metric.review > span { background: #f3edff; color: #7143d9; }
.wq-metric svg { width: 20px; height: 20px; }
.wq-metric small { display: block; color: #66728b; font-weight: 700; }
.wq-metric strong { display: block; margin-top: 2px; font-size: 24px; line-height: 1; }

.wq-automation-strip {
  gap: 9px;
  margin: 12px 0;
  border: 1px solid #b9e7d0;
  border-radius: 7px;
  background: #effbf5;
  color: #147247;
  padding: 10px 13px;
  font-size: 12px;
  font-weight: 750;
}

.wq-layout {
  display: grid;
  grid-template-columns: minmax(210px, 238px) minmax(420px, 1fr) minmax(320px, 390px);
  align-items: stretch;
  min-height: 680px;
  border: 1px solid #dfe5ef;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}

.wq-filter-rail,
.wq-decision-panel,
.wq-detail-panel {
  min-width: 0;
}

.wq-filter-rail {
  border-right: 1px solid #dfe5ef;
  padding: 14px;
}

.wq-ai-search {
  position: relative;
  border: 1px solid #cfd8e6;
  border-radius: 7px;
  padding: 11px;
}

.wq-rail-title {
  gap: 7px;
  margin-bottom: 9px;
  color: #17213a;
  font-size: 12px;
}

.wq-ai-search textarea {
  width: 100%;
  resize: none;
  border: 0;
  background: transparent;
  color: #34405a;
  font: inherit;
  font-size: 12px;
  line-height: 1.5;
  outline: none;
  padding: 0 24px 0 0;
}

.wq-ai-search > button {
  position: absolute;
  right: 9px;
  bottom: 9px;
  display: grid;
  place-items: center;
  width: 27px;
  height: 27px;
  border: 0;
  border-radius: 6px;
  background: #0768f5;
  color: #fff;
  cursor: pointer;
}

.wq-ai-search > button svg { width: 15px; height: 15px; }

.wq-suggestion {
  display: flex;
  align-items: center;
  gap: 7px;
  width: 100%;
  margin: 10px 0 14px;
  border: 1px solid #bfd6ff;
  border-radius: 6px;
  background: #f7faff;
  color: #0768f5;
  padding: 8px 9px;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}

.wq-suggestion span {
  margin-left: auto;
  border-radius: 9px;
  background: #e6f0ff;
  padding: 2px 6px;
}

.wq-filter-section {
  display: grid;
  gap: 10px;
  border-top: 1px solid #e6eaf1;
  padding: 14px 0;
}

.wq-filter-heading { justify-content: space-between; }
.wq-filter-heading button {
  border: 0;
  background: transparent;
  color: #0768f5;
  font-weight: 750;
  cursor: pointer;
}

.wq-filter-section > strong,
.wq-filter-heading strong { font-size: 12px; }
.wq-filter-section label { gap: 5px; font-size: 11px; }
.wq-filter-section select { min-height: 36px; border-radius: 6px; font-size: 12px; }
.wq-pinned { display: grid; gap: 6px; }
.wq-pinned:empty::after { content: "No filters pinned"; color: #8290a7; font-size: 11px; }
.wq-filter-chip {
  display: flex;
  justify-content: space-between;
  gap: 7px;
  border-radius: 5px;
  background: #eef4ff;
  color: #345177;
  padding: 7px 8px;
  font-size: 11px;
  font-weight: 750;
}
.wq-filter-chip button { border: 0; background: transparent; color: #6b7890; cursor: pointer; padding: 0; }

.wq-quiet-note {
  align-items: flex-start;
  gap: 9px;
  margin-top: 5px;
  border: 1px solid #dfe5ef;
  border-radius: 7px;
  background: #fafbfd;
  padding: 11px;
}
.wq-quiet-note svg { color: #0768f5; }
.wq-quiet-note strong { display: block; font-size: 11px; }
.wq-quiet-note p { margin-top: 3px; font-size: 10px; }

.wq-decision-panel { border-right: 1px solid #dfe5ef; }
.wq-tabs {
  display: flex;
  min-height: 52px;
  border-bottom: 1px solid #dfe5ef;
  overflow-x: auto;
}
.wq-tabs button {
  flex: 0 0 auto;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: #53617a;
  padding: 0 13px;
  font-weight: 780;
  cursor: pointer;
}
.wq-tabs button.active { border-color: #0768f5; color: #0768f5; }
.wq-tabs span { margin-left: 3px; border-radius: 9px; background: #edf1f6; padding: 2px 6px; font-size: 10px; }

.wq-list-toolbar {
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid #e6eaf1;
  padding: 11px 13px;
}
.wq-list-toolbar strong,
.wq-list-toolbar small { display: block; }
.wq-list-toolbar strong { font-size: 12px; }
.wq-list-toolbar small { margin-top: 2px; color: #718099; font-size: 10px; }
.wq-list-search {
  position: relative;
  width: min(190px, 46%);
}
.wq-list-search svg { position: absolute; left: 9px; top: 10px; width: 15px; height: 15px; color: #77849a; }
.wq-list-search input { width: 100%; min-height: 35px; padding-left: 31px; font-size: 11px; }

.wq-decision-list { max-height: 720px; overflow-y: auto; }
.wq-decision-card {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 10px;
  border: 0;
  border-bottom: 1px solid #e6eaf1;
  background: #fff;
  padding: 13px;
  cursor: pointer;
  text-align: left;
}
.wq-decision-card:hover { background: #f9fbff; }
.wq-decision-card.selected { box-shadow: inset 3px 0 #0768f5; background: #f6f9ff; }
.wq-decision-icon { width: 38px; height: 38px; border-radius: 7px; background: #eaf3ff; color: #0768f5; }
.wq-decision-icon.email { background: #ecfaf2; color: #168554; }
.wq-decision-icon.research { background: #fff4e7; color: #d96c00; }
.wq-decision-icon.review { background: #f3edff; color: #7143d9; }
.wq-decision-icon.correction { background: #fff0f0; color: #d93f3f; }
.wq-decision-icon svg { width: 18px; height: 18px; }
.wq-decision-head { justify-content: space-between; align-items: flex-start; gap: 8px; }
.wq-decision-head h3 { margin: 0; font-size: 13px; line-height: 1.25; }
.wq-score { color: #11844d; font-size: 15px; font-weight: 900; white-space: nowrap; }
.wq-score small { display: block; color: #6b7890; font-size: 8px; text-align: right; text-transform: uppercase; }
.wq-decision-person { margin: 3px 0 7px; color: #56637b; font-size: 11px; }
.wq-decision-reason { margin: 0; color: #34415a; font-size: 11px; line-height: 1.45; }
.wq-decision-meta { flex-wrap: wrap; gap: 5px; margin-top: 9px; }
.wq-tag {
  display: inline-flex;
  align-items: center;
  min-height: 21px;
  border: 1px solid #dce4ef;
  border-radius: 5px;
  background: #fff;
  color: #53617a;
  padding: 2px 6px;
  font-size: 9px;
  font-weight: 800;
  text-transform: capitalize;
}
.wq-tag.priority { border-color: #bdd5ff; background: #edf4ff; color: #0768f5; }
.wq-tag.high { border-color: #b9e7d0; background: #effbf5; color: #147247; }
.wq-tag.low { border-color: #f3d4a5; background: #fff8eb; color: #9c6000; }
.wq-decision-actions { gap: 6px; margin-top: 10px; }
.wq-decision-actions button {
  min-height: 30px;
  border: 1px solid #d6deea;
  border-radius: 6px;
  background: #fff;
  color: #31405b;
  padding: 0 9px;
  font-size: 10px;
  font-weight: 800;
  cursor: pointer;
}
.wq-decision-actions button.primary { border-color: #0768f5; background: #0768f5; color: #fff; }

.wq-detail-panel { max-height: 824px; overflow-y: auto; background: #fcfdff; }
.wq-empty-detail { display: grid; justify-items: center; gap: 7px; padding: 80px 26px; text-align: center; }
.wq-empty-detail svg { width: 30px; height: 30px; color: #8fa0b9; }
.wq-empty-detail h2 { margin: 4px 0 0; font-size: 16px; }
.wq-detail-heading { align-items: flex-start; gap: 10px; padding: 16px; border-bottom: 1px solid #dfe5ef; background: #fff; }
.wq-avatar { width: 43px; height: 43px; border-radius: 50%; background: #eaf3ff; color: #0768f5; font-weight: 900; }
.wq-detail-heading > div:nth-child(2) { min-width: 0; flex: 1; }
.wq-detail-heading h2 { margin: 0; font-size: 17px; }
.wq-detail-heading p { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }
.wq-detail-close { display: none; border: 0; background: transparent; color: #65728a; cursor: pointer; }
.wq-detail-actions { gap: 7px; padding: 11px 16px; border-bottom: 1px solid #dfe5ef; background: #fff; }
.wq-detail-actions button,
.wq-detail-actions a { flex: 1; min-width: 0; min-height: 34px; font-size: 10px; padding: 0 8px; }
.wq-detail-section { padding: 14px 16px; border-bottom: 1px solid #dfe5ef; }
.wq-detail-section h3 { display: flex; align-items: center; gap: 7px; margin: 0 0 10px; font-size: 12px; }
.wq-recommendation { color: #24334f !important; font-size: 12px; }
.wq-confidence-row { justify-content: space-between; gap: 10px; margin-top: 11px; }
.wq-confidence-track { flex: 1; height: 6px; border-radius: 3px; background: #e6eaf1; overflow: hidden; }
.wq-confidence-track span { display: block; height: 100%; background: #168554; }
.wq-confidence-row strong { font-size: 11px; }
.wq-evidence-list { display: grid; gap: 8px; }
.wq-evidence {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 8px;
  border-radius: 6px;
  background: #f5f8fc;
  padding: 9px;
}
.wq-evidence-icon { width: 28px; height: 28px; border-radius: 5px; background: #e5efff; color: #0768f5; }
.wq-evidence-icon svg { width: 14px; height: 14px; }
.wq-evidence strong { display: block; font-size: 10px; }
.wq-evidence p { margin-top: 2px; font-size: 10px; }
.wq-recording { width: 100%; height: 34px; margin-top: 7px; }
.wq-transcript { max-height: 155px; overflow-y: auto; white-space: pre-wrap; font-size: 10px; }
.wq-draft { width: 100%; min-height: 128px; resize: vertical; border: 1px solid #d6deea; border-radius: 6px; padding: 9px; font: inherit; font-size: 11px; line-height: 1.5; }
.wq-draft-save { margin-top: 8px; min-height: 32px; font-size: 10px; }
.wq-context-person { gap: 9px; }
.wq-context-person strong,
.wq-context-person small { display: block; }
.wq-context-person small { color: #69768d; font-size: 10px; }
.wq-context-links { display: flex; gap: 6px; margin-top: 9px; }
.wq-context-links a,
.wq-context-links button { display: inline-flex; align-items: center; gap: 5px; min-height: 29px; border: 1px solid #d6deea; border-radius: 6px; background: #fff; color: #0768f5; padding: 0 8px; font-size: 9px; font-weight: 800; text-decoration: none; cursor: pointer; }
.wq-context-links svg { width: 13px; height: 13px; }
.wq-activity-list { display: grid; gap: 8px; }
.wq-activity-item { border-left: 2px solid #c9d9f4; padding-left: 9px; }
.wq-activity-item strong { display: block; font-size: 10px; text-transform: capitalize; }
.wq-activity-item small { color: #748198; font-size: 9px; }
.wq-bottom-actions { display: grid; grid-template-columns: 1fr 1fr 42px; gap: 7px; position: sticky; bottom: 0; padding: 12px 16px; border-top: 1px solid #dfe5ef; background: #fff; }
.wq-bottom-actions button { min-height: 37px; border-radius: 6px; font-weight: 850; cursor: pointer; }
.wq-bottom-actions .accept { border: 1px solid #0768f5; background: #0768f5; color: #fff; }
.wq-bottom-actions .complete { border: 1px solid #b9e7d0; background: #effbf5; color: #147247; }
.wq-bottom-actions .reject { border: 1px solid #e2e7ef; background: #fff; color: #b13a3a; font-size: 0; }
.wq-bottom-actions svg { width: 16px; height: 16px; }
.wq-list-empty { display: grid; justify-items: center; gap: 6px; padding: 60px 20px; text-align: center; color: #718099; }
.wq-list-empty svg { width: 30px; height: 30px; }
.wq-list-empty h3 { margin: 6px 0 0; color: #24314b; font-size: 15px; }
.wq-list-empty p { margin: 0; font-size: 11px; }
.wq-toast { position: fixed; right: 22px; bottom: 22px; z-index: 80; border-radius: 7px; background: #14213a; color: #fff; padding: 11px 14px; box-shadow: 0 12px 35px rgb(15 23 42 / 24%); font-size: 12px; font-weight: 750; }
.contact-action-toast { position: fixed; right: 22px; bottom: 22px; z-index: 90; max-width: min(380px, calc(100vw - 44px)); border-radius: 7px; background: #14213a; color: #fff; padding: 11px 14px; box-shadow: 0 12px 35px rgb(15 23 42 / 24%); font-size: 12px; font-weight: 750; }

@media (max-width: 1320px) {
  .wq-layout { grid-template-columns: 210px minmax(390px, 1fr) 330px; }
  .wq-tabs button { padding-inline: 9px; font-size: 11px; }
}

@media (max-width: 1080px) {
  .wq-layout { grid-template-columns: 215px minmax(0, 1fr); }
  .wq-detail-panel {
    position: fixed;
    inset: 76px 0 0 auto;
    z-index: 35;
    display: none;
    width: min(430px, 100vw);
    max-height: none;
    border-left: 1px solid #dfe5ef;
    box-shadow: -18px 0 48px rgb(15 23 42 / 15%);
  }
  body.wq-detail-open .wq-detail-panel { display: block; }
  .wq-detail-close { display: grid; place-items: center; }
}

@media (max-width: 760px) {
  .dashboard-main.work-queue-view { padding: 14px 10px 24px; }
  .wq-page-header { align-items: flex-start; flex-direction: column; }
  .wq-page-actions { width: 100%; }
  .wq-page-actions > * { flex: 1; }
  .wq-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wq-layout { grid-template-columns: 1fr; }
  .wq-filter-rail { display: none; }
  .wq-decision-panel { border-right: 0; }
  .wq-decision-list { max-height: none; }
  .wq-detail-panel { inset: 64px 0 0 0; width: 100vw; }
}

@media (max-width: 460px) {
  .wq-page-header h1 { font-size: 23px; }
  .wq-page-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .wq-page-actions .secondary-button { font-size: 0; min-width: 42px; }
  .wq-page-actions .secondary-button svg { width: 17px; height: 17px; }
  .wq-metric { grid-template-columns: 34px minmax(0, 1fr); min-height: 78px; padding: 10px; }
  .wq-metric > span { width: 34px; height: 34px; }
  .wq-metric strong { font-size: 20px; }
  .wq-list-toolbar { align-items: stretch; flex-direction: column; }
  .wq-list-search { width: 100%; }
  .wq-tabs button { padding-inline: 10px; }
}

/* Contacts workspace */
.contacts-workspace {
  display: none;
  min-width: 0;
  scroll-margin-top: 76px;
}

.dashboard-main.contacts-view {
  display: block;
  max-width: none;
  padding: 18px;
}

.dashboard-main.contacts-view > :not(#contacts) {
  display: none;
}

body.contacts-focus-view .dashboard-shell {
  grid-template-columns: minmax(0, 1fr);
}

body.contacts-focus-view .sidebar {
  display: none;
}

body.contacts-focus-view .main-shell {
  overflow: visible;
}

body.contacts-focus-view .app-header {
  min-height: 76px;
  padding: 10px 28px;
}

body.contacts-focus-view .product-brand,
body.contacts-focus-view .product-nav,
body.contacts-focus-view .contacts-workspace {
  display: flex;
}

body.contacts-focus-view .product-brand {
  align-items: center;
  width: 215px;
  min-width: 215px;
  height: 54px;
  overflow: hidden;
}

body.contacts-focus-view .product-brand img {
  width: 200px;
  height: 66px;
  object-fit: contain;
  object-position: left center;
}

body.contacts-focus-view .product-nav {
  align-items: center;
  gap: 18px;
  margin-right: auto;
}

.product-nav a {
  display: inline-flex;
  position: relative;
  align-items: center;
  gap: 6px;
  color: #10172a;
  font-size: 14px;
  font-weight: 750;
}

.product-nav a svg {
  width: 14px;
  height: 14px;
}

.product-nav a .nav-badge {
  position: absolute;
  top: -16px;
  right: 8px;
  border-radius: 4px;
  background: var(--blue);
  color: #fff;
  padding: 1px 4px;
  font-size: 8px;
  font-weight: 900;
}

body.contacts-focus-view .global-search {
  display: none;
}

body.contacts-focus-view .header-actions .icon-button:first-child {
  order: -1;
}

body.contacts-focus-view .header-actions .icon-button:nth-child(2) {
  display: none;
}

.contacts-workspace {
  flex-direction: column;
  min-height: calc(100dvh - 112px);
  color: #0f172a;
}

.contacts-page-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 2px 10px 18px;
}

.contacts-page-header h1 {
  margin: 0;
  font-size: 25px;
  line-height: 1.2;
}

.contacts-page-header p {
  margin: 5px 0 0;
  color: #68738a;
  font-size: 13px;
}

.contacts-page-actions,
.contacts-page-actions button,
.contacts-list-toolbar,
.contacts-list-toolbar > div,
.contact-detail-actions,
.contact-record-actions,
.contact-panel-title,
.suggested-filter-button,
.contact-filter-heading,
.contact-filter-controls label,
.contact-filter-controls label > span,
.contact-row-tags,
.contact-quick-actions,
.contact-score,
.contact-account-score > div:first-child,
.contact-recent-activity h3,
.contact-company-context h3,
.contact-ai-summary h3 {
  display: flex;
  align-items: center;
}

.contacts-page-actions {
  gap: 10px;
}

.contacts-page-actions button {
  gap: 8px;
}

.contacts-page-actions svg {
  width: 17px;
  height: 17px;
}

.contact-filter-toggle {
  display: none !important;
}

.contacts-grid {
  display: grid;
  grid-template-columns: 312px minmax(560px, 1fr) minmax(390px, 450px);
  min-width: 0;
  min-height: 820px;
  border: 1px solid #dce2ec;
  background: #fff;
}

.contacts-filters,
.contacts-directory,
.contact-intelligence {
  min-width: 0;
}

.contacts-filters {
  border-right: 1px solid #dce2ec;
  padding: 14px 12px;
}

.contact-ai-search {
  display: grid;
  position: relative;
  gap: 9px;
  border: 1px solid #dce2ec;
  border-radius: 7px;
  padding: 12px;
}

.contact-panel-title {
  justify-content: space-between;
  color: #27344d;
  font-size: 13px;
  font-weight: 850;
}

.contact-panel-title span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.contact-panel-title svg {
  width: 16px;
  height: 16px;
  color: var(--blue);
}

.contact-panel-title > svg {
  color: #7b879c;
}

.contact-ai-search textarea {
  width: 100%;
  min-height: 104px;
  resize: vertical;
  border: 0;
  outline: 0;
  color: #27344d;
  font: inherit;
  font-size: 13px;
  line-height: 1.55;
  padding: 0 24px 0 0;
}

.contact-ai-submit {
  display: grid;
  position: absolute;
  right: 12px;
  bottom: 12px;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 0;
  background: transparent;
  color: var(--blue);
  cursor: pointer;
}

.contact-ai-submit svg {
  width: 18px;
  height: 18px;
}

.suggested-filter-button {
  gap: 7px;
  min-height: 34px;
  margin: 10px 0 14px;
  border: 1px solid #bcd0ff;
  border-radius: 7px;
  background: #f6f9ff;
  color: var(--blue);
  padding: 0 10px;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
}

.suggested-filter-button svg {
  width: 14px;
  height: 14px;
}

.suggested-filter-button span {
  display: grid;
  place-items: center;
  min-width: 20px;
  height: 20px;
  border-radius: 999px;
  background: #e4edff;
  font-size: 10px;
}

.contact-filter-section {
  display: grid;
  gap: 9px;
  border-top: 1px solid #e5e9f0;
  padding: 14px 0;
}

.contact-filter-heading {
  justify-content: space-between;
}

.contact-filter-section > strong,
.contact-filter-heading strong {
  color: #27344d;
  font-size: 12px;
}

.contact-filter-heading button {
  border: 0;
  background: transparent;
  color: var(--blue);
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}

.contact-filter-chips {
  display: grid;
  gap: 6px;
}

.contact-filter-chips button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  min-height: 30px;
  border: 1px solid #ccd7e8;
  border-radius: 5px;
  background: #f8faff;
  color: #35425a;
  padding: 5px 8px;
  font-size: 10px;
  text-align: left;
  cursor: pointer;
  white-space: normal;
}

.contact-filter-chips button span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.contact-filter-chips svg {
  width: 12px;
  height: 12px;
  flex: 0 0 auto;
}

.no-contact-filters {
  color: #8a94a7;
  font-size: 11px;
}

.contact-filter-controls label {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
  color: #455168;
  font-size: 11px;
  font-weight: 750;
}

.contact-filter-controls label > span {
  gap: 9px;
}

.contact-filter-controls label > span svg {
  width: 15px;
  height: 15px;
  color: #4f5d73;
}

.contact-filter-controls input,
.contact-filter-controls select {
  width: 100%;
  min-height: 34px;
  border-radius: 5px;
  font-size: 11px;
}

.contact-filter-controls .contact-check {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 38px;
  border-bottom: 1px solid #edf0f5;
}

.contact-filter-controls .contact-check > span {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  white-space: nowrap;
}

.contact-filter-controls .contact-check input {
  flex: 0 0 15px;
  width: 15px;
  height: 15px;
  min-height: 15px;
  margin: 0;
}

.contacts-directory {
  border-right: 1px solid #dce2ec;
}

.contact-tabs {
  display: flex;
  gap: 24px;
  min-height: 52px;
  overflow-x: auto;
  border-bottom: 1px solid #dce2ec;
  padding: 0 16px;
}

.contact-tabs button {
  position: relative;
  border: 0;
  background: transparent;
  color: #465269;
  padding: 0 0;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}

.contact-tabs button.active {
  color: var(--blue);
}

.contact-tabs button.active::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 2px;
  background: var(--blue);
}

.contact-tabs button span {
  margin-left: 4px;
  border-radius: 999px;
  background: #f0f3f8;
  color: #536078;
  padding: 2px 7px;
  font-size: 9px;
}

.contacts-list-toolbar {
  min-height: 52px;
  gap: 10px;
  border-bottom: 1px solid #e4e8ef;
  padding: 8px 16px;
}

.contacts-list-toolbar label {
  color: #57637a;
  font-size: 11px;
}

.contacts-list-toolbar select {
  min-height: 30px;
  border: 0;
  color: #27344d;
  padding: 0 22px 0 4px;
  font-size: 11px;
  font-weight: 750;
}

.contacts-list-toolbar > span {
  margin-left: auto;
  color: #6c778d;
  font-size: 10px;
}

.contacts-list-toolbar > div {
  gap: 5px;
}

.contacts-list-toolbar button,
.contact-quick-actions button,
.contact-quick-actions a,
.contact-close {
  display: grid;
  place-items: center;
  width: 30px;
  min-width: 30px;
  height: 30px;
  border: 1px solid #dce2ec;
  border-radius: 7px;
  background: #fff;
  color: #526078;
  cursor: pointer;
}

.contacts-list-toolbar button:disabled {
  opacity: 0.35;
  cursor: default;
}

.contacts-list-toolbar svg,
.contact-quick-actions svg,
.contact-close svg {
  width: 14px;
  height: 14px;
}

.contacts-results {
  min-height: 680px;
}

.contact-row {
  display: grid;
  grid-template-columns: 26px 42px minmax(220px, 1.25fr) minmax(120px, 0.8fr) 70px 70px;
  align-items: center;
  gap: 8px;
  min-height: 108px;
  border-bottom: 1px solid #e7eaf0;
  background: #fff;
  padding: 10px 12px;
  cursor: pointer;
}

.contact-row:hover {
  background: #f9fbff;
}

.contact-row.selected {
  outline: 1.5px solid #2c7cff;
  outline-offset: -2px;
  background: #fbfdff;
}

.contact-select-check input {
  width: 16px;
  min-height: 16px;
  margin: 0;
  accent-color: var(--blue);
}

.contact-avatar {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid #bcd0ff;
  border-radius: 50%;
  background: #eef4ff;
  color: var(--blue);
  font-size: 11px;
  font-weight: 900;
}

.contact-avatar.large {
  width: 64px;
  height: 64px;
  border-color: #bad4ce;
  background: #e9f6f1;
  color: #08745b;
  font-size: 18px;
}

.contact-person,
.contact-location {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.contact-person > strong {
  overflow: hidden;
  color: #1f2b42;
  font-size: 11px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.contact-person > strong svg {
  width: 11px;
  height: 11px;
  color: #0a66c2;
  vertical-align: -2px;
}

.contact-person > span,
.contact-location span {
  overflow: hidden;
  color: #536079;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.contact-location strong {
  overflow: hidden;
  color: #47546c;
  font-size: 10px;
  font-weight: 650;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.contact-row-tags {
  gap: 5px;
  min-width: 0;
  margin-top: 5px;
  overflow: hidden;
}

.contact-tag {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  flex: 0 0 auto;
  max-width: 120px;
  min-height: 22px;
  overflow: hidden;
  border: 1px solid #d9e0eb;
  border-radius: 5px;
  color: #4d5b73;
  padding: 2px 7px;
  font-size: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.contact-tag.verified {
  border-color: #b8dfc9;
  background: #f3fbf6;
  color: #168052;
}

.contact-tag svg {
  width: 10px;
  height: 10px;
}

.contact-quick-actions {
  gap: 5px;
}

.contact-quick-actions button,
.contact-quick-actions a {
  color: #168052;
}

.contact-score {
  flex-direction: column;
  justify-content: center;
  gap: 2px;
  min-height: 54px;
  border: 1px solid #cce8d7;
  border-radius: 7px;
  background: #f3fbf6;
  color: #08753f;
  text-align: center;
}

.contact-score.strong {
  border-color: #c7dcff;
  background: #f1f6ff;
  color: #1265d8;
}

.contact-score.review {
  border-color: #e4e7ec;
  background: #f8f9fb;
  color: #667085;
}

.contact-score strong {
  font-size: 20px;
  line-height: 1;
}

.contact-score span {
  font-size: 8px;
  font-weight: 850;
}

.contact-intelligence {
  background: #fff;
  padding: 20px 16px;
}

.contact-detail-empty,
.contacts-loading {
  display: grid;
  place-items: center;
  align-content: center;
  min-height: 460px;
  color: #7a8599;
  padding: 28px;
  text-align: center;
}

.contact-detail-empty svg {
  width: 34px;
  height: 34px;
  color: #8fa4ca;
}

.contact-detail-empty h2 {
  margin: 12px 0 4px;
  color: #26344d;
  font-size: 16px;
}

.contact-detail-empty p {
  max-width: 320px;
  margin: 0;
  font-size: 11px;
  line-height: 1.5;
}

.contacts-loading span {
  width: 26px;
  height: 26px;
  border: 3px solid #dbe5f7;
  border-top-color: var(--blue);
  border-radius: 50%;
  animation: contact-spin 0.8s linear infinite;
}

.contacts-loading p {
  font-size: 11px;
}

@keyframes contact-spin {
  to { transform: rotate(360deg); }
}

.contact-detail-header {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) 30px;
  align-items: start;
  gap: 12px;
  border-bottom: 1px solid #e3e7ee;
  padding-bottom: 14px;
}

.contact-detail-header h2 {
  margin: 1px 0 4px;
  font-size: 18px;
  line-height: 1.2;
}

.contact-detail-header p {
  margin: 0 0 3px;
  color: #3f4b61;
  font-size: 11px;
}

.contact-detail-header a {
  font-size: 11px;
}

.contact-detail-actions {
  gap: 7px;
  overflow-x: auto;
  padding: 14px 0;
}

.contact-detail-actions .primary-button,
.contact-detail-actions .secondary-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-width: 74px;
  min-height: 38px;
  padding: 0 10px;
  font-size: 10px;
}

.contact-detail-actions .primary-button[aria-disabled="true"],
.contact-detail-actions button:disabled {
  opacity: 0.45;
  pointer-events: none;
}

.contact-detail-actions svg {
  width: 14px;
  height: 14px;
}

.contact-facts,
.contact-company-context dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 18px;
  margin: 0;
}

.contact-facts {
  border-bottom: 1px solid #e3e7ee;
  padding: 2px 0 16px;
}

.contact-facts div,
.contact-company-context dl div {
  min-width: 0;
}

.contact-facts dt,
.contact-company-context dt {
  margin-bottom: 4px;
  color: #7a8599;
  font-size: 9px;
}

.contact-facts dd,
.contact-company-context dd {
  margin: 0;
  overflow-wrap: anywhere;
  color: #26344d;
  font-size: 10px;
  font-weight: 750;
  line-height: 1.4;
}

.contact-phone-candidate {
  display: inline-block;
  margin-left: 6px;
  border-radius: 4px;
  background: #fff5dc;
  color: #9a6200;
  padding: 2px 5px;
  font-size: 8px;
  font-weight: 800;
  vertical-align: middle;
}

.contact-phone-link {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  min-width: 0;
  border: 0;
  background: transparent;
  color: #0d6fe8;
  padding: 0;
  font: inherit;
  font-weight: 800;
  text-align: left;
  cursor: pointer;
}

.contact-phone-link:hover span {
  text-decoration: underline;
  text-underline-offset: 2px;
}

.contact-phone-link svg {
  width: 12px;
  min-width: 12px;
  height: 12px;
}

.contact-phone-verified {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  margin-top: 4px;
  border-radius: 4px;
  background: #e7f8ef;
  color: #12734b;
  padding: 3px 5px;
  font-size: 8px;
  font-weight: 850;
}

.contact-phone-verified svg {
  width: 10px;
  height: 10px;
}

.contact-avatar img {
  width: 100%;
  height: 100%;
  border-radius: inherit;
  object-fit: cover;
}

.contact-company-context,
.contact-professional-profile,
.contact-identities,
.contact-ai-summary,
.contact-recent-activity {
  border-bottom: 1px solid #e3e7ee;
  padding: 16px 0;
}

.contact-company-context h3,
.contact-professional-profile h3,
.contact-identities h3,
.contact-ai-summary h3,
.contact-recent-activity h3 {
  gap: 7px;
  margin: 0 0 14px;
  color: #26344d;
  font-size: 11px;
}

.contact-company-context h3 svg,
.contact-professional-profile h3 svg,
.contact-identities h3 svg,
.contact-ai-summary h3 svg,
.contact-recent-activity h3 svg {
  width: 15px;
  height: 15px;
  color: #526078;
}

.contact-professional-profile h3 {
  display: flex;
  align-items: center;
}

.contact-email-link {
  color: #0d6fe8;
  text-decoration: none;
}

.contact-email-link:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}

.contact-identities h3 {
  display: flex;
  align-items: center;
}

.contact-identity-group + .contact-identity-group {
  margin-top: 13px;
}

.contact-identity-group h4 {
  margin: 0 0 6px;
  color: #6c788c;
  font-size: 9px;
  text-transform: uppercase;
}

.contact-identity-group article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  border-top: 1px solid #edf0f5;
  padding: 8px 0;
}

.contact-identity-group article > div {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.contact-identity-group a,
.contact-identity-group strong {
  overflow-wrap: anywhere;
  color: #26344d;
  font-size: 10px;
  font-weight: 800;
  text-decoration: none;
}

.contact-identity-group a:hover {
  color: #0d6fe8;
}

.contact-identity-group small {
  overflow-wrap: anywhere;
  color: #7a8599;
  font-size: 8px;
}

.contact-identity-group article > span {
  border-radius: 4px;
  background: #eef2f7;
  color: #657187;
  padding: 3px 5px;
  font-size: 8px;
  font-weight: 800;
}

.contact-identity-group article > span.verified,
.contact-identity-group article > span.current {
  background: #e7f8ef;
  color: #12734b;
}

.contact-identity-group article > span.review {
  background: #fff5dc;
  color: #9a6200;
}

.contact-identity-group article > span.historical {
  background: #f1f3f7;
  color: #7a8599;
}

.contact-profile-verified {
  margin-left: auto;
  border-radius: 4px;
  background: #e7f8ef;
  color: #12734b;
  padding: 3px 6px;
  font-size: 8px;
  font-weight: 850;
}

.contact-profile-headline {
  margin: 0 0 12px;
  color: #27364e;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.45;
}

.contact-profile-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 14px;
  margin-bottom: 12px;
  color: #68758a;
  font-size: 9px;
}

.contact-profile-metrics strong {
  color: #26344d;
}

.contact-profile-skills {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-bottom: 13px;
}

.contact-profile-skills span {
  border: 1px solid #dce5f2;
  border-radius: 4px;
  background: #f7faff;
  color: #40516c;
  padding: 4px 6px;
  font-size: 8px;
  font-weight: 700;
}

.contact-profile-disclosure {
  margin-bottom: 14px;
}

.contact-profile-disclosure summary {
  cursor: pointer;
  color: #176fe5;
  font-size: 9px;
  font-weight: 800;
}

.contact-profile-disclosure p {
  margin: 8px 0 0;
  white-space: pre-line;
  color: #536078;
  font-size: 9px;
  line-height: 1.55;
}

.contact-profile-group + .contact-profile-group {
  margin-top: 14px;
}

.contact-profile-group h4 {
  margin: 0 0 8px;
  color: #69768b;
  font-size: 9px;
  text-transform: uppercase;
}

.contact-profile-group article {
  display: grid;
  grid-template-columns: 9px minmax(0, 1fr);
  gap: 7px;
  padding: 5px 0;
}

.contact-profile-timeline {
  width: 7px;
  height: 7px;
  margin-top: 4px;
  border: 2px solid #8bb8f3;
  border-radius: 50%;
}

.contact-profile-group strong,
.contact-profile-group p,
.contact-profile-group small {
  display: block;
  overflow-wrap: anywhere;
}

.contact-profile-group strong {
  color: #2f3d54;
  font-size: 10px;
  line-height: 1.35;
}

.contact-profile-group p {
  margin: 2px 0;
  color: #58667b;
  font-size: 9px;
}

.contact-profile-group small {
  color: #8a94a7;
  font-size: 8px;
}

.contact-profile-languages {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
  margin-top: 14px;
  color: #637087;
  font-size: 9px;
}

.contact-profile-languages strong {
  color: #34425a;
}

.contact-account-score {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px 12px;
  margin-top: 15px;
}

.contact-account-score > div:first-child {
  grid-column: 1 / -1;
  justify-content: space-between;
  color: #536078;
  font-size: 10px;
}

.contact-account-score small {
  color: #9199aa;
}

.contact-account-score strong {
  color: #26344d;
  font-size: 19px;
}

.contact-score-track {
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: #e6e9ee;
}

.contact-score-track span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--blue);
}

.contact-account-score em {
  color: #168052;
  font-size: 9px;
  font-style: normal;
  font-weight: 850;
}

.contact-ai-summary {
  margin-top: 14px;
  border: 1px solid #dbe4f2;
  border-radius: 7px;
  background: #f9fbff;
  padding: 13px;
}

.contact-ai-summary h3 {
  margin-bottom: 8px;
  color: #1865d5;
}

.contact-ai-summary h3 svg {
  color: var(--blue);
}

.contact-ai-summary p {
  margin: 0;
  color: #3f4c62;
  font-size: 10px;
  line-height: 1.55;
}

.contact-note-form {
  display: grid;
  gap: 8px;
  border-bottom: 1px solid #e3e7ee;
  padding: 14px 0;
}

.contact-note-form[hidden] {
  display: none;
}

.contact-note-form label {
  font-size: 10px;
  font-weight: 850;
}

.contact-note-form textarea {
  width: 100%;
  resize: vertical;
  border: 1px solid #dce2ec;
  border-radius: 6px;
  padding: 9px;
  font: inherit;
  font-size: 10px;
}

.contact-note-form button {
  justify-self: end;
  min-height: 34px;
  font-size: 10px;
}

.contact-recent-activity article {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 8px;
  padding: 7px 0;
}

.activity-type {
  display: grid;
  place-items: center;
  width: 27px;
  height: 27px;
  border-radius: 50%;
  background: #edf4ff;
  color: var(--blue);
}

.activity-type svg {
  width: 13px;
  height: 13px;
}

.contact-recent-activity article strong,
.contact-recent-activity article small {
  display: block;
}

.contact-recent-activity article strong {
  color: #334158;
  font-size: 10px;
  line-height: 1.4;
}

.contact-recent-activity article small,
.empty-activity {
  margin-top: 2px;
  color: #8a94a7;
  font-size: 9px;
}

.contact-record-actions {
  gap: 6px;
  padding-top: 14px;
}

.contact-record-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-height: 32px;
  border: 1px solid #dce2ec;
  border-radius: 6px;
  background: #fff;
  color: #526078;
  padding: 0 9px;
  font-size: 9px;
  font-weight: 800;
  cursor: pointer;
}

.contact-record-actions svg {
  width: 13px;
  height: 13px;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

@media (max-width: 1380px) {
  body.contacts-focus-view .product-nav {
    gap: 12px;
  }

  .contacts-grid {
    grid-template-columns: 280px minmax(520px, 1fr) 390px;
  }

  .contact-row {
    grid-template-columns: 24px 40px minmax(210px, 1fr) 96px 34px 62px;
  }

  .contact-tag:nth-child(n+3) {
    display: none;
  }
}

@media (max-width: 1180px) {
  body.contacts-focus-view .product-nav a:nth-child(3),
  body.contacts-focus-view .product-nav a:nth-child(4),
  body.contacts-focus-view .product-nav a:nth-child(6),
  body.contacts-focus-view .user-chip > div {
    display: none;
  }

  .contacts-grid {
    grid-template-columns: 270px minmax(0, 1fr);
  }

  .contact-intelligence {
    grid-column: 1 / -1;
    border-top: 1px solid #dce2ec;
  }

  .contact-detail-header,
  .contact-detail-actions,
  .contact-facts,
  .contact-professional-profile,
  .contact-company-context,
  .contact-ai-summary,
  .contact-recent-activity,
  .contact-record-actions,
  .contact-note-form {
    max-width: 760px;
    margin-right: auto;
    margin-left: auto;
  }
}

@media (max-width: 820px) {
  body.contacts-focus-view .app-header {
    min-height: 62px;
    padding: 7px 12px;
  }

  body.contacts-focus-view .product-brand {
    width: 154px;
    min-width: 154px;
  }

  body.contacts-focus-view .product-brand img {
    width: 150px;
  }

  body.contacts-focus-view .product-nav,
  body.contacts-focus-view .header-actions .icon-button:not(:first-child),
  body.contacts-focus-view .user-chip > div {
    display: none;
  }

  body.contacts-focus-view .header-actions {
    flex-wrap: nowrap;
  }

  .dashboard-main.contacts-view {
    padding: 10px;
  }

  .contacts-page-header {
    align-items: stretch;
    flex-direction: column;
    padding: 2px 2px 12px;
  }

  .contacts-page-actions {
    overflow-x: auto;
  }

  .contacts-page-actions button {
    flex: 0 0 auto;
    min-height: 38px;
    font-size: 10px;
  }

  .contact-filter-toggle {
    display: inline-flex !important;
  }

  .contact-filter-toggle.active {
    border-color: var(--blue);
    background: var(--blue-soft);
  }

  .contacts-grid {
    grid-template-columns: 1fr;
  }

  .contacts-filters {
    display: none;
    border-right: 0;
    border-bottom: 1px solid #dce2ec;
  }

  .contacts-grid.filters-open .contacts-filters {
    display: block;
  }

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

  .contact-filter-controls > strong {
    grid-column: 1 / -1;
  }

  .contacts-directory {
    border-right: 0;
  }

  .contact-row {
    grid-template-columns: 24px 40px minmax(170px, 1fr) 62px;
  }

  .contact-location,
  .contact-quick-actions {
    display: none;
  }

  .contact-intelligence {
    grid-column: auto;
    display: none;
  }

  body.contact-detail-open .contact-intelligence {
    display: block;
    position: fixed;
    z-index: 30;
    inset: 62px 0 0;
    overflow-y: auto;
    border-top: 1px solid #dce2ec;
    background: #fff;
  }
}

@media (max-width: 520px) {
  .contact-filter-controls {
    grid-template-columns: 1fr;
  }

  .contact-filter-controls > strong {
    grid-column: auto;
  }

  .contact-tabs {
    gap: 16px;
  }

  .contacts-list-toolbar {
    flex-wrap: wrap;
  }

  .contacts-list-toolbar > span {
    order: 3;
    width: 100%;
    margin-left: 0;
  }

  .contact-row {
    grid-template-columns: 22px 36px minmax(140px, 1fr) 56px;
    min-height: 102px;
    padding: 8px;
  }

  .contact-avatar {
    width: 34px;
    height: 34px;
  }

  .contact-tag:nth-child(n+3) {
    display: none;
  }

  .contact-score {
    min-height: 48px;
  }

  .contact-score strong {
    font-size: 17px;
  }

  .contact-detail-header {
    grid-template-columns: 52px minmax(0, 1fr) 30px;
  }

  .contact-avatar.large {
    width: 52px;
    height: 52px;
  }

  .contact-detail-actions,
  .contact-record-actions {
    flex-wrap: wrap;
  }

  .contact-facts,
  .contact-company-context dl {
    grid-template-columns: 1fr;
  }
}

/* Home dashboard */
.dashboard-main.home-view {
  display: grid;
  gap: 20px;
  width: 100%;
  max-width: none;
  padding: 24px 36px 32px;
}

.dashboard-main.home-view > .directory-workspace,
.dashboard-main.home-view > .contacts-workspace,
.dashboard-main.home-view > .contact-enrichment,
.dashboard-main.home-view > .leads-workspace,
.dashboard-main.home-view > .ops-workspace {
  display: none;
}

.home-page-title h1 {
  margin: 0;
  color: var(--cx-color-text-primary);
  font-size: 28px;
  font-weight: 650;
}

.dashboard-main.home-view .hero-row {
  align-items: center;
  padding: 0 8px;
}

.dashboard-main.home-view .hero-row h1 {
  margin: 0 0 6px;
  font-size: 24px;
  font-weight: 620;
}

.dashboard-main.home-view .hero-row p {
  color: var(--cx-color-text-secondary);
  font-size: 12px;
}

.home-date {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--cx-color-text-secondary);
  font-size: 12px;
}

.home-date svg {
  width: 17px;
  height: 17px;
}

.dashboard-main.home-view .metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.dashboard-main.home-view .metric-card {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  min-height: 122px;
  border-color: var(--cx-color-border-default);
  box-shadow: 0 7px 20px rgba(26, 45, 82, 0.035);
  padding: 18px 20px;
}

.home-metric-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  border-radius: 8px;
  background: #edf5ff;
  color: var(--cx-color-action-primary);
}

.home-metric-icon.amber {
  background: #fff5e8;
  color: #e77900;
}

.home-metric-icon svg {
  width: 25px;
  height: 25px;
}

.dashboard-main.home-view .metric-card > div {
  display: grid;
  gap: 5px;
}

.dashboard-main.home-view .metric-title {
  display: block;
  color: var(--cx-color-text-secondary);
  font-size: 11px;
  font-weight: 500;
}

.dashboard-main.home-view .metric-value {
  margin: 0;
  color: var(--cx-color-text-primary);
  font-size: 27px;
  font-weight: 600;
  line-height: 1.1;
}

.dashboard-main.home-view .metric-change {
  color: var(--cx-color-status-success);
  font-size: 10px;
  font-weight: 500;
}

.dashboard-main.home-view .metric-card:last-child .metric-change {
  color: #e77900;
}

.home-work-grid {
  display: grid;
  grid-template-columns: minmax(320px, 1fr) minmax(320px, .96fr) minmax(360px, 1.06fr);
  gap: 16px;
  min-width: 0;
}

.home-work-grid > .card,
.home-continue-card {
  min-width: 0;
  border-color: var(--cx-color-border-default);
  box-shadow: 0 7px 20px rgba(26, 45, 82, 0.035);
  padding: 20px;
}

.home-work-grid .card-header {
  align-items: flex-start;
  min-height: 48px;
  margin-bottom: 6px;
}

.home-work-grid .card-header h2,
.home-continue-card .card-header h2 {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  color: var(--cx-color-text-primary);
  font-size: 14px;
  font-weight: 620;
}

.home-work-grid .card-header h2 svg,
.home-continue-card .card-header h2 svg {
  width: 22px;
  height: 22px;
  color: var(--cx-color-action-primary);
}

.home-work-grid .card-header p,
.home-continue-card .card-header p {
  margin: 4px 0 0 34px;
  color: var(--cx-color-text-secondary);
  font-size: 10px;
}

.home-work-grid .card-header a,
.home-work-grid > .card > a,
.home-continue-card a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: var(--cx-color-action-primary);
  font-size: 10px;
  font-weight: 550;
}

.home-work-grid .card-header a svg,
.home-work-grid > .card > a svg {
  width: 13px;
  height: 13px;
}

.home-focus-list {
  display: grid;
  margin-bottom: 12px;
}

.home-focus-list button {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr) auto 14px;
  align-items: center;
  gap: 12px;
  min-height: 72px;
  border: 0;
  border-bottom: 1px solid var(--cx-color-border-divider);
  background: transparent;
  color: inherit;
  padding: 8px 0;
  text-align: left;
  cursor: pointer;
}

.home-list-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 8px;
  background: #edf5ff;
  color: var(--cx-color-action-primary);
}

.home-focus-list button:nth-child(2) .home-list-icon { background: #edf9f2; color: #16a05a; }
.home-focus-list button:nth-child(3) .home-list-icon { background: #f4efff; color: #7c4de1; }
.home-focus-list button:nth-child(4) .home-list-icon { background: #eef5ff; color: #2681e8; }
.home-list-icon svg { width: 19px; height: 19px; }

.home-focus-list button > span:nth-child(2) {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.home-focus-list strong,
.home-account-card strong {
  overflow: hidden;
  color: var(--cx-color-text-primary);
  font-size: 11px;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-focus-list small,
.home-account-card small {
  overflow: hidden;
  color: var(--cx-color-text-secondary);
  font-size: 9px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-focus-list em {
  border-radius: 5px;
  padding: 4px 7px;
  font-size: 8px;
  font-style: normal;
}

.home-focus-list em.high { background: #ffebee; color: #d93445; }
.home-focus-list em.medium { background: #fff4df; color: #d66a00; }
.home-focus-list em.low { background: #eaf8ef; color: #168b49; }
.home-focus-list button > svg { width: 13px; color: var(--cx-color-text-tertiary); }

.home-work-grid .activity-list,
.home-work-grid .schedule-list {
  gap: 0;
}

.home-work-grid .activity-item,
.home-work-grid .schedule-item {
  min-height: 72px;
  border-bottom-color: var(--cx-color-border-divider);
  padding: 8px 0;
}

.home-work-grid .activity-item {
  grid-template-columns: 46px minmax(0, 1fr) auto;
}

.home-work-grid .rec-icon {
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: #edf5ff;
  color: var(--cx-color-action-primary);
}

.home-work-grid .rec-icon svg { width: 18px; height: 18px; }
.home-work-grid .activity-item:nth-child(2) .rec-icon { background: #edf9f2; color: #16a05a; }
.home-work-grid .activity-item:nth-child(3) .rec-icon { background: #f4efff; color: #7c4de1; }
.home-work-grid .activity-item:nth-child(4) .rec-icon { background: #fff4e7; color: #ea7d00; }

.home-work-grid .activity-item strong,
.home-work-grid .schedule-item strong {
  margin: 0 0 4px;
  color: var(--cx-color-text-primary);
  font-size: 11px;
  font-weight: 600;
}

.home-work-grid .activity-item small,
.home-work-grid .schedule-item small {
  color: var(--cx-color-text-secondary);
  font-size: 9px;
}

.home-work-grid .schedule-item {
  grid-template-columns: 74px minmax(0, 1fr) auto;
}

.home-work-grid .schedule-item > small:first-child {
  color: var(--cx-color-text-primary);
  font-size: 10px;
  font-weight: 600;
}

.home-work-grid .schedule-item > small:first-child span {
  display: block;
  margin-top: 4px;
  color: var(--cx-color-text-secondary);
  font-size: 8px;
  font-weight: 400;
}

.home-work-grid .schedule-item .pill {
  border-radius: 5px;
  background: #eaf8ef;
  color: #168b49;
  padding: 4px 7px;
  font-size: 8px;
}

.home-work-grid .schedule-item .pill.pending { background: #fff4df; color: #d66a00; }

.home-continue-card {
  padding-bottom: 14px;
}

.home-continue-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.home-account-card {
  display: grid;
  position: relative;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 82px;
  overflow: hidden;
  border: 1px solid var(--cx-color-border-default);
  border-radius: 7px;
  background: #fff;
  color: inherit;
  padding: 11px 12px 16px;
  text-align: left;
  cursor: pointer;
}

.home-account-card > span:nth-child(2),
.home-account-card > span:nth-child(3) {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.home-account-card > span:nth-child(3) {
  justify-items: end;
}

.home-account-card > i {
  position: absolute;
  right: 12px;
  bottom: 8px;
  left: 64px;
  height: 3px;
  border-radius: 3px;
  background: linear-gradient(to right, var(--cx-color-action-primary) var(--progress), #e8edf5 var(--progress));
}

.home-account-card .company-mark {
  width: 42px;
  height: 42px;
  overflow: hidden;
}

@media (max-width: 1220px) {
  .home-work-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-schedule-card { grid-column: 1 / -1; }
  .home-continue-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 820px) {
  .dashboard-main.home-view { padding: 18px 12px 24px; }
  .dashboard-main.home-view .hero-row { align-items: flex-start; flex-direction: row; }
  .dashboard-main.home-view .metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dashboard-main.home-view .metric-card { grid-template-columns: 46px minmax(0, 1fr); min-height: 102px; padding: 13px; }
  .home-metric-icon { width: 46px; height: 46px; }
  .home-work-grid { grid-template-columns: 1fr; }
  .home-schedule-card { grid-column: auto; }
  .home-continue-list { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  .home-page-title h1 { font-size: 23px; }
  .dashboard-main.home-view .hero-row { display: grid; }
  .dashboard-main.home-view .metric-grid { grid-template-columns: 1fr; }
  .dashboard-main.home-view .metric-card { min-height: 92px; }
}

.leads-workspace {
  min-width: 0;
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: 8px;
  overflow: hidden;
}

.leads-header,
.leads-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 16px;
}

.leads-header {
  border-bottom: 1px solid var(--border);
}

.leads-header h2 {
  margin: 2px 0 2px;
  font-size: 20px;
}

.leads-header p,
.leads-toolbar p {
  margin: 0;
  color: var(--muted);
}

.section-kicker {
  color: var(--blue);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.voice-readiness {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--muted);
  font-size: 12px;
}

.status-dot,
.call-state-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #f59e0b;
  box-shadow: 0 0 0 4px #fef3c7;
  flex: 0 0 auto;
}

.voice-readiness.ready .status-dot {
  background: var(--green);
  box-shadow: 0 0 0 4px var(--green-soft);
}

.leads-toolbar {
  align-items: stretch;
  background: var(--surface-soft);
}

.lead-status-tabs {
  display: flex;
  gap: 4px;
  overflow-x: auto;
}

.lead-status-tabs button {
  flex: 0 0 auto;
  min-height: 36px;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: var(--muted);
  font-weight: 800;
  cursor: pointer;
}

.lead-status-tabs button.active {
  border-color: var(--blue);
  color: var(--blue);
}

.lead-search {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 8px;
}

.lead-search input,
.voice-settings-form input,
.voice-settings-form select,
.voice-settings-form textarea,
.lead-editor input,
.lead-editor select,
.lead-editor textarea {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: #fff;
  color: var(--ink);
  font: inherit;
  padding: 10px 12px;
}

.lead-search button,
.lead-action {
  border: 1px solid var(--border);
  border-radius: 6px;
  background: #fff;
  color: var(--blue);
  font-weight: 800;
  cursor: pointer;
}

.lead-table-wrap {
  width: 100%;
  overflow-x: auto;
}

.lead-table {
  width: 100%;
  min-width: 920px;
  border-collapse: collapse;
}

.lead-table th,
.lead-table td {
  padding: 13px 16px;
  border-bottom: 1px solid var(--border);
  text-align: left;
  vertical-align: middle;
}

.lead-table th {
  color: var(--muted);
  font-size: 11px;
  text-transform: uppercase;
}

.lead-table tr:last-child td {
  border-bottom: 0;
}

.lead-identity {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}

.lead-avatar {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 6px;
  background: var(--blue-soft);
  color: var(--blue);
  font-weight: 900;
}

.lead-identity strong,
.lead-identity small,
.lead-contact-path strong,
.lead-contact-path small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lead-identity small,
.lead-contact-path small {
  color: var(--muted);
}

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

.lead-row-actions button,
.lead-row-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: #fff;
  color: var(--blue);
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
}

.lead-row-actions button:disabled {
  color: #94a3b8;
  cursor: not-allowed;
}

.lead-status {
  display: inline-flex;
  border-radius: 6px;
  background: var(--blue-soft);
  color: var(--blue);
  padding: 5px 8px;
  font-size: 11px;
  font-weight: 900;
  text-transform: capitalize;
}

.lead-status.qualified,
.lead-status.contacted {
  background: var(--green-soft);
  color: var(--green);
}

.lead-drawer,
.settings-drawer {
  z-index: 42;
}

.lead-overview,
.lead-history,
.lead-editor {
  display: grid;
  gap: 14px;
}

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

.lead-overview-grid > div,
.call-history-item,
.voice-config-state {
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 12px;
}

.lead-overview-grid span,
.call-history-item small,
.voice-settings-form label {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.lead-overview-grid strong,
.lead-overview-grid p {
  display: block;
  margin: 4px 0 0;
  line-height: 1.35;
}

.lead-editor label,
.voice-settings-form label {
  display: grid;
  gap: 6px;
}

.lead-editor-actions {
  display: flex;
  gap: 8px;
}

.call-history-item {
  display: grid;
  gap: 6px;
}

.call-history-item header {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.call-history-item p {
  margin: 0;
  color: var(--muted);
  line-height: 1.4;
}

.voice-settings-form {
  display: grid;
  gap: 16px;
}

.voice-config-state {
  background: #fff7ed;
  border-color: #fed7aa;
  color: #9a3412;
  line-height: 1.4;
}

.voice-config-state.ready {
  background: var(--green-soft);
  border-color: #bbf7d0;
  color: var(--green);
}

.settings-toggle-list {
  display: grid;
  gap: 8px;
}

.settings-toggle-list label {
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: center;
  border: 1px solid var(--border);
  border-radius: 6px;
  padding: 11px;
  color: var(--ink);
}

.settings-toggle-list input {
  width: 16px;
  margin: 0;
}

.call-dock {
  position: fixed;
  left: 50%;
  bottom: 20px;
  z-index: 60;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  width: min(620px, calc(100vw - 32px));
  transform: translateX(-50%);
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #0f172a;
  color: #fff;
  padding: 12px 14px;
  box-shadow: 0 18px 45px rgb(15 23 42 / 28%);
}

.call-dock[hidden],
.incoming-call[hidden] {
  display: none;
}

.call-dock-person,
.call-dock-actions {
  display: flex;
  align-items: center;
  gap: 9px;
}

.call-dock-person small {
  display: block;
  color: #cbd5e1;
}

.call-dock-actions button,
.danger-button {
  min-height: 36px;
  border: 1px solid #475569;
  border-radius: 6px;
  background: #1e293b;
  color: #fff;
  padding: 0 12px;
  font-weight: 800;
  cursor: pointer;
}

.call-dock-actions .danger-button,
.danger-button {
  border-color: #dc2626;
  background: #dc2626;
}

.incoming-call {
  position: fixed;
  inset: 50% auto auto 50%;
  z-index: 70;
  width: min(390px, calc(100vw - 32px));
  transform: translate(-50%, -50%);
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
  padding: 24px;
  box-shadow: 0 24px 70px rgb(15 23 42 / 25%);
  text-align: center;
}

.incoming-call h2 {
  margin: 6px 0;
}

.incoming-call p {
  color: var(--muted);
}

.incoming-call > div {
  display: flex;
  justify-content: center;
  gap: 10px;
}

@media (max-width: 820px) {
  .leads-header,
  .leads-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .lead-search {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .call-dock {
    align-items: stretch;
    flex-direction: column;
    gap: 10px;
  }

  .call-dock-actions {
    justify-content: stretch;
  }

  .call-dock-actions button {
    flex: 1;
  }
}

@media (max-width: 560px) {
  .lead-overview-grid,
  .lead-search {
    grid-template-columns: 1fr;
  }
}

/* Leads workspace */
.dashboard-main.dialer-view > :not(#dialer) {
  display: none;
}

.dashboard-main.dialer-view {
  max-width: none;
}

.dashboard-main.dialer-view .leads-workspace {
  min-height: calc(100dvh - 126px);
}

.nav-item {
  gap: 11px;
}

.nav-item svg {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  color: #52617e;
}

.nav-item.active svg,
.nav-item:hover svg {
  color: var(--blue);
}

.header-actions .icon-button {
  display: grid;
  place-items: center;
  width: 40px;
  min-width: 40px;
  padding: 0;
}

.header-actions .icon-button svg {
  width: 18px;
  height: 18px;
}

.leads-workspace {
  border-color: var(--line);
  background: #fff;
}

.leads-header,
.leads-toolbar {
  padding: 16px 18px;
}

.leads-header-actions,
.lead-contact-actions,
.lead-save-row,
.panel-heading,
.voicemail-inbox-heading,
.form-actions,
.voice-config-state,
.voice-center-tabs button,
.context-links,
.lead-person-meta,
.lead-person-identity small {
  display: flex;
  align-items: center;
}

.leads-header-actions {
  gap: 10px;
}

.leads-header-actions svg,
.lead-contact-actions svg,
.voice-center-tabs svg,
.context-links svg,
.lead-person-identity small svg,
.icon-command svg,
.timeline-icon svg,
.lead-empty-state svg {
  width: 17px;
  height: 17px;
  flex: 0 0 auto;
}

.icon-command,
.queue-nav button,
.voicemail-item header button {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  color: var(--muted);
  cursor: pointer;
}

.icon-command:hover,
.queue-nav button:hover,
.voicemail-item header button:hover {
  border-color: #b7c6e8;
  color: var(--blue);
}

.icon-command:disabled,
.queue-nav button:disabled {
  cursor: not-allowed;
  opacity: 0.4;
}

.leads-toolbar {
  align-items: center;
  border-bottom: 1px solid var(--line);
  background: #f8faff;
}

.lead-status-tabs {
  gap: 6px;
  width: 100%;
  min-width: 0;
}

.leads-toolbar > * {
  min-width: 0;
}

.lead-status-tabs button {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 34px;
  border: 1px solid transparent;
  border-radius: 7px;
  padding: 0 9px;
}

.lead-status-tabs button span {
  display: inline-grid;
  place-items: center;
  min-width: 22px;
  height: 20px;
  border-radius: 5px;
  background: #e8eef9;
  color: #596783;
  font-size: 11px;
}

.lead-status-tabs button.active {
  border-color: #c8d8ff;
  background: #fff;
}

.lead-status-tabs button.active span {
  background: var(--blue-soft);
  color: var(--blue);
}

.lead-search {
  position: relative;
  display: block;
  width: min(290px, 100%);
}

.lead-search svg {
  position: absolute;
  top: 50%;
  left: 11px;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
  color: #8290aa;
  pointer-events: none;
}

.lead-search input {
  min-height: 38px;
  border-color: var(--line);
  padding-left: 34px;
}

.lead-console {
  display: grid;
  grid-template-columns: minmax(240px, 280px) minmax(460px, 1fr) minmax(300px, 360px);
  min-height: 660px;
}

.lead-queue,
.lead-focus,
.lead-context {
  min-width: 0;
}

.lead-queue {
  border-right: 1px solid var(--line);
  background: #fbfcff;
}

.lead-queue-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 62px;
  border-bottom: 1px solid var(--line);
  padding: 11px 13px;
}

.lead-queue-heading strong,
.lead-queue-heading small {
  display: block;
}

.lead-queue-heading small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 11px;
}

.queue-nav {
  display: flex;
  gap: 5px;
}

.queue-nav button {
  width: 31px;
  height: 31px;
}

.queue-nav svg {
  width: 15px;
  height: 15px;
}

.lead-queue-list {
  max-height: 760px;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.lead-queue-item {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto;
  gap: 9px;
  align-items: start;
  width: 100%;
  min-height: 86px;
  border: 0;
  border-bottom: 1px solid var(--line);
  background: transparent;
  color: var(--ink);
  padding: 13px;
  text-align: left;
  cursor: pointer;
}

.lead-queue-item:hover {
  background: #f2f6ff;
}

.lead-queue-item.active {
  box-shadow: inset 3px 0 0 var(--blue);
  background: #edf4ff;
}

.lead-queue-copy,
.lead-queue-copy strong,
.lead-queue-copy small,
.lead-queue-copy span {
  display: block;
  min-width: 0;
}

.lead-queue-copy strong,
.lead-queue-copy small,
.lead-queue-copy span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lead-queue-copy strong {
  font-size: 13px;
}

.lead-queue-copy small {
  margin-top: 3px;
  color: #33405b;
  font-size: 11px;
}

.lead-queue-copy span {
  margin-top: 7px;
  color: var(--muted);
  font-size: 10px;
}

.queue-score {
  display: grid;
  place-items: center;
  min-width: 29px;
  height: 27px;
  border-radius: 6px;
  background: var(--green-soft);
  color: var(--green);
  font-size: 11px;
  font-weight: 900;
}

.lead-focus {
  padding: 22px;
}

.lead-person-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.lead-person-identity {
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr);
  gap: 13px;
  min-width: 0;
}

.lead-avatar.large {
  width: 50px;
  height: 50px;
  border-radius: 8px;
  font-size: 15px;
}

.lead-person-identity h3 {
  margin: 4px 0 3px;
  font-size: 23px;
  line-height: 1.1;
}

.lead-person-identity p,
.lead-person-identity small {
  margin: 0;
  color: var(--muted);
  line-height: 1.4;
}

.lead-person-identity small {
  gap: 5px;
  margin-top: 6px;
  font-size: 11px;
}

.lead-person-meta {
  gap: 8px;
  color: var(--muted);
  font-size: 10px;
  text-transform: capitalize;
}

.lead-contact-actions {
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 22px;
}

.lead-contact-actions .primary-button,
.lead-contact-actions .secondary-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 40px;
}

.lead-contact-actions button:disabled {
  cursor: not-allowed;
  opacity: 0.55;
}

.lead-contact-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 20px;
  border-block: 1px solid var(--line);
}

.lead-contact-strip > div {
  min-width: 0;
  padding: 14px 12px;
}

.lead-contact-strip > div + div {
  border-left: 1px solid var(--line);
}

.lead-contact-strip span,
.lead-contact-strip strong {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.lead-contact-strip span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 850;
  text-transform: uppercase;
}

.lead-contact-strip strong {
  margin-top: 5px;
  font-size: 12px;
}

.lead-touch-form {
  display: grid;
  gap: 15px;
  margin-top: 22px;
}

.form-section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
}

.form-section-heading span,
.context-heading span,
.panel-heading p,
.voicemail-inbox-heading p {
  color: var(--muted);
  font-size: 11px;
}

.form-section-heading h4,
.context-heading h3,
.panel-heading h3,
.voicemail-inbox-heading h3 {
  margin: 2px 0 0;
  font-size: 15px;
}

.lead-touch-form label,
.voice-settings-form label,
.message-drop-editor label,
.voicemail-greeting-form label {
  display: grid;
  gap: 6px;
  color: #4f5d78;
  font-size: 11px;
  font-weight: 850;
}

.lead-touch-form input,
.lead-touch-form select,
.lead-touch-form textarea,
.voice-settings-form input,
.voice-settings-form select,
.voice-settings-form textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  color: var(--ink);
  font: inherit;
  padding: 9px 11px;
}

.lead-touch-form textarea,
.voice-settings-form textarea {
  min-height: 78px;
  resize: vertical;
}

.outcome-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.outcome-grid button {
  min-height: 32px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #f8faff;
  color: #43506a;
  padding: 0 10px;
  font-size: 11px;
  font-weight: 800;
  cursor: pointer;
}

.outcome-grid button:hover,
.outcome-grid button.active {
  border-color: #155dfc;
  background: #155dfc;
  color: #fff;
}

.next-action-grid,
.voice-setting-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(170px, 0.45fr);
  gap: 10px;
}

.lead-save-row {
  justify-content: space-between;
  gap: 12px;
}

.lead-save-row label {
  grid-template-columns: auto 140px;
  align-items: center;
}

.lead-save-row .primary-button,
.lead-touch-form .primary-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
}

.lead-context {
  border-left: 1px solid var(--line);
  background: #fbfcff;
}

.context-section {
  padding: 18px;
}

.context-section + .context-section {
  border-top: 1px solid var(--line);
}

.context-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.account-context dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
  margin: 17px 0;
}

.account-context dl div {
  min-width: 0;
}

.account-context dt {
  color: var(--muted);
  font-size: 9px;
  font-weight: 850;
  text-transform: uppercase;
}

.account-context dd {
  margin: 4px 0 0;
  font-size: 11px;
  font-weight: 750;
  overflow-wrap: anywhere;
}

.account-context > p {
  margin: 0;
  color: #46546f;
  font-size: 11px;
  line-height: 1.5;
}

.context-links {
  flex-wrap: wrap;
  gap: 13px;
  margin-top: 14px;
}

.context-links a {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
}

.context-links svg {
  width: 13px;
  height: 13px;
}

.activity-timeline {
  max-height: 490px;
  overflow-y: auto;
}

.timeline-list {
  display: grid;
  gap: 0;
  margin-top: 16px;
}

.timeline-item {
  position: relative;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 10px;
  padding-bottom: 17px;
}

.timeline-item:not(:last-child)::before {
  position: absolute;
  top: 28px;
  bottom: 0;
  left: 13px;
  width: 1px;
  background: #dfe6f3;
  content: "";
}

.timeline-icon {
  z-index: 1;
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid #d9e3f5;
  border-radius: 6px;
  background: #fff;
  color: var(--blue);
}

.timeline-icon svg {
  width: 14px;
  height: 14px;
}

.timeline-item header {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}

.timeline-item header strong {
  font-size: 11px;
}

.timeline-item time,
.timeline-item small {
  color: var(--muted);
  font-size: 9px;
}

.timeline-item p,
.timeline-item details {
  margin: 6px 0 0;
  color: #4c5a74;
  font-size: 10px;
  line-height: 1.45;
}

.timeline-item summary {
  cursor: pointer;
  font-weight: 800;
}

.recording-player,
.voicemail-item audio {
  width: 100%;
  height: 32px;
  margin-top: 8px;
}

.next-step {
  margin-top: 7px;
  border-left: 2px solid #9db8ff;
  color: #4a5871;
  padding-left: 7px;
  font-size: 10px;
  line-height: 1.4;
}

.next-step strong {
  display: block;
  color: var(--ink);
}

.lead-empty-state {
  display: grid;
  place-items: center;
  align-content: center;
  min-height: 380px;
  color: var(--muted);
  padding: 28px;
  text-align: center;
}

.lead-empty-state.compact {
  min-height: 180px;
}

.lead-empty-state svg {
  width: 30px;
  height: 30px;
  color: #8aa7e8;
}

.lead-empty-state h3 {
  margin: 12px 0 4px;
  color: var(--ink);
}

.lead-empty-state p {
  max-width: 280px;
  margin: 5px 0 0;
  font-size: 12px;
  line-height: 1.45;
}

.empty-copy {
  color: var(--muted);
  padding: 18px 0;
  font-size: 11px;
  line-height: 1.5;
}

/* Voice center */
.voice-center {
  grid-template-rows: auto auto minmax(0, 1fr);
  width: min(840px, calc(100vw - 48px));
}

.voice-center-tabs {
  display: flex;
  gap: 4px;
  overflow-x: auto;
  border-bottom: 1px solid var(--line);
  padding: 0 24px;
}

.voice-center-tabs button {
  gap: 7px;
  min-height: 48px;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: var(--muted);
  font-weight: 800;
  cursor: pointer;
}

.voice-center-tabs button.active {
  border-color: var(--blue);
  color: var(--blue);
}

.voice-center-tabs button span {
  min-width: 18px;
  border-radius: 5px;
  background: #dc2626;
  color: #fff;
  padding: 2px 5px;
  font-size: 9px;
}

.voice-center-tabs button span:empty {
  display: none;
}

.voice-settings-form {
  align-content: start;
}

.voice-settings-form > form,
.voice-settings-form > section {
  display: grid;
  gap: 16px;
}

.voice-settings-form > [hidden] {
  display: none;
}

.voice-config-state {
  gap: 11px;
  border: 1px solid #fed7aa;
  border-radius: 7px;
  background: #fff7ed;
  color: #9a3412;
  padding: 12px;
}

.voice-config-state.ready {
  border-color: #a7e6c6;
  background: var(--green-soft);
  color: #087747;
}

.voice-config-state strong,
.voice-config-state small {
  display: block;
}

.voice-config-state small {
  margin-top: 2px;
  font-size: 10px;
}

.settings-toggle-list label {
  grid-template-columns: 18px minmax(0, 1fr);
  border-color: var(--line);
  border-radius: 7px;
}

.settings-toggle-list label strong,
.settings-toggle-list label small {
  display: block;
}

.settings-toggle-list label strong {
  color: var(--ink);
  font-size: 12px;
}

.settings-toggle-list label small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 500;
}

.panel-heading,
.voicemail-inbox-heading {
  justify-content: space-between;
  gap: 18px;
}

.panel-heading p,
.voicemail-inbox-heading p {
  margin: 3px 0 0;
}

.switch-label,
.inline-check {
  display: flex !important;
  grid-template-columns: none !important;
  align-items: center;
  gap: 7px !important;
  color: var(--ink) !important;
}

.switch-label input,
.inline-check input {
  width: 16px;
  min-height: 16px;
  margin: 0;
}

.voicemail-greeting-form {
  display: grid;
  gap: 13px;
  border-bottom: 1px solid var(--line);
  padding-bottom: 20px;
}

.voicemail-inbox-heading {
  margin-top: 4px;
}

.voicemail-inbox {
  display: grid;
  gap: 10px;
}

.voicemail-item {
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  padding: 13px;
}

.voicemail-item.unread {
  border-color: #bcd0ff;
  box-shadow: inset 3px 0 0 var(--blue);
  background: #f7faff;
}

.voicemail-item header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.voicemail-item header > div:last-child {
  display: flex;
  gap: 5px;
}

.voicemail-item header button {
  width: 30px;
  height: 30px;
}

.voicemail-item header svg {
  width: 14px;
  height: 14px;
}

.voicemail-item strong,
.voicemail-item small {
  display: block;
}

.voicemail-item small {
  margin-top: 3px;
  color: var(--muted);
  font-size: 10px;
}

.voicemail-item p {
  margin: 8px 0 0;
  color: #4b5972;
  font-size: 11px;
  line-height: 1.45;
}

.message-drop-layout {
  display: grid;
  grid-template-columns: minmax(210px, 0.42fr) minmax(300px, 1fr);
  gap: 18px;
}

.message-drop-list,
.message-drop-editor {
  min-width: 0;
}

.message-drop-list {
  display: grid;
  align-content: start;
  gap: 6px;
}

.message-drop-item {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  width: 100%;
  min-width: 0;
  min-height: 68px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff;
  color: var(--ink);
  padding: 11px;
  text-align: left;
  white-space: normal;
  cursor: pointer;
  overflow: hidden;
}

.message-drop-item > span {
  min-width: 0;
  overflow: hidden;
}

.message-drop-item strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.message-drop-item:hover,
.message-drop-item.default {
  border-color: #b8cbff;
  background: #f4f8ff;
}

.message-drop-item strong,
.message-drop-item small {
  display: block;
}

.message-drop-item small {
  display: -webkit-box;
  margin-top: 4px;
  overflow: hidden;
  color: var(--muted);
  font-size: 9px;
  line-height: 1.35;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.message-drop-item em {
  border-radius: 5px;
  background: var(--green-soft);
  color: var(--green);
  padding: 3px 5px;
  font-size: 8px;
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
}

.message-drop-editor {
  display: grid;
  gap: 12px;
}

.form-actions {
  justify-content: flex-end;
  gap: 8px;
}

@media (max-width: 1260px) {
  .lead-console {
    grid-template-columns: 250px minmax(430px, 1fr);
  }

  .lead-context {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(260px, 0.75fr) minmax(0, 1.25fr);
    border-top: 1px solid var(--line);
    border-left: 0;
  }

  .context-section + .context-section {
    border-top: 0;
    border-left: 1px solid var(--line);
  }
}

@media (max-width: 1380px) and (min-width: 821px) {
  .nav-item {
    font-size: 14px;
  }

  .nav-item span {
    display: none;
  }

  .nav-item::first-letter {
    font-size: inherit;
  }
}

@media (max-width: 820px) {
  body.dialer-focus-view .global-search {
    display: none;
  }

  body.dialer-focus-view .app-header {
    min-height: 64px;
    flex-direction: row;
    padding: 10px 14px;
  }

  body.dialer-focus-view .header-actions {
    width: 100%;
    justify-content: flex-start;
  }

  body.dialer-focus-view .user-chip {
    margin-left: auto;
  }

  .leads-header-actions {
    width: 100%;
    flex-wrap: nowrap;
  }

  .leads-header-actions .secondary-button {
    display: grid;
    place-items: center;
    width: 40px;
    min-width: 40px;
    padding: 0;
    font-size: 0;
  }

  .leads-header-actions .secondary-button svg {
    width: 18px;
    height: 18px;
  }

  .lead-console,
  .lead-context,
  .message-drop-layout {
    grid-template-columns: 1fr;
  }

  .lead-queue {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .lead-queue-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-height: 270px;
  }

  .lead-queue-item:nth-child(odd) {
    border-right: 1px solid var(--line);
  }

  .lead-context {
    grid-column: auto;
  }

  .context-section + .context-section {
    border-top: 1px solid var(--line);
    border-left: 0;
  }

  .voice-center {
    width: 100vw;
  }
}

@media (max-width: 560px) {
  .lead-queue-list,
  .lead-contact-strip,
  .next-action-grid,
  .voice-setting-grid,
  .account-context dl {
    grid-template-columns: 1fr;
  }

  .lead-queue-item:nth-child(odd),
  .lead-contact-strip > div + div {
    border-right: 0;
    border-left: 0;
  }

  .lead-contact-strip > div + div {
    border-top: 1px solid var(--line);
  }

  .lead-person-header,
  .lead-save-row,
  .panel-heading,
  .voicemail-inbox-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .lead-save-row label {
    grid-template-columns: 1fr;
    width: 100%;
  }

  .lead-save-row .primary-button {
    width: 100%;
  }
}

/* Company, lead, and call directories */
.directory-workspace {
  display: none;
  min-width: 0;
  color: #111a31;
  scroll-margin-top: 76px;
}

.dashboard-main.companies-view,
.dashboard-main.lead-directory-view,
.dashboard-main.calls-view {
  display: block;
  max-width: none;
  padding: 18px;
}

.dashboard-main.companies-view > :not(#companies),
.dashboard-main.lead-directory-view > :not(#leads),
.dashboard-main.calls-view > :not(#calls) {
  display: none;
}

.dashboard-main.companies-view #companies,
.dashboard-main.lead-directory-view #leads,
.dashboard-main.calls-view #calls {
  display: flex;
}

body.directory-focus-view .dashboard-shell,
body.dialer-focus-view .dashboard-shell {
  grid-template-columns: minmax(0, 1fr);
}

body.directory-focus-view .sidebar,
body.dialer-focus-view .sidebar {
  display: none;
}

body.directory-focus-view .main-shell,
body.dialer-focus-view .main-shell {
  overflow: visible;
}

body.directory-focus-view .app-header,
body.dialer-focus-view .app-header {
  min-height: 76px;
  padding: 10px 28px;
}

body.directory-focus-view .product-brand,
body.directory-focus-view .product-nav,
body.dialer-focus-view .product-brand,
body.dialer-focus-view .product-nav {
  display: flex;
}

body.directory-focus-view .product-brand,
body.dialer-focus-view .product-brand {
  align-items: center;
  width: 215px;
  min-width: 215px;
  height: 54px;
  overflow: hidden;
}

body.directory-focus-view .product-brand img,
body.dialer-focus-view .product-brand img {
  width: 200px;
  height: 66px;
  object-fit: contain;
  object-position: left center;
}

body.directory-focus-view .product-nav,
body.dialer-focus-view .product-nav {
  align-items: center;
  gap: 10px;
  margin-right: auto;
}

body.directory-focus-view .global-search,
body.dialer-focus-view .global-search {
  display: none;
}

.product-nav-menu {
  position: relative;
}

.product-nav-menu > button {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 38px;
  border: 0;
  background: transparent;
  color: #10172a;
  padding: 0 8px;
  font: inherit;
  font-size: 13px;
  font-weight: 760;
  cursor: pointer;
}

.product-nav-menu > button svg {
  width: 14px;
  height: 14px;
}

.product-nav-menu > button .nav-badge {
  position: absolute;
  top: -5px;
  right: 9px;
  border-radius: 4px;
  background: var(--blue);
  color: #fff;
  padding: 1px 4px;
  font-size: 8px;
  font-weight: 900;
}

.product-nav-menu > div {
  display: none;
  position: absolute;
  top: calc(100% - 2px);
  left: 0;
  z-index: 30;
  width: 180px;
  border: 1px solid #dce3ef;
  border-radius: 7px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(27, 43, 77, 0.14);
  padding: 6px;
}

.product-nav-menu.open > div {
  display: grid;
}

.product-nav-menu > div a {
  min-height: 36px;
  border-radius: 5px;
  padding: 0 9px;
  font-size: 12px;
}

.product-nav-menu > div a:hover {
  background: #f2f6ff;
  color: var(--blue);
}

.directory-workspace {
  flex-direction: column;
  min-height: calc(100dvh - 112px);
}

.directory-page-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 2px 10px 18px;
}

.directory-page-header h1 {
  margin: 0;
  font-size: 25px;
  line-height: 1.2;
}

.directory-page-header p {
  margin: 5px 0 0;
  color: #667188;
  font-size: 12px;
}

.directory-page-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}

.directory-page-actions button,
.directory-detail-actions > * {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 40px;
  white-space: nowrap;
}

.company-enrichment-status {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  align-items: center;
  gap: 9px;
  border-bottom: 1px solid #e1e6ef;
  padding: 11px 16px;
  background: #f8fafc;
}

.company-enrichment-status > span {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 6px;
  background: #eaf2ff;
  color: var(--blue);
}

.company-enrichment-status.verified > span {
  background: #e8f8ef;
  color: #07843a;
}

.company-enrichment-status svg {
  width: 16px;
  height: 16px;
}

.company-enrichment-status div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.company-enrichment-status strong {
  color: #17213b;
  font-size: 10px;
}

.company-enrichment-status small,
.company-enrichment-status em {
  color: #647189;
  font-size: 8px;
  font-style: normal;
}

.company-enrichment-status em {
  border-radius: 999px;
  padding: 4px 7px;
  background: #e8f8ef;
  color: #07843a;
  font-weight: 750;
  white-space: nowrap;
}

.directory-page-actions svg,
.directory-detail-actions svg {
  width: 15px;
  height: 15px;
}

.directory-filter-toggle {
  display: none !important;
}

.directory-grid {
  display: grid;
  grid-template-columns: 280px minmax(520px, 1fr) minmax(380px, 430px);
  min-width: 0;
  min-height: calc(100dvh - 170px);
  overflow: hidden;
  border: 1px solid #dce3ef;
  border-radius: 7px;
  background: #fff;
}

.directory-filters,
.directory-results-panel,
.directory-intelligence {
  min-width: 0;
}

.directory-filters {
  border-right: 1px solid #dce3ef;
  padding: 16px 14px;
}

.directory-ai-search {
  position: relative;
  border-bottom: 1px solid #e3e8f1;
  padding-bottom: 14px;
}

.directory-panel-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
  color: #15203b;
  font-size: 13px;
  font-weight: 850;
}

.directory-panel-title span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.directory-panel-title svg {
  width: 16px;
  height: 16px;
  color: var(--blue);
}

.directory-panel-title > svg:last-child {
  color: #748096;
}

.directory-ai-search textarea,
.directory-note-form textarea {
  width: 100%;
  resize: vertical;
  border: 1px solid #d7deea;
  border-radius: 6px;
  background: #fff;
  color: #17213a;
  padding: 10px 34px 10px 10px;
  font: inherit;
  font-size: 11px;
  line-height: 1.6;
}

.directory-ai-search > button {
  position: absolute;
  right: 8px;
  bottom: 23px;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 0;
  background: transparent;
  color: var(--blue);
  cursor: pointer;
}

.directory-ai-search > button svg {
  width: 16px;
  height: 16px;
}

.directory-suggested {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 32px;
  margin: 12px 0;
  border: 1px solid #cfdcf8;
  border-radius: 6px;
  background: #f8fbff;
  color: var(--blue);
  padding: 0 9px;
  font-size: 10px;
  font-weight: 800;
  cursor: pointer;
}

.directory-suggested svg {
  width: 14px;
  height: 14px;
}

.directory-suggested span,
.directory-tabs button span {
  border-radius: 10px;
  background: #eaf1ff;
  padding: 2px 6px;
  font-size: 9px;
}

.directory-filters section {
  border-top: 1px solid #e3e8f1;
  padding-top: 13px;
}

.directory-filters section > div:first-child,
.directory-section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.directory-filters section strong,
.directory-filter-controls > strong {
  font-size: 11px;
}

.directory-filters section > div:first-child button,
.directory-section-heading button {
  border: 0;
  background: transparent;
  color: var(--blue);
  font-size: 10px;
  font-weight: 750;
  cursor: pointer;
}

.directory-filter-chips {
  display: grid;
  gap: 6px;
  margin: 10px 0 14px;
}

.directory-filter-chips button {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
  min-height: 29px;
  border: 1px solid #d9e0eb;
  border-radius: 5px;
  background: #f8faff;
  color: #44516a;
  padding: 0 8px;
  font-size: 9px;
  cursor: pointer;
}

.directory-filter-chips button span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.directory-filter-chips svg {
  width: 12px;
  height: 12px;
  flex: 0 0 auto;
}

.directory-no-filters {
  color: #7a8598;
  font-size: 10px;
}

.directory-filter-controls {
  display: grid;
  gap: 7px;
}

.directory-filter-controls > strong {
  margin-bottom: 3px;
}

.directory-filter-controls label {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 112px;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  color: #48546b;
  font-size: 10px;
}

.directory-filter-controls label > span {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  gap: 7px;
}

.directory-filter-controls label svg {
  width: 14px;
  height: 14px;
  color: #19233a;
  flex: 0 0 auto;
}

.directory-filter-controls input:not([type="checkbox"]),
.directory-filter-controls select {
  width: 100%;
  min-width: 0;
  min-height: 32px;
  border-radius: 5px;
  padding: 0 7px;
  font-size: 9px;
}

.directory-filter-controls .directory-check {
  grid-template-columns: minmax(0, 1fr) 20px;
}

.directory-check input {
  width: 15px;
  height: 15px;
  min-height: auto;
}

.directory-results-panel {
  border-right: 1px solid #dce3ef;
}

.directory-tabs {
  display: flex;
  min-width: 0;
  overflow-x: auto;
  border-bottom: 1px solid #dce3ef;
  padding: 0 10px;
  scrollbar-width: none;
}

.directory-tabs button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  min-height: 48px;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: #35415a;
  padding: 0 10px;
  font-size: 10px;
  font-weight: 750;
  cursor: pointer;
}

.directory-tabs button.active {
  border-bottom-color: var(--blue);
  color: var(--blue);
}

.directory-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 50px;
  border-bottom: 1px solid #e4e9f1;
  padding: 0 12px;
  color: #657188;
  font-size: 10px;
}

.directory-toolbar label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}

.directory-toolbar select {
  width: auto;
  min-height: 30px;
  border: 0;
  padding: 0 4px;
  color: #33405a;
  font-size: 10px;
  font-weight: 750;
}

.directory-toolbar > div {
  display: flex;
  gap: 5px;
}

.directory-toolbar > div button {
  display: grid;
  place-items: center;
  width: 29px;
  height: 29px;
  border: 1px solid #dbe2ed;
  border-radius: 50%;
  background: #fff;
  color: #647188;
  cursor: pointer;
}

.directory-toolbar button:disabled {
  opacity: 0.35;
  cursor: default;
}

.directory-toolbar svg {
  width: 14px;
  height: 14px;
}

.directory-list {
  min-width: 0;
}

.directory-row {
  display: grid;
  align-items: center;
  gap: 10px;
  min-width: 0;
  min-height: 94px;
  border-bottom: 1px solid #e4e9f1;
  padding: 11px 12px;
  cursor: pointer;
}

.directory-row:hover {
  background: #f9fbff;
}

.directory-row.selected {
  outline: 1px solid var(--blue);
  outline-offset: -1px;
  background: #fbfdff;
}

.company-directory-row {
  grid-template-columns: 22px 42px minmax(190px, 1fr) 118px 62px;
}

.lead-directory-row {
  grid-template-columns: 22px 40px minmax(210px, 1fr) 132px 66px 62px;
}

.call-directory-row {
  grid-template-columns: 22px 40px minmax(200px, 1fr) 176px 40px 62px;
}

.directory-select {
  display: grid;
  place-items: center;
}

.directory-select input {
  width: 15px;
  height: 15px;
  min-height: auto;
}

.directory-avatar {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid #d7e2f4;
  border-radius: 50%;
  background: #eef4ff;
  color: var(--blue);
  font-size: 10px;
  font-weight: 900;
  flex: 0 0 auto;
}

.directory-avatar.company-avatar {
  border: 0;
  border-radius: 7px;
  background: #eaf2ff;
}

.directory-avatar.large {
  width: 52px;
  height: 52px;
  font-size: 14px;
}

.directory-avatar svg {
  width: 18px;
  height: 18px;
}

.directory-avatar.lead-avatar {
  position: relative;
  overflow: hidden;
}

.directory-avatar.lead-avatar img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  object-fit: cover;
}

.directory-primary,
.directory-secondary,
.call-schedule {
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: 2px;
}

.directory-primary strong,
.directory-secondary strong,
.call-schedule strong {
  overflow: hidden;
  color: #17213b;
  font-size: 10px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.directory-primary > span,
.directory-secondary span,
.call-schedule span {
  overflow: hidden;
  color: #627089;
  font-size: 9px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.directory-primary > div {
  display: flex;
  min-width: 0;
  gap: 5px;
  margin-top: 4px;
  overflow: hidden;
}

.directory-primary em {
  flex: 0 0 auto;
  border: 1px solid #dae2ee;
  border-radius: 5px;
  background: #fff;
  color: #55627a;
  padding: 2px 7px;
  font-size: 8px;
  font-style: normal;
}

.directory-primary em.verified {
  border-color: #bce5cb;
  background: #f4fff7;
  color: #14813d;
}

.directory-score {
  display: grid;
  place-items: center;
  align-content: center;
  min-width: 58px;
  min-height: 50px;
  border: 1px solid #ccebd6;
  border-radius: 6px;
  background: #f5fff8;
  color: #098439;
}

.directory-score strong {
  font-size: 18px;
  line-height: 1;
}

.directory-score span {
  margin-top: 4px;
  font-size: 8px;
  font-weight: 800;
  text-align: center;
}

.directory-score.review {
  border-color: #f1dfbd;
  background: #fffaf1;
  color: #9a6200;
}

.directory-row-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
}

.directory-phone-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--blue);
  font-weight: 700;
  text-decoration: none;
}

.directory-phone-link svg {
  width: 14px;
  height: 14px;
}

.directory-row-actions button,
.directory-row-actions a,
.call-row-button {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 1px solid #d9e2ef;
  border-radius: 5px;
  background: #fff;
  color: var(--blue);
  cursor: pointer;
}

.directory-row-actions svg,
.call-row-button svg {
  width: 14px;
  height: 14px;
}

.call-row-button:disabled {
  color: #a2aabd;
  cursor: default;
}

.call-schedule strong,
.call-schedule span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.call-schedule svg {
  width: 13px;
  height: 13px;
  flex: 0 0 auto;
}

.voicemail-directory-row {
  grid-template-columns: 42px minmax(220px, 1fr) 150px minmax(160px, 220px);
}

.voicemail-directory-row audio {
  width: 100%;
  height: 34px;
}

.directory-intelligence {
  overflow: hidden;
  background: #fff;
}

.directory-detail-header {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) 32px;
  align-items: center;
  gap: 12px;
  padding: 16px;
}

.directory-detail-header h2 {
  overflow-wrap: anywhere;
  margin: 0;
  font-size: 17px;
  line-height: 1.25;
}

.directory-detail-header p,
.directory-detail-header strong,
.directory-detail-header a {
  display: block;
  overflow-wrap: anywhere;
  margin: 3px 0 0;
  color: #5d6a82;
  font-size: 10px;
}

.directory-detail-header a {
  color: var(--blue);
}

.directory-detail-header > button {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 0;
  background: transparent;
  color: #67738a;
  cursor: pointer;
}

.directory-detail-header svg {
  width: 17px;
  height: 17px;
}

.directory-detail-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  overflow-x: visible;
  border-bottom: 1px solid #e1e6ef;
  padding: 0 16px 14px;
  scrollbar-width: none;
}

.directory-detail-actions > * {
  flex: 0 0 auto;
  min-height: 36px;
  padding: 0 11px;
  font-size: 9px;
  text-decoration: none;
}

.directory-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
  border-bottom: 1px solid #e1e6ef;
  padding: 13px 16px;
  gap: 9px 14px;
}

.directory-facts div,
.directory-company-context dl div {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 6px;
  min-width: 0;
}

.directory-facts dt,
.directory-company-context dt {
  color: #748096;
  font-size: 9px;
}

.directory-facts dd,
.directory-company-context dd {
  overflow-wrap: anywhere;
  margin: 0;
  color: #17213b;
  font-size: 9px;
  font-weight: 750;
}

.company-score-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
  border-bottom: 1px solid #e1e6ef;
  padding: 12px 16px;
}

.company-score-grid article {
  display: grid;
  min-width: 0;
  border: 1px solid #dce4ef;
  border-radius: 6px;
  padding: 9px;
  text-align: center;
}

.company-score-grid span,
.company-score-grid em {
  overflow: hidden;
  font-size: 8px;
  font-style: normal;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.company-score-grid strong {
  margin: 5px 0;
  color: #07843a;
  font-size: 20px;
}

.company-score-grid em {
  color: #07843a;
}

.company-score-grid article > div {
  height: 4px;
  margin-top: 8px;
  overflow: hidden;
  border-radius: 4px;
  background: #e7ebf1;
}

.company-score-grid article > div i {
  display: block;
  height: 100%;
  background: #16a34a;
}

.directory-ai-summary,
.directory-detail-section,
.directory-company-context,
.call-brief,
.directory-note-form {
  border-bottom: 1px solid #e1e6ef;
  padding: 13px 16px;
}

.directory-ai-summary {
  background: #fbfdff;
}

.directory-ai-summary h3,
.directory-detail-section h3,
.directory-company-context h3,
.call-brief h3 {
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 0 0 9px;
  font-size: 10px;
}

.directory-ai-summary h3 svg,
.directory-detail-section h3 svg,
.directory-company-context h3 svg {
  width: 14px;
  height: 14px;
  color: var(--blue);
}

.directory-ai-summary p,
.directory-detail-section p,
.directory-company-context p,
.call-brief p {
  overflow-wrap: anywhere;
  margin: 0;
  color: #45526b;
  font-size: 9px;
  line-height: 1.55;
}

.company-signals,
.directory-activity,
.buying-committee {
  display: grid;
  gap: 8px;
}

.company-signals article,
.directory-activity article,
.buying-committee article {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 9px;
}

.company-signals article > span,
.directory-activity article > span {
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  border-radius: 5px;
  background: #eef4ff;
  color: var(--blue);
  flex: 0 0 auto;
}

.company-signals svg,
.directory-activity svg {
  width: 13px;
  height: 13px;
}

.company-signals strong,
.directory-activity strong,
.buying-committee strong {
  min-width: 0;
  overflow-wrap: anywhere;
  color: #303c55;
  font-size: 9px;
}

.similarity-summary .directory-section-heading {
  margin-bottom: 3px;
}

.similarity-summary .directory-section-heading > strong {
  color: var(--blue);
  font-size: 15px;
}

.directory-similarity-factors {
  display: grid;
  gap: 7px;
  margin-top: 9px;
}

.directory-similarity-factors article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
}

.directory-similarity-factors article > div {
  display: grid;
  min-width: 0;
  gap: 1px;
}

.directory-similarity-factors strong {
  color: #303c55;
  font-size: 9px;
}

.directory-similarity-factors span {
  overflow-wrap: anywhere;
  color: #748096;
  font-size: 8px;
}

.directory-similarity-factors em {
  color: var(--blue);
  font-size: 8px;
  font-style: normal;
  font-weight: 800;
}

.directory-activity article > div,
.buying-committee article > div:last-child {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.directory-activity small,
.buying-committee span,
.buying-committee small {
  overflow-wrap: anywhere;
  color: #748096;
  font-size: 8px;
}

.contact-photo-avatar {
  position: relative;
  overflow: hidden;
}

.contact-photo-avatar img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.directory-company-context dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px 12px;
  margin: 0;
}

.call-brief article {
  display: grid;
  grid-template-columns: 24px 94px minmax(0, 1fr);
  align-items: start;
  gap: 8px;
  border-top: 1px solid #e5e9f1;
  padding: 9px 0;
}

.call-brief article > span {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 5px;
  background: #eef4ff;
  color: var(--blue);
}

.call-brief article svg {
  width: 13px;
  height: 13px;
}

.call-brief article strong {
  color: #33405a;
  font-size: 9px;
}

.directory-note-form[hidden] {
  display: none;
}

.directory-note-form textarea {
  padding-right: 10px;
}

.directory-note-form button {
  min-height: 32px;
  margin-top: 7px;
  padding: 0 11px;
  font-size: 9px;
}

.directory-record-actions {
  display: flex;
  gap: 7px;
  overflow-x: auto;
  padding: 13px 16px;
}

.directory-record-actions button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  min-height: 33px;
  border: 1px solid #d8e0eb;
  border-radius: 5px;
  background: #fff;
  color: #42506a;
  padding: 0 10px;
  font-size: 9px;
  font-weight: 750;
  cursor: pointer;
}

.directory-record-actions svg {
  width: 13px;
  height: 13px;
}

.directory-empty,
.directory-loading {
  display: grid;
  place-items: center;
  align-content: center;
  min-height: 260px;
  padding: 24px;
  color: #738097;
  text-align: center;
}

.directory-empty > svg {
  width: 28px;
  height: 28px;
  color: #9aa5b8;
}

.directory-empty h2 {
  margin: 10px 0 4px;
  color: #27334b;
  font-size: 14px;
}

.directory-empty p,
.directory-loading p {
  max-width: 280px;
  margin: 0;
  font-size: 10px;
  line-height: 1.5;
}

.directory-loading span {
  width: 22px;
  height: 22px;
  border: 2px solid #dbe4f4;
  border-top-color: var(--blue);
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
}

@media (max-width: 1380px) {
  body.directory-focus-view .product-nav,
  body.dialer-focus-view .product-nav {
    gap: 2px;
  }

  .directory-grid {
    grid-template-columns: 260px minmax(500px, 1fr) 370px;
  }

  .company-directory-row {
    grid-template-columns: 22px 42px minmax(190px, 1fr) 62px;
  }

  .lead-directory-row {
    grid-template-columns: 22px 40px minmax(210px, 1fr) 64px 62px;
  }

  .company-directory-row .directory-secondary,
  .lead-directory-row .directory-secondary {
    display: none;
  }
}

@media (max-width: 1180px) {
  body.directory-focus-view .product-nav-menu:nth-child(4),
  body.directory-focus-view .product-nav-menu:nth-child(5),
  body.dialer-focus-view .product-nav-menu:nth-child(4),
  body.dialer-focus-view .product-nav-menu:nth-child(5),
  body.directory-focus-view .user-chip > div,
  body.dialer-focus-view .user-chip > div {
    display: none;
  }

  .directory-grid {
    grid-template-columns: 250px minmax(0, 1fr);
  }

  .directory-intelligence {
    grid-column: 1 / -1;
    border-top: 1px solid #dce3ef;
  }

  .directory-detail-header,
  .directory-detail-actions,
  .directory-facts,
  .company-score-grid,
  .directory-ai-summary,
  .directory-detail-section,
  .directory-company-context,
  .call-brief,
  .directory-note-form,
  .directory-record-actions {
    max-width: 800px;
    margin-right: auto;
    margin-left: auto;
  }
}

@media (max-width: 820px) {
  body.directory-focus-view .app-header,
  body.dialer-focus-view .app-header {
    align-items: center;
    flex-direction: row;
    min-height: 62px;
    padding: 7px 12px;
  }

  body.directory-focus-view .product-brand,
  body.dialer-focus-view .product-brand {
    width: 154px;
    min-width: 154px;
  }

  body.directory-focus-view .product-brand img,
  body.dialer-focus-view .product-brand img {
    width: 150px;
  }

  body.directory-focus-view .product-nav,
  body.dialer-focus-view .product-nav,
  body.directory-focus-view .header-actions .icon-button:not(:first-child),
  body.dialer-focus-view .header-actions .icon-button:not(:first-child),
  body.directory-focus-view .user-chip > div,
  body.dialer-focus-view .user-chip > div {
    display: none;
  }

  body.directory-focus-view .header-actions,
  body.dialer-focus-view .header-actions,
  body.contacts-focus-view .header-actions {
    width: auto;
    margin-left: auto;
    justify-content: flex-end;
    flex-wrap: nowrap;
  }

  body.contacts-focus-view .app-header {
    align-items: center;
    flex-direction: row;
  }

  .dashboard-main.companies-view,
  .dashboard-main.lead-directory-view,
  .dashboard-main.calls-view {
    padding: 10px;
  }

  .directory-page-header {
    align-items: stretch;
    flex-direction: column;
    padding: 2px 2px 12px;
  }

  .directory-page-actions {
    overflow-x: auto;
    scrollbar-width: none;
  }

  .directory-page-actions button {
    flex: 0 0 auto;
    min-height: 38px;
    font-size: 10px;
  }

  .directory-filter-toggle {
    display: inline-flex !important;
  }

  .directory-grid {
    grid-template-columns: minmax(0, 1fr);
    min-height: calc(100dvh - 170px);
  }

  .directory-filters {
    display: none;
    border-right: 0;
    border-bottom: 1px solid #dce3ef;
  }

  .directory-filters.mobile-open {
    display: block;
  }

  .directory-results-panel {
    border-right: 0;
  }

  .directory-intelligence {
    display: none;
    position: fixed;
    inset: 62px 0 0;
    z-index: 40;
    overflow-y: auto;
    background: #fff;
  }

  body.directory-detail-open .directory-workspace:not([style*="display: none"]) .directory-intelligence,
  body.directory-detail-open .dashboard-main.companies-view #companyIntelligence,
  body.directory-detail-open .dashboard-main.lead-directory-view #leadDirectoryIntelligence,
  body.directory-detail-open .dashboard-main.calls-view #callIntelligence {
    display: block;
  }

  .directory-tabs button {
    min-height: 42px;
    padding: 0 9px;
  }

  .directory-toolbar {
    min-height: 44px;
  }

  .directory-toolbar > span {
    display: none;
  }

  .directory-row {
    min-height: 88px;
    padding: 10px 9px;
  }

  .company-directory-row,
  .lead-directory-row {
    grid-template-columns: 20px 36px minmax(150px, 1fr) 56px;
  }

  .call-directory-row {
    grid-template-columns: 20px 36px minmax(150px, 1fr) 36px;
  }

  .directory-avatar {
    width: 34px;
    height: 34px;
  }

  .lead-directory-row .directory-row-actions,
  .call-directory-row .call-schedule,
  .call-directory-row .directory-score {
    display: none;
  }

  .directory-score {
    min-width: 52px;
  }

  .voicemail-directory-row {
    grid-template-columns: 36px minmax(180px, 1fr);
  }

  .voicemail-directory-row .call-schedule,
  .voicemail-directory-row audio {
    grid-column: 2;
    display: block;
  }

  .directory-detail-header,
  .directory-detail-actions,
  .directory-facts,
  .company-score-grid,
  .directory-ai-summary,
  .directory-detail-section,
  .directory-company-context,
  .call-brief,
  .directory-note-form,
  .directory-record-actions {
    max-width: none;
  }
}

@media (max-width: 480px) {
  .directory-page-actions .secondary-button:not(.directory-filter-toggle) {
    display: grid;
    place-items: center;
    width: 39px;
    min-width: 39px;
    padding: 0;
    font-size: 0;
  }

  .directory-page-actions .secondary-button svg {
    width: 16px;
    height: 16px;
  }

  .directory-filter-controls label {
    grid-template-columns: minmax(0, 1fr) 125px;
  }

  .directory-primary em:nth-child(n+3) {
    display: none;
  }

  .directory-facts,
  .directory-company-context dl {
    grid-template-columns: 1fr;
  }

  .company-score-grid {
    gap: 5px;
    padding-right: 10px;
    padding-left: 10px;
  }

  .company-score-grid article {
    padding: 7px 4px;
  }

  .call-brief article {
    grid-template-columns: 24px minmax(0, 1fr);
  }

  .call-brief article p {
    grid-column: 2;
  }
}

/* Figma-aligned directory system */
body.contacts-focus-view .app-header,
body.directory-focus-view .app-header,
body.dialer-focus-view .app-header {
  min-height: 88px;
  border-bottom-color: var(--cx-color-border-divider);
  padding: 10px 25px;
}

body.contacts-focus-view .product-brand,
body.directory-focus-view .product-brand,
body.dialer-focus-view .product-brand {
  width: 300px;
  min-width: 300px;
  height: 48px;
}

body.contacts-focus-view .product-brand img,
body.directory-focus-view .product-brand img,
body.dialer-focus-view .product-brand img {
  width: 176px;
  height: 48px;
}

body.contacts-focus-view .product-nav,
body.directory-focus-view .product-nav,
body.dialer-focus-view .product-nav {
  gap: 28px;
}

.product-nav-menu > button,
.product-nav a {
  color: var(--cx-color-text-primary);
  font-size: 13px;
  font-weight: 600;
}

.dashboard-main.contacts-view,
.dashboard-main.companies-view,
.dashboard-main.lead-directory-view,
.dashboard-main.calls-view {
  background: var(--cx-color-bg-canvas);
  padding: 20px 25px 25px;
}

.contacts-page-header,
.directory-page-header {
  min-height: 58px;
  padding: 0 0 18px;
}

.contacts-page-header h1,
.directory-page-header h1 {
  color: var(--cx-color-text-primary);
  font-size: 26px;
  font-weight: 650;
}

.contacts-page-header p,
.directory-page-header p {
  color: var(--cx-color-text-secondary);
  font-size: 12px;
}

.contacts-page-actions button,
.directory-page-actions button {
  min-height: 44px;
  border-radius: 6px;
  padding-right: 24px;
  padding-left: 24px;
  font-size: 13px;
  font-weight: 600;
}

.contacts-grid,
.directory-grid {
  align-items: stretch;
  gap: 18px;
  min-height: calc(100dvh - 191px);
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.contacts-grid {
  grid-template-columns: 312px minmax(560px, 1fr) minmax(390px, 450px);
}

.directory-grid {
  grid-template-columns: 280px minmax(560px, 1fr) minmax(390px, 450px);
}

.contacts-filters,
.contacts-directory,
.contact-intelligence,
.directory-filters,
.directory-results-panel,
.directory-intelligence {
  overflow: hidden;
  border: 1px solid var(--cx-color-border-default);
  border-radius: 8px;
  background: var(--cx-color-bg-surface);
}

.contacts-filters,
.directory-filters {
  border-right: 1px solid var(--cx-color-border-default);
  padding: 18px;
}

.contacts-directory,
.directory-results-panel {
  border-right: 1px solid var(--cx-color-border-default);
}

.contact-intelligence,
.directory-intelligence {
  align-self: stretch;
}

.contact-ai-search {
  gap: 14px;
  border: 0;
  padding: 0;
}

.contact-ai-search textarea {
  min-height: 122px;
  border: 1px solid var(--cx-color-border-default);
  border-radius: 7px;
  padding: 14px 38px 14px 14px;
  font-size: 12px;
  line-height: 1.5;
}

.directory-ai-search {
  padding-bottom: 16px;
}

.directory-ai-search textarea {
  min-height: 122px;
  border-color: var(--cx-color-border-default);
  padding: 14px 38px 14px 14px;
  font-size: 12px;
  line-height: 1.5;
}

.contact-panel-title,
.directory-panel-title {
  color: var(--cx-color-text-primary);
  font-size: 16px;
  font-weight: 600;
}

.suggested-filter-button,
.directory-suggested {
  min-height: 33px;
  border-color: var(--cx-color-action-border);
  background: var(--cx-color-bg-surface);
  color: var(--cx-color-action-primary);
  font-size: 12px;
  font-weight: 500;
}

.contact-filter-section > strong,
.contact-filter-heading strong,
.directory-filters section strong,
.directory-filter-controls > strong {
  color: var(--cx-color-text-primary);
  font-size: 13px;
  font-weight: 600;
}

.contact-filter-controls label,
.directory-filter-controls label {
  color: var(--cx-color-text-secondary);
  font-size: 12px;
  font-weight: 500;
}

.directory-filter-controls label {
  min-height: 40px;
}

.contact-filter-controls input,
.contact-filter-controls select,
.directory-filter-controls input:not([type="checkbox"]),
.directory-filter-controls select {
  min-height: 36px;
  border-color: var(--cx-color-border-default);
  font-size: 11px;
}

.contact-tabs,
.directory-tabs {
  min-height: 62px;
  border-bottom-color: var(--cx-color-border-divider);
  padding: 0 16px;
}

.contact-tabs {
  gap: 28px;
}

.contact-tabs button,
.directory-tabs button {
  min-height: 44px;
  color: var(--cx-color-text-primary);
  font-size: 12px;
  font-weight: 500;
}

.contact-tabs button.active,
.directory-tabs button.active {
  color: var(--cx-color-action-primary);
}

.contacts-list-toolbar,
.directory-toolbar {
  min-height: 62px;
  border-bottom-color: var(--cx-color-border-divider);
  padding-right: 16px;
  padding-left: 16px;
  font-size: 11px;
}

.contacts-list-toolbar select,
.directory-toolbar select {
  color: var(--cx-color-text-primary);
  font-size: 11px;
  font-weight: 600;
}

.contact-row,
.directory-row {
  min-height: 104px;
  border-bottom-color: var(--cx-color-border-divider);
  padding: 12px 16px;
}

.contact-row.selected,
.directory-row.selected {
  outline: 1px solid var(--cx-color-action-border);
  outline-offset: -1px;
  background: var(--cx-color-action-soft);
}

.contact-person > strong,
.contact-location strong,
.directory-primary strong,
.directory-secondary strong,
.call-schedule strong {
  color: var(--cx-color-text-primary);
  font-size: 12px;
  font-weight: 600;
}

.contact-person > span,
.contact-location span,
.directory-primary > span,
.directory-secondary span,
.call-schedule span {
  color: var(--cx-color-text-secondary);
  font-size: 11px;
}

.contact-tag,
.directory-primary em {
  min-height: 22px;
  border-color: var(--cx-color-border-default);
  padding: 3px 9px;
  font-size: 9px;
  font-weight: 500;
}

.contact-score,
.directory-score {
  min-height: 64px;
  border-color: var(--cx-color-status-success);
  border-radius: 8px;
  background: var(--cx-color-status-success-soft);
  color: var(--cx-color-status-success);
}

.directory-score {
  min-width: 76px;
}

.contact-score strong,
.directory-score strong {
  font-size: 22px;
  font-weight: 600;
}

.contact-score span,
.directory-score span {
  font-size: 10px;
  font-weight: 500;
}

.contact-quick-actions button,
.contact-quick-actions a,
.directory-row-actions button,
.directory-row-actions a,
.call-row-button {
  width: 44px;
  min-width: 44px;
  height: 44px;
  border-radius: 6px;
}

.contact-detail-actions > *,
.directory-detail-actions > * {
  min-height: 44px;
  padding-right: 18px;
  padding-left: 18px;
  font-size: 11px;
  font-weight: 600;
}

.contact-detail-header,
.directory-detail-header {
  padding: 20px;
}

.directory-detail-header h2 {
  font-size: 20px;
  font-weight: 600;
}

.directory-detail-header p,
.directory-detail-header strong,
.directory-detail-header a {
  font-size: 11px;
}

.directory-detail-actions {
  padding: 0 20px 16px;
}

.directory-facts,
.company-score-grid,
.directory-ai-summary,
.directory-detail-section,
.directory-company-context,
.call-brief,
.directory-note-form,
.directory-record-actions {
  padding-right: 20px;
  padding-left: 20px;
}

.directory-facts dt,
.directory-company-context dt,
.directory-facts dd,
.directory-company-context dd,
.directory-ai-summary p,
.directory-detail-section p,
.directory-company-context p,
.call-brief p {
  font-size: 10px;
}

@media (min-width: 1700px) {
  .contacts-grid,
  .directory-grid {
    grid-template-columns: 338px minmax(760px, 900px) minmax(500px, 585px);
    justify-content: space-between;
  }

  .contacts-page-actions button,
  .directory-page-actions button {
    min-width: 160px;
  }

  .contacts-page-actions .primary-button,
  .directory-page-actions .primary-button {
    min-width: 210px;
  }

  .company-directory-row {
    grid-template-columns: 22px 42px minmax(210px, 1fr) 160px 76px;
  }

  .lead-directory-row {
    grid-template-columns: 22px 42px minmax(220px, 1fr) 160px 96px 76px;
  }

  .call-directory-row {
    grid-template-columns: 22px 42px minmax(220px, 1fr) 220px 44px 76px;
  }
}

@media (max-width: 1499px) {
  body.contacts-focus-view .product-brand,
  body.directory-focus-view .product-brand,
  body.dialer-focus-view .product-brand {
    width: 215px;
    min-width: 215px;
  }

  body.contacts-focus-view .product-nav,
  body.directory-focus-view .product-nav,
  body.dialer-focus-view .product-nav {
    gap: 6px;
  }

  .contacts-grid,
  .directory-grid {
    gap: 12px;
  }

  .lead-directory-row {
    grid-template-columns: 22px 40px minmax(210px, 1fr) 112px 66px 62px;
  }

  .contacts-grid {
    grid-template-columns: 270px minmax(0, 1fr) 360px;
  }

  .directory-grid {
    grid-template-columns: 250px minmax(500px, 1fr) minmax(410px, 440px);
  }

  .directory-detail-actions > * {
    flex: 1 1 118px;
    min-width: 0;
    padding-right: 10px;
    padding-left: 10px;
  }

  .directory-facts div {
    grid-template-columns: 64px minmax(0, 1fr);
  }

  .company-score-grid article {
    padding-right: 6px;
    padding-left: 6px;
  }

  .company-score-grid span,
  .company-score-grid em {
    white-space: normal;
  }

  .directory-primary > span,
  .directory-secondary span,
  .call-schedule span {
    font-size: 10px;
  }

  .directory-score {
    min-width: 58px;
  }

  .contact-quick-actions button,
  .contact-quick-actions a,
  .directory-row-actions button,
  .directory-row-actions a,
  .call-row-button {
    width: 30px;
    min-width: 30px;
    height: 30px;
  }
}

@media (max-width: 1280px) and (min-width: 1181px) {
  .directory-grid {
    grid-template-columns: 230px minmax(460px, 1fr) 390px;
  }

  .directory-detail-header,
  .directory-detail-actions,
  .directory-facts,
  .company-score-grid,
  .directory-ai-summary,
  .directory-detail-section,
  .directory-company-context,
  .call-brief,
  .directory-note-form,
  .directory-record-actions {
    padding-right: 14px;
    padding-left: 14px;
  }
}

@media (max-width: 1180px) {
  .contacts-grid,
  .directory-grid {
    grid-template-columns: 250px minmax(0, 1fr);
  }

  .contact-intelligence,
  .directory-intelligence {
    grid-column: 1 / -1;
  }
}

@media (max-width: 820px) {
  body.contacts-focus-view .app-header,
  body.directory-focus-view .app-header,
  body.dialer-focus-view .app-header {
    min-height: 62px;
    padding: 7px 12px;
  }

  body.contacts-focus-view .product-brand,
  body.directory-focus-view .product-brand,
  body.dialer-focus-view .product-brand {
    width: 154px;
    min-width: 154px;
    height: 44px;
  }

  body.contacts-focus-view .product-brand img,
  body.directory-focus-view .product-brand img,
  body.dialer-focus-view .product-brand img {
    width: 150px;
    height: 44px;
  }

  .dashboard-main.contacts-view,
  .dashboard-main.companies-view,
  .dashboard-main.lead-directory-view,
  .dashboard-main.calls-view {
    padding: 14px 10px;
  }

  .contacts-page-header,
  .directory-page-header {
    min-height: 0;
    padding-bottom: 12px;
  }

  .contacts-page-header h1,
  .directory-page-header h1 {
    font-size: 24px;
  }

  .contacts-page-actions button,
  .directory-page-actions button {
    min-height: 38px;
    padding-right: 14px;
    padding-left: 14px;
    font-size: 10px;
  }

  .contacts-grid,
  .directory-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }

  .contact-row,
  .directory-row {
    min-height: 88px;
    padding: 10px 9px;
  }

  .contact-person > strong,
  .directory-primary strong {
    font-size: 11px;
  }

  .contact-person > span,
  .directory-primary > span {
    font-size: 9px;
  }

  .directory-score {
    min-width: 56px;
    min-height: 54px;
  }

  .directory-score strong {
    font-size: 18px;
  }

  .directory-score span {
    font-size: 8px;
  }

  .contact-intelligence,
  .directory-intelligence {
    border-radius: 0;
  }
}

/* Global icon navigation */
.dashboard-shell {
  grid-template-columns: minmax(0, 1fr);
}

.sidebar {
  display: none;
}

.app-header,
body.contacts-focus-view .app-header,
body.directory-focus-view .app-header,
body.dialer-focus-view .app-header {
  min-height: 88px;
  border-bottom-color: var(--cx-color-border-divider);
  background: rgba(255, 255, 255, 0.98);
  padding: 0 25px;
}

.product-brand,
.product-nav {
  display: flex;
}

.product-brand,
body.contacts-focus-view .product-brand,
body.directory-focus-view .product-brand,
body.dialer-focus-view .product-brand {
  align-items: center;
  width: 280px;
  min-width: 280px;
  height: 64px;
  overflow: hidden;
}

.product-brand img,
body.contacts-focus-view .product-brand img,
body.directory-focus-view .product-brand img,
body.dialer-focus-view .product-brand img {
  width: 176px;
  height: 48px;
  object-fit: contain;
  object-position: left center;
}

.global-search {
  display: none;
}

.product-nav,
body.contacts-focus-view .product-nav,
body.directory-focus-view .product-nav,
body.dialer-focus-view .product-nav {
  align-self: stretch;
  align-items: stretch;
  gap: 4px;
  margin-right: auto;
}

.product-nav-home,
.product-nav-menu > button {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 6px;
  width: 86px;
  min-width: 86px;
  min-height: 88px;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  background: transparent;
  color: var(--cx-color-text-secondary);
  padding: 9px 8px 8px;
  font: inherit;
  font-size: 11px;
  font-weight: 500;
  text-decoration: none;
  cursor: pointer;
}

.product-nav-home > svg,
.product-nav-menu .product-nav-icon {
  width: 23px;
  height: 23px;
  flex: 0 0 auto;
  stroke-width: 1.8;
}

.product-nav-menu .product-nav-chevron {
  display: none;
}

.product-nav-home:hover,
.product-nav-menu > button:hover,
.product-nav-menu:focus-within > button {
  background: var(--cx-color-action-soft);
  color: var(--cx-color-action-primary);
}

body[data-app-route="dashboard"] .product-nav-home,
body.contacts-focus-view .product-nav-menu[data-nav-section="discover"] > button,
body:has(.dashboard-main.companies-view) .product-nav-menu[data-nav-section="discover"] > button,
body:has(.dashboard-main.lead-directory-view) .product-nav-menu[data-nav-section="outreach"] > button,
body:has(.dashboard-main.calls-view) .product-nav-menu[data-nav-section="outreach"] > button,
body.dialer-focus-view .product-nav-menu[data-nav-section="outreach"] > button {
  border-bottom-color: var(--cx-color-action-primary);
  background: var(--cx-color-action-soft);
  color: var(--cx-color-action-primary);
}

/* Shared sales workspaces */
.dashboard-main.ops-view {
  display: block;
  max-width: none;
  padding: 18px;
}

.dashboard-main.ops-view > :not(.ops-workspace.active) {
  display: none;
}

.ops-workspace {
  display: none;
  min-width: 0;
  min-height: calc(100dvh - 124px);
}

.ops-workspace.active {
  display: block;
}

body.ops-focus-view .global-search {
  display: none;
}

body[data-ops-route="emails"] .product-nav-menu[data-nav-section="outreach"] > button,
body[data-ops-route="tasks"] .product-nav-menu[data-nav-section="outreach"] > button,
body[data-ops-route="sequences"] .product-nav-menu[data-nav-section="outreach"] > button,
body[data-ops-route="target-lists"] .product-nav-menu[data-nav-section="discover"] > button,
body[data-ops-route="ai-search"] .product-nav-menu[data-nav-section="ai"] > button {
  border-bottom-color: var(--cx-color-action-primary);
  background: var(--cx-color-action-soft);
  color: var(--cx-color-action-primary);
}

/* Analytics, reports, settings, and administration */
.dashboard-main.insight-view {
  display: block;
  max-width: none;
  padding: 18px 24px 30px;
}

.dashboard-main.insight-view > :not(.insight-workspace.active) { display: none; }
.insight-workspace { display: none; min-width: 0; min-height: calc(100dvh - 124px); }
.insight-workspace.active { display: block; }
body.insight-focus-view .global-search { display: none; }

body[data-insight-route="analytics"] .product-nav-menu[data-nav-section="analytics"] > button,
body[data-insight-route="reports"] .product-nav-menu[data-nav-section="analytics"] > button,
body[data-insight-route="settings"] .product-nav-menu[data-nav-section="admin"] > button,
body[data-insight-route="admin"] .product-nav-menu[data-nav-section="admin"] > button {
  border-bottom-color: var(--cx-color-action-primary);
  background: var(--cx-color-action-soft);
  color: var(--cx-color-action-primary);
}

.ins-page-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  min-height: 74px;
  padding: 2px 4px 18px;
}

.ins-page-header h1 { margin: 0; font-size: 26px; line-height: 1.15; font-weight: 680; letter-spacing: 0; }
.ins-page-header p { margin: 6px 0 0; color: var(--cx-color-text-secondary); font-size: 13px; }
.ins-page-actions { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
.ins-page-actions button, .report-detail-actions button, .setting-action button, .admin-section > header button { min-height: 38px; }
.ins-page-actions svg, .report-detail-actions svg, .setting-action svg, .admin-section > header svg { width: 16px; height: 16px; }

.ins-date-select {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 0 10px;
  border: 1px solid var(--cx-color-border-default);
  border-radius: 6px;
  background: #fff;
}
.ins-date-select svg { width: 17px; }
.ins-date-select select { border: 0; outline: 0; background: transparent; color: var(--ink); }

.ins-panel, .ins-filter-rail, .settings-nav, .admin-nav {
  min-width: 0;
  border: 1px solid var(--cx-color-border-default);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, .025);
}

.ins-panel > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.ins-panel h2, .ins-filter-rail h2, .settings-nav h2, .admin-section h2 { margin: 0; font-size: 15px; font-weight: 680; }
.ins-panel h3 { margin: 0; font-size: 12px; font-weight: 700; }
.ins-panel header p, .admin-section header p { margin: 4px 0 0; color: var(--muted); font-size: 11px; }

.ins-metric-grid { display: grid; gap: 12px; }
.analytics-metrics { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.report-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 14px; }
.admin-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ins-metric {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  min-height: 102px;
  padding: 15px;
  border: 1px solid var(--cx-color-border-default);
  border-radius: 8px;
  background: #fff;
}
.ins-metric > div { min-width: 0; }
.ins-metric small { display: block; color: var(--cx-color-text-secondary); font-size: 11px; }
.ins-metric strong { display: block; margin-top: 3px; overflow: hidden; text-overflow: ellipsis; font-size: 23px; line-height: 1.15; white-space: nowrap; }
.ins-metric p { margin: 5px 0 0; color: var(--cx-color-status-success); font-size: 10px; line-height: 1.3; }

.ins-icon {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  border-radius: 8px;
  background: var(--blue-soft);
  color: var(--blue);
}
.ins-icon svg { width: 20px; height: 20px; }
.ins-icon.green { background: #eafaf0; color: #0f9d58; }
.ins-icon.purple { background: #f1edff; color: #7047eb; }
.ins-icon.orange { background: #fff3e8; color: #e96b0b; }
.ins-icon.cyan { background: #e8f8f8; color: #079a9a; }

.analytics-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr) 340px;
  grid-template-areas: "performance pipeline insights" "channel team insights";
  gap: 14px;
  margin-top: 14px;
}
.performance-panel { grid-area: performance; }
.pipeline-panel { grid-area: pipeline; }
.analytics-insights { grid-area: insights; }
.channel-panel { grid-area: channel; }
.team-panel { grid-area: team; }
.chart-panel, .channel-panel, .team-panel, .analytics-insights { padding: 16px; }
.ins-legend { display: flex; gap: 14px; color: var(--muted); font-size: 10px; }
.ins-legend span::before { content: ""; display: inline-block; width: 8px; height: 8px; margin-right: 5px; border-radius: 50%; background: currentColor; }
.ins-legend .blue { color: #0875f5; }
.ins-legend .cyan { color: #0faaa9; }
.ins-line-chart { display: block; width: 100%; height: 240px; margin-top: 10px; overflow: visible; }
.ins-line-chart polyline { fill: none; stroke-width: 3; stroke-linejoin: round; stroke-linecap: round; }
.ins-line-chart circle { stroke: #fff; stroke-width: 2; }
.ins-chart-grid line { stroke: #e9eef5; stroke-width: 1; stroke-dasharray: 4 4; }
.ins-chart-axis text { fill: #64748b; font-size: 9px; }

.analytics-insights > header { padding-bottom: 10px; border-bottom: 1px solid var(--line); }
.analytics-insights h2 { display: flex; align-items: center; gap: 7px; }
.analytics-insights h2 svg { width: 17px; color: var(--blue); }
.analytics-insights article, .admin-alerts article {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  padding: 18px 0;
  border-bottom: 1px solid var(--line);
}
.analytics-insights article:last-child { border-bottom: 0; }
.analytics-insights strong, .admin-alerts strong { display: block; font-size: 12px; }
.analytics-insights p, .admin-alerts p { margin: 5px 0 0; color: var(--muted); font-size: 10px; line-height: 1.5; }

.channel-content { display: grid; grid-template-columns: 150px 1fr; align-items: center; gap: 18px; margin-top: 16px; }
.ins-donut { display: grid; place-items: center; width: 142px; aspect-ratio: 1; border-radius: 50%; background: conic-gradient(var(--donut)); }
.ins-donut::before { content: ""; grid-area: 1 / 1; width: 88px; aspect-ratio: 1; border-radius: 50%; background: #fff; }
.ins-donut span { z-index: 1; grid-area: 1 / 1; text-align: center; }
.ins-donut strong, .ins-donut small { display: block; }
.ins-donut strong { font-size: 19px; }
.ins-donut small { margin-top: 2px; color: var(--muted); font-size: 9px; }
.channel-legend { min-width: 0; }
.channel-legend > div { display: grid; grid-template-columns: 8px 1fr auto; align-items: center; gap: 8px; min-height: 30px; border-bottom: 1px solid var(--line); font-size: 10px; }
.channel-legend i { width: 7px; height: 7px; border-radius: 50%; }
.channel-legend strong { font-size: 11px; }

.ins-table-wrap { min-width: 0; overflow-x: auto; }
.ins-table-wrap table { width: 100%; border-collapse: collapse; font-size: 11px; }
.ins-table-wrap th { color: var(--muted); font-size: 9px; font-weight: 650; text-align: left; text-transform: uppercase; }
.ins-table-wrap th, .ins-table-wrap td { padding: 11px 10px; border-bottom: 1px solid var(--line); vertical-align: middle; }
.ins-table-wrap td strong, .ins-table-wrap td small { display: block; }
.ins-table-wrap td small { max-width: 270px; margin-top: 3px; color: var(--muted); line-height: 1.35; }
.ins-table-wrap tr.selected { background: #f5f9ff; outline: 1px solid var(--blue); outline-offset: -1px; }
.ins-table-wrap tbody tr { cursor: pointer; }
.ins-table-wrap tbody tr:hover { background: #f8fafc; }
.team-panel .ins-table-wrap { margin-top: 10px; }
.positive { color: var(--green); font-weight: 700; }
.ins-avatar { display: inline-grid; place-items: center; width: 30px; height: 30px; margin-right: 7px; border-radius: 50%; background: #e9f2ff; color: var(--blue); font-size: 10px; font-weight: 750; }

.ins-status { display: inline-flex; align-items: center; width: fit-content; padding: 4px 8px; border-radius: 5px; background: #f1f5f9; color: #475569; font-size: 9px; font-weight: 700; text-transform: capitalize; }
.ins-status.success { background: #eaf9ef; color: #12843d; }
.ins-status.scheduled { background: #fff4df; color: #b65c00; }
.ins-status.failed { background: #fff0f0; color: #c62828; }
.ins-status.draft, .ins-status.neutral { background: #f1f5f9; color: #475569; }

.reports-layout { display: grid; grid-template-columns: 220px minmax(540px, 1fr) 300px; gap: 14px; }
.ins-filter-rail { padding: 16px; }
.ins-filter-rail h2 { margin-bottom: 16px; }
.ins-filter-rail > label { display: block; margin-bottom: 16px; }
.ins-filter-rail label > span { display: block; margin-bottom: 6px; color: var(--ink); font-size: 10px; font-weight: 650; }
.ins-filter-rail input, .ins-filter-rail select { width: 100%; min-height: 38px; border: 1px solid var(--line); border-radius: 6px; background: #fff; padding: 0 10px; color: var(--ink); font-size: 11px; }
.ins-search { position: relative; }
.ins-search svg { position: absolute; top: 11px; left: 10px; width: 16px; color: var(--muted); }
.ins-search input { padding-left: 34px; }
.filter-note { display: flex; gap: 8px; margin-top: 22px; padding-top: 16px; border-top: 1px solid var(--line); color: var(--muted); }
.filter-note svg { width: 15px; flex: 0 0 15px; }
.filter-note p { margin: 0; font-size: 9px; line-height: 1.5; }
.reports-list { overflow: hidden; }
.ins-tabs { display: flex; align-items: center; min-height: 48px; gap: 22px; padding: 0 14px; border-bottom: 1px solid var(--line); overflow-x: auto; }
.ins-tabs button { align-self: stretch; border: 0; border-bottom: 2px solid transparent; background: none; color: var(--muted); font-size: 10px; cursor: pointer; }
.ins-tabs button.active { border-bottom-color: var(--blue); color: var(--blue); font-weight: 700; }
.ins-tabs span { margin-left: 4px; padding: 2px 5px; border-radius: 7px; background: #f1f5f9; }
.reports-list footer { padding: 12px 14px; color: var(--muted); font-size: 10px; }
.empty-cell { height: 160px; color: var(--muted); text-align: center; }
.report-detail { padding: 16px; }
.report-detail > header { justify-content: flex-start; align-items: flex-start; }
.report-detail > header h2 { margin-top: 2px; }
.report-detail > header p { line-height: 1.45; }
.report-detail > section { padding: 17px 0; border-bottom: 1px solid var(--line); }
.report-detail dl { margin: 10px 0 0; }
.report-detail dl > div { display: grid; grid-template-columns: 88px 1fr; gap: 8px; margin-top: 9px; font-size: 10px; }
.report-detail dt { color: var(--muted); }
.report-detail dd { margin: 0; font-weight: 600; }
.report-metrics-list { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 12px 0 0; padding: 0; list-style: none; }
.report-metrics-list li { display: flex; align-items: center; gap: 5px; font-size: 10px; }
.report-metrics-list svg { width: 13px; color: var(--green); }
.recipient { display: flex; align-items: center; }
.recipient strong, .recipient small { display: block; font-size: 10px; }
.recipient small { margin-top: 3px; color: var(--muted); }
.report-detail-actions { display: flex; gap: 8px; margin-top: 16px; }

.settings-layout { display: grid; grid-template-columns: 240px minmax(500px, 1fr) 290px; gap: 16px; align-items: start; }
.settings-nav, .admin-nav { display: flex; flex-direction: column; padding: 9px; }
.settings-nav button, .admin-nav button { display: flex; align-items: center; gap: 12px; min-height: 46px; border: 0; border-radius: 6px; background: transparent; padding: 0 12px; color: var(--cx-color-text-secondary); text-align: left; cursor: pointer; }
.settings-nav button svg, .admin-nav button svg { width: 18px; height: 18px; }
.settings-nav button.active, .admin-nav button.active { background: var(--blue-soft); color: var(--blue); font-weight: 700; }
.settings-main { min-height: 590px; padding: 20px; }
.settings-form > header, .settings-content > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding-bottom: 18px; border-bottom: 1px solid var(--line); }
.settings-form h2, .settings-content h2 { margin: 0; font-size: 16px; }
.settings-form header p, .settings-content header p { margin: 4px 0 0; color: var(--muted); font-size: 11px; }
.profile-photo { display: grid; place-items: center; width: 54px; height: 54px; flex: 0 0 54px; border-radius: 50%; background: #e9f2ff; color: var(--blue); font-weight: 800; }
.profile-actions { display: flex; align-items: center; gap: 10px; }
.profile-actions img.profile-photo { object-fit: cover; }
.profile-actions button { min-height: 36px; }
.profile-actions button svg { width: 15px; height: 15px; }
.profile-linkedin-field { grid-column: 1 / -1; }
.profile-linkedin-field small { color: var(--muted); font-size: 9px; font-weight: 450; }
.linkedin-profile-summary { margin-top: 20px; padding: 14px; border: 1px solid #cfe5ff; border-radius: 7px; background: #f8fbff; }
.linkedin-profile-summary > div { display: flex; align-items: center; gap: 8px; }
.linkedin-profile-summary > div > svg { width: 17px; color: #0a66c2; }
.linkedin-profile-summary > div strong { flex: 1; font-size: 11px; }
.linkedin-profile-summary h3 { margin: 12px 0 0; font-size: 12px; }
.linkedin-profile-summary p { display: flex; align-items: center; gap: 6px; margin: 7px 0 0; color: var(--muted); font-size: 10px; }
.linkedin-profile-summary p svg { width: 13px; }
.linkedin-profile-summary > small { display: block; margin-top: 10px; color: var(--cx-color-text-secondary); font-size: 9px; line-height: 1.55; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 20px; margin-top: 20px; }
.form-grid label, .setting-field { display: grid; gap: 7px; color: var(--ink); font-size: 10px; font-weight: 650; }
.form-grid input, .form-grid select, .form-grid textarea, .setting-field input, .setting-field select, .setting-field textarea { width: 100%; min-height: 40px; border: 1px solid var(--line); border-radius: 6px; background: #fff; padding: 8px 11px; color: var(--ink); font-size: 11px; font-weight: 450; outline: 0; }
.form-grid textarea { resize: vertical; line-height: 1.5; }
.form-grid input:focus, .form-grid select:focus, .form-grid textarea:focus, .setting-field input:focus, .setting-field select:focus { border-color: var(--blue); box-shadow: 0 0 0 3px rgba(8, 117, 245, .08); }
.settings-form > footer { display: flex; align-items: center; justify-content: flex-end; gap: 14px; margin-top: 24px; }
.settings-form > footer span { color: var(--green); font-size: 10px; }
.targeting-form .wide-field { grid-column: 1 / -1; }
.targeting-section { padding: 18px 0 2px; border-bottom: 1px solid var(--line); }
.targeting-section:last-of-type { border-bottom: 0; }
.targeting-section h3 { margin: 0; color: var(--ink); font-size: 12px; }
.targeting-section .form-grid { margin-top: 14px; gap: 14px 18px; }
.weight-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 14px; }
.weight-grid label { display: grid; gap: 7px; color: var(--ink); font-size: 10px; font-weight: 650; }
.weight-grid input { width: 100%; min-height: 38px; border: 1px solid var(--line); border-radius: 6px; padding: 7px 10px; color: var(--ink); font-size: 11px; }
.weight-total { margin: 10px 0 0; color: var(--muted); font-size: 10px; }
.settings-stack { display: grid; gap: 0; margin-top: 8px; }
.setting-toggle, .setting-action { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 68px; border-bottom: 1px solid var(--line); }
.setting-toggle strong, .setting-toggle small, .setting-action strong, .setting-action small { display: block; }
.setting-toggle strong, .setting-action strong { font-size: 11px; }
.setting-toggle small, .setting-action small { margin-top: 4px; color: var(--muted); font-size: 9px; line-height: 1.4; }
.setting-toggle input { position: absolute; opacity: 0; pointer-events: none; }
.setting-toggle i { position: relative; width: 35px; height: 20px; flex: 0 0 35px; border-radius: 10px; background: #cbd5e1; transition: .2s; }
.setting-toggle i::after { content: ""; position: absolute; top: 3px; left: 3px; width: 14px; height: 14px; border-radius: 50%; background: #fff; transition: .2s; box-shadow: 0 1px 3px rgba(15,23,42,.25); }
.setting-toggle input:checked + i { background: var(--blue); }
.setting-toggle input:checked + i::after { transform: translateX(15px); }
.setting-field { margin-top: 16px; }
.connection-banner { display: flex; align-items: center; gap: 12px; margin-top: 18px; padding: 14px; border: 1px solid #ccebd7; border-radius: 7px; background: #f5fcf7; }
.connection-banner.warning { border-color: #f1d7aa; background: #fffaf0; }
.connection-banner > div { flex: 1; min-width: 0; }
.connection-banner strong, .connection-banner p { display: block; margin: 0; }
.connection-banner strong { font-size: 11px; }
.connection-banner p { margin-top: 4px; color: var(--muted); font-size: 9px; }
.settings-summary { display: grid; gap: 12px; }
.settings-summary > section { padding: 17px; }
.settings-summary h2 { margin-bottom: 16px; }
.workspace-identity { display: flex; align-items: center; gap: 10px; }
.workspace-identity > span { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 7px; background: #7047eb; color: #fff; font-weight: 750; }
.workspace-identity strong, .workspace-identity small { display: block; }
.workspace-identity strong { font-size: 11px; }.workspace-identity small { margin-top: 3px; color: var(--muted); font-size: 9px; }
.settings-summary dl { margin: 18px 0 0; }
.settings-summary dl > div { display: flex; justify-content: space-between; gap: 12px; margin-top: 11px; font-size: 10px; }
.settings-summary dt { color: var(--muted); }.settings-summary dd { margin: 0; font-weight: 700; }
.usage-card > div { margin-top: 14px; }
.usage-card span { display: flex; justify-content: space-between; gap: 8px; color: var(--muted); font-size: 9px; }
.usage-card progress, .usage-table progress { width: 100%; height: 6px; margin-top: 7px; accent-color: var(--blue); }
.account-id code { display: block; overflow: hidden; padding: 10px; border: 1px solid var(--line); border-radius: 5px; color: var(--muted); font-size: 9px; text-overflow: ellipsis; }
.integration-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 18px; }
.integration-grid article { display: flex; align-items: center; gap: 11px; min-width: 0; min-height: 84px; padding: 12px; border: 1px solid var(--line); border-radius: 7px; }
.integration-grid article > div { min-width: 0; flex: 1; }.integration-grid strong { display: block; font-size: 11px; }.integration-grid p { margin: 4px 0 0; color: var(--muted); font-size: 9px; line-height: 1.35; }

.admin-role { display: inline-flex; align-items: center; gap: 7px; padding: 8px 10px; border: 1px solid #d8d0ff; border-radius: 6px; background: #f6f3ff; color: #5f3bd7; font-size: 10px; font-weight: 700; }
.admin-role svg { width: 16px; }
.admin-layout { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 16px; align-items: start; }
.admin-main { min-width: 0; }
.admin-overview { display: grid; gap: 14px; }
.admin-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(260px, .8fr); gap: 14px; }
.admin-grid > section { padding: 17px; }
.admin-alerts { grid-column: 1 / -1; }
.health-list { margin-top: 10px; }
.health-list > div { display: grid; grid-template-columns: 10px minmax(130px, .55fr) minmax(180px, 1fr) auto; align-items: center; gap: 10px; min-height: 48px; border-bottom: 1px solid var(--line); }
.health-list strong { font-size: 10px; }.health-list small { color: var(--muted); font-size: 9px; }
.health-dot { width: 8px; height: 8px; border-radius: 50%; background: #94a3b8; }.health-dot.good { background: #16a34a; box-shadow: 0 0 0 3px #eaf9ef; }.health-dot.warn { background: #f59e0b; box-shadow: 0 0 0 3px #fff4df; }
.admin-stat-list { margin: 10px 0 0; }.admin-stat-list > div { display: flex; justify-content: space-between; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--line); font-size: 10px; }.admin-stat-list dt { color: var(--muted); }.admin-stat-list dd { margin: 0; font-weight: 750; }
.empty-state { display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: 10px; }.empty-state svg { width: 18px; color: var(--green); }
.admin-section { min-height: 620px; border: 1px solid var(--line); border-radius: 8px; background: #fff; }
.admin-section > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 76px; padding: 16px 18px; border-bottom: 1px solid var(--line); }
.admin-section > .ins-table-wrap { padding: 0 8px; }
.admin-invite-form { margin: 14px 18px 2px; padding: 15px; border: 1px solid #cfe1fb; border-radius: 7px; background: #f7faff; }
.admin-invite-form[hidden] { display: none; }
.admin-invite-form > div { display: grid; grid-template-columns: 1fr 1.35fr 190px; gap: 12px; }
.admin-invite-form label { display: grid; gap: 6px; color: var(--ink); font-size: 10px; font-weight: 700; }
.admin-invite-form input, .admin-invite-form select { width: 100%; min-height: 38px; padding: 0 10px; color: var(--ink); background: #fff; border: 1px solid var(--line); border-radius: 5px; }
.admin-invite-form input:focus, .admin-invite-form select:focus { border-color: var(--blue); outline: 3px solid rgb(8 117 245 / 10%); }
.admin-invite-form footer { display: flex; align-items: center; justify-content: flex-end; gap: 8px; margin-top: 13px; }
.admin-invite-form footer p { flex: 1; margin: 0; }
.admin-user-message { min-height: 16px; color: #b42318; font-size: 10px; }
.admin-user-message-global { margin: 8px 18px 0; }
.automation-rule-list { display: grid; gap: 0; padding: 0 18px 18px; }
.automation-rule { display: grid; grid-template-columns: 38px minmax(0, 1fr) 130px 44px; align-items: center; gap: 13px; min-height: 94px; border-bottom: 1px solid var(--line); padding: 14px 0; }
.automation-rule > div { min-width: 0; }
.automation-rule strong { display: block; font-size: 12px; }
.automation-rule p { margin: 4px 0; color: var(--muted); font-size: 10px; line-height: 1.45; }
.automation-rule small { color: #55708e; font-size: 9px; }
.automation-threshold { position: relative; display: grid; gap: 4px; font-size: 9px; }
.automation-threshold input { width: 100%; min-height: 34px; padding-right: 24px; }
.automation-threshold span { position: absolute; right: 10px; bottom: 9px; color: var(--muted); }
.automation-switch { display: block; position: relative; width: 38px; height: 22px; }
.automation-switch input { position: absolute; opacity: 0; pointer-events: none; }
.automation-switch span { display: block; width: 38px; height: 22px; border-radius: 11px; background: #cfd7e4; cursor: pointer; transition: background .15s ease; }
.automation-switch span::after { content: ""; position: absolute; top: 3px; left: 3px; width: 16px; height: 16px; border-radius: 50%; background: #fff; box-shadow: 0 1px 3px rgb(15 23 42 / 20%); transition: transform .15s ease; }
.automation-switch input:checked + span { background: var(--blue); }
.automation-switch input:checked + span::after { transform: translateX(16px); }
.automation-policy { display: flex; align-items: flex-start; gap: 10px; margin-top: 16px; border: 1px solid #c8daf7; border-radius: 7px; background: #f4f8ff; padding: 13px; }
.automation-policy svg { width: 18px; color: var(--blue); }
.automation-policy strong { display: block; font-size: 11px; }
.automation-policy p { margin: 3px 0 0; color: var(--muted); font-size: 10px; }
.role-grid, .data-stat-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 18px; }
.role-grid article { display: flex; align-items: center; gap: 11px; min-height: 92px; padding: 13px; border: 1px solid var(--line); border-radius: 7px; }
.role-grid article > div { flex: 1; min-width: 0; }.role-grid strong, .role-grid p { display: block; }.role-grid strong { font-size: 11px; }.role-grid p { margin: 4px 0 0; color: var(--muted); font-size: 9px; line-height: 1.35; }
.admin-integrations { padding: 18px; margin: 0; }
.data-stat-grid article { display: grid; min-height: 110px; padding: 16px; border: 1px solid var(--line); border-radius: 7px; }.data-stat-grid strong { font-size: 24px; }.data-stat-grid span { margin-top: 8px; font-size: 11px; font-weight: 700; }.data-stat-grid small { margin-top: 4px; color: var(--muted); font-size: 9px; }
.data-actions { margin: 0 18px 18px; padding: 16px; }.data-actions > div { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.health-console { margin: 18px; padding: 18px; }.health-console footer { margin-top: 16px; color: var(--muted); font-size: 9px; }.health-console footer .health-dot { display: inline-block; margin-right: 7px; }
.audit-list { padding: 0 18px; }.audit-list article { display: flex; align-items: center; gap: 12px; min-height: 80px; border-bottom: 1px solid var(--line); }.audit-list article > div { flex: 1; }.audit-list strong, .audit-list p { display: block; }.audit-list strong { font-size: 11px; }.audit-list p { margin: 4px 0 0; color: var(--muted); font-size: 9px; }.audit-list time { color: var(--muted); font-size: 9px; }

body.compact-density .ins-table-wrap th, body.compact-density .ins-table-wrap td { padding-top: 7px; padding-bottom: 7px; }

@media (max-width: 1320px) {
  .analytics-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .analytics-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-areas: "performance pipeline" "channel insights" "team insights"; }
  .reports-layout { grid-template-columns: 190px minmax(500px, 1fr); }
  .report-detail { grid-column: 1 / -1; }
  .settings-layout { grid-template-columns: 200px minmax(480px, 1fr); }
  .settings-summary { grid-column: 1 / -1; grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 900px) {
  .dashboard-main.insight-view { padding: 14px; }
  .ins-page-header { align-items: flex-start; }
  .analytics-layout, .admin-grid { grid-template-columns: 1fr; grid-template-areas: none; }
  .performance-panel, .pipeline-panel, .analytics-insights, .channel-panel, .team-panel { grid-area: auto; }
  .reports-layout, .settings-layout, .admin-layout { grid-template-columns: 1fr; }
  .ins-filter-rail { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
  .ins-filter-rail h2, .filter-note { grid-column: 1 / -1; }
  .settings-nav, .admin-nav { flex-direction: row; overflow-x: auto; }
  .settings-nav button, .admin-nav button { flex: 0 0 auto; }
  .settings-summary { grid-template-columns: 1fr; }
  .role-grid, .data-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
  .dashboard-main.insight-view { padding: 10px; }
  .ins-page-header { display: block; padding-bottom: 14px; }
  .ins-page-header h1 { font-size: 23px; }
  .ins-page-actions { justify-content: flex-start; margin-top: 14px; }
  .ins-page-actions button { flex: 1 1 auto; }
  .analytics-metrics, .report-metrics, .admin-metrics { grid-template-columns: 1fr 1fr; }
  .ins-metric { min-height: 88px; padding: 11px; }
  .ins-metric .ins-icon { width: 34px; height: 34px; flex-basis: 34px; }
  .ins-metric strong { font-size: 19px; }
  .ins-line-chart { height: 190px; }
  .chart-panel, .channel-panel, .team-panel, .analytics-insights { padding: 13px; }
  .channel-content { grid-template-columns: 122px 1fr; gap: 10px; }
  .ins-donut { width: 116px; }.ins-donut::before { width: 72px; }
  .reports-layout { display: block; }.reports-layout > * { margin-bottom: 12px; }
  .ins-filter-rail { display: none; }
  .reports-list .ins-table-wrap { max-width: calc(100vw - 20px); }
  .reports-list table { min-width: 690px; }
  .settings-main { min-height: 0; padding: 14px; }
  .form-grid { grid-template-columns: 1fr; gap: 13px; }
  .targeting-form .wide-field { grid-column: auto; }
  .weight-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .profile-linkedin-field { grid-column: auto; }
  .settings-form > header { align-items: flex-start; }
  .profile-actions { align-items: flex-end; flex-direction: column; }
  .integration-grid, .role-grid, .data-stat-grid { grid-template-columns: 1fr; }
  .setting-action { align-items: flex-start; flex-direction: column; padding: 13px 0; }
  .connection-banner { align-items: flex-start; flex-wrap: wrap; }
  .health-list > div { grid-template-columns: 10px 1fr auto; padding: 9px 0; }
  .health-list > div small { grid-column: 2 / -1; }
  .admin-section > header { align-items: flex-start; flex-direction: column; }
  .admin-section > .ins-table-wrap { overflow-x: auto; }.admin-section table { min-width: 660px; }
  .automation-rule { grid-template-columns: 38px minmax(0, 1fr) 112px 40px; }
}

@media (max-width: 620px) {
  .automation-rule { grid-template-columns: 34px minmax(0, 1fr) 40px; }
  .automation-threshold { grid-column: 2 / -1; }
}

.ops-page-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  min-height: 68px;
  padding: 2px 8px 16px;
}

.ops-page-header h1,
.ops-ai-center > header h1 {
  margin: 0;
  color: var(--cx-color-text-primary);
  font-size: 25px;
  font-weight: 650;
  line-height: 1.2;
}

.ops-page-header p,
.ops-ai-center > header p {
  margin: 5px 0 0;
  color: var(--cx-color-text-secondary);
  font-size: 12px;
}

.ops-page-actions,
.ops-action-row,
.ops-action-grid {
  display: flex;
  align-items: center;
  gap: 10px;
}

.ops-page-actions button,
.ops-action-row button,
.ops-action-grid button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 40px;
  border: 1px solid var(--cx-color-border-default);
  border-radius: 6px;
  background: #fff;
  color: var(--cx-color-text-primary);
  padding: 0 16px;
  font: inherit;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
}

.ops-page-actions button svg,
.ops-action-row button svg,
.ops-action-grid button svg {
  width: 15px;
  height: 15px;
}

.ops-page-actions .primary-button,
.ops-action-row .primary-button,
.ops-action-grid .primary-button {
  border-color: var(--cx-color-action-primary);
  background: var(--cx-color-action-primary);
  color: #fff;
}

.ops-layout {
  display: grid;
  grid-template-columns: minmax(238px, 280px) minmax(480px, 1fr) minmax(350px, 420px);
  gap: 12px;
  align-items: stretch;
  min-width: 0;
}

.ops-panel {
  min-width: 0;
  border: 1px solid var(--cx-color-border-default);
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}

.ops-rail {
  padding: 14px;
}

.ops-ai-box > div,
.ops-rail-section > div,
.ops-section-heading,
.ops-thread article header,
.ops-ai-results > header,
.ops-ai-center > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.ops-ai-box strong,
.ops-ai-box strong > i {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.ops-ai-box strong,
.ops-rail-section strong {
  color: var(--cx-color-text-primary);
  font-size: 12px;
}

.ops-ai-box svg,
.ops-rail-section svg {
  width: 15px;
  height: 15px;
}

.ops-ai-box > div > svg {
  color: var(--cx-color-text-tertiary);
}

.ops-ai-box label {
  display: block;
  position: relative;
  margin-top: 12px;
}

.ops-ai-box textarea,
.ops-ai-query textarea,
.ops-composer textarea {
  width: 100%;
  resize: none;
  border: 1px solid var(--cx-color-border-default);
  border-radius: 6px;
  background: #fff;
  color: var(--cx-color-text-primary);
  padding: 12px;
  font: inherit;
  font-size: 11px;
  line-height: 1.6;
  outline: none;
}

.ops-ai-box textarea:focus,
.ops-ai-query textarea:focus,
.ops-composer textarea:focus {
  border-color: var(--cx-color-action-primary);
  box-shadow: 0 0 0 2px var(--cx-color-action-soft);
}

.ops-ai-box label button {
  position: absolute;
  right: 7px;
  bottom: 7px;
  width: 27px;
  height: 27px;
  border: 0;
  background: transparent;
  color: var(--cx-color-action-primary);
  cursor: pointer;
}

.ops-suggested {
  display: flex;
  align-items: center;
  gap: 6px;
  min-height: 32px;
  margin: 10px 0 14px;
  border: 1px solid #b9d5ff;
  border-radius: 6px;
  background: #f8fbff;
  color: var(--cx-color-action-primary);
  padding: 0 9px;
  font: inherit;
  font-size: 10px;
  cursor: pointer;
}

.ops-suggested svg { width: 14px; }
.ops-suggested span { border-radius: 20px; background: #e5f0ff; padding: 2px 6px; }

.ops-rail-section {
  display: grid;
  gap: 8px;
  border-top: 1px solid var(--cx-color-border-divider);
  padding: 14px 0;
}

.ops-rail-section > div button,
.ops-section-heading button,
.ops-rail-section > button {
  border: 0;
  background: transparent;
  color: var(--cx-color-action-primary);
  font: inherit;
  font-size: 10px;
  cursor: pointer;
}

.ops-filter-chip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 28px;
  border: 1px solid #cddcf4;
  border-radius: 5px;
  background: #f5f8fd;
  color: #40506a;
  padding: 0 8px;
  font-size: 10px;
}

.ops-filter-chip svg { width: 12px; }

.ops-stat-list p,
.ops-intel-card p,
.ops-recent p,
.ops-check-list label {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  color: var(--cx-color-text-secondary);
  font-size: 10px;
}

.ops-stat-list p b,
.ops-intel-card p b,
.ops-check-list label b {
  margin-left: auto;
  color: var(--cx-color-text-primary);
}

.ops-intel-card p { justify-content: space-between; }
.ops-intel-card p b { font-size: 13px; }

.ops-select-list label {
  display: grid;
  gap: 5px;
  color: var(--cx-color-text-secondary);
  font-size: 10px;
}

.ops-select-list select,
.ops-rail-section > select {
  min-height: 34px;
  border: 1px solid var(--cx-color-border-default);
  border-radius: 5px;
  background: #fff;
  color: var(--cx-color-text-primary);
  padding: 0 9px;
  font: inherit;
  font-size: 10px;
}

.ops-link-list button {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr) 14px;
  align-items: center;
  gap: 6px;
  min-height: 30px;
  padding: 0;
  text-align: left;
}

.ops-link-list button span {
  overflow: hidden;
  color: var(--cx-color-text-secondary);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ops-recent p { align-items: flex-start; line-height: 1.4; }
.ops-recent p span { margin-left: auto; white-space: nowrap; }

.ops-tabs {
  display: flex;
  align-items: stretch;
  gap: 24px;
  min-height: 52px;
  overflow-x: auto;
  border-bottom: 1px solid var(--cx-color-border-divider);
  padding: 0 14px;
}

.ops-tabs button,
.ops-detail-tabs button {
  flex: 0 0 auto;
  border: 0;
  border-bottom: 2px solid transparent;
  background: transparent;
  color: var(--cx-color-text-secondary);
  padding: 0;
  font: inherit;
  font-size: 10px;
  font-weight: 550;
  cursor: pointer;
}

.ops-tabs button.active,
.ops-detail-tabs button.active {
  border-bottom-color: var(--cx-color-action-primary);
  color: var(--cx-color-action-primary);
}

.ops-tabs button span {
  border-radius: 18px;
  background: #f1f3f7;
  padding: 2px 6px;
  color: var(--cx-color-text-secondary);
  font-size: 9px;
}

.ops-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 50px;
  border-bottom: 1px solid var(--cx-color-border-divider);
  padding: 8px 14px;
  color: var(--cx-color-text-secondary);
  font-size: 10px;
}

.ops-toolbar button {
  border: 0;
  background: transparent;
  color: var(--cx-color-text-secondary);
}

.ops-search-input {
  display: flex;
  align-items: center;
  gap: 7px;
  width: min(260px, 55%);
  min-height: 32px;
  border: 1px solid var(--cx-color-border-default);
  border-radius: 5px;
  padding: 0 9px;
}

.ops-search-input svg { width: 14px; }
.ops-search-input input { width: 100%; border: 0; outline: 0; font: inherit; font-size: 10px; }

.ops-rows {
  min-height: 620px;
}

.ops-email-row {
  display: grid;
  grid-template-columns: 18px 34px minmax(110px, .7fr) minmax(180px, 1.6fr) 62px;
  align-items: center;
  gap: 9px;
  min-height: 82px;
  border-bottom: 1px solid var(--cx-color-border-divider);
  padding: 9px 12px;
  cursor: pointer;
}

.ops-email-row.selected,
.ops-task-row.selected,
.ops-company-row.selected,
.ops-target-row.selected,
.ops-sequence-row.selected {
  outline: 1px solid var(--cx-color-action-primary);
  outline-offset: -1px;
  background: var(--cx-color-action-soft);
}

.ops-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  border-radius: 50%;
  background: #eaf2ff;
  color: var(--cx-color-action-primary);
  font-size: 10px;
  font-weight: 700;
}

.ops-email-row > div,
.ops-task-row > div,
.ops-company-row > div,
.ops-sequence-row > div,
.ops-person-cell > span {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.ops-email-row strong,
.ops-task-row strong,
.ops-company-row strong,
.ops-target-row strong,
.ops-sequence-row strong {
  overflow: hidden;
  color: var(--cx-color-text-primary);
  font-size: 10px;
  font-weight: 650;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ops-email-row span,
.ops-email-row time,
.ops-task-row span,
.ops-task-row small,
.ops-company-row span,
.ops-company-row small,
.ops-target-row span,
.ops-sequence-row span,
.ops-sequence-row small {
  overflow: hidden;
  color: var(--cx-color-text-secondary);
  font-size: 9px;
  text-overflow: ellipsis;
}

.ops-email-row > div:last-child {
  justify-items: end;
}

.ops-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-height: 19px;
  border-radius: 5px;
  background: #f1f3f6;
  color: #526078;
  padding: 2px 7px;
  font-size: 8px;
  font-style: normal;
  white-space: nowrap;
}

.ops-tag.success { background: #e9f8ef; color: #138b46; }
.ops-tag.warning { background: #fff4df; color: #d66a00; }
.ops-tag.danger { background: #ffebee; color: #db3042; }
.ops-tag.info { background: #eaf2ff; color: var(--cx-color-action-primary); }

.ops-person-header,
.ops-object-header,
.ops-company-header {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 88px;
  border-bottom: 1px solid var(--cx-color-border-divider);
  padding: 14px;
}

.ops-person-header > div,
.ops-object-header > div,
.ops-company-header > div {
  min-width: 0;
  flex: 1;
}

.ops-person-header h2,
.ops-object-header h2,
.ops-company-header h2,
.ops-list-detail-header h2 {
  margin: 0;
  color: var(--cx-color-text-primary);
  font-size: 17px;
  font-weight: 650;
}

.ops-person-header p,
.ops-object-header p,
.ops-company-header a,
.ops-list-detail-header p {
  margin: 4px 0 0;
  color: var(--cx-color-text-secondary);
  font-size: 10px;
  text-decoration: none;
}

.ops-person-header > button,
.ops-object-header > button,
.ops-list-detail-header > button {
  align-self: flex-start;
  border: 0;
  background: transparent;
  color: var(--cx-color-text-secondary);
}

.ops-object-header > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background: #f1eaff;
  color: #7c46e8;
}

.ops-detail-tabs {
  display: flex;
  align-items: stretch;
  gap: 22px;
  height: 46px;
  overflow-x: auto;
  border-bottom: 1px solid var(--cx-color-border-divider);
  padding: 0 14px;
}

.ops-thread,
.ops-detail-section,
.ops-insights,
.ops-composer,
.ops-action-row,
.ops-action-grid,
.ops-chip-row,
.ops-stat-facts,
.ops-summary-stats {
  border-bottom: 1px solid var(--cx-color-border-divider);
  padding: 14px;
}

.ops-thread {
  display: grid;
  gap: 10px;
  max-height: 350px;
  overflow-y: auto;
}

.ops-thread article {
  border: 1px solid var(--cx-color-border-default);
  border-radius: 7px;
  padding: 12px;
}

.ops-thread article header,
.ops-thread h3,
.ops-thread p { margin: 0 0 8px; }
.ops-thread strong, .ops-thread h3 { color: var(--cx-color-text-primary); font-size: 11px; }
.ops-thread small, .ops-thread time, .ops-thread p { color: var(--cx-color-text-secondary); font-size: 9px; line-height: 1.6; }

.ops-insights {
  display: grid;
  gap: 7px;
  background: #fbfdff;
}

.ops-insights strong {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 11px;
}

.ops-insights strong span { border-radius: 4px; background: #eaf2ff; color: var(--cx-color-action-primary); padding: 2px 5px; font-size: 8px; }
.ops-insights p { display: flex; align-items: center; gap: 6px; margin: 0; color: var(--cx-color-text-secondary); font-size: 9px; }
.ops-insights p svg { width: 12px; color: #18a058; }

.ops-composer > div { display: flex; gap: 5px; margin-bottom: 8px; }
.ops-composer > div button { display: inline-flex; align-items: center; gap: 5px; height: 28px; border: 0; background: transparent; color: var(--cx-color-text-secondary); font: inherit; font-size: 9px; }
.ops-composer > div svg { width: 13px; }
.ops-composer footer { display: flex; align-items: center; gap: 12px; margin-top: 8px; color: var(--cx-color-text-secondary); font-size: 9px; }
.ops-composer footer > span { margin-left: auto; }
.ops-composer footer button { min-height: 31px; border: 0; border-radius: 5px; padding: 0 18px; }
.ops-composer footer label { display: inline-flex; align-items: center; gap: 6px; }
.ops-composer footer input[type="checkbox"] { width: 14px; height: 14px; min-height: 0; margin: 0; }

.ops-table-head {
  display: grid;
  align-items: center;
  gap: 9px;
  min-height: 34px;
  border-bottom: 1px solid var(--cx-color-border-divider);
  padding: 0 12px;
  color: var(--cx-color-text-tertiary);
  font-size: 8px;
  text-transform: uppercase;
}

.ops-task-grid { grid-template-columns: 18px minmax(120px, 1.2fr) minmax(108px, 1fr) 64px 50px 54px; }
.ops-task-row { display: grid; align-items: center; gap: 9px; min-height: 70px; border-bottom: 1px solid var(--cx-color-border-divider); padding: 8px 12px; cursor: pointer; }
.ops-task-name { grid-template-columns: 28px minmax(0, 1fr); align-items: center; }
.ops-task-name > svg { width: 28px; height: 28px; border-radius: 7px; background: #f1eaff; color: #7747d9; padding: 7px; }
.ops-task-name > span,
.ops-company-row > div > span,
.ops-sequence-row > div > span { display: grid; min-width: 0; gap: 3px; }
.ops-person-cell { display: grid !important; grid-template-columns: 30px minmax(0, 1fr); align-items: center; gap: 7px !important; }
.ops-person-cell .ops-avatar { width: 30px; height: 30px; flex-basis: 30px; }
.ops-task-row > span { display: grid; gap: 3px; }

.ops-action-row { flex-wrap: wrap; }
.ops-action-row button { flex: 1 1 auto; min-width: 92px; padding: 0 10px; }
.ops-detail-section h3 { margin: 0 0 12px; color: var(--cx-color-text-primary); font-size: 11px; }
.ops-detail-section > p { margin: 6px 0; color: var(--cx-color-text-secondary); font-size: 9px; line-height: 1.55; }

.ops-facts,
.ops-stat-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 18px;
  margin: 0;
}

.ops-facts div,
.ops-stat-facts div { display: flex; justify-content: space-between; gap: 8px; }
.ops-facts dt, .ops-stat-facts dt { color: var(--cx-color-text-secondary); font-size: 9px; }
.ops-facts dd, .ops-stat-facts dd { margin: 0; color: var(--cx-color-text-primary); font-size: 9px; font-weight: 600; text-align: right; }

.ops-contact-card,
.ops-mini-contact {
  display: flex;
  align-items: center;
  gap: 9px;
}

.ops-contact-card > div,
.ops-mini-contact > span:not(.ops-avatar) { display: grid; min-width: 0; gap: 3px; flex: 1; }
.ops-contact-card strong, .ops-mini-contact strong { color: var(--cx-color-text-primary); font-size: 10px; }
.ops-contact-card span, .ops-contact-card small, .ops-mini-contact small { color: var(--cx-color-text-secondary); font-size: 9px; }

.ops-score {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 1px;
  min-width: 56px;
  min-height: 48px;
  border: 1px solid #cbeed8;
  border-radius: 7px;
  background: #f1fbf5;
  color: #138b46;
}

.ops-score strong { font-size: 18px; }
.ops-score small { color: inherit; font-size: 7px; }
.ops-score.review { border-color: #f1d49e; background: #fff8eb; color: #a66a00; }

.ops-ai-layout { grid-template-columns: minmax(240px, 300px) minmax(520px, 1fr) minmax(340px, 410px); }
.ops-ai-center { display: grid; align-content: start; gap: 12px; min-width: 0; }
.ops-ai-center > header { min-height: 56px; padding: 0 4px; }
.ops-ai-query { border: 1px solid var(--cx-color-action-primary); border-radius: 7px; background: #fff; padding: 14px; }
.ops-ai-query textarea { min-height: 86px; border: 0; padding: 0; font-size: 12px; }
.ops-ai-query footer { display: flex; align-items: center; justify-content: space-between; margin-top: 8px; }
.ops-ai-query footer > span { display: inline-flex; align-items: center; gap: 6px; color: var(--cx-color-text-secondary); font-size: 9px; }
.ops-ai-query footer button { min-height: 36px; border: 0; border-radius: 5px; padding: 0 18px; }

.ops-interpretation { padding: 14px; }
.ops-interpretation > strong { color: var(--cx-color-text-primary); font-size: 11px; }
.ops-interpretation > strong span { border-radius: 4px; background: #eaf2ff; color: var(--cx-color-action-primary); padding: 2px 5px; font-size: 8px; }
.ops-interpretation p { color: var(--cx-color-text-secondary); font-size: 10px; line-height: 1.5; }
.ops-interpretation > div, .ops-chip-row { display: flex; flex-wrap: wrap; gap: 7px; }
.ops-interpretation > div span, .ops-chip-row span { border: 1px solid var(--cx-color-border-default); border-radius: 5px; background: #fbfcfe; color: #475571; padding: 6px 9px; font-size: 9px; }

.ops-ai-results > header { min-height: 46px; border-bottom: 1px solid var(--cx-color-border-divider); padding: 0 12px; }
.ops-ai-results > header strong { color: var(--cx-color-text-primary); font-size: 11px; }
.ops-ai-results > header span { color: var(--cx-color-text-secondary); font-size: 9px; }
.ops-company-grid { grid-template-columns: 18px minmax(145px, 1fr) 88px 82px 88px 58px; }
.ops-company-row { display: grid; align-items: center; gap: 9px; min-height: 65px; border-bottom: 1px solid var(--cx-color-border-divider); padding: 8px 12px; cursor: pointer; }
.ops-company-row > div { grid-template-columns: 34px minmax(0, 1fr); align-items: center; }
.ops-company-logo { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; overflow: hidden; border-radius: 7px; background: #edf3ff; color: var(--cx-color-action-primary); font-size: 12px; font-weight: 700; }
.ops-company-logo img { width: 100%; height: 100%; object-fit: contain; }
.ops-company-header .ops-company-logo { width: 46px; height: 46px; }
.ops-company-header > .ops-score { flex: 0 0 auto; }
.ops-stat-facts { border-top: 0; }
.ops-check-line { display: flex; align-items: flex-start; gap: 7px; }
.ops-check-line svg { width: 13px; height: 13px; flex: 0 0 auto; color: #16a05a; }
.ops-wide-button { width: 100%; min-height: 38px; border: 0; border-radius: 5px; }

.ops-target-grid { grid-template-columns: 18px minmax(125px, 1.1fr) minmax(120px, 1fr) 48px 48px 80px 54px 72px; }
.ops-target-row { display: grid; align-items: center; gap: 8px; min-height: 64px; border-bottom: 1px solid var(--cx-color-border-divider); padding: 8px 12px; cursor: pointer; }
.ops-target-row > strong { white-space: normal; line-height: 1.35; }
.ops-target-row > span { line-height: 1.35; }
.ops-list-detail-header { position: relative; padding: 18px 14px 10px; }
.ops-list-detail-header > button { position: absolute; top: 12px; right: 10px; }
.ops-action-grid { display: grid; grid-template-columns: 1fr 1fr; }
.ops-summary-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.ops-summary-stats span { display: grid; gap: 2px; color: var(--cx-color-text-secondary); font-size: 8px; }
.ops-summary-stats strong { color: var(--cx-color-text-primary); font-size: 15px; }
.ops-ranked-list { display: grid; gap: 8px; margin: 0; padding-left: 24px; }
.ops-ranked-list li { padding-left: 4px; color: var(--cx-color-text-primary); font-size: 9px; }
.ops-ranked-list li span, .ops-ranked-list li small { display: block; }
.ops-ranked-list li small { margin-top: 2px; color: var(--cx-color-text-secondary); }
.ops-mini-contact { margin: 9px 0; }
.ops-mini-contact .ops-avatar { width: 28px; height: 28px; flex-basis: 28px; }

.ops-sequence-grid { grid-template-columns: 18px minmax(155px, 1.2fr) minmax(80px, .8fr) 35px 55px 50px 50px 50px; }
.ops-sequence-row { display: grid; align-items: center; gap: 8px; min-height: 62px; border-bottom: 1px solid var(--cx-color-border-divider); padding: 8px 12px; cursor: pointer; }
.ops-sequence-row > div { grid-template-columns: 28px minmax(0, 1fr); align-items: center; }
.ops-sequence-row > div > svg { width: 28px; height: 28px; border-radius: 7px; background: #f1eaff; color: #7747d9; padding: 7px; }
.ops-sequence-stats { grid-template-columns: repeat(4, 1fr); }
.ops-step-list { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.ops-step-list li { display: grid; grid-template-columns: 24px 34px minmax(0, 1fr) 60px; align-items: center; gap: 8px; min-height: 68px; border-bottom: 1px solid var(--cx-color-border-divider); }
.ops-step-list li > b { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 50%; background: #eaf2ff; color: var(--cx-color-action-primary); font-size: 9px; }
.ops-step-list li > svg { width: 32px; height: 32px; border-radius: 7px; background: #f0faf4; color: #179958; padding: 8px; }
.ops-step-list li > span { display: grid; gap: 3px; }
.ops-step-list li strong { color: var(--cx-color-text-primary); font-size: 9px; }
.ops-step-list li small { color: var(--cx-color-text-secondary); font-size: 8px; }
.ops-add-step { display: flex; align-items: center; justify-content: center; gap: 6px; margin: 14px auto 0; min-height: 34px; border-radius: 5px; padding: 0 14px; font-size: 9px; }

.ops-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 8px;
  min-height: 260px;
  color: var(--cx-color-text-secondary);
  text-align: center;
}

.ops-empty svg { width: 30px; height: 30px; color: var(--cx-color-text-tertiary); }
.ops-empty strong { color: var(--cx-color-text-primary); font-size: 12px; }
.ops-empty span { font-size: 10px; }

.workspace-empty {
  display: flex;
  min-height: 120px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 20px;
  color: var(--muted);
  text-align: center;
}

.workspace-empty.compact {
  min-height: 76px;
  align-items: flex-start;
  padding: 14px 0;
  text-align: left;
}

.workspace-empty strong,
.workspace-empty small,
.workspace-empty span {
  display: block;
}

.workspace-empty strong {
  color: var(--ink);
  font-size: 14px;
}

@media (min-width: 1500px) {
  .dashboard-main.ops-view { padding: 22px 24px; }
  .ops-layout { grid-template-columns: minmax(280px, 330px) minmax(680px, 1fr) minmax(440px, 540px); gap: 14px; }
  .ops-ai-layout { grid-template-columns: minmax(280px, 340px) minmax(650px, 1fr) minmax(420px, 500px); }
  .ops-page-actions button { min-width: 145px; }
  .ops-email-row, .ops-task-row, .ops-company-row, .ops-target-row, .ops-sequence-row { min-height: 72px; }
  .ops-task-grid { grid-template-columns: 18px minmax(160px, 1.2fr) minmax(150px, 1fr) 78px 62px 68px; }
}

@media (max-width: 1499px) {
  .ops-target-grid { grid-template-columns: 18px minmax(110px, 1.2fr) minmax(90px, 1fr) 42px 42px 58px; }
  .ops-target-grid > :nth-child(6),
  .ops-target-grid > :nth-child(8) { display: none; }
  .ops-sequence-grid { grid-template-columns: 18px minmax(145px, 1fr) 38px 55px 48px; }
  .ops-sequence-grid > :nth-child(3),
  .ops-sequence-grid > :nth-child(6),
  .ops-sequence-grid > :nth-child(7) { display: none; }
  .ops-company-grid { grid-template-columns: 18px minmax(140px, 1fr) 80px 72px 58px; }
  .ops-company-grid > :nth-child(5) { display: none; }
}

@media (max-width: 1180px) {
  .ops-layout,
  .ops-ai-layout { grid-template-columns: 220px minmax(460px, 1fr) 330px; }
  .ops-target-grid { grid-template-columns: 18px minmax(115px, 1fr) minmax(100px, 1fr) 40px 45px 52px 65px; }
  .ops-target-grid > :nth-child(6) { display: none; }
  .ops-sequence-grid { grid-template-columns: 18px minmax(130px, 1fr) 75px 35px 52px 45px 45px; }
  .ops-sequence-grid > :last-child { display: none; }
}

@media (max-width: 920px) {
  .dashboard-main.ops-view { padding: 12px; }
  .ops-layout,
  .ops-ai-layout { grid-template-columns: minmax(0, 1fr) 330px; }
  .ops-rail { display: none; }
  .ops-page-header { align-items: flex-start; flex-direction: column; }
  .ops-page-actions { width: 100%; overflow-x: auto; }
  .ops-ai-center { grid-column: 1; }
}

@media (max-width: 820px) {
  body.ops-focus-view .app-header { min-height: 62px; padding: 7px 12px; }
  .dashboard-main.ops-view { padding: 10px; }
  .ops-workspace { min-height: calc(100dvh - 82px); }
  .ops-page-header { min-height: auto; padding: 5px 2px 12px; }
  .ops-page-header h1, .ops-ai-center > header h1 { font-size: 22px; }
  .ops-layout, .ops-ai-layout { display: block; }
  .ops-detail-panel { display: none; }
  .ops-list-panel, .ops-ai-center { width: 100%; }
  .ops-tabs { gap: 18px; min-height: 48px; }
  .ops-toolbar { min-height: 44px; }
  .ops-rows { min-height: 500px; }
  .ops-email-row { grid-template-columns: 18px 34px minmax(85px, .7fr) minmax(130px, 1.2fr); }
  .ops-email-row > div:last-child { display: none; }
  .ops-task-grid { grid-template-columns: 18px minmax(130px, 1fr) minmax(115px, .9fr) 64px; }
  .ops-task-grid > :nth-child(5), .ops-task-grid > :nth-child(6) { display: none; }
  .ops-company-grid { grid-template-columns: 18px minmax(140px, 1fr) 80px 65px; }
  .ops-company-grid > :nth-child(4), .ops-company-grid > :nth-child(5) { display: none; }
  .ops-target-grid { grid-template-columns: 18px minmax(135px, 1fr) 55px 55px 62px; }
  .ops-target-grid > :nth-child(3), .ops-target-grid > :nth-child(6), .ops-target-grid > :nth-child(8) { display: none; }
  .ops-sequence-grid { grid-template-columns: 18px minmax(145px, 1fr) 50px 55px 48px; }
  .ops-sequence-grid > :nth-child(3), .ops-sequence-grid > :nth-child(6), .ops-sequence-grid > :nth-child(8) { display: none; }
}

@media (max-width: 820px) {
  .admin-invite-form > div { grid-template-columns: 1fr; }
  .admin-invite-form footer { align-items: stretch; flex-wrap: wrap; }
  .admin-invite-form footer p { flex-basis: 100%; }
}

@media (max-width: 520px) {
  .ops-page-actions button { min-width: max-content; }
  .ops-email-row {
    grid-template-columns: 18px 32px minmax(0, 1fr);
    grid-template-rows: auto auto;
    min-height: 94px;
    padding: 9px 8px;
  }
  .ops-email-row > input { grid-column: 1; grid-row: 1 / span 2; }
  .ops-email-row > .ops-avatar { grid-column: 2; grid-row: 1 / span 2; }
  .ops-email-row > div:nth-of-type(1) { grid-column: 3; grid-row: 1; }
  .ops-email-row > div:nth-of-type(2) { grid-column: 3; grid-row: 2; }
  .ops-email-row > div:nth-of-type(1),
  .ops-email-row > div:nth-of-type(2) { width: min(100%, calc(100vw - 104px)); overflow: hidden; }
  .ops-email-row > div:nth-of-type(2) span { display: block; max-width: 100%; white-space: nowrap; }
  .ops-task-grid { grid-template-columns: 18px minmax(125px, 1fr) minmax(95px, .8fr); }
  .ops-task-grid > :nth-child(4) { display: none; }
  .ops-company-grid { grid-template-columns: 18px minmax(135px, 1fr) 60px; }
  .ops-company-grid > :nth-child(3) { display: none; }
  .ops-target-grid { grid-template-columns: 18px minmax(130px, 1fr) 50px 58px; }
  .ops-target-grid > :nth-child(4) { display: none; }
  .ops-sequence-grid { grid-template-columns: 18px minmax(135px, 1fr) 48px 55px; }
  .ops-sequence-grid > :nth-child(4) { display: none; }
}

.product-nav-menu > button .nav-badge {
  position: absolute;
  top: 7px;
  right: 8px;
  border-radius: 10px;
  background: var(--cx-color-action-primary);
  color: #fff;
  padding: 1px 5px;
  font-size: 8px;
  font-weight: 600;
  line-height: 14px;
}

.product-nav-menu > div {
  top: calc(100% - 1px);
}

@media (max-width: 1380px) {
  .product-brand,
  body.contacts-focus-view .product-brand,
  body.directory-focus-view .product-brand,
  body.dialer-focus-view .product-brand {
    width: 205px;
    min-width: 205px;
  }

  .product-nav,
  body.contacts-focus-view .product-nav,
  body.directory-focus-view .product-nav,
  body.dialer-focus-view .product-nav {
    gap: 0;
  }

  .product-nav-home,
  .product-nav-menu > button {
    width: 70px;
    min-width: 70px;
  }
}

@media (max-width: 1080px) {
  .product-brand,
  body.contacts-focus-view .product-brand,
  body.directory-focus-view .product-brand,
  body.dialer-focus-view .product-brand {
    width: 176px;
    min-width: 176px;
  }

  .product-brand img,
  body.contacts-focus-view .product-brand img,
  body.directory-focus-view .product-brand img,
  body.dialer-focus-view .product-brand img {
    width: 160px;
  }

  .product-nav-home,
  .product-nav-menu > button {
    width: 58px;
    min-width: 58px;
    font-size: 9px;
  }

  .product-nav-home > svg,
  .product-nav-menu .product-nav-icon {
    width: 20px;
    height: 20px;
  }

  .header-actions .icon-button:nth-child(2),
  .header-actions .icon-button:nth-child(3),
  .user-chip > div {
    display: none;
  }
}

@media (max-width: 820px) {
  .app-header,
  body.contacts-focus-view .app-header,
  body.directory-focus-view .app-header,
  body.dialer-focus-view .app-header {
    align-items: center;
    flex-direction: row;
    min-height: 62px;
    padding: 7px 12px;
  }

  .product-brand,
  body.contacts-focus-view .product-brand,
  body.directory-focus-view .product-brand,
  body.dialer-focus-view .product-brand {
    width: 154px;
    min-width: 154px;
    height: 44px;
  }

  .product-brand img,
  body.contacts-focus-view .product-brand img,
  body.directory-focus-view .product-brand img,
  body.dialer-focus-view .product-brand img {
    width: 150px;
    height: 44px;
  }

  .product-nav {
    display: none;
  }

  .header-actions {
    width: auto;
    margin-left: auto;
    justify-content: flex-end;
    flex-wrap: nowrap;
  }

  .header-actions .icon-button:not(:first-child),
  .user-chip > div {
    display: none;
  }
}
