/* CRM modules: current connected application typography, surfaces and task hierarchy.
   Reference: application/preview/assets/tokens.css and application/css/redesign/. */

/* The operational body remains Inter; titles use the exact application face. */
:is(.campaign-intro,.campaign-builder,.segment-builder,.campaign-detail-grid,.segment-workspace,.autopilot-workspace,.autopilot-command,.check-ins,.cost-report,.webtracking-grid,.account-settings-grid,.team-layout,.settings-section,.challenge-board,.challenge-hero,.workflow-editor-layout,.coach-hero,.call-cockpit,.import-layout,.record-layout) :is(h1,h2,h3,h4) {
  font-family: var(--ysa-font-heading);
  font-weight: 400;
  font-synthesis: none;
  letter-spacing: -.01em;
}
/* Campaigns and dynamic audiences */
.campaign-intro,
.campaign-detail-head,
.segment-detail-head,
.campaign-list-heading,
.segment-list-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-block: 0 24px;
}
.campaign-intro > div { max-width: 760px; }
.campaign-builder,
.segment-builder {
  display: grid;
  grid-template-columns: minmax(220px, .65fr) minmax(0, 1.35fr);
  gap: 32px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  margin-bottom: 32px;
}
.campaign-builder-copy,
.segment-builder-copy { min-width: 0; }
.campaign-builder-copy > p,
.segment-builder-copy > p { margin-top: 12px; color: var(--ysa-text-3); }
.campaign-steps { display: grid; gap: 24px; padding-left: 24px; margin: 24px 0 0; }
.campaign-steps li { padding-left: 4px; }
.campaign-steps li::marker { color: var(--ysa-ok); font-weight: 600; }
.campaign-steps strong,
.campaign-steps span { display: block; }
.campaign-steps span { margin-top: 4px; color: var(--ysa-text-muted); font-size: 13px; }
.campaign-form,
.segment-form,
.segment-form-fields,
.segment-launch-form { display: grid; min-width: 0; gap: 24px; }
.campaign-form fieldset,
.segment-form fieldset,
.segment-launch-form fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.campaign-form legend,
.segment-form legend,
.segment-launch-form legend { padding: 0; margin-bottom: 12px; font-weight: 600; }
.campaign-fields,
.campaign-account-fields,
.campaign-reminder-fields,
.segment-filter-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.campaign-target > p { margin-bottom: 16px; color: var(--ysa-text-3); }
.choice-group { display: grid; gap: 12px; }
.choice-row,
.compliance-check,
.weekly-report-choice { display: flex; align-items: flex-start; gap: 12px; min-width: 0; }
.choice-row {
  padding: 16px;
  border: 1px solid var(--ysa-line);
  border-radius: var(--ysa-r-control);
  background: var(--ysa-sheet);
  cursor: pointer;
}
.choice-row:has(input:checked) { border-color: var(--ysa-sage); background: var(--ysa-sage-soft-2); }
.choice-row > input,
.compliance-check > input,
.weekly-report-choice > input { flex: 0 0 auto; margin-top: 4px; }
.choice-row > span,
.weekly-report-choice > span { display: grid; gap: 4px; min-width: 0; }
.choice-row small,
.weekly-report-choice small,
.campaign-test-recipient small { color: var(--ysa-text-3); font-size: 13px; font-weight: 400; line-height: 1.6; }
.choice-tag { display: inline-block; margin-left: 4px; color: var(--ysa-ok); font-size: 12px; font-style: normal; }
.field-optional { color: var(--ysa-text-muted); font-size: 12px; font-style: normal; font-weight: 400; }
.campaign-test-recipient { display: grid; gap: 8px; }
.reminder-config > .choice-row { margin-bottom: 16px; }
.campaign-reminder-fields label:first-child { display: grid; grid-template-columns: 1fr auto; gap: 8px; align-items: center; }
.campaign-reminder-fields label:first-child input { grid-column: 1; }
.compliance-check { color: var(--ysa-text-3); font-size: 13px; font-weight: 400; line-height: 1.6; }
.campaign-report { display: grid; grid-template-columns: repeat(auto-fit, minmax(110px, 1fr)); gap: 16px; margin-block: 24px; }
.campaign-report > div { display: grid; gap: 6px; padding: 20px; border: 0; border-radius: var(--ysa-r-tile); background: var(--ysa-canvas-tint); }
.campaign-report strong { color: var(--ysa-ink); font-size: 27px; font-weight: 600; font-variant-numeric: tabular-nums; }
.campaign-report span { color: var(--ysa-text-muted); font-size: 12px; }
.campaign-filter { display: flex; flex-wrap: wrap; gap: 12px; }
.campaign-detail-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(240px, 320px); gap: 24px; }
.campaign-detail-main,
.campaign-detail-side { display: grid; align-content: start; min-width: 0; gap: 24px; }
.campaign-detail-actions,
.campaign-action-buttons,
.campaign-record-links { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.campaign-processing { display: flex; gap: 12px; padding: 16px; margin-bottom: 24px; background: var(--ysa-purple-soft); border-radius: var(--ysa-r-control); }
.processing-dot { flex: 0 0 8px; height: 8px; margin-top: 7px; border-radius: 50%; background: var(--ysa-purple); }
.campaign-signals,
.campaign-event-list,
.source-list,
.narrative-list { display: grid; gap: 16px; margin: 16px 0 0; padding-left: 20px; }
.campaign-signals { padding-left: 0; list-style: none; }
.campaign-signals > div,
.campaign-signals > article,
.recent-signal { padding-block: 12px; border-bottom: 1px solid var(--ysa-line); }
.campaign-research,
.campaign-compliance { display: grid; gap: 16px; }
.research-context-card,
.research-fallback { padding: 16px; border-radius: var(--ysa-r-control); background: var(--ysa-canvas); border: 1px solid var(--ysa-line); }
.research-context-label,
.research-chip-list { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.research-chip-list { margin-top: 12px; }
.research-chip-list > span { padding: 4px 9px; border-radius: var(--ysa-r-pill); background: var(--ysa-info-soft); color: var(--ysa-info); font-size: 12px; }
.email-preview-toolbar { display: flex; justify-content: space-between; gap: 16px; margin-bottom: 16px; }
.email-render-frame { display: block; width: 100%; min-height: 520px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-control); background: var(--ysa-sheet); }
.email-copy { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.7; }
.email-subject { padding-bottom: 16px; margin-bottom: 16px; border-bottom: 1px solid var(--ysa-line); }
.plain-fallback { margin-top: 16px; }
.batch-progress { padding: 20px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-sheet); margin-block: 24px; }
.segment-filter-wide,
.segment-name-field { grid-column: 1 / -1; }
.segment-purpose,
.segment-primary-choice { display: grid; gap: 12px; }
.segment-primary-choice { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.field-suffix { display: flex; align-items: center; gap: 8px; }
.field-suffix > input { min-width: 0; }
.segment-preview { display: grid; gap: 16px; margin-top: 24px; padding: 20px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-canvas); }
.segment-preview-metrics,
.segment-launch-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.segment-preview-metrics > div,
.segment-launch-summary > div { display: grid; gap: 4px; }
.segment-preview-metrics strong,
.segment-launch-summary strong { font-size: 24px; font-weight: 600; font-variant-numeric: tabular-nums; }
.segment-preview-status,
.segment-safety-note { color: var(--ysa-text-3); font-size: 13px; }
.segment-recipient-list { display: grid; gap: 12px; padding: 0; list-style: none; }
.segment-recipient-list > li { display: flex; align-items: center; gap: 12px; padding-top: 12px; border-top: 1px solid var(--ysa-line); }
.segment-workspace { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, 360px); gap: 24px; margin-bottom: 32px; }
.segment-launch { align-self: start; display: grid; gap: 24px; }
.segment-autopilot { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 1fr); gap: 32px; margin-bottom: 24px; }
.segment-autopilot__copy { display: grid; align-content: start; gap: 12px; }
.segment-autopilot__form { display: grid; align-content: start; gap: 16px; }
.segment-archive-form { margin-top: 24px; padding-top: 16px; border-top: 1px solid var(--ysa-line); }

