.outline-button.compact {
  min-height: 36px;
  padding: 0 11px;
  font-size: 12px;
  white-space: nowrap;
  width: 100%;
}

.outline-button.lead-link {
  text-decoration: none;
}

.outline-button.lead-link.is-disabled {
  color: #8a9caf;
  pointer-events: none;
  background: #eef3f7;
}

.outline-button.danger {
  color: #9f2f2f;
  border-color: #f0caca;
  background: #fff7f7;
}

.ops-row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: center;
  gap: 8px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #f8fbfe;
}

.ops-row div {
  grid-column: 1 / -1;
  min-width: 0;
}

.ops-row span,
.ops-row small {
  display: block;
  min-width: 0;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
}

.ops-row strong {
  display: block;
  margin-top: 4px;
  overflow: hidden;
  color: var(--ink);
  font-size: 13px;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.ops-row small {
  grid-column: 1 / -1;
  color: #516579;
  font-weight: 800;
}

.event-log {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 5px;
  padding: 10px;
  border: 1px dashed #cbddeb;
  border-radius: var(--radius);
  background: #fbfdff;
}

.event-log span,
.event-log small {
  overflow: hidden;
  text-overflow: ellipsis;
}

.event-log span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
}

.event-log small {
  grid-column: 1 / -1;
  color: #516579;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.45;
}

.section-actions {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.task-progress-meter {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: #e6eff7;
}

.task-progress-meter i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #4fa3c7, #22b981);
}

.task-trace {
  display: grid;
  gap: 6px;
  padding: 8px;
  border: 1px solid rgba(46, 91, 130, .12);
  border-radius: 10px;
  background: rgba(255, 255, 255, .72);
}

.task-trace small {
  display: grid;
  grid-template-columns: minmax(86px, max-content) minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  min-width: 0;
}

.task-trace b {
  color: #31445a;
  white-space: nowrap;
}

.task-trace em {
  min-width: 0;
  font-style: normal;
  overflow-wrap: anywhere;
  text-align: right;
}

@media (max-width: 640px) {
  .task-trace small {
    grid-template-columns: minmax(78px, max-content) minmax(0, 1fr);
  }

  .task-trace em {
    text-align: left;
  }
}

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

.package-button {
  grid-column: 1 / -1;
}

.campaign-dialog {
  width: min(520px, calc(100vw - 32px));
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 0;
  color: var(--ink);
  box-shadow: 0 24px 70px rgba(15, 23, 42, .22);
}

.campaign-dialog::backdrop {
  background: rgba(15, 23, 42, .38);
}

.campaign-form {
  display: grid;
  gap: 14px;
  padding: 18px;
}

.campaign-form header,
.campaign-form footer,
.form-grid {
  display: grid;
  gap: 10px;
}

.campaign-form header,
.campaign-form footer {
  grid-template-columns: 1fr auto;
  align-items: center;
}

.campaign-form label,
.campaign-form fieldset {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.campaign-form span,
.campaign-form legend {
  color: #314156;
  font-size: 12px;
  font-weight: 900;
}

.campaign-form input,
.campaign-form select,
.campaign-form textarea {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px 12px;
  color: var(--ink);
  font: inherit;
}

.campaign-form fieldset {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 1px solid var(--line);
  border-radius: 8px;
  margin: 0;
  padding: 10px 12px 12px;
}

.campaign-form legend {
  grid-column: 1 / -1;
}

.campaign-form fieldset label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: #42526a;
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap;
}

.icon-close {
  width: 32px;
  height: 32px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  color: #516579;
}

.publish-queue-list {
  display: grid;
  gap: 8px;
  max-height: 46vh;
  overflow: auto;
}

.publish-calendar {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px;
  background: #f9fbfd;
}

.publish-calendar header,
.publish-calendar-days {
  display: grid;
  gap: 8px;
}