/* Autopilot: readable decisions, evidence and controls */
.autopilot-command { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 24px; padding: 24px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-sheet); }
.autopilot-mode-block { display: flex; align-items: flex-start; gap: 16px; padding: 20px; border-radius: var(--ysa-r-control); background: var(--ysa-sage-soft); }
.autopilot-mode-block > div:nth-child(2) { display: grid; gap: 8px; min-width: 0; }
.autopilot-mode-block > a { align-self: end; margin-left: auto; font-size: 12px; }
.autopilot-mode-block strong { font-size: 21px; font-weight: 600; }
.autopilot-mode-beacon { display: grid; flex: 0 0 32px; width: 32px; height: 32px; place-items: center; border: 1px solid var(--ysa-ok); border-radius: 50%; }
.autopilot-mode-beacon > span { width: 10px; height: 10px; border-radius: 50%; background: var(--ysa-ok); }
.autopilot-overline,
.autopilot-algorithm { color: var(--ysa-text-muted); font-size: 12px; font-weight: 600; }
.autopilot-command__decision { display: grid; align-content: start; gap: 16px; }
.autopilot-command__decision h2 { margin-block: 8px 12px; }
.autopilot-command__decision p { max-width: 70ch; color: var(--ysa-text-3); }
.autopilot-readonly-note,
.autopilot-policy-readonly { color: var(--ysa-text-muted); font-size: 13px; }
.autopilot-command__pulse { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 0; padding-top: 20px; border-top: 1px solid var(--ysa-line); }
.autopilot-command__pulse dt { color: var(--ysa-text-muted); font-size: 12px; }
.autopilot-command__pulse dd { margin: 8px 0 0; font-size: 24px; font-weight: 600; font-variant-numeric: tabular-nums; }
.autopilot-impact { display: grid; grid-template-columns: repeat(auto-fit, minmax(135px, 1fr)); gap: 16px; margin-block: 24px; }
.autopilot-impact > div { display: grid; align-content: space-between; gap: 12px; padding: 16px; border: 0; border-radius: var(--ysa-r-card); background: var(--ysa-canvas-tint); }
.autopilot-impact span { color: var(--ysa-text-muted); font-size: 12px; }
.autopilot-impact strong { font-size: 24px; font-weight: 600; font-variant-numeric: tabular-nums; }
.autopilot-impact > .autopilot-impact__revenue { background: var(--ysa-sage-soft); }
.autopilot-workspace { display: grid; grid-template-columns: minmax(0, 1fr) minmax(270px, 340px); gap: 24px; margin-top: 24px; }
.autopilot-section-head,
.autopilot-guardrails section > header,
.autopilot-experiment__head { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; margin-bottom: 20px; }
.autopilot-section-head p { margin-top: 8px; color: var(--ysa-text-3); }
.autopilot-recommendation-list,
.autopilot-guardrails,
.autopilot-learning,
.autopilot-runs { display: grid; align-content: start; gap: 16px; }
.autopilot-recommendation { display: grid; grid-template-columns: 60px minmax(0, 1fr); gap: 16px; padding: 20px; background: var(--ysa-sheet); border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); }
.autopilot-score { display: grid; align-self: start; align-content: start; gap: 4px; text-align: center; padding: 12px 4px; color: var(--ysa-ok); background: var(--ysa-sage-soft); border-radius: var(--ysa-r-control); }
.autopilot-score strong { font-size: 26px; line-height: 1.2; }
.autopilot-score span,
.autopilot-score small { font-size: 12px; }
.autopilot-recommendation__body { display: grid; min-width: 0; gap: 16px; }
.autopilot-recommendation__topline { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; font-size: 12px; color: var(--ysa-text-muted); }
.autopilot-tags,
.autopilot-evidence,
.autopilot-entity-line,
.autopilot-output-links { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center; }
.autopilot-tags > span { font-size: 12px; }
.autopilot-status,
.autopilot-experiment-tag { padding: 4px 8px; border-radius: var(--ysa-r-pill); color: var(--ysa-purple); background: var(--ysa-purple-soft); }
.autopilot-status--done,
.autopilot-status--completed { color: var(--ysa-ok); background: var(--ysa-sage-soft); }
.autopilot-status--failed,
.autopilot-status--blocked { color: var(--ysa-danger-text); background: var(--ysa-danger-soft); }
.autopilot-evidence > span { display: grid; gap: 4px; padding: 9px 12px; background: var(--ysa-canvas); border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-control); font-size: 13px; }
.autopilot-evidence small { color: var(--ysa-text-muted); }
.autopilot-entity-line { font-size: 13px; }
.autopilot-next-action { padding: 16px; border-radius: var(--ysa-r-control); background: var(--ysa-info-soft); color: var(--ysa-info); }
.autopilot-next-action > span { font-size: 12px; font-weight: 600; }
.autopilot-next-action > p { margin-top: 8px; }
.autopilot-recommendation__actions { grid-column: 2; display: grid; gap: 16px; border-top: 1px solid var(--ysa-line); padding-top: 16px; }
.autopilot-shadow-label,
.autopilot-queue-state { font-size: 12px; color: var(--ysa-text-muted); }
.autopilot-feedback form { display: grid; gap: 16px; margin-top: 16px; }
.autopilot-guardrails > section,
.autopilot-learning > section,
.autopilot-experiment,
.autopilot-scope-grid > article { min-width: 0; padding: 20px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-sheet); }
.autopilot-guardrails form { display: grid; gap: 16px; }
.autopilot-mode-choices { display: grid; gap: 12px; border: 0; padding: 0; margin: 0; }
.autopilot-mode-choices label { display: flex; gap: 12px; align-items: flex-start; padding: 12px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-control); cursor: pointer; }
.autopilot-mode-choices label:has(input:checked) { border-color: var(--ysa-ok); background: var(--ysa-sage-soft); }
.autopilot-mode-choices input { flex: 0 0 auto; margin-top: 4px; }
.autopilot-mode-choices label > span { display: grid; gap: 4px; }
.autopilot-mode-choices small { color: var(--ysa-text-3); font-weight: 400; font-size: 12px; }
.autopilot-mode-summary,
.autopilot-safety-contract,
.autopilot-readonly-note { padding: 12px; border-radius: var(--ysa-r-control); background: var(--ysa-canvas); color: var(--ysa-text-3); font-size: 13px; }
.autopilot-policy-grid,
.autopilot-policy-switches,
.autopilot-scope-grid,
.autopilot-experiment-grid,
.autopilot-strategy-grid,
.autopilot-learning-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.autopilot-policy-switches label { display: flex; align-items: flex-start; gap: 8px; }
.autopilot-emergency-switch { display: flex; align-items: flex-start; gap: 12px; padding: 16px; border: 1px solid var(--ysa-danger-line); border-radius: var(--ysa-r-control); background: var(--ysa-danger-soft); }
.autopilot-experiments,
.autopilot-scopes,
.autopilot-strategies { display: grid; gap: 24px; margin-top: 32px; }
.autopilot-experiment__progress { height: 8px; overflow: hidden; border-radius: var(--ysa-r-pill); background: var(--ysa-line); margin-block: 16px; }
.autopilot-arm-list { display: grid; gap: 12px; }
.autopilot-arm-list > article,
.autopilot-arm-list > div { padding: 16px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-control); }
.autopilot-winner-reason,
.autopilot-error { padding: 12px; border-radius: var(--ysa-r-control); background: var(--ysa-caution-soft); color: var(--ysa-caution-text); }
.autopilot-empty,
.autopilot-learning-empty { padding: 32px 20px; border: 1px dashed var(--ysa-line); border-radius: var(--ysa-r-card); text-align: center; }

/* Customer check-ins */
.check-ins { display: grid; gap: 24px; }
.check-ins-intro { max-width: 900px; }
.check-ins-explanation { margin-top: 16px; padding: 16px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-control); background: var(--ysa-sheet); }
.check-ins-explanation summary { font-weight: 600; cursor: pointer; }
.check-ins-explanation p { margin-top: 12px; color: var(--ysa-text-3); }
.check-ins-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.check-ins-summary-item { display: grid; gap: 8px; padding: 20px; border: 0; border-radius: var(--ysa-r-card); background: var(--ysa-canvas-tint); color: var(--ysa-ink); text-decoration: none; }
.check-ins-summary-item strong { font-size: 30px; line-height: 1.2; font-weight: 600; font-variant-numeric: tabular-nums; }
.check-ins-summary-item > span { font-size: 13px; font-weight: 600; }
.check-ins-summary-item > small { font-size: 12px; color: var(--ysa-text-muted); }
.check-ins-summary-item.is-active { background: var(--ysa-sage-soft); border-color: var(--ysa-sage); }
.check-ins-summary-item:hover { border-color: var(--ysa-text-3); }
.check-ins-notice { padding: 16px; border-radius: var(--ysa-r-control); color: var(--ysa-caution-text); background: var(--ysa-caution-soft); }
.check-ins-sender,
.check-ins-action-explanation { color: var(--ysa-text-3); font-size: 13px; }
.check-ins-filters { display: grid; grid-template-columns: minmax(180px, 1.5fr) repeat(2, minmax(140px, 1fr)) auto; align-items: end; gap: 16px; padding: 20px; background: var(--ysa-sheet); border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); }
.check-ins-filter-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; }
.check-ins-list { overflow: hidden; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-sheet); }
.check-ins-list-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px; border-bottom: 1px solid var(--ysa-line); }
.check-ins-table { width: 100%; border-collapse: collapse; }
.check-ins-table th,
.check-ins-table td { padding: 16px; border-bottom: 1px solid var(--ysa-line); text-align: left; vertical-align: top; }
.check-ins-table thead th { background: var(--ysa-canvas); color: var(--ysa-text-muted); font-size: 12px; font-weight: 600; }
.check-ins-table tbody tr:last-child td { border-bottom: 0; }
.check-ins-date,
.check-ins-contact { display: grid; gap: 8px; min-width: 0; }
.check-ins-company > a,
.check-ins-company > span { display: block; }
.check-ins-company > .check-ins-contact { display: grid; }
.check-ins-company > * + * { margin-top: 8px; }
.check-ins-company-name { color: var(--ysa-ink); font-weight: 600; }
.check-ins-date small,
.check-ins-contact small,
.check-ins-invited-at,
.check-ins-action-hint { color: var(--ysa-text-muted); font-size: 12px; }
.check-ins-status { display: inline-flex; align-items: center; padding: 5px 9px; border-radius: var(--ysa-r-pill); font-size: 12px; line-height: 1.5; font-weight: 600; background: var(--ysa-purple-soft); color: var(--ysa-purple); }
.check-ins-status--current { color: var(--ysa-ok); background: var(--ysa-sage-soft); }
.check-ins-status--missing,
.check-ins-status--overdue,
.check-ins-status--soon { color: var(--ysa-caution-text); background: var(--ysa-caution-soft); }
.check-ins-action > * + * { margin-top: 8px; }
.check-ins-invited-at { display: block; margin-top: 8px; }
.check-ins-result { padding: 12px; color: var(--ysa-ok); background: var(--ysa-sage-soft); border-radius: var(--ysa-r-control); margin-top: 8px; font-size: 13px; }
.check-ins-result.is-error { color: var(--ysa-danger-text); background: var(--ysa-danger-soft); }
.check-ins-pagination { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; }
.check-ins-empty { padding: 40px 20px; text-align: center; }

/* Costs and revenue */
.cost-report { display: grid; gap: 24px; min-width: 0; }
.cost-report__intro,
.cost-report__heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; }
.cost-report__intro > div { max-width: 760px; }
.cost-report__intro p + p { margin-top: 8px; }
.cost-report__year { display: grid; grid-template-columns: minmax(95px, 1fr) auto; align-items: end; gap: 8px 12px; flex-shrink: 0; }
.cost-report__year > label { grid-column: 1 / -1; font-size: 12px; font-weight: 600; }
.cost-report__summary,
.revenue-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.cost-report__metric,
.revenue-summary > article { display: grid; align-content: start; gap: 12px; padding: 20px; border: 0; border-radius: var(--ysa-r-card); background: var(--ysa-canvas-tint); min-width: 0; }
.cost-report__metric > span,
.revenue-summary > article > span { color: var(--ysa-text-3); font-size: 13px; }
.cost-report__metric > strong,
.revenue-summary > article > strong { font-size: clamp(21px, 2vw, 27px); line-height: 1.25; font-weight: 600; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.cost-report__metric small,
.revenue-summary small { color: var(--ysa-text-muted); font-size: 12px; }
.cost-report__metric--total,
.revenue-summary > .revenue-primary { background: var(--ysa-sage-soft); }
.cost-report__metric i { display: inline-block; width: 7px; height: 7px; margin-right: 6px; border-radius: 50%; background: var(--ysa-ok); }
.cost-report__metric--one-off i { background: var(--ysa-purple); }
.cost-report__metric--unclassified i { background: var(--ysa-caution-text); }
.cost-report__panel,
.cost-report__groups,
.cost-report__unavailable { padding: 24px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-sheet); min-width: 0; }
.cost-report__heading { margin-bottom: 20px; }
.cost-report__heading > p { max-width: 38ch; color: var(--ysa-text-muted); font-size: 13px; }
.cost-report__count { color: var(--ysa-text-muted); font-size: 13px; white-space: nowrap; }
.cost-report__table-wrap,
.cost-report__group-months { max-width: 100%; overflow-x: auto; overscroll-behavior-inline: contain; }
.cost-report__monthly,
.cost-report__group-months table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.cost-report__monthly th,
.cost-report__monthly td { padding: 12px 16px; border-bottom: 1px solid var(--ysa-line); text-align: right; }
.cost-report__monthly th:first-child { text-align: left; }
.cost-report__monthly thead th { color: var(--ysa-text-muted); font-size: 12px; font-weight: 600; background: var(--ysa-canvas); }
.cost-report__monthly tfoot { font-weight: 600; background: var(--ysa-sage-soft); }
.cost-report__month-total { font-weight: 600; }
.cost-report__reconciliation { margin-top: 20px; color: var(--ysa-ok); font-size: 13px; }
.cost-report__reconciliation--warning { color: var(--ysa-caution-text); }
.cost-report__explanation { max-width: 85ch; margin-bottom: 20px; color: var(--ysa-text-3); }
.cost-report__filters { display: grid; grid-template-columns: minmax(0, 1fr) minmax(160px, 220px) auto auto; align-items: end; gap: 16px; margin-bottom: 24px; }
.cost-report__group-list { display: grid; gap: 20px; }
.cost-report__group { padding: 20px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); min-width: 0; }
.cost-report__group-head { display: flex; justify-content: space-between; gap: 20px; }
.cost-report__group-name { min-width: 0; }
.cost-report__group-name p { color: var(--ysa-text-muted); font-size: 12px; margin-bottom: 4px; }
.cost-report__group-name h3 { margin-bottom: 12px; font-size: 16px; }
.cost-report__badge { display: inline-block; padding: 5px 9px; border-radius: var(--ysa-r-pill); background: var(--ysa-caution-soft); color: var(--ysa-caution-text); font-size: 12px; font-weight: 600; }
.cost-report__badge--recurring { background: var(--ysa-sage-soft); color: var(--ysa-ok); }
.cost-report__badge--one_off { background: var(--ysa-purple-soft); color: var(--ysa-purple); }
.cost-report__manual { color: var(--ysa-text-muted); font-size: 12px; margin-left: 8px; }
.cost-report__group-total { display: grid; align-content: start; gap: 4px; text-align: right; }
.cost-report__group-total span { font-size: 12px; color: var(--ysa-text-muted); }
.cost-report__group-total strong { font-size: 23px; font-weight: 600; font-variant-numeric: tabular-nums; }
.cost-report__reason { margin-block: 16px; color: var(--ysa-text-3); font-size: 13px; }
.cost-report__group-months { border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-control); }
.cost-report__group-months table { min-width: 780px; }
.cost-report__group-months th,
.cost-report__group-months td { min-width: 65px; padding: 10px 12px; text-align: right; white-space: nowrap; font-size: 12px; }
.cost-report__group-months th { color: var(--ysa-text-muted); background: var(--ysa-canvas); font-weight: 600; }
.cost-report__group-months abbr { text-decoration: none; }
.cost-report__zero { color: var(--ysa-text-muted); }
.cost-report__scroll-hint { margin-top: 8px; color: var(--ysa-text-muted); font-size: 12px; }
.cost-report__group-bottom { display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin-top: 20px; }
.cost-report__entries { flex: 1 1 280px; min-width: 0; }
.cost-report__entries summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; min-height: 44px; cursor: pointer; font-weight: 600; }
.cost-report__entries-list { display: grid; gap: 16px; margin-top: 16px; }
.cost-report__entry { display: grid; grid-template-columns: 85px minmax(0, 1fr) auto; align-items: start; gap: 12px; padding-top: 12px; border-top: 1px solid var(--ysa-line); font-size: 13px; }
.cost-report__entry > span { min-width: 0; }
.cost-report__entry a { display: block; margin-top: 4px; font-size: 12px; }
.cost-report__classification { display: flex; align-items: center; gap: 12px; }
.cost-report__classification select { min-width: 0; }
.cost-report__unavailable { display: grid; justify-items: center; gap: 16px; text-align: center; padding: 40px 24px; }
.cost-report__unavailable > p { max-width: 65ch; color: var(--ysa-text-3); }
.cost-report__empty-mark { display: grid; place-items: center; width: 48px; height: 48px; border-radius: var(--ysa-r-card); color: var(--ysa-purple); background: var(--ysa-purple-soft); font-size: 24px; }
.cost-report__loading-note { color: var(--ysa-text-muted); font-size: 13px; }
.revenue-summary,
.revenue-managers { margin-bottom: 24px; }
.revenue-manager-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; }
.revenue-manager-grid > article { display: grid; gap: 12px; padding: 16px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-control); }
.revenue-manager-grid article > div { display: grid; gap: 4px; }
.revenue-manager-grid strong { font-size: 22px; }
.revenue-manager-grid small { color: var(--ysa-text-muted); font-size: 12px; }