.publish-calendar header {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.publish-calendar header strong,
.publish-calendar header small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

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

.publish-calendar article,
.publish-calendar-windows {
  display: grid;
  gap: 4px;
  min-width: 0;
  border-radius: 6px;
  padding: 8px;
  background: #ffffff;
}

.publish-calendar article strong,
.publish-calendar article span,
.publish-calendar article small,
.publish-calendar-windows span,
.publish-calendar-windows small {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.publish-calendar article strong {
  color: var(--ink);
  font-size: 14px;
}

.publish-calendar article span,
.publish-calendar-windows span {
  color: var(--ink);
  font-size: 12px;
  font-weight: 900;
}

.publish-calendar article small,
.publish-calendar-windows small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.publish-calendar-windows small {
  white-space: normal;
}

.settings-grid {
  display: grid;
  gap: 10px;
}

.settings-field {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.settings-field span,
.settings-validation,
.settings-block header small,
.settings-quota-list small,
.settings-security-note {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.settings-validation {
  color: #9f2f2f;
  line-height: 1.45;
}

.settings-field input {
  min-width: 0;
  height: 40px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 0 10px;
  background: #fff;
  color: var(--ink);
  font-size: 12px;
  font-weight: 800;
}

.settings-block {
  display: grid;
  gap: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px;
  background: #f9fbfd;
}

.settings-block header,
.settings-quota-list article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

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

.settings-quota-list article {
  border-radius: 6px;
  padding: 8px;
  background: #fff;
}

.settings-quota-list strong,
.settings-quota-list small,
.settings-quota-list span {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.settings-quota-list strong,
.settings-quota-list span {
  color: var(--ink);
  font-size: 12px;
  font-weight: 900;
}

.settings-security-note {
  margin: 0;
  line-height: 1.6;
}

.publish-queue-list article {
  display: grid;
  gap: 8px;
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px;
  background: #fbfdff;
}

.publish-queue-list header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

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

.publish-queue-list strong {
  color: var(--ink);
  font-size: 13px;
}

.publish-queue-list small {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.publish-queue-timing,
.publish-queue-meta {
  border-radius: 6px;
  padding: 6px 8px;
  background: #f5f8fb;
  white-space: normal;
}

.publish-queue-timing.is-soon,
.publish-queue-meta.is-warning {
  background: #fff8e7;
  color: #8a5a00;
}

.publish-queue-timing.is-overdue,
.publish-queue-meta.is-danger {
  background: #fff1f1;
  color: #a12d2d;
}

.publish-queue-status {
  border-radius: 999px;
  padding: 4px 8px;
  background: #eef6ff;
  color: #245281;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.publish-queue-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

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

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

.report-filters {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, .9fr) auto;
  gap: 8px;
  align-items: end;
}

.report-filters label {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.report-filters span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
}

.report-filters select {
  min-width: 0;
  height: 36px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 0 9px;
  background: #fff;
  color: var(--ink);
  font-size: 12px;
  font-weight: 800;
}

.report-kpis {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 0 18px;
}

.report-kpis div {
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #f8fbfe;
}

.lead-stats div {
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #f8fbfe;
}

.lead-stats span {
  display: block;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
}

.report-kpis span {
  display: block;
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
}

.lead-stats strong {
  display: block;
  margin-top: 4px;
  overflow: hidden;
  color: var(--ink);
  font-size: 13px;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.report-kpis strong {
  display: block;
  margin-top: 4px;
  overflow: hidden;
  color: var(--ink);
  font-size: 15px;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.report-block {
  display: grid;
  gap: 8px;
  padding: 14px 18px 0;
}

.report-block > span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
}

.report-block small {
  color: #516579;
  font-size: 11px;
  font-weight: 800;
}

.report-line,
.report-lead {
  display: grid;
  align-items: center;
  min-width: 0;
  min-height: 38px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #fbfdff;
}

.report-line {
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 8px;
}

.report-line span,
.report-line em,
.report-lead small,
.report-lead em {
  overflow: hidden;
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.report-line strong {
  color: var(--ink);
  font-size: 13px;
}

.report-lead {
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 10px;
}

.report-lead div {
  min-width: 0;
}

.report-lead strong {
  display: block;
  overflow: hidden;
  color: var(--ink);
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.report-lead small {
  display: block;
  margin-top: 3px;
}

.report-lead-actions {
  display: inline-grid;
  grid-template-columns: repeat(2, auto);
  gap: 6px;
}

.report-phone-button {
  min-width: 42px;
  height: 26px;
  padding: 0 8px;
  border: 1px solid var(--line);
  border-radius: 6px;
  background: #fff;
  color: var(--ink);
  font-size: 11px;
  font-weight: 900;
}

.report-phone-button:disabled {
  color: var(--muted);
}

.lead-detail-body {
  display: grid;
  gap: 10px;
}

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

.lead-detail-grid div {
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 9px;
  background: #fbfdff;
}

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

.lead-detail-grid span,
.lead-detail-note {
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
}

.lead-detail-grid strong {
  margin-top: 4px;
  color: var(--ink);
  font-size: 12px;
  font-weight: 900;
}

.lead-detail-note {
  margin: 0;
  line-height: 1.6;
}

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

  .publish-actions,
  .report-filters,
  .lead-stats,
  .lead-actions,
  .report-kpis {
    grid-template-columns: 1fr;
  }

  .lead-detail-grid {
    grid-template-columns: 1fr;
  }

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

  .report-lead-actions {
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