/* Website activity */
.webtracking-grid,
.webtracking-sites { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.webtracking-section { margin-top: 32px; }
.webtracking-summary { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 16px; margin-bottom: 24px; }
.webtracking-summary > div,
.webtracking-summary > article { display: grid; gap: 8px; padding: 20px; border-radius: var(--ysa-r-card); border: 0; background: var(--ysa-canvas-tint); }
.webtracking-summary strong { font-size: 27px; font-weight: 600; font-variant-numeric: tabular-nums; }
.webtracking-summary span { color: var(--ysa-text-muted); font-size: 12px; }
.webtracking-summary > .webtracking-summary__primary { background: var(--ysa-sage-soft); }
.webtracking-site { display: grid; align-content: start; gap: 16px; padding: 20px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-sheet); }
.webtracking-site__stats { display: flex; gap: 16px; flex-wrap: wrap; color: var(--ysa-text-muted); font-size: 13px; }
.webtracking-code { display: block; width: 100%; max-width: 100%; overflow: auto; padding: 16px; background: var(--ysa-canvas); border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-control); font-size: 12px; line-height: 1.7; white-space: pre-wrap; overflow-wrap: anywhere; }
.leadinfo-intent-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.leadinfo-intent-card { display: grid; gap: 16px; padding: 20px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-sheet); }
.leadinfo-intent-heading,
.leadinfo-intent-card__identity { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.leadinfo-intent-score { display: grid; justify-items: center; gap: 4px; min-width: 60px; padding: 12px; border-radius: var(--ysa-r-control); background: var(--ysa-purple-soft); color: var(--ysa-purple); }
.leadinfo-intent-score strong { font-size: 26px; }
.leadinfo-intent-score small { font-size: 12px; }
.leadinfo-intent-facts,
.leadinfo-intent-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.leadinfo-intent-facts dt { color: var(--ysa-text-muted); font-size: 12px; }
.leadinfo-intent-facts dd { margin: 4px 0 0; }
.leadinfo-intent-context { padding: 16px; background: var(--ysa-canvas); border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-control); }
.leadinfo-intent-controls { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; }
.leadinfo-intent-empty { padding: 32px 20px; text-align: center; color: var(--ysa-text-muted); }

/* Account, integrations and recordings */
.account-settings-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: start; }
.account-card,
.account-two-factor,
.account-password,
.integration-panel { min-width: 0; }
.account-card--identity { display: flex; gap: 20px; align-items: center; }
.account-card--identity > .avatar { flex: 0 0 64px; width: 64px; height: 64px; }
.account-card--identity > div { min-width: 0; }
.account-card--identity + .account-settings-grid { margin-top: 24px; }
.account-two-factor .section-heading,
.account-password .section-heading { display: grid; grid-template-columns: minmax(0, 1fr); justify-content: start; gap: 8px; }
.account-two-factor .section-heading > *,
.account-password .section-heading > * { grid-column: 1; min-width: 0; }
.integration-panel { grid-column: 1 / -1; }
.integration-panel__mast { display: flex; align-items: center; gap: 16px; margin-bottom: 24px; }
.integration-panel__mast > div:nth-child(2) { min-width: 0; flex: 1; }
.integration-panel__mast > .pill { flex: 0 0 auto; white-space: nowrap; }
.integration-mark { display: grid; place-items: center; width: 48px; height: 48px; flex: 0 0 48px; border-radius: var(--ysa-r-card); background: var(--ysa-purple-soft); color: var(--ysa-purple); font-weight: 600; }
.integration-account-row { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; padding-block: 16px; border-block: 1px solid var(--ysa-line); }
.integration-account-row__eyebrow { color: var(--ysa-text-muted); font-size: 12px; }
.integration-account-row__sync { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.integration-connect { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 16px; margin-top: 16px; }
.integration-error,
.recording-card__error { padding: 12px; border-radius: var(--ysa-r-control); background: var(--ysa-danger-soft); color: var(--ysa-danger-text); font-size: 13px; }
.recording-section { margin-top: 32px; }
.recording-section__heading { display: flex; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin-bottom: 20px; }
.recording-list { display: grid; gap: 16px; }
.recording-card { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; gap: 16px; padding: 20px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); }
.recording-card__index { display: grid; place-items: center; align-self: start; width: 36px; height: 36px; border-radius: var(--ysa-r-control); background: var(--ysa-info-soft); color: var(--ysa-info); font-size: 12px; font-weight: 600; }
.recording-card__title-row { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-bottom: 8px; }
.recording-card__summary { min-width: 0; display: grid; gap: 8px; }
.recording-card__summary > p { color: var(--ysa-text-3); font-size: 13px; }
.recording-card__actions { display: flex; flex-wrap: wrap; align-content: start; align-items: center; gap: 12px; }
.recording-card__progress { display: flex; align-items: center; gap: 12px; grid-column: 2 / -1; padding: 12px; border-radius: var(--ysa-r-control); background: var(--ysa-purple-soft); color: var(--ysa-purple); font-size: 13px; }
.recording-card__spinner { width: 16px; height: 16px; flex: 0 0 16px; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; }
.recording-linker { grid-column: 2 / -1; border-top: 1px solid var(--ysa-line); padding-top: 16px; }
.recording-linker summary { font-weight: 600; cursor: pointer; }
.recording-linker__form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: end; gap: 16px; margin-top: 20px; }
.security-status-row { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-block: 20px; }
.security-regenerate { padding-top: 16px; border-top: 1px solid var(--ysa-line); }
.security-regenerate .stack-form { margin-top: 16px; }
.recovery-code-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-block: 24px; }
.recovery-code-grid > code { padding: 12px 16px; border-radius: var(--ysa-r-control); background: var(--ysa-canvas); border: 1px solid var(--ysa-line); text-align: center; }
.plaud-recording-nav { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
.plaud-recording-facts { padding: 24px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-sheet); }
.plaud-recording-facts dl { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; margin: 0; }
.plaud-recording-facts dt { color: var(--ysa-text-muted); font-size: 12px; }
.plaud-recording-facts dd { margin: 8px 0 0; font-weight: 600; }
.plaud-recording-facts__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.plaud-recording-notice { padding: 16px; margin-top: 20px; border-radius: var(--ysa-r-control); color: var(--ysa-info); background: var(--ysa-info-soft); }
.plaud-recording-content { display: grid; grid-template-columns: minmax(240px, .7fr) minmax(0, 1.3fr); gap: 24px; margin-top: 24px; }
.plaud-recording-summary,
.plaud-transcript { min-width: 0; padding: 24px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-sheet); }
.plaud-recording-summary > p { white-space: pre-wrap; margin-top: 20px; line-height: 1.7; }
.plaud-transcript > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
.plaud-transcript > header > span { color: var(--ysa-text-muted); font-size: 12px; }
.plaud-transcript__list { display: grid; gap: 24px; padding: 0; margin: 0; list-style: none; }
.plaud-transcript__list > li { padding-bottom: 20px; border-bottom: 1px solid var(--ysa-line); }
.plaud-transcript__speaker { display: flex; align-items: center; gap: 12px; margin-bottom: 8px; font-size: 13px; }
.plaud-transcript__speaker > span { color: var(--ysa-text-muted); font-variant-numeric: tabular-nums; }
.plaud-content-empty { padding: 24px 0; color: var(--ysa-text-3); }

/* Colleague management */
.team-manage-heading { display: flex; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.team-list { display: grid; gap: 16px; }
.team-list-heading { margin-bottom: 20px; }
.team-member { border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-sheet); min-width: 0; }
.team-member__summary { display: flex; align-items: center; gap: 16px; padding: 20px; cursor: pointer; }
.team-member__identity { display: grid; grid-template-columns: minmax(0, 1fr); align-content: center; gap: 4px; min-width: 0; flex: 1; overflow-wrap: anywhere; }
.team-member__identity > * { min-width: 0; }
.team-member__identity > span { color: var(--ysa-text-muted); font-size: 13px; }
.team-member__identity > div { display: grid; gap: 4px; min-width: 0; }
.team-member__identity small { color: var(--ysa-text-muted); font-size: 13px; }
.team-member__status { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.team-member__manage-label { color: var(--ysa-text-3); font-size: 13px; }
.team-member__manage-panel { display: grid; gap: 24px; margin-inline: 20px; padding-block: 24px; border-top: 1px solid var(--ysa-line); }
.team-account-edit,
.team-account-security { display: grid; gap: 16px; }
.team-account-edit__fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.team-account-edit__fields > .weekly-report-choice { grid-column: 1 / -1; }
.team-account-delete { border-top: 1px solid var(--ysa-line); padding-top: 20px; display: grid; gap: 16px; }
.team-add-panel { margin-top: 24px; }
.team-form-heading { margin-bottom: 24px; }
.team-self-note { color: var(--ysa-text-muted); font-size: 13px; }
.role-tag { padding: 5px 9px; color: var(--ysa-purple); background: var(--ysa-purple-soft); border-radius: var(--ysa-r-pill); font-size: 12px; font-weight: 600; }

/* Settings: separate sections and compact, fully visible editors. */
.settings-nav { display: flex; flex-wrap: wrap; gap: 4px; padding-bottom: 12px; border-bottom: 1px solid var(--ysa-line); margin-bottom: 28px; }
.settings-nav > a { display: inline-flex; align-items: center; min-height: 44px; padding: 10px 14px; border: 0; border-radius: var(--ysa-r-input); color: var(--ysa-text-3); background: transparent; font-size: 13px; font-weight: 500; text-decoration: none; }
.settings-nav > a:hover { color: var(--ysa-ink); background: var(--ysa-canvas); }
.settings-section { display: grid; gap: 24px; margin-bottom: 40px; scroll-margin-top: 24px; }
.settings-section > .section-heading { margin-bottom: 0; }
.settings-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 24px; }
.settings-grid > * { min-width: 0; }
.settings-grid .panel > h3 { margin-bottom: 16px; }
.settings-grid .panel > p + form { margin-top: 20px; }
.settings-card > .form-help { margin-bottom: 20px; }
.settings-item { margin-top: 16px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-control); padding: 16px; }
.settings-item > summary { cursor: pointer; }
.settings-item > summary > span { display: inline-grid; gap: 4px; vertical-align: top; }
.settings-item > summary small { display: block; color: var(--ysa-text-muted); font-size: 12px; }
.settings-item > form,
.settings-item > .stage-settings-list { margin-top: 20px; }
.inline-settings-form { display: flex; flex-wrap: wrap; align-items: end; gap: 16px; }
.inline-settings-form > label:not(.check-field) { flex: 1 1 140px; min-width: 0; }
.inline-settings-form > .check-field { min-height: 44px; align-items: center; }
.inline-settings-form > button { flex: 0 0 auto; }
.stage-settings-list { display: grid; }
.stage-settings-list > article { display: grid; grid-template-columns: 8px minmax(0, 1fr) auto auto; align-items: center; gap: 12px; padding-block: 16px; border-top: 1px solid var(--ysa-line); }
.stage-settings-list article > .stage-dot { width: 8px; height: 8px; }
.stage-settings-list article > div:not(.reorder-buttons) { display: grid; gap: 4px; min-width: 0; }
.stage-settings-list article small { color: var(--ysa-text-muted); font-size: 12px; }
.stage-settings-editor { position: static; }
.stage-settings-editor > summary { display: inline-flex; align-items: center; min-height: 44px; padding-inline: 8px; color: var(--ysa-text-3); font-size: 12px; cursor: pointer; }
.stage-settings-editor[open] { grid-column: 1 / -1; grid-row: 2; }
.stage-settings-editor > .popover { position: static; width: auto; max-width: none; margin-top: 12px; padding: 20px 0 0; border: 0; border-top: 1px solid var(--ysa-line); border-radius: 0; box-shadow: none; }
.reorder-buttons { display: flex; align-items: center; gap: 4px; grid-column: 4; grid-row: 1; }
.reorder-buttons button { min-width: 36px; min-height: 44px; }
.settings-row,
.custom-field-list > article { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding-block: 16px; border-top: 1px solid var(--ysa-line); }
.settings-row > span,
.custom-field-list article > span { display: grid; min-width: 0; gap: 4px; }
.settings-row small,
.custom-field-list small { color: var(--ysa-text-muted); font-size: 12px; overflow-wrap: anywhere; }
.custom-field-list > h3:not(:first-child) { margin-top: 24px; }
.checkbox-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 16px; }

/* Team performance */
.challenge-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin-bottom: 24px; }
.challenge-periods,
.challenge-pager { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.challenge-periods > a { padding: 10px 16px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-control); font-weight: 600; font-size: 13px; text-decoration: none; color: var(--ysa-text-3); }
.challenge-periods > a.is-active { background: var(--ysa-ink); border-color: var(--ysa-ink); color: var(--ysa-on-ink); }
.challenge-pager > strong { padding-inline: 8px; font-size: 13px; }
.challenge-hero { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px; padding: 32px; border-radius: var(--ysa-r-card); background: var(--ysa-sage-soft); border: 1px solid var(--ysa-line); }
.challenge-hero__signal { grid-column: 1 / -1; display: flex; justify-content: space-between; gap: 16px; color: var(--ysa-ok); font-size: 13px; }
.challenge-winner { display: flex; align-items: center; gap: 20px; min-width: 0; }
.challenge-winner h2 { font-family: var(--ysa-font-heading); font-size: clamp(24px, 2.5vw, 34px); font-weight: 400; letter-spacing: -.01em; margin-block: 8px; }
.challenge-winner > div > p { color: var(--ysa-text-3); font-size: 13px; }
.challenge-rank { display: grid; place-items: center; min-width: 36px; height: 36px; border-radius: var(--ysa-r-control); background: var(--ysa-canvas); color: var(--ysa-text-muted); font-weight: 600; font-variant-numeric: tabular-nums; }
.challenge-rank--winner { min-width: 52px; height: 52px; background: var(--ysa-sheet); color: var(--ysa-ok); font-size: 24px; }
.challenge-winner__metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; align-content: center; }
.challenge-winner__metrics > div,
.challenge-team-strip > div { display: grid; gap: 8px; }
.challenge-winner__metrics span,
.challenge-team-strip span { font-size: 12px; color: var(--ysa-text-3); }
.challenge-winner__metrics strong { font-size: 21px; font-variant-numeric: tabular-nums; }
.challenge-team-strip { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-block: 24px; }
.challenge-team-strip > div { padding: 20px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-sheet); }
.challenge-team-strip strong { font-size: 26px; font-weight: 600; font-variant-numeric: tabular-nums; }
.challenge-list { display: grid; }
.challenge-row { display: grid; grid-template-columns: 36px minmax(120px, .6fr) minmax(0, 1.4fr); gap: 20px; align-items: center; padding-block: 20px; border-top: 1px solid var(--ysa-line); }
.challenge-person { display: grid; gap: 4px; }
.challenge-person > span { color: var(--ysa-text-muted); font-size: 12px; }
.challenge-row dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 0; }
.challenge-row dt,
.challenge-scorecard dt { color: var(--ysa-text-muted); font-size: 12px; }
.challenge-row dd,
.challenge-scorecard dd { margin: 4px 0 0; font-weight: 600; font-variant-numeric: tabular-nums; }
.challenge-scorecard { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 32px; padding: 24px; margin-top: 24px; background: var(--ysa-sheet); border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); }
.challenge-scorecard > div > p:last-child { margin-top: 12px; color: var(--ysa-text-3); }
.challenge-scorecard > dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin: 0; }

/* Conversation coaching */
.coach-hero { display: grid; grid-template-columns: minmax(0, 1fr) 250px; gap: 32px; padding: 32px; margin-bottom: 24px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-sheet); }
.coach-hero h2 { margin-block: 12px; font-size: clamp(23px, 2.4vw, 32px); line-height: 1.25; letter-spacing: -.025em; }
.coach-hero p:last-child { max-width: 70ch; color: var(--ysa-text-3); }
.coach-hero__signal { display: grid; grid-template-columns: 28px 1fr; gap: 16px; align-content: center; padding: 20px; border-radius: var(--ysa-r-control); background: var(--ysa-purple-soft); color: var(--ysa-purple); }
.coach-hero__signal span { font-size: 12px; }
.coach-hero__signal strong { font-weight: 600; font-size: 14px; }
.coach-start { margin-bottom: 32px; }
.coach-start__form { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto; align-items: end; gap: 16px; }
.coach-privacy-note { margin-top: 20px; color: var(--ysa-text-muted); font-size: 13px; }
.live-indicator { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; color: var(--ysa-text-muted); }
.live-indicator > i { width: 7px; height: 7px; border-radius: 50%; background: var(--ysa-ok); }
.coach-session-list { display: grid; gap: 12px; }
.coach-session-card { display: grid; grid-template-columns: 12px minmax(0, 1fr) auto auto; gap: 16px; align-items: center; padding: 20px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); text-decoration: none; color: var(--ysa-ink); background: var(--ysa-sheet); }
.coach-session-card:hover { background: var(--ysa-info-soft); }
.coach-session-card__mark { width: 8px; height: 8px; border-radius: 50%; background: var(--ysa-ok); }
.coach-session-card__copy { display: grid; min-width: 0; gap: 4px; }
.coach-session-card__copy small,
.coach-session-card__time,
.coach-session-card__status { color: var(--ysa-text-muted); font-size: 12px; }
.coach-context-bar,
.coach-report-head { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 24px; margin-bottom: 24px; background: var(--ysa-sheet); border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); }
.coach-context-bar h2 { margin-block: 8px; }
.coach-context-bar__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; }
.coach-report-outcome { display: grid; gap: 8px; padding: 16px; background: var(--ysa-sage-soft); border-radius: var(--ysa-r-control); }
.coach-report-outcome > span,
.coach-report-outcome > small { font-size: 12px; color: var(--ysa-ok); }
.coach-report-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; margin-bottom: 24px; }
.discovery-map { display: grid; gap: 16px; margin: 0; }
.discovery-map > div { padding: 16px; background: var(--ysa-canvas); border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-control); }
.discovery-map dt { font-size: 12px; color: var(--ysa-text-muted); margin-bottom: 8px; }
.discovery-map dd { margin: 0; }
.coach-report-section h3 { margin-top: 24px; }
.coach-question-list { display: grid; gap: 12px; padding-left: 20px; }
.coach-objections { display: grid; gap: 16px; margin-top: 16px; }
.coach-objections > article { padding: 16px; border-radius: var(--ysa-r-control); background: var(--ysa-caution-soft); }
.coach-objections p { margin-top: 8px; }
.coach-action-list { display: grid; }
.coach-action-list > a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 16px; padding: 16px 0; border-top: 1px solid var(--ysa-line); text-decoration: none; color: var(--ysa-ink); }
.coach-actions-report { margin-bottom: 24px; }
.coach-transcript-archive { margin-block: 24px; }
.coach-transcript-archive > summary { font-weight: 600; cursor: pointer; }
.coach-transcript-archive > div { display: grid; gap: 16px; margin-top: 20px; }
.coach-transcript-archive p > span { color: var(--ysa-text-muted); font-size: 12px; margin-right: 12px; }
.call-cockpit { border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); overflow: hidden; background: var(--ysa-sheet); }
.call-cockpit__head { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 24px; border-bottom: 1px solid var(--ysa-line); }
.call-cockpit__state { display: flex; align-items: center; gap: 12px; }
.call-cockpit__state > div { display: grid; gap: 4px; }
.call-cockpit__state small { font-size: 12px; color: var(--ysa-text-muted); }
.call-cockpit__pulse { width: 10px; height: 10px; border-radius: 50%; background: var(--ysa-text-muted); }
.call-cockpit__state.is-live .call-cockpit__pulse { background: var(--ysa-ok); box-shadow: 0 0 0 5px var(--ysa-sage-soft); }
.call-cockpit__timer { font-size: 24px; font-weight: 600; font-variant-numeric: tabular-nums; }
.call-cockpit__columns { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(280px, .7fr); }
.call-cockpit__transcript,
.call-cockpit__tips { min-width: 0; padding: 24px; }
.call-cockpit__tips { border-left: 1px solid var(--ysa-line); background: var(--ysa-canvas); }
.call-cockpit__section-head { display: flex; align-items: start; justify-content: space-between; gap: 16px; margin-bottom: 24px; }
.call-cockpit__section-head > span { color: var(--ysa-text-muted); font-size: 12px; }
.live-transcript { display: grid; align-content: start; gap: 20px; min-height: 300px; max-height: 580px; overflow-y: auto; }
.live-transcript > article { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 12px; }
.live-transcript article > span { color: var(--ysa-text-muted); font-size: 12px; }
.live-transcript__partial { color: var(--ysa-text-muted); }
.live-tip-list { display: grid; gap: 16px; }
.live-tip { padding: 20px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-sheet); }
.live-tip > span { color: var(--ysa-purple); font-size: 12px; font-weight: 600; }
.live-tip h3 { margin-block: 8px; }
.live-tip blockquote { margin: 16px 0 0; padding-left: 12px; border-left: 2px solid var(--ysa-purple); color: var(--ysa-text-3); }
.live-tip--critical { border-color: var(--ysa-caution-text); }
.live-transcript__empty,
.live-tips__empty { display: grid; gap: 12px; padding: 24px 0; color: var(--ysa-text-3); }
.call-cockpit__controls { display: flex; justify-content: flex-end; flex-wrap: wrap; align-items: center; gap: 16px; padding: 20px 24px; border-top: 1px solid var(--ysa-line); }
.call-cockpit__controls > div { display: grid; gap: 4px; margin-right: auto; font-size: 13px; }
.call-cockpit__controls small { color: var(--ysa-text-muted); font-size: 12px; }
.call-cockpit__error { flex-basis: 100%; color: var(--ysa-danger-text); }

/* Automation editor */
.workflow-overview-grid { display: grid; grid-template-columns: minmax(260px, .6fr) minmax(0, 1.4fr); gap: 24px; align-items: start; }
.workflow-list { display: grid; gap: 16px; }
.workflow-list-item { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 20px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-sheet); }
.workflow-editor-layout { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 24px; align-items: start; }
.workflow-sidebar { position: sticky; top: 24px; }
.workflow-sidebar > p { margin-top: 12px; color: var(--ysa-text-3); font-size: 13px; }
.workflow-palette { display: grid; gap: 12px; margin-top: 24px; }
.workflow-legend { display: grid; gap: 12px; margin-top: 24px; color: var(--ysa-text-muted); font-size: 12px; }
.workflow-legend > span { display: flex; gap: 8px; align-items: center; }
.workflow-port { display: inline-block; width: 8px; height: 8px; flex: 0 0 8px; border-radius: 50%; }
.workflow-port--yes { background: var(--ysa-ok); }
.workflow-port--no { background: var(--ysa-caution-text); }
.workflow-form { display: grid; gap: 24px; min-width: 0; }
.workflow-canvas { padding: 24px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-canvas); min-width: 0; }
.workflow-trigger-card { display: grid; gap: 8px; max-width: 600px; padding: 20px; margin-inline: auto; border: 1px solid var(--ysa-sage); border-radius: var(--ysa-r-card); background: var(--ysa-sage-soft); }
.workflow-trigger-card > span,
.workflow-trigger-card > small { font-size: 12px; color: var(--ysa-ok); }
.workflow-connector { width: 2px; height: 24px; background: var(--ysa-line); margin-inline: auto; }
.workflow-node { display: grid; gap: 20px; max-width: 600px; padding: 20px; margin-inline: auto; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-card); background: var(--ysa-sheet); }
.workflow-node > header { display: flex; justify-content: space-between; flex-wrap: wrap; align-items: center; gap: 12px; padding-bottom: 16px; border-bottom: 1px solid var(--ysa-line); }
.workflow-node > header > span { color: var(--ysa-purple); font-size: 12px; font-weight: 600; }
.workflow-node > header > div { display: flex; gap: 8px; }
.workflow-node [data-node-config] { display: grid; gap: 16px; }
.workflow-branches,
.condition-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.condition-grid > label:last-child { grid-column: 1 / -1; }
.workflow-branches label { display: grid; gap: 8px; }
.workflow-node-note { font-size: 13px; color: var(--ysa-text-3); }
.workflow-status-form { display: flex; justify-content: flex-end; margin-top: 24px; padding-top: 24px; border-top: 1px solid var(--ysa-line); }

/* Project delivery and imports */
.record-layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 24px; align-items: start; }
.record-main,
.record-sidebar { display: grid; min-width: 0; gap: 24px; }
.record-hero { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; }
.record-company { display: block; font-size: 18px; font-weight: 600; margin-top: 8px; }
.record-main .panel > h3 { margin-top: 24px; margin-bottom: 12px; }
.record-main .panel > p + p { margin-top: 12px; }
.project-record-actions > .pill-row { flex-wrap: wrap; }
.project-score-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 16px; margin-block: 24px; }
.project-score-grid > article { display: grid; gap: 8px; padding: 16px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-control); background: var(--ysa-canvas); }
.project-score-grid strong { font-size: 24px; font-weight: 600; }
.project-score-grid span,
.project-score-grid p { color: var(--ysa-text-3); font-size: 13px; }
.project-stage-help { color: var(--ysa-text-muted); font-size: 12px; margin-top: 8px; }
.project-feedback { padding: 20px; border-top: 1px solid var(--ysa-line); }
.project-survey-card { max-width: 720px; margin-inline: auto; padding: 32px; border-radius: var(--ysa-r-card); background: var(--ysa-sheet); border: 1px solid var(--ysa-line); }
.project-survey-logo { display: block; width: 180px; height: auto; margin-bottom: 32px; }
.project-survey-question { display: grid; gap: 12px; padding: 20px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-control); }
.project-survey-error { padding: 16px; color: var(--ysa-danger-text); background: var(--ysa-danger-soft); border-radius: var(--ysa-r-control); margin-bottom: 20px; }
.import-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, 340px); gap: 24px; align-items: start; }
.import-panel,
.import-history { min-width: 0; }
.import-rules { display: grid; gap: 16px; padding-left: 20px; }
.source-mark,
.source-tag { display: inline-block; padding: 5px 9px; border-radius: var(--ysa-r-pill); background: var(--ysa-info-soft); color: var(--ysa-info); font-size: 12px; }
.preview-summary { display: flex; flex-wrap: wrap; gap: 16px; margin-block: 24px; }
.mapping-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-block: 20px; }
.mapping-chips > span { padding: 8px 12px; border: 1px solid var(--ysa-line); border-radius: var(--ysa-r-control); font-size: 13px; }
.confirm-strip { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; padding: 20px; margin-top: 24px; background: var(--ysa-sage-soft); border-radius: var(--ysa-r-card); }

/* Responsive modules retain the same reading and task order. */
@media (max-width: 1200px) {
  .autopilot-workspace { grid-template-columns: minmax(0, 1fr); }
  .autopilot-guardrails { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .campaign-builder,
  .segment-builder { grid-template-columns: minmax(210px, .6fr) minmax(0, 1.4fr); gap: 24px; }
  .campaign-detail-grid,
  .segment-workspace { grid-template-columns: minmax(0, 1fr); }
  .campaign-detail-side { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .check-ins-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .check-ins-summary,
  .cost-report__summary,
  .revenue-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .challenge-hero { grid-template-columns: minmax(0, 1fr); }
  .challenge-winner__metrics { padding-top: 20px; border-top: 1px solid var(--ysa-sage); }
  .challenge-row { grid-template-columns: 36px minmax(0, 1fr); }
  .challenge-row > dl { grid-column: 2; }
  .coach-start__form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .coach-start__form > button { grid-column: 1 / -1; justify-self: start; }
  .record-layout { grid-template-columns: minmax(0, 1fr) 300px; }
}
@media (max-width: 900px) {
  .campaign-builder,
  .segment-builder,
  .segment-autopilot,
  .autopilot-command,
  .webtracking-grid,
  .leadinfo-intent-grid,
  .workflow-overview-grid,
  .workflow-editor-layout,
  .settings-grid,
  .record-layout,
  .import-layout,
  .plaud-recording-content,
  .coach-hero,
  .coach-report-grid,
  .challenge-scorecard { grid-template-columns: minmax(0, 1fr); }
  .campaign-steps { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
  .campaign-steps li { padding-left: 0; }
  .autopilot-command__pulse { grid-column: auto; }
  .cost-report__intro,
  .cost-report__heading { flex-wrap: wrap; }
  .cost-report__filters { grid-template-columns: minmax(0, 1fr) minmax(140px, 1fr); }
  .cost-report__classification { width: 100%; }
  .cost-report__classification select { flex: 1; }
  .account-settings-grid { grid-template-columns: minmax(0, 1fr); }
  .recording-card { grid-template-columns: 40px minmax(0, 1fr); }
  .recording-card__actions { grid-column: 2; }
  .team-account-edit__fields { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .challenge-team-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workflow-sidebar { position: static; }
  .workflow-palette { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workflow-legend { display: flex; flex-wrap: wrap; }
  .call-cockpit__columns { grid-template-columns: minmax(0, 1fr); }
  .call-cockpit__tips { border-left: 0; border-top: 1px solid var(--ysa-line); }
}
@media (max-width: 600px) {
  .autopilot-command__pulse { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .autopilot-command__pulse > div { min-width: 0; }
  .autopilot-command__pulse dt { overflow-wrap: anywhere; }
  .campaign-intro,
  .campaign-detail-head,
  .segment-detail-head,
  .campaign-list-heading,
  .segment-list-heading,
  .coach-context-bar,
  .coach-report-head { align-items: stretch; flex-direction: column; }
  .campaign-builder,
  .segment-builder,
  .autopilot-command,
  .cost-report__panel,
  .cost-report__groups,
  .plaud-recording-facts,
  .plaud-recording-summary,
  .plaud-transcript,
  .coach-hero,
  .challenge-hero,
  .challenge-scorecard,
  .workflow-canvas { padding: 16px; }
  .campaign-steps { grid-template-columns: minmax(0, 1fr); }
  .campaign-fields,
  .campaign-account-fields,
  .campaign-reminder-fields,
  .segment-filter-grid,
  .segment-primary-choice,
  .campaign-detail-side,
  .autopilot-guardrails,
  .autopilot-scope-grid,
  .autopilot-experiment-grid,
  .autopilot-strategy-grid,
  .autopilot-learning-grid,
  .check-ins-filters,
  .webtracking-sites,
  .recording-linker__form,
  .team-account-edit__fields,
  .coach-start__form,
  .workflow-branches,
  .condition-grid,
  .integration-connect { grid-template-columns: minmax(0, 1fr); }
  .campaign-reminder-fields label:first-child { grid-template-columns: minmax(0, 1fr) auto; }
  .segment-preview-metrics,
  .segment-launch-summary { gap: 12px; }
  .segment-preview-metrics strong,
  .segment-launch-summary strong { font-size: 21px; }
  .segment-preview-metrics span,
  .segment-launch-summary span { font-size: 12px; }
  .autopilot-recommendation { grid-template-columns: minmax(0, 1fr); padding: 16px; gap: 16px; }
  .autopilot-score { display: inline-flex; align-items: baseline; gap: 8px; justify-self: start; padding: 8px 12px; }
  .autopilot-score strong { font-size: 22px; }
  .autopilot-recommendation__actions { grid-column: 1 / -1; }
  .autopilot-mode-block { flex-wrap: wrap; padding: 16px; }
  .autopilot-command__pulse { gap: 12px; }
  .autopilot-command__pulse dd { font-size: 22px; }
  .autopilot-impact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .autopilot-impact > div { padding: 16px; }
  .check-ins-summary { gap: 12px; }
  .check-ins-summary-item { padding: 16px; }
  .check-ins-summary-item strong { font-size: 26px; }
  .check-ins-list-heading { align-items: flex-start; padding: 16px; }
  .check-ins-table,
  .check-ins-table tbody,
  .check-ins-table tr { display: block; }
  .check-ins-table thead { display: none; }
  .check-ins-table tr { padding: 16px; border-bottom: 1px solid var(--ysa-line); }
  .check-ins-table td { display: grid; grid-template-columns: minmax(80px, .45fr) minmax(0, 1fr); gap: 12px; padding: 8px 0; border: 0; }
  .check-ins-table td::before { content: attr(data-label); color: var(--ysa-text-muted); font-size: 12px; font-weight: 600; }
  .check-ins-table td:first-child { display: block; padding-bottom: 16px; }
  .check-ins-table td:first-child::before { display: none; }
  .check-ins-table td > .check-ins-timeline,
  .check-ins-table td > .check-ins-invited-at { grid-column: 2; }
  .check-ins-table td:last-child { display: block; padding-top: 16px; }
  .check-ins-table td:last-child::before { display: none; }
  .check-ins-action .button { width: 100%; }
  .cost-report__summary,
  .revenue-summary { gap: 12px; }
  .cost-report__metric,
  .revenue-summary > article { padding: 16px; }
  .cost-report__year { width: 100%; }
  .cost-report__filters { grid-template-columns: minmax(0, 1fr); }
  .cost-report__group { padding: 16px; }
  .cost-report__group-head { flex-wrap: wrap; gap: 16px; }
  .cost-report__group-total { text-align: left; }
  .cost-report__monthly,
  .cost-report__monthly tbody,
  .cost-report__monthly tr { display: block; }
  .cost-report__monthly thead { display: none; }
  .cost-report__monthly tr { padding-block: 12px; border-bottom: 1px solid var(--ysa-line); }
  .cost-report__monthly tbody th { display: block; padding: 8px 0 12px; border: 0; }
  .cost-report__monthly tbody td { display: flex; justify-content: space-between; gap: 16px; padding: 8px 0; border: 0; font-size: 13px; }
  .cost-report__monthly tbody td::before { content: attr(data-label); text-align: left; color: var(--ysa-text-muted); font-size: 12px; }
  .cost-report__monthly tfoot { display: none; }
  .cost-report__entry { grid-template-columns: minmax(0, 1fr) auto; }
  .cost-report__entry > time { grid-column: 1 / -1; color: var(--ysa-text-muted); }
  .cost-report__classification { flex-wrap: wrap; }
  .cost-report__classification select { flex-basis: 100%; }
  .cost-report__classification .button { width: 100%; }
  .account-card--identity { align-items: flex-start; gap: 16px; }
  .integration-panel__mast { display: grid; grid-template-columns: 48px minmax(0, 1fr); align-items: flex-start; }
  .integration-panel__mast > .pill { grid-column: 2; justify-self: start; }
  .recording-card { grid-template-columns: minmax(0, 1fr); padding: 16px; }
  .recording-card__index { display: none; }
  .recording-card__actions,
  .recording-card__progress,
  .recording-linker { grid-column: auto; }
  .recording-card__actions .button { width: 100%; }
  .plaud-recording-facts dl { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 16px; }
  .team-member__summary { display: grid; grid-template-columns: 48px minmax(0, 1fr); align-items: flex-start; padding: 16px; }
  .team-member__identity { flex-basis: 100%; }
  .team-member__status { grid-column: 1 / -1; }
  .team-member__manage-panel { margin-inline: 16px; }
  .team-member__manage-label { grid-column: 2; justify-self: end; }
  .team-manage-heading { flex-direction: column; gap: 8px; margin-bottom: 0; }
  .settings-nav { gap: 8px; }
  .settings-nav > a { padding-inline: 12px; }
  .inline-settings-form > label:not(.check-field) { flex-basis: 100%; }
  .inline-settings-form > button { width: 100%; }
  .stage-settings-list > article { grid-template-columns: 8px minmax(0, 1fr) auto; }
  .stage-settings-editor { grid-column: 2; }
  .stage-settings-editor[open] { grid-column: 1 / -1; grid-row: 3; }
  .reorder-buttons { grid-column: 3; grid-row: 1; }
  .checkbox-grid { grid-template-columns: minmax(0, 1fr); }
  .challenge-winner { align-items: flex-start; gap: 16px; }
  .challenge-winner__metrics { gap: 12px; }
  .challenge-winner__metrics strong { font-size: 18px; }
  .challenge-row { gap: 16px; }
  .challenge-row > dl { grid-column: 1 / -1; }
  .challenge-scorecard > dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .challenge-team-strip { gap: 12px; }
  .challenge-team-strip > div { padding: 16px; }
  .challenge-team-strip strong { font-size: 23px; }
  .coach-start__form > button { grid-column: auto; justify-self: stretch; }
  .coach-session-card { grid-template-columns: 8px minmax(0, 1fr); padding: 16px; gap: 12px; }
  .coach-session-card__status,
  .coach-session-card__time { grid-column: 2; }
  .coach-action-list > a { grid-template-columns: auto minmax(0, 1fr); }
  .coach-action-list > a > small { grid-column: 2; }
  .call-cockpit__head,
  .call-cockpit__transcript,
  .call-cockpit__tips,
  .call-cockpit__controls { padding: 16px; }
  .call-cockpit__controls > .button { width: 100%; }
  .call-cockpit__section-head { gap: 12px; }
  .workflow-node { padding: 16px; }
  .workflow-palette { grid-template-columns: minmax(0, 1fr); }
  .condition-grid > label:last-child { grid-column: auto; }
  .project-survey-card { padding: 20px; }
}
@media (max-width: 359px) {
  .cost-report__summary,
  .revenue-summary { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: no-preference) {
  .recording-card__spinner { animation: crm-recording-spin 1s linear infinite; }
  @keyframes crm-recording-spin { to { transform: rotate(360deg); } }
}
