
.campaign-step-card[data-v-042394ba] {
  /* Sem borda/fundo proprio: funde com a area de conteudo (branca) e deixa de
     parecer um card flutuante. */
  background-color: transparent;
  padding: 22px 0 24px;
  margin-bottom: 16px;
  width: 100%;
  overflow: visible;
}
.campaign-step-card__header[data-v-042394ba] {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 16px;
}
.campaign-step-card__badge[data-v-042394ba] {
  flex: 0 0 auto;
  width: 36px;
  height: 36px;
  min-width: 36px;
  min-height: 36px;
  border-radius: 999px;
  background-color: hsl(var(--primary) / 0.1);
  border: 1px solid hsl(var(--primary) / 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
}
.campaign-step-card__badge-index[data-v-042394ba] {
  font-size: 14px;
  font-weight: 600;
  color: hsl(var(--primary));
}
.campaign-step-card__badge-icon[data-v-042394ba] {
  color: hsl(var(--primary));
  display: block;
  flex-shrink: 0;
}
.campaign-step-card__badge-icon[data-v-042394ba] svg {
  display: block;
  width: 18px;
  height: 18px;
}
.campaign-step-card__text[data-v-042394ba] {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.campaign-step-card__title[data-v-042394ba] {
  margin: 0;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.3;
  color: hsl(var(--foreground)); /* slate-900 */
}
.campaign-step-card__description[data-v-042394ba] {
  margin: 0;
  font-size: 0.875rem;
  line-height: 1.4;
  color: hsl(var(--muted-foreground)); /* slate-500 */
}
.campaign-step-card__body[data-v-042394ba] {
  margin-top: 4px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

/* Responsivo */
@media (max-width: 768px) {
.campaign-step-card[data-v-042394ba] {
    padding: 14px 14px 16px;
}
.campaign-step-card__header[data-v-042394ba] {
    gap: 10px;
}
}

.step-config[data-v-b08bdbd1] {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.step-config__form[data-v-b08bdbd1] {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 24px;
  /* border: 1px solid hsl(var(--border)); */
  border-radius: 14px;
  background: hsl(var(--card));
}
.step-config__row[data-v-b08bdbd1] {
  display: flex;
  gap: 16px;
  align-items: flex-start;
}
.step-config__field[data-v-b08bdbd1] {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.step-config__field--grow[data-v-b08bdbd1] {
  flex: 1.2 1 0;
}
.step-config__field--full[data-v-b08bdbd1] {
  flex: 1 1 100%;
}
.step-config__label[data-v-b08bdbd1] {
  display: block;
  margin-bottom: 6px;
  font-size: 0.85rem;
  font-weight: 500;
  color: hsl(var(--muted-foreground));
}

/* ===== Cards de tipo de canal ===== */
.step-config__channel-types[data-v-b08bdbd1] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.step-config__type-cards[data-v-b08bdbd1] {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.step-config__type-card[data-v-b08bdbd1] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 20px 12px;
  border: 2px solid hsl(var(--border));
  border-radius: 14px;
  background: hsl(var(--card));
  cursor: pointer;
  transition: border-color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease, transform 0.1s ease;
}
.step-config__type-card[data-v-b08bdbd1]:hover {
  border-color: hsl(var(--primary) / 0.4);
  transform: translateY(-1px);
}
.step-config__type-card--active[data-v-b08bdbd1] {
  border-color: hsl(var(--primary));
  background: hsl(var(--primary) / 0.05);
  box-shadow: 0 0 0 1px hsl(var(--primary) / 0.35);
}
.step-config__type-icon[data-v-b08bdbd1] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 999px;
  overflow: hidden;
}
.step-config__type-icon-img[data-v-b08bdbd1] {
  width: 26px;
  height: 26px;
  -o-object-fit: contain;
     object-fit: contain;
}

/* Imagem larga com muito padding branco (ex.: sms_image.png ~1.7:1): dá zoom
   pra o desenho preencher o círculo, e o overflow:hidden do círculo recorta as
   sobras laterais. */
.step-config__type-icon-img--cover[data-v-b08bdbd1] {
  width: 30px;
  height: 30px;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(1.55);
}

/* ===== Chip do tipo escolhido (substitui os cards após seleção) ===== */
.step-config__type-chip[data-v-b08bdbd1] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px 14px;
  border: 1px solid hsl(var(--border));
  border-radius: 12px;
  background: hsl(var(--muted) / 0.4);
}
.step-config__type-chip-info[data-v-b08bdbd1] {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.step-config__type-chip-icon[data-v-b08bdbd1] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  flex-shrink: 0;
}
.step-config__type-chip-img[data-v-b08bdbd1] {
  width: 22px;
  height: 22px;
  -o-object-fit: contain;
     object-fit: contain;
}
.step-config__type-chip-text[data-v-b08bdbd1] {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.step-config__type-chip-label[data-v-b08bdbd1] {
  font-size: 0.72rem;
  font-weight: 500;
  color: hsl(var(--muted-foreground));
}
.step-config__type-chip-name[data-v-b08bdbd1] {
  font-size: 0.95rem;
  font-weight: 600;
  color: hsl(var(--foreground));
}
.step-config__type-chip-change[data-v-b08bdbd1] {
  flex-shrink: 0;
  padding: 6px 14px;
  border: 1px solid hsl(var(--border));
  border-radius: 8px;
  background: hsl(var(--card));
  font-size: 0.82rem;
  font-weight: 600;
  color: hsl(var(--primary));
  cursor: pointer;
  transition: border-color 0.15s ease, background-color 0.15s ease;
}
.step-config__type-chip-change[data-v-b08bdbd1]:hover {
  border-color: hsl(var(--primary) / 0.5);
  background: hsl(var(--primary) / 0.06);
}
.step-config__type-name[data-v-b08bdbd1] {
  font-size: 0.9rem;
  font-weight: 600;
  color: hsl(var(--foreground));
}

/* Warming banner */
.step-config__warming[data-v-b08bdbd1] {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px 20px;
  border-radius: 12px;
  background: hsl(var(--warning) / 0.12);
  border: 1px solid hsl(var(--warning) / 0.35);
}
.step-config__warming-icon[data-v-b08bdbd1] {
  color: hsl(var(--warning));
  flex-shrink: 0;
  margin-top: 2px;
}
.step-config__warming-content[data-v-b08bdbd1] {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.step-config__warming-title[data-v-b08bdbd1] {
  font-size: 0.875rem;
  font-weight: 600;
  color: hsl(var(--foreground));
}
.step-config__warming-text[data-v-b08bdbd1] {
  margin: 0;
  font-size: 0.8rem;
  color: hsl(var(--muted-foreground));
  line-height: 1.5;
}

/* Automation selector */
.step-config__automation[data-v-b08bdbd1] {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 16px 20px;
  border: 1px solid hsl(var(--border));
  border-radius: 12px;
  background: hsl(var(--muted));
}
.step-config__automation-tabs[data-v-b08bdbd1] {
  display: flex;
  gap: 0;
  border: 1px solid hsl(var(--border));
  border-radius: 10px;
  overflow: hidden;
  background: hsl(var(--card));
}
.step-config__automation-tab[data-v-b08bdbd1] {
  flex: 1;
  padding: 10px 16px;
  border: none;
  background: hsl(var(--card));
  font-size: 0.8rem;
  font-weight: 600;
  color: hsl(var(--muted-foreground));
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
  text-align: center;
}
.step-config__automation-tab[data-v-b08bdbd1]:not(:last-child) {
  border-right: 1px solid hsl(var(--border));
}
.step-config__automation-tab--active[data-v-b08bdbd1] {
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
}
.step-config__automation-tab[data-v-b08bdbd1]:hover:not(.step-config__automation-tab--active) {
  background: hsl(var(--muted));
}
.step-config__automation-body[data-v-b08bdbd1] {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.step-config__automation-hint[data-v-b08bdbd1] {
  font-size: 0.78rem;
  color: hsl(var(--muted-foreground));
  font-style: italic;
}

/* Normalize input/combo heights */
.step-config[data-v-b08bdbd1] .input-default-ui-container--md,
.step-config[data-v-b08bdbd1] .combo-trigger {
  min-height: 42px;
  height: 42px;
}
.step-config[data-v-b08bdbd1] .combo-trigger {
  display: flex;
  align-items: center;
}
.step-config[data-v-b08bdbd1] .input-default-ui-wrapper {
  gap: 0;
}
.step-config[data-v-b08bdbd1] .input-default-ui-label {
  margin-bottom: 6px;
}

/* Create bot form */
.create-bot-form[data-v-b08bdbd1] {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.create-bot-form__error[data-v-b08bdbd1] {
  margin: 0;
  font-size: 0.8rem;
  color: hsl(var(--destructive));
}
@media (max-width: 768px) {
.step-config__row[data-v-b08bdbd1] {
    flex-direction: column;
}
.step-config__form[data-v-b08bdbd1] {
    padding: 16px;
}
.step-config__type-card[data-v-b08bdbd1] {
    padding: 16px 8px;
}
.step-config__type-icon[data-v-b08bdbd1] {
    width: 40px;
    height: 40px;
}
}

/* ── Qualidade do canal + limite (quality rating / tier) ── */
.step-config__meta[data-v-b08bdbd1] {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 8px;
  font-size: 0.8125rem;
}
.step-config__quality[data-v-b08bdbd1] {
  display: inline-flex;
  align-items: center;
}
.step-config__quality-label[data-v-b08bdbd1] {
  font-weight: 600;
}
.step-config__quality--green .step-config__quality-label[data-v-b08bdbd1] { color: hsl(var(--success));
}
.step-config__quality--yellow .step-config__quality-label[data-v-b08bdbd1] { color: hsl(var(--warning));
}
.step-config__quality--red .step-config__quality-label[data-v-b08bdbd1] { color: hsl(var(--destructive));
}

/* Bolinha divisora entre a qualidade e o limite (cor neutra). */
.step-config__meta-sep[data-v-b08bdbd1] {
  width: 0.3125rem;
  height: 0.3125rem;
  border-radius: 9999px;
  flex-shrink: 0;
  align-self: center;
  background: hsl(var(--muted-foreground) / 0.5);
}

/* Limite de mensagens (messaging_limit_tier). */
.step-config__meta-item[data-v-b08bdbd1] {
  display: flex;
  align-items: baseline;
  gap: 6px;
}
.step-config__meta-key[data-v-b08bdbd1] {
  color: hsl(var(--muted-foreground));
}
.step-config__meta-val[data-v-b08bdbd1] {
  font-weight: 600;
  color: hsl(var(--foreground));
  font-variant-numeric: tabular-nums;
}

.rcs-template-selector[data-v-3506d544] {
  margin-bottom: 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.rcs-field-label[data-v-3506d544] {
  display: block;
  font-weight: 600;
  font-size: 0.85rem;
  color: hsl(var(--foreground));
}
.rcs-template-loading[data-v-3506d544] {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 16px 14px;
  border-radius: 10px;
  background-color: hsl(var(--muted));
  color: hsl(var(--muted-foreground));
  font-size: 0.9rem;
}
.rcs-template-empty[data-v-3506d544] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 40px 20px;
  border-radius: 12px;
  border: 1.5px dashed hsl(var(--border));
  background-color: hsl(var(--muted) / 0.4);
  text-align: center;
}
.rcs-template-empty-icon[data-v-3506d544] {
  color: hsl(var(--muted-foreground));
  margin-bottom: 4px;
}
.rcs-template-empty-title[data-v-3506d544] {
  margin: 0;
  font-size: 0.9rem;
  font-weight: 500;
  color: hsl(var(--muted-foreground));
}
.rcs-template-empty-hint[data-v-3506d544] {
  margin: 0;
  font-size: 0.8rem;
  color: hsl(var(--muted-foreground) / 0.7);
}

/* Lista de cards separados (mais respiravel que a lista fundida). */
.rcs-template-list[data-v-3506d544] {
  display: flex;
  flex-direction: column;
  gap: 8px;
  max-height: 320px;
  overflow-y: auto;
  padding: 2px;
}
.rcs-template-item[data-v-3506d544] {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  padding: 12px 14px;
  text-align: left;
  cursor: pointer;
  border: 1px solid hsl(var(--border));
  border-radius: 12px;
  background-color: hsl(var(--card));
  transition: border-color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease;
}
.rcs-template-item[data-v-3506d544]:hover {
  border-color: hsl(var(--primary) / 0.5);
  background-color: hsl(var(--primary) / 0.04);
}
.rcs-template-item--selected[data-v-3506d544] {
  border-color: hsl(var(--primary));
  background-color: hsl(var(--primary) / 0.06);
  box-shadow: 0 0 0 1px hsl(var(--primary) / 0.4);
}
.rcs-template-item-icon[data-v-3506d544] {
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  background: hsl(var(--primary) / 0.1);
  color: hsl(var(--primary));
  flex-shrink: 0;
  transition: background-color 0.15s ease, color 0.15s ease;
}
.rcs-template-item--selected .rcs-template-item-icon[data-v-3506d544] {
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
}
.rcs-template-item-info[data-v-3506d544] {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.rcs-template-item-name[data-v-3506d544] {
  font-weight: 600;
  font-size: 0.9rem;
  color: hsl(var(--foreground));
  line-height: 1.25;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rcs-template-item-desc[data-v-3506d544] {
  font-size: 0.78rem;
  color: hsl(var(--muted-foreground));
  line-height: 1.35;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rcs-template-item-check[data-v-3506d544] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  color: hsl(var(--primary-foreground));
  background: hsl(var(--primary));
  flex-shrink: 0;
  opacity: 0;
  transform: scale(0.6);
  transition: opacity 0.15s ease, transform 0.15s ease;
}
.rcs-template-item-check.is-visible[data-v-3506d544] {
  opacity: 1;
  transform: scale(1);
}

/* Scrollbar discreta */
.rcs-template-list[data-v-3506d544]::-webkit-scrollbar {
  width: 6px;
}
.rcs-template-list[data-v-3506d544]::-webkit-scrollbar-thumb {
  background: hsl(var(--border));
  border-radius: 999px;
}

.rcs-rich-card[data-v-643546e0] {
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding-top: 8px;
}
.rcs-field-group[data-v-643546e0] {
  display: flex;
  flex-direction: column;
  gap: 7px;
}
.rcs-field-label[data-v-643546e0] {
  display: block;
  font-weight: 700;
  font-size: 0.78rem;
  color: hsl(var(--foreground));
}

/* ===== Bloco de mídia (uploader + tipo) ===== */
.rcs-media-block[data-v-643546e0] {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* ===== Inputs genéricos ===== */
.rcs-input[data-v-643546e0] {
  width: 100%;
  padding: 9px 12px;
  border-radius: 8px;
  border: 1px solid hsl(var(--border));
  background-color: hsl(var(--card));
  font-size: 0.85rem;
  color: hsl(var(--foreground));
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}
.rcs-input[data-v-643546e0]::-moz-placeholder {
  color: hsl(var(--muted-foreground));
}
.rcs-input[data-v-643546e0]::placeholder {
  color: hsl(var(--muted-foreground));
}
.rcs-input[data-v-643546e0]:focus {
  outline: none;
  border-color: hsl(var(--primary));
  box-shadow: 0 0 0 3px hsl(var(--primary) / 0.12);
}
.rcs-textarea[data-v-643546e0] {
  width: 100%;
  padding: 9px 12px;
  border-radius: 8px;
  border: 1px solid hsl(var(--border));
  font-size: 0.85rem;
  resize: vertical;
  font-family: inherit;
  color: hsl(var(--foreground));
  background-color: hsl(var(--card));
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}
.rcs-textarea[data-v-643546e0]:focus {
  outline: none;
  border-color: hsl(var(--primary));
  box-shadow: 0 0 0 3px hsl(var(--primary) / 0.12);
}

/* ===== Segmented (altura) ===== */
.rcs-segmented[data-v-643546e0] {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px;
  border-radius: 10px;
  background-color: hsl(var(--muted) / 0.6);
  width: -moz-fit-content;
  width: fit-content;
}
.rcs-segment[data-v-643546e0] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 14px;
  border-radius: 7px;
  font-size: 0.8rem;
  font-weight: 500;
  color: hsl(var(--muted-foreground));
  cursor: pointer;
  transition: background-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}
.rcs-segment.is-active[data-v-643546e0] {
  background-color: hsl(var(--card));
  color: hsl(var(--primary));
  box-shadow: 0 1px 2px hsl(0 0% 0% / 0.06);
}
.rcs-segment input[type='radio'][data-v-643546e0] {
  display: none;
}

/* ===== Radios de tipo de mídia ===== */
.rcs-media-type-row[data-v-643546e0] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 10px;
}
.rcs-radio-label[data-v-643546e0] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 12px;
  border-radius: 999px;
  font-size: 0.78rem;
  font-weight: 500;
  color: hsl(var(--muted-foreground));
  background-color: hsl(var(--card));
  border: 1px solid hsl(var(--border));
  cursor: pointer;
  transition: border-color 0.15s ease, color 0.15s ease, background-color 0.15s ease;
}
.rcs-radio-label.is-active[data-v-643546e0] {
  border-color: hsl(var(--primary));
  color: hsl(var(--primary));
  background-color: hsl(var(--primary) / 0.08);
}
.rcs-radio-label input[type='radio'][data-v-643546e0] {
  accent-color: hsl(var(--primary));
}

/* ===== Card de Botões (Ações) ===== */
.rcs-actions-card[data-v-643546e0] {
  padding: 16px;
  border: 1px solid hsl(var(--border));
  border-radius: 12px;
  background-color: hsl(var(--muted) / 0.4);
}
.rcs-actions-title[data-v-643546e0] {
  font-weight: 700;
  font-size: 0.78rem;
  color: hsl(var(--foreground));
  margin-bottom: 12px;
}
.rcs-action-row[data-v-643546e0] {
  display: flex;
  gap: 8px;
  margin-bottom: 8px;
  align-items: center;
}

/* ComboBox de tipo — largura fixa, alinhado à altura sm dos inputs. */
.rcs-action-combo[data-v-643546e0] {
  flex: 0 0 150px;
  min-width: 150px;
}
.rcs-action-combo[data-v-643546e0] .combo-trigger {
  height: 34px;
  min-height: 34px;
  border-radius: 8px;
  padding: 0 12px;
}

/* InputDefault ocupa o resto da linha. */
.rcs-action-text[data-v-643546e0] {
  flex: 1;
}
.rcs-action-extra[data-v-643546e0] {
  flex: 1;
}
.rcs-action-remove[data-v-643546e0] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  border: 1px solid hsl(var(--border));
  background: hsl(var(--card));
  color: hsl(var(--muted-foreground));
  cursor: pointer;
  flex-shrink: 0;
  transition: color 0.15s ease, border-color 0.15s ease, background-color 0.15s ease;
}
.rcs-action-remove[data-v-643546e0]:hover {
  color: hsl(var(--destructive));
  border-color: hsl(var(--destructive) / 0.5);
  background: hsl(var(--destructive) / 0.08);
}
.rcs-action-add[data-v-643546e0] {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin-top: 4px;
  padding: 4px 2px;
  background: none;
  border: none;
  color: hsl(var(--primary));
  cursor: pointer;
  font-size: 0.82rem;
  font-weight: 600;
  transition: opacity 0.15s ease;
}
.rcs-action-add[data-v-643546e0]:hover {
  opacity: 0.75;
}
@media (max-width: 900px) {
.rcs-action-row[data-v-643546e0] {
    flex-direction: column;
    align-items: stretch;
}
.rcs-action-combo[data-v-643546e0] {
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
}
}

.rcs-carousel[data-v-794cbf88] {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-top: 8px;
}
.rcs-field-group[data-v-794cbf88] {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 4px;
}
.rcs-field-label[data-v-794cbf88] {
  display: block;
  font-weight: 600;
  font-size: 0.85rem;
  color: hsl(var(--foreground));
}
.rcs-field-label-sm[data-v-794cbf88] {
  display: block;
  font-weight: 500;
  font-size: 0.8rem;
  color: hsl(var(--muted-foreground)); /* slate-500 */
}
.rcs-input[data-v-794cbf88] {
  flex: 1;
  width: 100%;
  padding: 8px 12px;
  border-radius: 8px;
  border: 1px solid hsl(var(--border)); /* slate-200 */
  background-color: hsl(var(--card));
  font-size: 0.85rem;
  color: hsl(var(--foreground));
  transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}
.rcs-input[data-v-794cbf88]::-moz-placeholder {
  color: hsl(var(--muted-foreground));
}
.rcs-input[data-v-794cbf88]::placeholder {
  color: hsl(var(--muted-foreground));
}
.rcs-input[data-v-794cbf88]:focus {
  outline: none;
  border-color: #3b82f6; /* azul primário */
  box-shadow:
    0 0 0 1px rgba(59, 130, 246, 0.4),
    0 0 0 4px rgba(59, 130, 246, 0.08);
  background-color: hsl(var(--card));
}
.rcs-media-type-row[data-v-794cbf88] {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 4px;
  border-radius: 999px;
  background-color: hsl(var(--muted));
}
.rcs-radio-label[data-v-794cbf88] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 0.8rem;
  color: hsl(var(--muted-foreground));
  cursor: pointer;
}
.rcs-radio-label input[type='radio'][data-v-794cbf88] {
  accent-color: #2563eb;
}
.rcs-cards-list[data-v-794cbf88] {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 8px;
}
.rcs-card-item[data-v-794cbf88] {
  border-radius: 12px;
  padding: 14px 14px 12px;
  background: hsl(var(--card));
  border: 1px solid hsl(var(--border));
  box-shadow:
    0 1px 2px rgba(15, 23, 42, 0.06),
    0 0 0 1px rgba(148, 163, 184, 0.12);
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.12s ease;
}
.rcs-card-item[data-v-794cbf88]:hover {
  border-color: #2563eb;
  box-shadow:
    0 4px 14px rgba(15, 23, 42, 0.15),
    0 0 0 1px rgba(37, 99, 235, 0.18);
  transform: translateY(-1px);
}
.rcs-card-header[data-v-794cbf88] {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}
.rcs-card-number[data-v-794cbf88] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 3px 9px;
  border-radius: 999px;
  background: #eff6ff;
  color: #1d4ed8;
  font-weight: 600;
  font-size: 0.75rem;
}
.rcs-suggestion-row[data-v-794cbf88] {
  display: flex;
  gap: 6px;
  margin-bottom: 6px;
  align-items: center;
}

/* ComboBox de tipo — largura fixa, alinhado à altura sm dos inputs. */
.rcs-suggestion-combo[data-v-794cbf88] {
  flex: 0 0 130px;
  min-width: 130px;
}
.rcs-suggestion-combo[data-v-794cbf88] .combo-trigger {
  height: 34px;
  min-height: 34px;
  border-radius: 8px;
  padding: 0 12px;
}

/* InputDefault de texto ocupa o resto da linha. */
.rcs-suggestion-text[data-v-794cbf88] {
  flex: 1;
}
.rcs-remove-btn-small[data-v-794cbf88] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: none;
  border-radius: 999px;
  background: #fef2f2;
  color: #b91c1c;
  cursor: pointer;
  flex-shrink: 0;
  transition: background-color 0.15s ease, transform 0.08s ease, box-shadow 0.15s ease;
}
.rcs-remove-btn-small[data-v-794cbf88]:hover {
  background: #fee2e2;
  box-shadow: 0 2px 6px rgba(248, 113, 113, 0.35);
  transform: translateY(-0.5px);
}
.rcs-add-btn-small[data-v-794cbf88] {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px 12px;
  border-radius: 999px;
  border: 1px dashed hsl(var(--border));
  background: hsl(var(--muted));
  color: hsl(var(--muted-foreground));
  cursor: pointer;
  font-size: 0.78rem;
  font-weight: 500;
  transition: border-color 0.15s ease, color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease;
}
.rcs-add-btn-small[data-v-794cbf88]:hover {
  border-color: #22c55e;
  color: #16a34a;
  background: #ecfdf3;
  box-shadow: 0 1px 3px rgba(34, 197, 94, 0.2);
}
.rcs-add-btn[data-v-794cbf88] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  padding: 10px 16px;
  border-radius: 999px;
  border: 1px dashed hsl(var(--border));
  background: hsl(var(--muted));
  color: hsl(var(--muted-foreground));
  cursor: pointer;
  font-size: 0.85rem;
  font-weight: 500;
  transition: border-color 0.18s ease, color 0.18s ease, background-color 0.18s ease, box-shadow 0.18s ease, transform 0.1s ease;
}
.rcs-add-btn[data-v-794cbf88]:hover {
  border-color: #2563eb;
  color: #1d4ed8;
  background: #eff6ff;
  box-shadow:
    0 2px 8px rgba(37, 99, 235, 0.22),
    0 0 0 1px rgba(191, 219, 254, 0.9);
  transform: translateY(-0.5px);
}
@media (max-width: 900px) {
.rcs-suggestion-row[data-v-794cbf88] {
    flex-direction: column;
    align-items: stretch;
}
.rcs-suggestion-combo[data-v-794cbf88] {
    flex: 1 1 auto;
    min-width: 0;
    width: 100%;
}
}

/* ===== TRANSITION ===== */
.rcs-fade-enter-active[data-v-2fadf515],
.rcs-fade-leave-active[data-v-2fadf515] {
  transition: opacity 0.2s ease, transform 0.2s ease;
}
.rcs-fade-enter[data-v-2fadf515],
.rcs-fade-leave-to[data-v-2fadf515] {
  opacity: 0;
  transform: translateY(8px);
}

/* ===== FORM ROOT =====
   O header/container vem do CampaignStepCard pai — aqui e so o corpo. */
.rcs-form[data-v-2fadf515] {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* ===== TYPE SELECTOR ===== */
.rcs-type-label[data-v-2fadf515] {
  display: block;
  font-size: 0.8125rem;
  font-weight: 600;
  color: hsl(var(--foreground));
  margin-bottom: 10px;
}
.rcs-type-cards[data-v-2fadf515] {
  display: grid;
  /* 2x2: Texto/Template em cima, Rich Card/Carrossel embaixo. */
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
/* Agente basic so tem 2 tipos (Texto/Template) → mesma grade 2 colunas (1 linha). */
.rcs-type-cards--basic[data-v-2fadf515] {
  grid-template-columns: repeat(2, 1fr);
}
.rcs-type-card[data-v-2fadf515] {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border: 1.5px solid hsl(var(--border));
  border-radius: 12px;
  background: hsl(var(--card));
  cursor: pointer;
  text-align: left;
  transition: border-color 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
}
.rcs-type-card[data-v-2fadf515]:hover {
  border-color: hsl(var(--primary) / 0.4);
  background: hsl(var(--primary) / 0.04);
}
.rcs-type-card--active[data-v-2fadf515] {
  border-color: hsl(var(--primary));
  background: hsl(var(--primary) / 0.06);
  box-shadow: 0 0 0 3px hsl(var(--primary) / 0.12);
}
.rcs-type-card-icon[data-v-2fadf515] {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 9px;
  background: hsl(var(--muted));
  color: hsl(var(--muted-foreground));
  transition: background-color 0.2s ease, color 0.2s ease;
}
.rcs-type-card--active .rcs-type-card-icon[data-v-2fadf515] {
  background: hsl(var(--primary) / 0.12);
  color: hsl(var(--primary));
}
.rcs-type-card-info[data-v-2fadf515] {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.rcs-type-card-name[data-v-2fadf515] {
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  color: hsl(var(--foreground));
}
.rcs-type-card--active .rcs-type-card-name[data-v-2fadf515] {
  color: hsl(var(--primary));
}
.rcs-type-card-desc[data-v-2fadf515] {
  font-size: 11px;
  line-height: 1.3;
  color: hsl(var(--muted-foreground));
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ===== CONTENT SECTION ===== */
.rcs-content-section[data-v-2fadf515] {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.rcs-field-group[data-v-2fadf515] {
  display: flex;
  flex-direction: column;
}
.rcs-field-label[data-v-2fadf515] {
  display: block;
  font-size: 0.8125rem;
  font-weight: 600;
  color: hsl(var(--foreground));
  margin-bottom: 6px;
}
.rcs-char-limit[data-v-2fadf515] {
  font-weight: 400;
  font-size: 0.75rem;
  color: hsl(var(--muted-foreground));
}
.rcs-textarea[data-v-2fadf515] {
  width: 100%;
  padding: 10px 14px;
  border: 1px solid hsl(var(--border));
  border-radius: 10px;
  font-size: 0.875rem;
  font-family: inherit;
  color: hsl(var(--foreground));
  background: hsl(var(--card));
  resize: vertical;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}
.rcs-textarea[data-v-2fadf515]::-moz-placeholder {
  color: hsl(var(--muted-foreground));
}
.rcs-textarea[data-v-2fadf515]::placeholder {
  color: hsl(var(--muted-foreground));
}
.rcs-textarea[data-v-2fadf515]:focus {
  outline: none;
  border-color: hsl(var(--primary));
  box-shadow: 0 0 0 3px hsl(var(--primary) / 0.12);
}

/* ===== CHARACTER PROGRESS ===== */
.rcs-char-progress[data-v-2fadf515] {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 8px;
}
.rcs-char-progress-bar[data-v-2fadf515] {
  flex: 1;
  height: 4px;
  border-radius: 9999px;
  background: hsl(var(--muted));
  overflow: hidden;
}
.rcs-char-progress-fill[data-v-2fadf515] {
  height: 100%;
  border-radius: 9999px;
  background: hsl(var(--success));
  transition: width 0.15s ease, background 0.2s ease;
}
.rcs-char-progress-fill--warning[data-v-2fadf515] {
  background: hsl(var(--warning));
}
.rcs-char-progress-fill--danger[data-v-2fadf515] {
  background: hsl(var(--destructive));
}
.rcs-char-count[data-v-2fadf515] {
  min-width: 48px;
  font-size: 0.75rem;
  font-variant-numeric: tabular-nums;
  text-align: right;
  color: hsl(var(--muted-foreground));
}
.rcs-char-count--warning[data-v-2fadf515] {
  color: hsl(var(--warning));
}
.rcs-char-count--danger[data-v-2fadf515] {
  color: hsl(var(--destructive));
  font-weight: 600;
}

/* ===== LIVE CHIPS PREVIEW ===== */
.rcs-chips-preview[data-v-2fadf515] {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 12px;
  padding: 10px;
  border: 1px dashed hsl(var(--border));
  border-radius: 10px;
  background: hsl(var(--muted) / 0.5);
}
.rcs-chip-live[data-v-2fadf515] {
  padding: 5px 12px;
  border: 1.5px solid hsl(var(--success));
  border-radius: 9999px;
  font-size: 12px;
  font-weight: 500;
  color: hsl(var(--success));
  background: hsl(var(--success) / 0.1);
  animation: rcs-chip-pop-2fadf515 0.2s ease;
}
@keyframes rcs-chip-pop-2fadf515 {
0% { transform: scale(0.85); opacity: 0;
}
100% { transform: scale(1); opacity: 1;
}
}

/* ===== SUGGESTIONS ===== */
.rcs-suggestions-section[data-v-2fadf515] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.rcs-input[data-v-2fadf515] {
  flex: 1;
  padding: 8px 12px;
  border: 1px solid hsl(var(--border));
  border-radius: 8px;
  font-size: 0.85rem;
  color: hsl(var(--foreground));
  background: hsl(var(--card));
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}
.rcs-input[data-v-2fadf515]:focus {
  outline: none;
  border-color: hsl(var(--primary));
  box-shadow: 0 0 0 3px hsl(var(--primary) / 0.12);
}
.rcs-suggestion-row[data-v-2fadf515] {
  display: flex;
  align-items: center;
  gap: 8px;
}
.rcs-remove-btn[data-v-2fadf515] {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border: 1px solid hsl(var(--destructive) / 0.4);
  border-radius: 8px;
  background: hsl(var(--destructive) / 0.06);
  color: hsl(var(--destructive));
  cursor: pointer;
  transition: background-color 0.15s ease, border-color 0.15s ease;
}
.rcs-remove-btn[data-v-2fadf515]:hover {
  background: hsl(var(--destructive) / 0.12);
}
.rcs-add-btn[data-v-2fadf515] {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  border: 1px dashed hsl(var(--border));
  border-radius: 9999px;
  background: hsl(var(--muted) / 0.5);
  color: hsl(var(--muted-foreground));
  font-size: 0.85rem;
  font-weight: 500;
  cursor: pointer;
  transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}
.rcs-add-btn[data-v-2fadf515]:hover {
  border-color: hsl(var(--primary));
  color: hsl(var(--primary));
  background: hsl(var(--primary) / 0.06);
}

/* ===== VARIABLES ===== */
.rcs-variables-bar[data-v-2fadf515] {
  position: relative;
  margin-top: 8px;
}
.rcs-variables-toggle[data-v-2fadf515] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  /* Pill azul suave sem borda — refinado, tom --primary (azul, nao roxo). */
  border: none;
  border-radius: 8px;
  background: hsl(var(--primary) / 0.1);
  color: hsl(var(--primary));
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.15s ease;
}
.rcs-variables-toggle[data-v-2fadf515]:hover {
  background: hsl(var(--primary) / 0.16);
}
.rcs-variables-dropdown[data-v-2fadf515] {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 10;
  min-width: 240px;
  margin-top: 4px;
  padding: 6px;
  border: 1px solid hsl(var(--border));
  border-radius: 10px;
  background: hsl(var(--popover));
  box-shadow: 0 8px 24px hsl(0 0% 0% / 0.1);
  max-height: 240px;
  overflow-y: auto;
}
.rcs-variables-group[data-v-2fadf515] {
  padding: 4px 0;
}
.rcs-variables-group + .rcs-variables-group[data-v-2fadf515] {
  border-top: 1px solid hsl(var(--border));
  margin-top: 4px;
  padding-top: 8px;
}
.rcs-variables-group-title[data-v-2fadf515] {
  display: block;
  padding: 4px 10px;
  font-size: 11px;
  font-weight: 600;
  color: hsl(var(--muted-foreground));
}
.rcs-variable-item[data-v-2fadf515] {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  padding: 7px 10px;
  border-radius: 6px;
  font-size: 13px;
  color: hsl(var(--foreground));
  cursor: pointer;
  transition: background-color 0.1s ease;
}
.rcs-variable-item[data-v-2fadf515]:hover {
  background: hsl(var(--primary) / 0.08);
}
.rcs-variable-item-name[data-v-2fadf515] {
  flex: 1;
  text-align: left;
}
.rcs-variable-item code[data-v-2fadf515] {
  margin-left: auto;
  padding: 1px 6px;
  border-radius: 4px;
  font-size: 11px;
  color: hsl(var(--muted-foreground));
  background: hsl(var(--muted));
}

/* ===== FALLBACK ===== */
.rcs-fallback-section[data-v-2fadf515] {
  border: 1px solid hsl(var(--border));
  border-radius: 12px;
  overflow: hidden;
}
.rcs-fallback-header[data-v-2fadf515] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  background: hsl(var(--muted) / 0.4);
}
.rcs-fallback-info[data-v-2fadf515] {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.rcs-fallback-icon[data-v-2fadf515] {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 9px;
  background: hsl(var(--muted));
  color: hsl(var(--muted-foreground));
}
.rcs-fallback-title[data-v-2fadf515] {
  display: block;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.2;
  color: hsl(var(--foreground));
}
.rcs-fallback-desc[data-v-2fadf515] {
  display: block;
  font-size: 11px;
  color: hsl(var(--muted-foreground));
}
.rcs-fallback-body[data-v-2fadf515] {
  padding: 14px 16px;
  border-top: 1px solid hsl(var(--border));
}

/* ===== RESPONSIVO ===== */
@media (max-width: 640px) {
.rcs-type-cards[data-v-2fadf515],
  .rcs-type-cards--basic[data-v-2fadf515] {
    grid-template-columns: 1fr;
}
}

.wa-vars[data-v-2a56dd91] {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 16px;
  padding-top: 16px;
  /* border-top: 1px solid hsl(var(--border)); */
}
.wa-vars__title[data-v-2a56dd91] {
  margin: 0 0 4px 0;
  font-size: 0.9rem;
  font-weight: 600;
  color: hsl(var(--foreground));
}
.wa-vars__section[data-v-2a56dd91] {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.wa-vars__label[data-v-2a56dd91] {
  font-size: 0.8rem;
  font-weight: 500;
  color: hsl(var(--muted-foreground));
}
.wa-vars__input-row[data-v-2a56dd91] {
  position: relative;
  display: flex;
  align-items: stretch;
  gap: 8px;
}

/* Alinha altura do botão ao input sm (34px) */
.wa-vars__input-row[data-v-2a56dd91] .button-default-ui {
  width: 34px;
  height: 34px;
  min-width: 34px;
  min-height: 34px;
  flex-shrink: 0;
  border-radius: 8px;
}
.wa-vars__input-flex[data-v-2a56dd91] {
  flex: 1;
  min-width: 0;
}

/* Dropdown de variáveis (mesmo padrão do Campaign.vue / campaign.css) */
.campaign-variables-dropdown[data-v-2a56dd91] {
  position: absolute;
  top: 100%;
  right: 0;
  z-index: 1000;
  min-width: 264px;
  max-width: 300px;
  background: hsl(var(--card));
  border: 1px solid hsl(var(--border));
  border-radius: 12px;
  box-shadow: 0 8px 20px -6px rgba(0, 0, 0, 0.12);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-8px);
  transition: opacity 0.15s ease, transform 0.15s ease, visibility 0.15s ease;
  max-height: 340px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  margin-top: 4px;
}
.campaign-variables-dropdown--portal[data-v-2a56dd91] {
  position: fixed;
  /* Mantido fora da viewport até o JS calcular a posição real e
     aplicar top/left via style inline. */
  top: -9999px;
  left: -9999px;
  right: auto;
  margin-top: 0;
  z-index: 2147483000;
  pointer-events: none;
}

/* Quando posicionado, o style inline sobrescreve top/left e liberamos eventos */
.campaign-variables-dropdown--portal.campaign-variables-dropdown--show[data-v-2a56dd91] {
  pointer-events: auto;
}
.campaign-variables-dropdown--show[data-v-2a56dd91] {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.campaign-variables-dropdown-header[data-v-2a56dd91] {
  padding: 10px 12px;
  border-bottom: 1px solid hsl(var(--border));
  background: hsl(var(--muted) / 0.5);
  border-radius: 12px 12px 0 0;
}
.campaign-variables-dropdown-title[data-v-2a56dd91] {
  display: flex;
  align-items: center;
  gap: 6px;
  font-weight: 600;
  font-size: 0.8125rem;
  color: hsl(var(--foreground));
  margin-bottom: 8px;
}
.campaign-variables-search[data-v-2a56dd91] {
  position: relative;
}
.campaign-variables-search-input[data-v-2a56dd91] {
  width: 100%;
}
.campaign-variables-list[data-v-2a56dd91] {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  max-height: 240px;
}
.campaign-variables-section[data-v-2a56dd91] {
  padding: 6px 0;
}
.campaign-variables-section[data-v-2a56dd91]:not(:last-child) {
  border-bottom: 1px solid hsl(var(--border));
}
.campaign-variables-section-title[data-v-2a56dd91] {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px 4px 12px;
  font-weight: 600;
  font-size: 0.625rem;
  color: hsl(var(--muted-foreground));
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.campaign-variable-item[data-v-2a56dd91] {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  cursor: pointer;
  transition: background-color 0.15s ease;
}
.campaign-variable-item[data-v-2a56dd91]:hover {
  background: hsl(var(--accent) / 0.5);
}
.campaign-variable-item--custom[data-v-2a56dd91]:hover {
  background: hsl(var(--warning) / 0.1);
}
.campaign-variable-icon[data-v-2a56dd91] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  background: hsl(var(--primary) / 0.12);
  border-radius: 6px;
  flex-shrink: 0;
}
.campaign-variable-icon--custom[data-v-2a56dd91] {
  background: #fef3c7;
}
.campaign-variable-icon-inner[data-v-2a56dd91] {
  font-size: 13px;
  color: hsl(var(--primary));
}
.campaign-variable-icon--custom .campaign-variable-icon-inner[data-v-2a56dd91] {
  color: #92400e;
}
.campaign-variable-content[data-v-2a56dd91] {
  flex: 1;
  min-width: 0;
}
.campaign-variable-name[data-v-2a56dd91] {
  font-weight: 500;
  font-size: 0.8125rem;
  color: hsl(var(--foreground));
  margin-bottom: 1px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.campaign-variable-code[data-v-2a56dd91] {
  /* Herda o font-sans (Inter); antes o stack comecava em ui-sans-serif e nao puxava Inter */
  font-family: inherit;
  font-size: 0.6875rem;
  color: hsl(var(--muted-foreground));
  background: hsl(var(--muted));
  padding: 1px 5px;
  border-radius: 4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: inline-block;
  max-width: 100%;
}
.campaign-variable-action[data-v-2a56dd91] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  background: hsl(var(--muted));
  border-radius: 6px;
  color: hsl(var(--muted-foreground));
  opacity: 0;
  transition: all 0.2s ease;
  flex-shrink: 0;
}
.campaign-variable-item:hover .campaign-variable-action[data-v-2a56dd91] {
  opacity: 1;
  background: #3b82f6;
  color: #ffffff;
}
.campaign-variable-item--custom:hover .campaign-variable-action[data-v-2a56dd91] {
  background: #eab308;
}
.campaign-variables-empty[data-v-2a56dd91] {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px 20px;
  text-align: center;
}
.campaign-variables-empty-icon[data-v-2a56dd91] {
  color: hsl(var(--muted-foreground));
  margin-bottom: 12px;
  font-size: 32px;
}
.campaign-variables-empty-text[data-v-2a56dd91] {
  font-size: 14px;
  color: hsl(var(--muted-foreground));
  font-weight: 500;
}
.campaign-variables-footer[data-v-2a56dd91] {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  background: hsl(var(--muted));
  border-top: 1px solid hsl(var(--border));
  border-radius: 0 0 12px 12px;
  font-size: 12px;
  color: hsl(var(--muted-foreground));
}
.wa-vars__btn-icon[data-v-2a56dd91] {
  flex-shrink: 0;
}
.wa-vars__media-btn[data-v-2a56dd91] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 8px;
  border: 1px solid #1d4ed8;
  background: #2563eb;
  color: #ffffff;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.15s, border-color 0.15s, box-shadow 0.15s;
  width: -moz-fit-content;
  width: fit-content;
}
.wa-vars__media-btn[data-v-2a56dd91]:hover {
  background: #1d4ed8;
  border-color: #1e40af;
}
.wa-vars__media-btn[data-v-2a56dd91]:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.35);
}
.wa-vars__media-hint[data-v-2a56dd91] {
  margin: 0;
  font-size: 12px;
  color: hsl(var(--muted-foreground));
}
.wa-vars__file-input[data-v-2a56dd91] {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
  pointer-events: none;
}
.wa-vars__count[data-v-2a56dd91] {
  color: hsl(var(--muted-foreground));
  font-size: 0.75rem;
}

.rotation-wa[data-v-73fcfaf4] {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
  overflow: visible;
}

/* ── Header ── */
.rotation-wa__header[data-v-73fcfaf4] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.rotation-wa__header-left[data-v-73fcfaf4] {
  display: flex;
  align-items: center;
  gap: 8px;
}
.rotation-wa__title[data-v-73fcfaf4] {
  margin: 0;
  font-size: 0.9rem;
  font-weight: 600;
  color: hsl(var(--foreground));
}
.rotation-wa__counter[data-v-73fcfaf4] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  font-size: 0.7rem;
  font-weight: 600;
  color: #3b82f6;
  background: hsl(var(--primary) / 0.1);
  padding: 0 6px;
  border-radius: 999px;
}
.rotation-wa__add-btn[data-v-73fcfaf4] {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 6px 14px;
  border-radius: 8px;
  border: 1px solid hsl(var(--border));
  background: hsl(var(--card));
  color: #3b82f6;
  font-size: 0.8rem;
  font-weight: 500;
  cursor: pointer;
  transition: border-color 0.15s, background 0.15s;
}
.rotation-wa__add-btn[data-v-73fcfaf4]:hover {
  border-color: #3b82f6;
  background: hsl(var(--primary) / 0.1);
}

/* ── Hint (empty state) ── */
.rotation-wa__hint[data-v-73fcfaf4] {
  margin: 0;
  font-size: 0.82rem;
  color: hsl(var(--muted-foreground));
  text-align: center;
  padding: 20px 0;
}

/* ── Drawer container ── */
.rotation-wa__drawer[data-v-73fcfaf4] {
  border: 1px solid hsl(var(--border));
  border-radius: 10px;
  background: hsl(var(--muted));
  overflow: hidden;
}
.rotation-wa__drawer-list[data-v-73fcfaf4] {
  display: flex;
  flex-direction: column;
  max-height: 220px;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: contain;
}

/* Custom scrollbar */
.rotation-wa__drawer-list[data-v-73fcfaf4]::-webkit-scrollbar {
  width: 5px;
}
.rotation-wa__drawer-list[data-v-73fcfaf4]::-webkit-scrollbar-track {
  background: transparent;
}
.rotation-wa__drawer-list[data-v-73fcfaf4]::-webkit-scrollbar-thumb {
  background: hsl(var(--muted));
  border-radius: 999px;
}
.rotation-wa__drawer-list[data-v-73fcfaf4]::-webkit-scrollbar-thumb:hover {
  background: hsl(var(--muted));
}

/* ── Drawer item (row) ── */
.rotation-wa__item[data-v-73fcfaf4] {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  cursor: pointer;
  border-left: 3px solid transparent;
  transition: background 0.15s, border-color 0.15s;
}
.rotation-wa__item[data-v-73fcfaf4]:not(:last-child) {
  border-bottom: 1px solid hsl(var(--border));
}
.rotation-wa__item[data-v-73fcfaf4]:hover {
  background: hsl(var(--muted));
}
.rotation-wa__item--active[data-v-73fcfaf4] {
  background: #eff6ff;
  border-left-color: #3b82f6;
  box-shadow: inset 0 0 0 1px rgba(59, 130, 246, 0.1);
}
.rotation-wa__item--active[data-v-73fcfaf4]:hover {
  background: #e0f2fe;
}

/* Index badge */
.rotation-wa__item-index[data-v-73fcfaf4] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: hsl(var(--muted));
  color: hsl(var(--muted-foreground));
  font-size: 0.7rem;
  font-weight: 700;
  flex-shrink: 0;
  transition: background 0.15s, color 0.15s;
}
.rotation-wa__item-index--active[data-v-73fcfaf4] {
  background: #3b82f6;
  color: #fff;
}

/* Info column */
.rotation-wa__item-info[data-v-73fcfaf4] {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  flex: 1;
}
.rotation-wa__item-name[data-v-73fcfaf4] {
  font-size: 0.82rem;
  font-weight: 500;
  color: hsl(var(--foreground));
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.rotation-wa__item--active .rotation-wa__item-name[data-v-73fcfaf4] {
  color: #1d4ed8;
  font-weight: 600;
}
.rotation-wa__item-lang[data-v-73fcfaf4] {
  font-size: 0.7rem;
  color: hsl(var(--muted-foreground));
}

/* Remove button */
.rotation-wa__item-remove[data-v-73fcfaf4] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: hsl(var(--muted-foreground));
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
  flex-shrink: 0;
  padding: 0;
  opacity: 0;
}
.rotation-wa__item:hover .rotation-wa__item-remove[data-v-73fcfaf4] {
  opacity: 1;
}
.rotation-wa__item-remove[data-v-73fcfaf4]:hover {
  background: #fee2e2;
  color: #dc2626;
}

/* ── Variables area ── */
.rotation-wa__vars[data-v-73fcfaf4] {
  min-width: 0;
  overflow: visible;
  padding-top: 12px;
}

.campaign-step-message[data-v-2d3856f8] {
  display: flex;
  flex-direction: column;
  gap: 20px;
  max-width: 100%;
}

/* Aviso T3: cadenciado exige 2+ modelos. */
.campaign-step-message__cadence-hint[data-v-2d3856f8] {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 10px;
  border: 1px solid hsl(38 92% 50% / 0.4);
  background: hsl(38 92% 50% / 0.12);
  color: hsl(var(--foreground));
  font-size: 0.875rem;
}
.campaign-step-message__cadence-hint[data-v-2d3856f8] svg {
  color: hsl(38 92% 45%);
  flex-shrink: 0;
}
.campaign-step-message__cadence-cancel[data-v-2d3856f8] {
  margin-left: auto;
  flex-shrink: 0;
  padding: 6px 12px;
  border-radius: 8px;
  border: 1px solid hsl(var(--border));
  background: hsl(var(--card));
  color: hsl(var(--foreground));
  font-size: 0.8rem;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s;
}
.campaign-step-message__cadence-cancel[data-v-2d3856f8]:hover {
  background: hsl(var(--muted));
  border-color: hsl(var(--primary));
}
.campaign-step-message__empty[data-v-2d3856f8] {
  padding: 24px 20px;
  border-radius: 12px;
  border: 1px dashed hsl(var(--border));
  background: hsl(var(--muted));
  text-align: center;
}
.campaign-step-message__empty-text[data-v-2d3856f8] {
  margin: 0;
  font-size: 0.9rem;
  color: hsl(var(--muted-foreground));
}
.campaign-step-message__section--layout[data-v-2d3856f8] {
  display: flex;
  gap: 24px;
  align-items: flex-start;
}
.campaign-step-message__editor[data-v-2d3856f8] {
  flex: 2 1 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.campaign-step-message__field-row[data-v-2d3856f8] {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: flex-end;
}
.campaign-step-message__field-row--align-center[data-v-2d3856f8] {
  align-items: center;
}
.campaign-step-message__field[data-v-2d3856f8] {
  flex: 1 1 0;
  min-width: 180px;
  display: flex;
  flex-direction: column;
}
.campaign-step-message__field--grow[data-v-2d3856f8] {
  flex: 2 1 260px;
}
.campaign-step-message__label[data-v-2d3856f8] {
  display: block;
  margin-bottom: 4px;
  font-size: 0.85rem;
  font-weight: 500;
  color: hsl(var(--muted-foreground)); /* slate-600 */
}
.campaign-step-message__label--spacer[data-v-2d3856f8] {
  visibility: hidden;
}
.campaign-step-message__button-content[data-v-2d3856f8] {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.campaign-step-message__button-icon[data-v-2d3856f8] {
  display: block;
}
.campaign-step-message__subsection[data-v-2d3856f8] {
  border-radius: 12px;
  border: 1px solid hsl(var(--border));
  background-color: hsl(var(--muted));
  padding: 14px 16px;
}
.campaign-step-message__subsection-header[data-v-2d3856f8] {
  margin-bottom: 10px;
}
.campaign-step-message__subsection-title[data-v-2d3856f8] {
  margin: 0;
  font-size: 0.95rem;
  font-weight: 600;
  color: hsl(var(--foreground));
}
.campaign-step-message__subsection-body[data-v-2d3856f8] {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.campaign-step-message__subsection--placeholder[data-v-2d3856f8] {
  background-color: hsl(var(--muted));
}
.campaign-step-message__placeholder-text[data-v-2d3856f8] {
  margin: 0;
  font-size: 0.8rem;
  color: hsl(var(--muted-foreground));
}
.campaign-step-message__chips-preview[data-v-2d3856f8] {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 6px;
}
.campaign-step-message__chip-live[data-v-2d3856f8] {
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 0.75rem;
  background-color: #ecfdf5;
  color: #047857;
  border: 1px solid #bbf7d0;
}
.campaign-step-message__suggestion-row[data-v-2d3856f8] {
  display: flex;
  align-items: center;
  gap: 8px;
}
.campaign-step-message__suggestion-remove[data-v-2d3856f8] {
  margin-top: 18px;
}
.campaign-step-message__fallback-helper[data-v-2d3856f8] {
  margin: 0;
  font-size: 0.8rem;
  color: hsl(var(--muted-foreground));
}
.campaign-step-message__variable-list[data-v-2d3856f8] {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.campaign-step-message__variable-item[data-v-2d3856f8] {
  display: flex;
}
.campaign-step-message[data-v-2d3856f8] .input-default-ui-container--md,
.campaign-step-message[data-v-2d3856f8] .combo-trigger {
  min-height: 40px;
  height: 40px;
}
.campaign-step-message[data-v-2d3856f8] .combo-trigger {
  display: flex;
  align-items: center;
}
.campaign-step-message[data-v-2d3856f8] .input-default-ui-wrapper {
  gap: 0;
}
.campaign-step-message[data-v-2d3856f8] .input-default-ui-label {
  margin-bottom: 6px;
}
.campaign-step-message__preview[data-v-2d3856f8] {
  flex: 1.2 1 0;
  min-width: 260px;
  max-width: 360px;
  border-radius: 16px;
  border: 1px solid hsl(var(--border));
  background: radial-gradient(
    circle at top left,
    #eff6ff 0,
    hsl(var(--muted)) 55%,
    hsl(var(--card)) 100%
  );
  padding: 14px 16px 16px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.campaign-step-message__preview-header[data-v-2d3856f8] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.campaign-step-message__preview-label[data-v-2d3856f8] {
  font-size: 0.85rem;
  font-weight: 600;
  color: hsl(var(--foreground));
}
.campaign-step-message__preview-badge[data-v-2d3856f8] {
  padding: 3px 8px;
  border-radius: 999px;
  background-color: hsl(var(--muted));
  border: 1px solid #bfdbfe;
  font-size: 0.75rem;
  font-weight: 500;
  color: #1d4ed8;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.campaign-step-message__preview-body[data-v-2d3856f8] {
  border-radius: 12px;
  background-color: rgba(15, 23, 42, 0.02);
  border: 1px dashed hsl(var(--border));
  padding: 12px;
}
.campaign-step-message__preview-placeholder[data-v-2d3856f8] {
  margin: 0;
  font-size: 0.8rem;
  line-height: 1.5;
  color: hsl(var(--muted-foreground));
}
@media (max-width: 1024px) {
.campaign-step-message__section--layout[data-v-2d3856f8] {
    flex-direction: column;
}
.campaign-step-message__preview[data-v-2d3856f8] {
    width: 100%;
    max-width: 100%;
}
}
@media (max-width: 768px) {
.campaign-step-message__field-row[data-v-2d3856f8] {
    flex-direction: column;
    align-items: stretch;
}
.campaign-step-message__field[data-v-2d3856f8],
  .campaign-step-message__field--grow[data-v-2d3856f8] {
    max-width: 100%;
}
}

.tags-select[data-v-19e41cdb] {
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100%;
}
.tags-select__label[data-v-19e41cdb] {
  font-size: 0.85rem;
  font-weight: 500;
  color: hsl(var(--muted-foreground));
}
.tags-select__box[data-v-19e41cdb] {
  border: 1px solid hsl(var(--border));
  border-radius: 12px;
  background: hsl(var(--card));
  overflow: hidden;
}

/* Search */
.tags-select__search[data-v-19e41cdb] {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  border-bottom: 1px solid hsl(var(--border));
  color: hsl(var(--muted-foreground));
}
.tags-select__search-input[data-v-19e41cdb] {
  flex: 1;
  border: none;
  outline: none;
  font-size: 0.9rem;
  color: hsl(var(--foreground));
  background: transparent;
}
.tags-select__search-input[data-v-19e41cdb]::-moz-placeholder {
  color: hsl(var(--muted-foreground));
}
.tags-select__search-input[data-v-19e41cdb]::placeholder {
  color: hsl(var(--muted-foreground));
}

/* List */
.tags-select__list[data-v-19e41cdb] {
  max-height: 400px;
  overflow-y: auto;
  scrollbar-width: thin;
}

/* Item */
.tags-select__item[data-v-19e41cdb] {
  border-bottom: 1px solid hsl(var(--border));
}
.tags-select__item[data-v-19e41cdb]:last-child {
  border-bottom: none;
}

/* Header row */
.tags-select__item-header[data-v-19e41cdb] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  cursor: pointer;
  transition: background 0.2s;
}
.tags-select__item-header[data-v-19e41cdb]:hover {
  background: hsl(var(--muted));
}

/* Checkbox */
.tags-select__checkbox-wrap[data-v-19e41cdb] {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

/* Info area */
.tags-select__item-info[data-v-19e41cdb] {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.tags-select__item-name[data-v-19e41cdb] {
  font-size: 0.875rem;
  font-weight: 500;
  color: hsl(var(--foreground));
  line-height: 1.3;
}
.tags-select__item-preview[data-v-19e41cdb] {
  font-size: 10px;
  font-style: italic;
  color: hsl(var(--muted-foreground));
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.4;
  min-height: 14px;
}

/* Preview sync */
.tags-select__item-preview-sync[data-v-19e41cdb] {
  color: hsl(var(--muted-foreground));
  font-size: 10px;
  font-style: italic;
  animation: sync-pulse-19e41cdb 1.5s ease-in-out infinite;
}
@keyframes sync-pulse-19e41cdb {
0%, 100% { opacity: 0.4;
}
50% { opacity: 1;
}
}

/* Right side */
.tags-select__item-right[data-v-19e41cdb] {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
.tags-select__item-spinner[data-v-19e41cdb] {
  width: 18px;
  height: 18px;
  border: 2px solid hsl(var(--border));
  border-top-color: hsl(var(--primary));
  border-radius: 50%;
  animation: spin-19e41cdb 0.6s linear infinite;
}
@keyframes spin-19e41cdb {
to { transform: rotate(360deg);
}
}
.tags-select__item-badge[data-v-19e41cdb] {
  font-size: 12px;
  font-weight: 500;
  color: hsl(var(--primary));
  background: hsl(var(--primary) / 0.1);
  padding: 3px 10px;
  border-radius: 20px;
  white-space: nowrap;
  border: 1px solid hsl(var(--primary) / 0.25);
}
.tags-select__item-chevron[data-v-19e41cdb] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: none;
  background: transparent;
  color: hsl(var(--primary));
  cursor: pointer;
  border-radius: 6px;
  transition: all 0.2s;
}
.tags-select__item-chevron[data-v-19e41cdb]:hover {
  background: hsl(var(--primary) / 0.1);
}
.tags-select__item-chevron--open[data-v-19e41cdb] {
  transform: rotate(180deg);
}

/* Expanded leads */
.tags-select__item-leads[data-v-19e41cdb] {
  padding: 8px 16px 14px 48px;
  background: hsl(var(--muted));
  border-top: 1px solid hsl(var(--border));
}
.tags-select__item-leads-loading[data-v-19e41cdb],
.tags-select__item-leads-empty[data-v-19e41cdb] {
  font-size: 12px;
  color: hsl(var(--muted-foreground));
  padding: 8px 0;
}
.tags-select__item-leads-grid[data-v-19e41cdb] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px 24px;
  max-height: 150px;
  overflow-y: auto;
  scrollbar-width: thin;
}
.tags-select__item-lead[data-v-19e41cdb] {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.tags-select__item-lead-dot[data-v-19e41cdb] {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: hsl(var(--primary));
  flex-shrink: 0;
}
.tags-select__item-lead-name[data-v-19e41cdb] {
  font-size: 13px;
  color: hsl(var(--foreground));
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Load more */
.tags-select__load-more[data-v-19e41cdb] {
  display: block;
  margin: 8px auto 0;
  font-size: 12px;
  color: hsl(var(--muted-foreground));
  cursor: pointer;
  text-align: center;
  transition: color 0.15s;
}
.tags-select__load-more[data-v-19e41cdb]:hover {
  color: hsl(var(--primary));
}
.tags-select__load-more--loading[data-v-19e41cdb] {
  pointer-events: none;
  opacity: 0.6;
}

/* Empty state */
.tags-select__empty[data-v-19e41cdb] {
  padding: 20px 16px;
  text-align: center;
  font-size: 0.85rem;
  color: hsl(var(--muted-foreground));
}

/* Expand animation */
.leads-expand-enter-active[data-v-19e41cdb] {
  animation: leads-slide-in-19e41cdb 0.2s ease-out;
  overflow: hidden;
}
.leads-expand-leave-active[data-v-19e41cdb] {
  animation: leads-slide-in-19e41cdb 0.15s ease-in reverse;
  overflow: hidden;
}
@keyframes leads-slide-in-19e41cdb {
0% {
    opacity: 0;
    max-height: 0;
}
100% {
    opacity: 1;
    max-height: 200px;
}
}

.step-audience[data-v-ce9a3a71] {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.step-audience__cards[data-v-ce9a3a71] {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.step-audience__card[data-v-ce9a3a71] {
  position: relative;
  border-radius: 12px;
  border: 1px solid hsl(var(--border));
  background: hsl(var(--card));
  padding: 16px;
  text-align: left;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  transition: border-color 0.15s ease, background-color 0.15s ease, box-shadow 0.15s ease;
  outline: none;
}
.step-audience__card[data-v-ce9a3a71]:hover {
  border-color: hsl(var(--primary) / 0.4);
  background: hsl(var(--accent) / 0.4);
}
.step-audience__card--active[data-v-ce9a3a71] {
  border-color: hsl(var(--primary));
  background: hsl(var(--accent));
  box-shadow: 0 0 0 2px hsl(var(--primary) / 0.2);
}
.step-audience__card-icon[data-v-ce9a3a71] {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: hsl(var(--muted));
  color: hsl(var(--muted-foreground));
}
.step-audience__card--active .step-audience__card-icon[data-v-ce9a3a71] {
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
}
.step-audience__card-title[data-v-ce9a3a71] {
  font-size: 0.875rem;
  font-weight: 600;
  color: hsl(var(--foreground));
  line-height: 1.3;
}
.step-audience__card-desc[data-v-ce9a3a71] {
  font-size: 0.75rem;
  color: hsl(var(--muted-foreground));
  line-height: 1.5;
}
.step-audience__file-input[data-v-ce9a3a71] {
  display: none;
}
.step-audience__imported-file[data-v-ce9a3a71] {
  border: 1px solid hsl(var(--border));
  border-radius: 10px;
  background: hsl(var(--muted));
  padding: 10px 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.step-audience__imported-file-info[data-v-ce9a3a71] {
  display: flex;
  align-items: center;
  gap: 6px;
  min-width: 0;
}
.step-audience__imported-file-name[data-v-ce9a3a71] {
  font-size: 0.85rem;
  color: hsl(var(--foreground));
  font-weight: 500;
}
.step-audience__imported-file-size[data-v-ce9a3a71] {
  font-size: 0.78rem;
  color: hsl(var(--muted-foreground));
}
.step-audience__remove-btn[data-v-ce9a3a71] {
  color: hsl(var(--muted-foreground));
  flex-shrink: 0;
}
.step-audience__remove-btn[data-v-ce9a3a71]:hover {
  color: hsl(var(--destructive));
}
.step-audience__remove-btn[data-v-ce9a3a71] .icon-wrapper,
.step-audience__remove-btn[data-v-ce9a3a71] .icon-wrapper svg {
  color: inherit;
  fill: currentColor;
  stroke: currentColor;
}

/* Segment sub-options */
.step-audience__segment-options[data-v-ce9a3a71] {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.step-audience__segment-rules[data-v-ce9a3a71] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}
.step-audience__segment-radio[data-v-ce9a3a71] {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  border: 1px solid hsl(var(--border));
  border-radius: 10px;
  background: hsl(var(--card));
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  transition: border-color 0.15s, background-color 0.15s;
}
.step-audience__segment-radio[data-v-ce9a3a71]:hover {
  border-color: hsl(var(--primary) / 0.4);
  background: hsl(var(--accent) / 0.4);
}

/* Card ativo quando o rádio interno está marcado */
.step-audience__segment-radio[data-v-ce9a3a71]:has(input:checked) {
  border-color: hsl(var(--primary));
  background: hsl(var(--accent));
}
.step-audience__segment-radio input[data-v-ce9a3a71] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.step-audience__segment-radio-dot[data-v-ce9a3a71] {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 1.5px solid hsl(var(--input));
  background: hsl(var(--card));
  transition: border-color 0.15s;
  position: relative;
  flex-shrink: 0;
}
.step-audience__segment-radio input:checked + .step-audience__segment-radio-dot[data-v-ce9a3a71] {
  border-color: hsl(var(--primary));
}
.step-audience__segment-radio input:checked + .step-audience__segment-radio-dot[data-v-ce9a3a71]::after {
  content: '';
  position: absolute;
  top: 3px;
  left: 3px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: hsl(var(--primary));
}
.step-audience__segment-radio-label[data-v-ce9a3a71] {
  font-size: 0.875rem;
  color: hsl(var(--foreground));
  font-weight: 500;
}
.step-audience__no-tags[data-v-ce9a3a71] {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 16px;
  border-radius: 10px;
  background: hsl(var(--warning) / 0.12);
  border: 1px solid hsl(var(--warning) / 0.35);
  color: hsl(var(--foreground));
  font-size: 0.85rem;
  line-height: 1.5;
}

/* Ícone do alerta mantém o tom de warning mesmo com o texto em foreground */
.step-audience__no-tags[data-v-ce9a3a71] .icon-wrapper {
  color: hsl(var(--warning));
  flex-shrink: 0;
}
.step-audience__tags[data-v-ce9a3a71] {
  border-top: 1px solid hsl(var(--border));
  padding-top: 12px;
}

/* Base final estimada (compacto) */
.step-audience__estimate[data-v-ce9a3a71] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid hsl(var(--primary) / 0.25);
  background: hsl(var(--primary) / 0.06);
}
.step-audience__estimate-icon[data-v-ce9a3a71] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: hsl(var(--primary) / 0.12);
  color: hsl(var(--primary));
  flex-shrink: 0;
}
.step-audience__estimate-body[data-v-ce9a3a71] {
  display: flex;
  align-items: baseline;
  gap: 6px;
  min-width: 0;
}
.step-audience__estimate-label[data-v-ce9a3a71] {
  font-size: 0.75rem;
  font-weight: 500;
  color: hsl(var(--muted-foreground));
}
.step-audience__estimate-value[data-v-ce9a3a71] {
  font-size: 1rem;
  font-weight: 600;
  color: hsl(var(--foreground));
  line-height: 1.2;
}
.step-audience__estimate-suffix[data-v-ce9a3a71] {
  margin-left: auto;
  font-size: 0.75rem;
  color: hsl(var(--muted-foreground));
}

/* Import result */
.step-audience__import-result[data-v-ce9a3a71] {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.step-audience__import-stats[data-v-ce9a3a71] {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
.step-audience__stat[data-v-ce9a3a71] {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border-radius: 8px;
  font-size: 0.8rem;
}
.step-audience__stat strong[data-v-ce9a3a71] {
  font-weight: 700;
}
.step-audience__stat--total[data-v-ce9a3a71] {
  background: hsl(var(--success) / 0.12);
  color: hsl(var(--success));
  border: 1px solid hsl(var(--success) / 0.35);
}
.step-audience__stat--invalid[data-v-ce9a3a71] {
  background: hsl(var(--destructive) / 0.1);
  color: hsl(var(--destructive));
  border: 1px solid hsl(var(--destructive) / 0.3);
}
.step-audience__stat--total-rows[data-v-ce9a3a71] {
  background: hsl(var(--muted));
  color: hsl(var(--muted-foreground));
  border: 1px solid hsl(var(--border));
}

/* Preview table */
.step-audience__preview[data-v-ce9a3a71] {
  border: 1px solid hsl(var(--border));
  border-radius: 12px;
  overflow: hidden;
}
.step-audience__preview-header[data-v-ce9a3a71] {
  padding: 10px 16px;
  background: hsl(var(--muted));
  border-bottom: 1px solid hsl(var(--border));
}
.step-audience__preview-title[data-v-ce9a3a71] {
  font-size: 0.78rem;
  font-weight: 600;
  color: hsl(var(--muted-foreground));
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.step-audience__preview-table-wrap[data-v-ce9a3a71] {
  overflow-x: auto;
}
.step-audience__preview-table[data-v-ce9a3a71] {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.82rem;
}
.step-audience__preview-table th[data-v-ce9a3a71] {
  text-align: left;
  padding: 8px 14px;
  font-size: 0.7rem;
  font-weight: 600;
  color: hsl(var(--muted-foreground));
  text-transform: uppercase;
  letter-spacing: 0.04em;
  border-bottom: 1px solid hsl(var(--border));
  background: hsl(var(--muted));
}
.step-audience__preview-table td[data-v-ce9a3a71] {
  padding: 8px 14px;
  color: hsl(var(--foreground));
  border-bottom: 1px solid hsl(var(--border));
}
.step-audience__preview-table tr:last-child td[data-v-ce9a3a71] {
  border-bottom: none;
}
.step-audience__preview-table tr:hover td[data-v-ce9a3a71] {
  background: hsl(var(--muted));
}
.step-audience__preview-idx[data-v-ce9a3a71] {
  color: hsl(var(--muted-foreground));
  font-size: 0.75rem;
  width: 32px;
}
.step-audience__preview-phone[data-v-ce9a3a71] {
  font-family: monospace;
  font-size: 0.8rem;
  color: hsl(var(--foreground));
}
.step-audience__parse-error[data-v-ce9a3a71] {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 10px;
  background: hsl(var(--destructive) / 0.1);
  border: 1px solid hsl(var(--destructive) / 0.3);
  color: hsl(var(--destructive));
  font-size: 0.85rem;
}
@media (max-width: 768px) {
.step-audience__cards[data-v-ce9a3a71] {
    grid-template-columns: 1fr;
}
.step-audience__segment-rules[data-v-ce9a3a71] {
    grid-template-columns: 1fr;
}
}

/* ── Strategy option cards ── */
.strategy-options[data-v-7d8f0b39] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.strategy-card[data-v-7d8f0b39] {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  padding: 20px;
  border-radius: 12px;
  border: 1px solid hsl(var(--border));
  background: hsl(var(--card));
  cursor: pointer;
  text-align: left;
  transition: border-color 0.15s, box-shadow 0.15s;
}
.strategy-card[data-v-7d8f0b39]:hover {
  border-color: hsl(var(--border));
}
.strategy-card--selected[data-v-7d8f0b39] {
  border-color: hsl(var(--primary));
  background: hsl(var(--accent));
  box-shadow: 0 0 0 2px hsl(var(--primary) / 0.2);
}

/* Individual indisponivel quando ha mais de um modelo (T2). */
.strategy-card--disabled[data-v-7d8f0b39] {
  opacity: 0.5;
  cursor: not-allowed;
  background: hsl(var(--muted));
}
.strategy-card--disabled[data-v-7d8f0b39]:hover {
  border-color: hsl(var(--border));
}
.strategy-card__lock[data-v-7d8f0b39] {
  margin-top: 4px;
  font-size: 0.75rem;
  font-weight: 500;
  color: hsl(var(--muted-foreground));
}
.strategy-card__icon[data-v-7d8f0b39] {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background-color: hsl(var(--muted));
  display: flex;
  align-items: center;
  justify-content: center;
  color: hsl(var(--muted-foreground));
}
.strategy-card--selected .strategy-card__icon[data-v-7d8f0b39] {
  background-color: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
}
.strategy-card__title[data-v-7d8f0b39] {
  font-size: 0.95rem;
  font-weight: 600;
  color: hsl(var(--foreground));
  line-height: 1.3;
}
.strategy-card__desc[data-v-7d8f0b39] {
  font-size: 0.8rem;
  color: hsl(var(--muted-foreground));
  line-height: 1.5;
}

/* ── Configuração de lotes (campos claros) ── */
.batch-config__fields[data-v-7d8f0b39] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.batch-config__field[data-v-7d8f0b39] {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.batch-config__label[data-v-7d8f0b39] {
  font-size: 0.875rem;
  font-weight: 500;
  color: hsl(var(--foreground));
}
.batch-config__input[data-v-7d8f0b39] {
  height: 44px;
  background-color: hsl(var(--card));
  border: 1px solid hsl(var(--input));
  border-radius: 12px;
  padding: 0 14px;
  font-size: 0.875rem;
  font-weight: 500;
  color: hsl(var(--foreground));
  outline: none;
  transition: border-color 0.15s, box-shadow 0.15s;
  width: 100%;
}
.batch-config__input[data-v-7d8f0b39]::-moz-placeholder {
  color: hsl(var(--muted-foreground) / 0.7);
}
.batch-config__input[data-v-7d8f0b39]::placeholder {
  color: hsl(var(--muted-foreground) / 0.7);
}
.batch-config__input[data-v-7d8f0b39]:focus {
  border-color: hsl(var(--ring));
  box-shadow: 0 0 0 3px hsl(var(--ring) / 0.25);
}
.batch-config__input--error[data-v-7d8f0b39] {
  border-color: hsl(var(--destructive));
}
.batch-config__input--error[data-v-7d8f0b39]:focus {
  border-color: hsl(var(--destructive));
  box-shadow: 0 0 0 3px hsl(var(--destructive) / 0.2);
}
.batch-config__error[data-v-7d8f0b39] {
  font-size: 0.72rem;
  color: hsl(var(--destructive));
  margin-top: 2px;
}
.batch-config__input-wrap[data-v-7d8f0b39] {
  position: relative;
  display: flex;
  align-items: center;
}
.batch-config__input-icon[data-v-7d8f0b39] {
  position: absolute;
  left: 14px;
  color: hsl(var(--muted-foreground));
  pointer-events: none;
}
.batch-config__input--with-icon[data-v-7d8f0b39] {
  padding-left: 40px;
}
.batch-config__input--with-suffix[data-v-7d8f0b39] {
  padding-right: 44px;
}
.batch-config__hint[data-v-7d8f0b39] {
  font-size: 0.75rem;
  color: hsl(var(--muted-foreground));
  line-height: 1.4;
}
.batch-config__suffix[data-v-7d8f0b39] {
  position: absolute;
  right: 14px;
  font-size: 0.78rem;
  font-weight: 600;
  color: hsl(var(--muted-foreground));
  pointer-events: none;
}

/* Hide number input spinners */
.batch-config__input[data-v-7d8f0b39]::-webkit-outer-spin-button,
.batch-config__input[data-v-7d8f0b39]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.batch-config__input[type='number'][data-v-7d8f0b39] {
  -moz-appearance: textfield;
}

/* ── Ordem de envio dos modelos (drag-and-drop) ── */
.strategy-order[data-v-7d8f0b39] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.strategy-order__header[data-v-7d8f0b39] {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.95rem;
  font-weight: 600;
  color: hsl(var(--foreground));
}
.strategy-order__header[data-v-7d8f0b39] svg {
  color: hsl(var(--muted-foreground));
}
.strategy-order__hint[data-v-7d8f0b39] {
  margin: 0;
  font-size: 0.75rem;
  color: hsl(var(--muted-foreground));
  line-height: 1.5;
}
.strategy-order__list[data-v-7d8f0b39] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.strategy-order__item[data-v-7d8f0b39] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid hsl(var(--border));
  background: hsl(var(--card));
  transition: border-color 0.15s, box-shadow 0.15s;
}
.strategy-order__item[data-v-7d8f0b39]:hover {
  border-color: hsl(var(--primary) / 0.4);
}
.strategy-order__drag[data-v-7d8f0b39] {
  display: flex;
  align-items: center;
  justify-content: center;
  color: hsl(var(--muted-foreground));
  cursor: grab;
  flex-shrink: 0;
}
.strategy-order__drag[data-v-7d8f0b39]:active {
  cursor: grabbing;
}
.strategy-order__badge[data-v-7d8f0b39] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 8px;
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
  font-size: 0.72rem;
  font-weight: 700;
  flex-shrink: 0;
}
.strategy-order__info[data-v-7d8f0b39] {
  display: flex;
  flex-direction: column;
  gap: 1px;
  min-width: 0;
  flex: 1;
}
.strategy-order__name[data-v-7d8f0b39] {
  font-size: 0.85rem;
  font-weight: 500;
  color: hsl(var(--foreground));
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.strategy-order__lang[data-v-7d8f0b39] {
  font-size: 0.7rem;
  color: hsl(var(--muted-foreground));
}

/* ── Aviso de rodízio ── */
.strategy-rotation-note[data-v-7d8f0b39] {
  margin: 0;
  border-radius: 12px;
  border: 1px solid hsl(var(--info) / 0.3);
  background: hsl(var(--info) / 0.1);
  padding: 12px;
  font-size: 0.875rem;
  line-height: 1.5;
  color: hsl(var(--info));
}

/* ── Agendamento dentro da Estrategia (modo + data/hora) ── */
.strategy-schedule[data-v-7d8f0b39] {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding-top: 4px;
}
.strategy-schedule__header[data-v-7d8f0b39] {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.95rem;
  font-weight: 600;
  color: hsl(var(--foreground));
}
.strategy-schedule__header[data-v-7d8f0b39] svg {
  color: hsl(var(--muted-foreground));
}
.step-schedule__mode[data-v-7d8f0b39] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
/* Cards compactos: horizontais e enxutos (o passo Estrategia ja tem bastante
   conteudo, entao o agendamento nao precisa de cards grandes). */
.schedule-mode-card[data-v-7d8f0b39] {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 10px;
  border: 1px solid hsl(var(--border));
  background: hsl(var(--card));
  cursor: pointer;
  text-align: left;
  transition: border-color 0.15s, background-color 0.15s, box-shadow 0.15s;
  outline: none;
}
.schedule-mode-card[data-v-7d8f0b39]:hover {
  border-color: hsl(var(--primary) / 0.4);
  background: hsl(var(--accent) / 0.4);
}
.schedule-mode-card--active[data-v-7d8f0b39] {
  border-color: hsl(var(--primary));
  background: hsl(var(--accent));
  box-shadow: 0 0 0 1px hsl(var(--primary) / 0.2);
}
.schedule-mode-card__icon[data-v-7d8f0b39] {
  width: 28px;
  height: 28px;
  border-radius: 7px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: hsl(var(--muted));
  color: hsl(var(--muted-foreground));
}
.schedule-mode-card__icon[data-v-7d8f0b39] svg { width: 16px; height: 16px;
}
.schedule-mode-card--active .schedule-mode-card__icon[data-v-7d8f0b39] {
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
}
.schedule-mode-card__title[data-v-7d8f0b39] { font-size: 0.8125rem; font-weight: 600; color: hsl(var(--foreground)); line-height: 1.2;
}
/* Descricao escondida nos cards compactos — o titulo ja comunica a acao. */
.schedule-mode-card__desc[data-v-7d8f0b39] { display: none;
}

/* Container de data/hora compacto: sem caixa destacada, largura recolhida
   (nao ocupa a linha toda). */
.step-schedule__scheduled[data-v-7d8f0b39] {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 2px 2px 0;
  max-width: 280px;
}
.step-schedule__field[data-v-7d8f0b39] { display: flex; flex-direction: column; gap: 4px;
}
.step-schedule__field-label[data-v-7d8f0b39] { font-size: 0.75rem; font-weight: 500; color: hsl(var(--muted-foreground));
}
.step-schedule__required[data-v-7d8f0b39] { color: hsl(var(--primary));
}
.step-schedule__timezone-hint[data-v-7d8f0b39] {
  margin: 0;
  font-size: 0.7rem;
  color: hsl(var(--muted-foreground));
}
/* DatePicker mais enxuto dentro do agendamento compacto. */
.step-schedule__scheduled[data-v-7d8f0b39] .dp-input,
.step-schedule__scheduled[data-v-7d8f0b39] input {
  height: 36px;
  font-size: 0.8125rem;
}

/* Distribuir uniformemente (toggle padrao ToggleSwitch). */
.strategy-distribute[data-v-7d8f0b39] {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.strategy-distribute__copy[data-v-7d8f0b39] { display: flex; flex-direction: column; gap: 2px; min-width: 0;
}
.strategy-distribute__text[data-v-7d8f0b39] {
  font-size: 0.875rem;
  font-weight: 500;
  color: hsl(var(--foreground));
}
.strategy-distribute__desc[data-v-7d8f0b39] {
  font-size: 0.75rem;
  color: hsl(var(--muted-foreground));
  line-height: 1.5;
}
@media (max-width: 600px) {
.step-schedule__mode[data-v-7d8f0b39] { grid-template-columns: 1fr;
}
}

/* Métricas: 3 colunas a partir de sm (mockup grid-cols-2 sm:grid-cols-3) */
@media (min-width: 640px) {
.strategy-metrics[data-v-7d8f0b39] {
    grid-template-columns: 1fr 1fr 1fr;
}
}
@media (max-width: 600px) {
.strategy-options[data-v-7d8f0b39] {
    grid-template-columns: 1fr;
}
.batch-config__fields[data-v-7d8f0b39] {
    grid-template-columns: 1fr;
}
}

.time-selector-ui[data-v-22c274f1] {
  position: relative;
  width: 100%;
}

/* ===== LABEL ===== */
.time-selector-ui__label[data-v-22c274f1] {
  display: block;
  margin-bottom: 4px;
  font-size: 0.85rem;
  font-weight: 500;
  color: #475569;
}

/* ===== INPUT FIELD ===== */
.time-selector-ui__input-field[data-v-22c274f1] {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}
.time-selector-ui__input[data-v-22c274f1] {
  width: 100%;
  padding: 10px 36px 10px 12px;
  border: 1.5px solid #e2e8f0;
  border-radius: 8px;
  font-size: 14px;
  font-family: inherit;
  color: #1f2937;
  background-color: white;
  transition: all 150ms ease-in-out;
  outline: none;
}
.time-selector-ui__input[data-v-22c274f1]:hover:not(:disabled) {
  border-color: #cbd5e1;
  background-color: #f8fafc;
}
.time-selector-ui__input[data-v-22c274f1]:focus {
  border-color: #3b82f6;
  background-color: white;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.time-selector-ui__input[data-v-22c274f1]:disabled {
  background-color: #f3f4f6;
  color: #9ca3af;
  cursor: not-allowed;
  opacity: 0.6;
}
.time-selector-ui__input.is-open[data-v-22c274f1] {
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}
.time-selector-ui__input.has-error[data-v-22c274f1] {
  border-color: #ef4444;
}
.time-selector-ui__input[data-v-22c274f1]::-moz-placeholder {
  color: #9ca3af;
}
.time-selector-ui__input[data-v-22c274f1]::placeholder {
  color: #9ca3af;
}

/* ===== ICON ===== */
.time-selector-ui__icon[data-v-22c274f1] {
  position: absolute;
  right: 10px;
  width: 20px;
  height: 20px;
  color: #6b7280;
  cursor: pointer;
  flex-shrink: 0;
  transition: all 150ms ease-in-out;
}
.time-selector-ui__icon[data-v-22c274f1]:hover {
  color: #3b82f6;
  transform: scale(1.1);
}

/* ===== DROPDOWN ===== */
.time-selector-ui__dropdown[data-v-22c274f1] {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  width: 200px;
  margin-top: 8px;
  background: white;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
  overflow: hidden;
}
.time-selector-ui__dropdown.align-right[data-v-22c274f1] {
  left: auto;
  right: 0;
}
.time-selector-ui__dropdown.open-up[data-v-22c274f1] {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 8px;
}

/* ===== COLUMNS ===== */
.time-selector-ui__columns[data-v-22c274f1] {
  display: flex;
  height: 200px;
}
.time-selector-ui__column[data-v-22c274f1] {
  flex: 1;
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.time-selector-ui__column-label[data-v-22c274f1] {
  padding: 8px 0;
  text-align: center;
  font-size: 0.75rem;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  border-bottom: 1px solid #f1f5f9;
  flex-shrink: 0;
}
.time-selector-ui__scroll[data-v-22c274f1] {
  flex: 1;
  overflow-y: auto;
  padding: 4px;
  scrollbar-width: thin;
  scrollbar-color: #cbd5e1 transparent;
}
.time-selector-ui__scroll[data-v-22c274f1]::-webkit-scrollbar {
  width: 4px;
}
.time-selector-ui__scroll[data-v-22c274f1]::-webkit-scrollbar-track {
  background: transparent;
}
.time-selector-ui__scroll[data-v-22c274f1]::-webkit-scrollbar-thumb {
  background-color: #cbd5e1;
  border-radius: 4px;
}
.time-selector-ui__separator[data-v-22c274f1] {
  width: 1px;
  background-color: #f1f5f9;
  flex-shrink: 0;
}

/* ===== OPTION ===== */
.time-selector-ui__option[data-v-22c274f1] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 6px 8px;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: #374151;
  font-size: 0.875rem;
  font-family: inherit;
  cursor: pointer;
  transition: all 120ms ease-in-out;
}
.time-selector-ui__option[data-v-22c274f1]:hover {
  background-color: #eff6ff;
  color: #2563eb;
}
.time-selector-ui__option.is-selected[data-v-22c274f1] {
  background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
  color: white;
  font-weight: 600;
  box-shadow: 0 2px 6px rgba(37, 99, 235, 0.3);
}

/* ===== FOOTER ===== */
.time-selector-ui__footer[data-v-22c274f1] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 10px;
  border-top: 1px solid #f1f5f9;
}
.time-selector-ui__now-btn[data-v-22c274f1] {
  border: none;
  background: none;
  color: #3b82f6;
  font-size: 0.8rem;
  font-weight: 500;
  font-family: inherit;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 6px;
  transition: background 120ms ease-in-out;
}
.time-selector-ui__now-btn[data-v-22c274f1]:hover {
  background-color: #eff6ff;
}
.time-selector-ui__confirm-btn[data-v-22c274f1] {
  border: none;
  background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
  color: white;
  font-size: 0.8rem;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  padding: 5px 16px;
  border-radius: 6px;
  transition: all 120ms ease-in-out;
  box-shadow: 0 2px 6px rgba(37, 99, 235, 0.25);
}
.time-selector-ui__confirm-btn[data-v-22c274f1]:hover {
  background: linear-gradient(135deg, #2563eb 0%, #1d4ed8 100%);
}

/* ===== ERROR ===== */
.time-selector-ui__error[data-v-22c274f1] {
  display: block;
  margin-top: 4px;
  font-size: 0.78rem;
  color: #ef4444;
}

/* ===== TRANSITIONS ===== */
.time-selector-ui-fade-enter-active[data-v-22c274f1],
.time-selector-ui-fade-leave-active[data-v-22c274f1] {
  transition: all 150ms ease-in-out;
}
.time-selector-ui-fade-enter[data-v-22c274f1],
.time-selector-ui-fade-leave-to[data-v-22c274f1] {
  opacity: 0;
  transform: translateY(-8px);
}

.step-schedule[data-v-4c19c54a] { display: flex; flex-direction: column; gap: 20px;
}

/* ── Modo de disparo (OptionCards) ── */
.step-schedule__mode[data-v-4c19c54a] {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.schedule-mode-card[data-v-4c19c54a] {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  padding: 16px;
  border-radius: 12px;
  border: 1px solid hsl(var(--border));
  background: hsl(var(--card));
  cursor: pointer;
  text-align: left;
  transition: border-color 0.15s, background-color 0.15s, box-shadow 0.15s;
  outline: none;
}
.schedule-mode-card[data-v-4c19c54a]:hover {
  border-color: hsl(var(--primary) / 0.4);
  background: hsl(var(--accent) / 0.4);
}
.schedule-mode-card--active[data-v-4c19c54a] {
  border-color: hsl(var(--primary));
  background: hsl(var(--accent));
  box-shadow: 0 0 0 2px hsl(var(--primary) / 0.2);
}
.schedule-mode-card__icon[data-v-4c19c54a] {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: hsl(var(--muted));
  color: hsl(var(--muted-foreground));
}
.schedule-mode-card--active .schedule-mode-card__icon[data-v-4c19c54a] {
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
}
.schedule-mode-card__title[data-v-4c19c54a] { font-size: 0.875rem; font-weight: 600; color: hsl(var(--foreground)); line-height: 1.3;
}
.schedule-mode-card__desc[data-v-4c19c54a] { font-size: 0.75rem; color: hsl(var(--muted-foreground)); line-height: 1.5;
}

/* ── Bloco agendado ── */
.step-schedule__scheduled[data-v-4c19c54a] {
  display: flex;
  flex-direction: column;
  gap: 12px;
  border-radius: 12px;
  border: 1px solid hsl(var(--primary) / 0.3);
  background: hsl(var(--accent) / 0.4);
  padding: 16px;
}
.step-schedule__field[data-v-4c19c54a] { display: flex; flex-direction: column; gap: 6px;
}
.step-schedule__field-label[data-v-4c19c54a] { font-size: 0.875rem; font-weight: 500; color: hsl(var(--foreground));
}
.step-schedule__required[data-v-4c19c54a] { color: hsl(var(--primary));
}
.step-schedule__timezone-hint[data-v-4c19c54a] {
  margin: 0;
  font-size: 0.75rem;
  color: hsl(var(--muted-foreground));
}

/* ── Janela de horário ── */
.step-schedule__window[data-v-4c19c54a] {
  border-radius: 12px;
  border: 1px solid hsl(var(--border));
  padding: 16px;
}
.step-schedule__window-header[data-v-4c19c54a] {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  font-size: 0.875rem;
  font-weight: 500;
  color: hsl(var(--foreground));
}
.step-schedule__templates[data-v-4c19c54a] { display: flex; flex-direction: column; gap: 12px;
}
.step-schedule__template-row[data-v-4c19c54a] {
  display: flex; align-items: center; gap: 14px; padding: 14px 18px;
  border: 1px solid hsl(var(--border)); border-radius: 12px; background: hsl(var(--card));
}
.step-schedule__template-badge[data-v-4c19c54a] {
  display: flex; align-items: center; justify-content: center;
  width: 32px; height: 32px; border-radius: 8px;
  background: hsl(var(--primary)); color: hsl(var(--primary-foreground)); font-size: 0.85rem; font-weight: 700; flex-shrink: 0;
}
.step-schedule__template-info[data-v-4c19c54a] { flex: 1; display: flex; flex-direction: column; gap: 2px; min-width: 0;
}
.step-schedule__template-name[data-v-4c19c54a] { font-size: 0.9rem; font-weight: 600; color: hsl(var(--foreground));
}
.step-schedule__template-category[data-v-4c19c54a] { font-size: 0.7rem; font-weight: 600; color: hsl(var(--muted-foreground)); text-transform: uppercase; letter-spacing: 0.04em;
}
.step-schedule__time-fields[data-v-4c19c54a] { display: flex; flex-direction: column; gap: 4px; min-width: 100px;
}
.step-schedule__time-label[data-v-4c19c54a] { font-size: 0.75rem; font-weight: 500; color: hsl(var(--muted-foreground));
}
.step-schedule__time-separator[data-v-4c19c54a] { color: hsl(var(--muted-foreground)); font-size: 1rem; align-self: flex-end; margin-bottom: 8px;
}
.step-schedule__empty[data-v-4c19c54a] { padding: 24px; text-align: center; color: hsl(var(--muted-foreground)); font-size: 0.9rem;
}

/* ── Distribuir uniformemente ── */

.step-review[data-v-5d574f62] {
  display: flex;
  flex-direction: column;
  gap: 28px;
}

/* ── Resumo: lista de definicao — sem caixas e sem regras, so ritmo ── */
.step-review__summary[data-v-5d574f62] {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  -moz-column-gap: 48px;
       column-gap: 48px;
  row-gap: 10px;
  margin: 0;
}
.step-review__row[data-v-5d574f62] {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  min-width: 0;
}
.step-review__key[data-v-5d574f62] {
  font-size: 0.75rem;
  color: hsl(var(--muted-foreground));
  white-space: nowrap;
}
.step-review__val[data-v-5d574f62] {
  margin: 0;
  font-size: 0.8125rem;
  color: hsl(var(--foreground));
  text-align: right;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
/* Numeros alinhados: tabular evita o texto "dancar" ao atualizar. */
.step-review__val--num[data-v-5d574f62] {
  font-variant-numeric: tabular-nums;
}

/* ── Colunas: prévia da mensagem + público-alvo ── */
.step-review__cols[data-v-5d574f62] {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 40px;
  align-items: start;
}
.step-review__panel[data-v-5d574f62] {
  display: flex;
  flex-direction: column;
  gap: 12px;
  min-width: 0;
}
.step-review__panel-label[data-v-5d574f62] {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: hsl(var(--muted-foreground));
}
.step-review__panel-label[data-v-5d574f62] svg {
  color: hsl(var(--muted-foreground));
}

/* Abas do rodízio — texto puro; o ativo se marca pelo peso/cor, nao por caixa. */
.step-review__rotation-tabs[data-v-5d574f62] {
  display: flex;
  flex-wrap: wrap;
  gap: 2px;
}
.step-review__rotation-tab[data-v-5d574f62] {
  padding: 3px 8px;
  border: none;
  border-radius: 5px;
  background: transparent;
  font-size: 0.6875rem;
  font-weight: 500;
  font-variant-numeric: tabular-nums;
  color: hsl(var(--muted-foreground));
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}
.step-review__rotation-tab[data-v-5d574f62]:hover {
  background: hsl(var(--muted));
  color: hsl(var(--foreground));
}
.step-review__rotation-tab--active[data-v-5d574f62] {
  background: hsl(var(--muted));
  color: hsl(var(--foreground));
  font-weight: 600;
}

/* Modelo */
.step-review__model[data-v-5d574f62] {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.step-review__model-head[data-v-5d574f62] {
  display: flex;
  align-items: baseline;
  gap: 8px;
  flex-wrap: wrap;
}
.step-review__model-name[data-v-5d574f62] {
  font-size: 0.8125rem;
  font-weight: 600;
  color: hsl(var(--foreground));
  word-break: break-word;
}
.step-review__model-lang[data-v-5d574f62] {
  font-size: 0.6875rem;
  color: hsl(var(--muted-foreground));
}

/* Prévia da mensagem: bloco plano sobre um leve wash — sem bordas. */
.step-review__bubble[data-v-5d574f62] {
  background: hsl(var(--muted) / 0.5);
  border-radius: 8px;
  padding: 10px 12px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 0.8125rem;
  line-height: 1.6;
  color: hsl(var(--foreground));
  white-space: pre-wrap;
  word-break: break-word;
}
.step-review__bubble--empty[data-v-5d574f62] {
  flex-direction: row;
  align-items: center;
  gap: 8px;
  background: transparent;
  padding: 0;
  color: hsl(var(--muted-foreground));
  font-size: 0.75rem;
}
.step-review__bubble--empty[data-v-5d574f62] svg {
  color: hsl(var(--muted-foreground));
  flex-shrink: 0;
}
.step-review__bubble-header[data-v-5d574f62] {
  font-weight: 600;
}
.step-review__bubble-footer[data-v-5d574f62] {
  font-size: 0.75rem;
  color: hsl(var(--muted-foreground));
}
.step-review__bubble-buttons[data-v-5d574f62] {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 2px;
}
.step-review__bubble-button[data-v-5d574f62] {
  font-size: 0.6875rem;
  color: hsl(var(--muted-foreground));
  padding: 2px 8px;
  border-radius: 5px;
  background: hsl(var(--muted));
}

/* Público-alvo */
.step-review__audience[data-v-5d574f62] {
  display: flex;
  align-items: baseline;
  gap: 8px;
  flex-wrap: wrap;
}
.step-review__audience-count[data-v-5d574f62] {
  font-size: 1.375rem;
  font-weight: 600;
  letter-spacing: -0.02em;
  font-variant-numeric: tabular-nums;
  color: hsl(var(--foreground));
}
.step-review__audience-hint[data-v-5d574f62] {
  font-size: 0.75rem;
  color: hsl(var(--muted-foreground));
}
.step-review__tags-group[data-v-5d574f62] {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.step-review__sublabel[data-v-5d574f62] {
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: hsl(var(--muted-foreground));
}
.step-review__tags[data-v-5d574f62] {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.step-review__tag[data-v-5d574f62] {
  font-size: 0.6875rem;
  color: hsl(var(--muted-foreground));
  background: hsl(var(--muted));
  padding: 2px 8px;
  border-radius: 5px;
  white-space: nowrap;
}
.step-review__file[data-v-5d574f62] {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 0.75rem;
  color: hsl(var(--foreground));
}
.step-review__file[data-v-5d574f62] svg {
  color: hsl(var(--muted-foreground));
  flex-shrink: 0;
}
.step-review__file-name[data-v-5d574f62] {
  word-break: break-all;
}

/* Bloco Teste A/B — sem caixa e sem regra; separado so por espaco. */
.step-review__ab[data-v-5d574f62] {
  padding-top: 4px;
}
.step-review__ab-header[data-v-5d574f62] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.step-review__ab-heading[data-v-5d574f62] {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.step-review__ab-heading-text[data-v-5d574f62] {
  min-width: 0;
}
.step-review__ab-title[data-v-5d574f62] {
  margin: 0;
  font-size: 0.8125rem;
  font-weight: 600;
  color: hsl(var(--foreground));
}
.step-review__ab-desc[data-v-5d574f62] {
  margin: 0 0 0;
  font-size: 0.75rem;
  line-height: 1.5;
  color: hsl(var(--muted-foreground));
}

/* Switch */
.step-review__switch[data-v-5d574f62] {
  position: relative;
  flex: 0 0 auto;
  display: inline-block;
  width: 44px;
  height: 24px;
  cursor: pointer;
}
.step-review__switch input[data-v-5d574f62] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.step-review__switch-track[data-v-5d574f62] {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  border-radius: 999px;
  background: hsl(var(--muted-foreground) / 0.3);
  transition: background 0.2s;
}
.step-review__switch-thumb[data-v-5d574f62] {
  position: absolute;
  left: 2px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
  transition: transform 0.2s;
}
.step-review__switch input:checked + .step-review__switch-track[data-v-5d574f62] {
  background: hsl(var(--primary));
}
.step-review__switch input:checked + .step-review__switch-track .step-review__switch-thumb[data-v-5d574f62] {
  transform: translateX(20px);
}

/* Corpo revelado do A/B */
.step-review__ab-body[data-v-5d574f62] {
  margin-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.step-review__ab-warning[data-v-5d574f62] {
  margin: 0;
  border: 1px solid hsl(var(--warning) / 0.4);
  border-radius: 8px;
  background: hsl(var(--warning) / 0.1);
  padding: 10px;
  font-size: 0.75rem;
  line-height: 1.5;
  /* --warning-foreground e' quase-branco no design system da Bee, ilegivel
     sobre o tint claro; usa o proprio --warning (ambar) pra ter contraste. */
  color: hsl(var(--warning));
}

/* Field genérico */
.step-review__field[data-v-5d574f62] {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.step-review__field-label[data-v-5d574f62] {
  font-size: 0.875rem;
  font-weight: 500;
  color: hsl(var(--foreground));
}
.step-review__field-hint[data-v-5d574f62] {
  margin: 0;
  font-size: 0.75rem;
  line-height: 1.5;
  color: hsl(var(--muted-foreground));
}

/* Slider */
.step-review__slider[data-v-5d574f62] {
  width: 100%;
  accent-color: hsl(var(--primary));
  cursor: pointer;
}

/* Grid métrica + duração */
.step-review__ab-grid[data-v-5d574f62] {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

/* Segmented */
.step-review__segmented[data-v-5d574f62] {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 4px;
  border: 1px solid hsl(var(--border));
  border-radius: 12px;
  background: hsl(var(--muted) / 0.6);
  padding: 4px;
}
.step-review__seg-btn[data-v-5d574f62] {
  border: none;
  border-radius: 8px;
  background: transparent;
  padding: 8px 12px;
  font-size: 0.875rem;
  font-weight: 500;
  color: hsl(var(--muted-foreground));
  cursor: pointer;
  transition: color 0.15s, background 0.15s;
}
.step-review__seg-btn[data-v-5d574f62]:hover {
  color: hsl(var(--foreground));
}
.step-review__seg-btn--active[data-v-5d574f62] {
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

/* Responsivo */
@media (max-width: 768px) {
.step-review__ab-grid[data-v-5d574f62] {
    grid-template-columns: 1fr;
}
.step-review__segmented[data-v-5d574f62] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
@media (max-width: 860px) {
.step-review__cols[data-v-5d574f62] {
    grid-template-columns: 1fr;
}
}
@media (max-width: 640px) {
.step-review__summary[data-v-5d574f62] {
    grid-template-columns: 1fr;
}
}

.rotation-rcs[data-v-d68d2eaa] {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.rotation-rcs__header[data-v-d68d2eaa] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.rotation-rcs__title[data-v-d68d2eaa] {
  margin: 0;
  font-size: 1rem;
  font-weight: 600;
  color: hsl(var(--foreground));
}
.rotation-rcs__counter[data-v-d68d2eaa] {
  font-size: 0.8rem;
  font-weight: 500;
  color: hsl(var(--primary));
  background: hsl(var(--primary) / 0.1);
  padding: 4px 10px;
  border-radius: 999px;
}
.rotation-rcs__hint[data-v-d68d2eaa] {
  margin: 0;
  font-size: 0.85rem;
  color: hsl(var(--muted-foreground));
}
.rotation-rcs__list[data-v-d68d2eaa] {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.rotation-rcs__card[data-v-d68d2eaa] {
  border: 1px solid hsl(var(--border));
  border-radius: 12px;
  background: hsl(var(--muted));
  overflow: hidden;
}
.rotation-rcs__card-header[data-v-d68d2eaa] {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 16px;
  background: hsl(var(--muted));
  border-bottom: 1px solid hsl(var(--border));
}
.rotation-rcs__card-index[data-v-d68d2eaa] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 6px;
  background: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
  font-size: 0.7rem;
  font-weight: 700;
  flex-shrink: 0;
}
.rotation-rcs__card-type[data-v-d68d2eaa] {
  flex: 1;
  font-size: 0.85rem;
  font-weight: 600;
  color: hsl(var(--foreground));
}
.rotation-rcs__card-remove[data-v-d68d2eaa] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border: none;
  border-radius: 6px;
  background: transparent;
  color: hsl(var(--muted-foreground));
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}
.rotation-rcs__card-remove[data-v-d68d2eaa]:hover {
  background: #fee2e2;
  color: #dc2626;
}
.rotation-rcs__card-body[data-v-d68d2eaa] {
  padding: 16px;
}
.rotation-rcs__add-btn[data-v-d68d2eaa] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  border-radius: 10px;
  border: 1px dashed hsl(var(--border));
  background: hsl(var(--card));
  color: hsl(var(--muted-foreground));
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  transition: border-color 0.15s, background 0.15s, color 0.15s;
  align-self: flex-start;
}
.rotation-rcs__add-btn[data-v-d68d2eaa]:hover {
  border-color: hsl(var(--primary));
  background: hsl(var(--primary) / 0.1);
  color: hsl(var(--primary));
}

/* Aviso T3: cadenciado exige 2+ mensagens. */
.rcs-step-message__cadence-hint[data-v-047c3cb2] {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  margin-bottom: 16px;
  border-radius: 10px;
  border: 1px solid hsl(38 92% 50% / 0.4);
  background: hsl(38 92% 50% / 0.12);
  color: hsl(var(--foreground));
  font-size: 0.875rem;
}
.rcs-step-message__cadence-hint[data-v-047c3cb2] svg {
  color: hsl(38 92% 45%);
  flex-shrink: 0;
}
.rcs-step-message__cadence-cancel[data-v-047c3cb2] {
  margin-left: auto;
  flex-shrink: 0;
  padding: 6px 12px;
  border-radius: 8px;
  border: 1px solid hsl(var(--border));
  background: hsl(var(--card));
  color: hsl(var(--foreground));
  font-size: 0.8rem;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s;
}
.rcs-step-message__cadence-cancel[data-v-047c3cb2]:hover {
  background: hsl(var(--muted));
  border-color: hsl(var(--primary));
}

.campaign-steps-column[data-v-7faa5184] {
  width: 100%;
  max-width: 1360px;
  margin: 0 auto;
}
@media (max-width: 900px) {
.campaign-steps-column[data-v-7faa5184] {
    max-width: 100%;
}
}

.channel-preview-panel[data-v-11ed8b03] {
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 0 0 360px;
  width: 100%;
  max-width: 1060px;
  padding: 16px 20px;
  box-sizing: border-box;
}
.preview-header[data-v-11ed8b03] {
  display: flex;
  align-items: center;
  gap: 8px;
}
.preview-header-icon[data-v-11ed8b03] {
  color: hsl(var(--muted-foreground));
}
.preview-title[data-v-11ed8b03] {
  margin: 0;
  font-weight: 500;
  font-size: 0.875rem;
  color: hsl(var(--muted-foreground));
}

/* RCS (mantém device) */
.preview-content[data-v-11ed8b03] {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding: 12px 0;
  box-sizing: border-box;
}
.preview-phone-wrapper[data-v-11ed8b03] {
  display: flex;
  align-items: flex-start;
  justify-content: center;
}

/* ── Metrics Header ── */
.campaign-metrics-header[data-v-17ce6f76] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 24px;
  background: hsl(var(--card));
  border-bottom: 1px solid hsl(var(--border));
  gap: 20px;
}
.campaign-metrics-header__title[data-v-17ce6f76] {
  display: flex;
  align-items: center;
  gap: 12px;
}

/* Pílula azul atrás do ícone sliders (título) */
.campaign-metrics-header__icon-pill[data-v-17ce6f76] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: hsl(var(--primary) / 0.12);
  color: hsl(var(--primary));
  flex: 0 0 auto;
}
.campaign-metrics-header__label[data-v-17ce6f76] {
  display: block;
  font-size: 0.65rem;
  font-weight: 600;
  color: hsl(var(--muted-foreground));
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.campaign-metrics-header__name[data-v-17ce6f76] {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  color: hsl(var(--foreground));
}
.campaign-metrics-header__stats[data-v-17ce6f76] {
  display: flex;
  align-items: center;
  gap: 24px;
}

/* Métrica minimalista (parity mockup): ícone à esquerda + label/valor à direita, sem fundo/borda */
.campaign-metrics-header__stat[data-v-17ce6f76] {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
}
.campaign-metrics-header__stat-icon[data-v-17ce6f76] {
  color: hsl(var(--muted-foreground));
  flex: 0 0 auto;
  box-sizing: content-box;
  width: 15px;
  height: 15px;
  padding: 7px;
  border-radius: 8px;
  background: hsl(var(--muted));
}
.campaign-metrics-header__stat-body[data-v-17ce6f76] {
  display: flex;
  flex-direction: column;
  gap: 1px;
  line-height: 1.1;
}
.campaign-metrics-header__stat-label[data-v-17ce6f76] {
  font-size: 0.6rem;
  font-weight: 600;
  color: hsl(var(--muted-foreground));
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.campaign-metrics-header__stat-value[data-v-17ce6f76] {
  font-size: 1rem;
  font-weight: 700;
  color: hsl(var(--foreground));
}
.campaign-metrics-header__stat-value small[data-v-17ce6f76] {
  font-size: 0.7rem;
  font-weight: 500;
  color: hsl(var(--muted-foreground));
}

/* ── Wrapper: full viewport height with fixed footer ── */
.campaign-new-wrapper[data-v-17ce6f76] {
  display: flex;
  flex-direction: column;
  height: 100vh;
  min-width: 0;
  overflow: hidden;
  box-sizing: border-box;
}
.campaign-new-main[data-v-17ce6f76] {
  display: flex;
  align-items: stretch;
  flex: 1 1 0;
  width: 100%;
  min-height: 0;
  box-sizing: border-box;
  gap: 0;
}

/* ── Left sidebar ── */
.campaign-new-main__sidebar[data-v-17ce6f76] {
  flex: 0 0 auto;
  align-self: stretch;
  border-right: 1px solid hsl(var(--border));
  padding: 16px 16px 16px 0;
  margin-left: 12px;
  overflow-y: auto;
}
.campaign-sidebar__header[data-v-17ce6f76] {
  display: block;
  font-size: 0.7rem;
  font-weight: 600;
  color: hsl(var(--muted-foreground));
  letter-spacing: 0.05em;
  margin-bottom: 8px;
}
.campaign-sidebar[data-v-17ce6f76] {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.campaign-sidebar__item[data-v-17ce6f76] {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 12px;
  cursor: pointer;
  transition: background-color 0.15s, border-color 0.15s, opacity 0.15s;
  border: 1px solid transparent;
}
.campaign-sidebar__item[data-v-17ce6f76]:hover {
  background-color: hsl(var(--muted));
}
.campaign-sidebar__item--active[data-v-17ce6f76] {
  background-color: hsl(var(--primary) / 0.08);
  border-color: hsl(var(--primary) / 0.35);
}
.campaign-sidebar__item--completed .campaign-sidebar__badge[data-v-17ce6f76] {
  background-color: hsl(var(--success) / 0.15);
  border-color: hsl(var(--success) / 0.4);
  color: hsl(var(--success));
}

/* Locked steps */
.campaign-sidebar__item--locked[data-v-17ce6f76] {
  opacity: 0.45;
  cursor: not-allowed;
  pointer-events: none;
}
.campaign-sidebar__item--locked .campaign-sidebar__help[data-v-17ce6f76] {
  pointer-events: auto;
  cursor: help;
}
.campaign-sidebar__item--locked[data-v-17ce6f76]:hover {
  background-color: transparent;
}
.campaign-sidebar__lock-icon[data-v-17ce6f76] {
  color: hsl(var(--muted-foreground));
}
.campaign-sidebar__badge[data-v-17ce6f76] {
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 600;
  background-color: hsl(var(--muted));
  border: 1px solid hsl(var(--border));
  color: hsl(var(--muted-foreground));
  transition: background-color 0.15s, border-color 0.15s, color 0.15s;
}
.campaign-sidebar__item--active .campaign-sidebar__badge[data-v-17ce6f76] {
  background-color: hsl(var(--primary));
  border-color: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
}
.campaign-sidebar__check[data-v-17ce6f76] {
  display: block;
}
.campaign-sidebar__text[data-v-17ce6f76] {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.campaign-sidebar__label[data-v-17ce6f76] {
  font-size: 0.875rem;
  /* Minimalista: label inativo discreto (peso medio + tom suave), so o passo
     ativo/concluido ganha destaque. Evita o "escuro demais" da lista toda. */
  font-weight: 500;
  color: hsl(var(--muted-foreground));
  line-height: 1.3;
}
.campaign-sidebar__desc[data-v-17ce6f76] {
  font-size: 0.75rem;
  color: hsl(var(--muted-foreground) / 0.7);
  line-height: 1.3;
}
.campaign-sidebar__item--active .campaign-sidebar__label[data-v-17ce6f76] {
  color: hsl(var(--primary));
  font-weight: 600;
}

/* Passo concluido: label recupera contraste normal (sem ser primary). */
.campaign-sidebar__item--completed .campaign-sidebar__label[data-v-17ce6f76] {
  color: hsl(var(--foreground) / 0.75);
}
.campaign-sidebar__help[data-v-17ce6f76] {
  margin-left: auto;
}
.campaign-sidebar__help-icon[data-v-17ce6f76] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background-color: hsl(var(--border));
  color: hsl(var(--muted-foreground));
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}

/* ── Content area ── */
.campaign-new-main__content[data-v-17ce6f76] {
  flex: 1 1 0;
  min-width: 0;
  min-height: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 16px 32px;
  /* Fundo branco: o step card (tambem branco) funde com a area e deixa de
     parecer um card flutuante sobre o cinza do tema. A sidebar de Etapas
     fica de fora e mantem o fundo original. */
  background: hsl(var(--card));
  /* Rola verticalmente aqui, não na janela */
  overflow-y: auto;
  overflow-x: hidden;
}
.campaign-new-main__steps[data-v-17ce6f76] {
  display: flex;
  justify-content: center;
  box-sizing: border-box;
  width: 100%;
  max-width: 1360px;
  /* Permite crescer sem forçar o wrapper a crescer */
  flex-shrink: 0;
}

/* ── Footer sempre pregado à base do wrapper ── */
/* Sticky garante que o footer nunca saia da tela, mesmo que o pai role. */
.campaign-fixed-footer[data-v-17ce6f76] {
  flex: 0 0 auto;
  position: sticky;
  bottom: 0;
  z-index: 100;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 14px 32px;
  background-color: hsl(var(--card));
  border-top: 1px solid hsl(var(--border));
  box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.04);
  box-sizing: border-box;
  width: 100%;
}
.campaign-fixed-footer__actions[data-v-17ce6f76] {
  display: flex;
  align-items: center;
  gap: 12px;
}
.campaign-footer-btn[data-v-17ce6f76] {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 24px;
  border-radius: 10px;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  border: none;
  transition: background-color 0.15s, color 0.15s;
}
.campaign-footer-btn--cancel[data-v-17ce6f76] {
  background: none;
  color: hsl(var(--primary));
  padding: 10px 0;
  font-weight: 500;
}
.campaign-footer-btn--cancel[data-v-17ce6f76]:hover {
  /* mesmo primary, levemente escurecido no hover (sem token novo) */
  filter: brightness(0.9);
}
.campaign-footer-btn--back[data-v-17ce6f76] {
  background-color: hsl(var(--card));
  color: hsl(var(--foreground));
  border: 1px solid hsl(var(--border));
}
.campaign-footer-btn--back[data-v-17ce6f76]:hover {
  background-color: hsl(var(--muted));
}
.campaign-footer-btn--continue[data-v-17ce6f76] {
  background-color: hsl(var(--primary));
  color: hsl(var(--primary-foreground));
}
.campaign-footer-btn--continue[data-v-17ce6f76]:hover:not(:disabled) {
  /* mesmo primary, levemente escurecido no hover (sem token novo) */
  filter: brightness(0.9);
}
.campaign-footer-btn--disabled[data-v-17ce6f76] {
  opacity: 0.5;
  cursor: not-allowed;
}
.campaign-footer-btn__arrow[data-v-17ce6f76] {
  font-size: 1.3em;
  line-height: 1;
}

/* ── Preview ── */
.campaign-new-main__preview[data-v-17ce6f76] {
  flex: 0 0 360px;
  display: flex;
  align-items: stretch;
  align-self: stretch;
  overflow: hidden;
}
@media (max-width: 1100px) {
.campaign-new-main__sidebar[data-v-17ce6f76] {
    flex: 0 0 180px;
}
}
@media (max-width: 900px) {
.campaign-new-wrapper[data-v-17ce6f76] {
    height: auto;
    min-height: calc(100vh - 64px - 3rem);
}
.campaign-new-main[data-v-17ce6f76] {
    flex-direction: column;
    overflow: visible;
}
.campaign-new-main__content[data-v-17ce6f76] {
    overflow-y: visible;
    overflow-x: visible;
}
.campaign-new-main__sidebar[data-v-17ce6f76] {
    position: static;
    flex: none;
    align-self: auto;
    overflow-y: visible;
    border-right: none;
    border-bottom: 1px solid hsl(var(--border));
    padding: 8px 0;
}
.campaign-new-main__preview[data-v-17ce6f76] {
    align-self: auto;
    overflow: visible;
}
.campaign-fixed-footer[data-v-17ce6f76] {
    position: sticky;
    bottom: 0;
    padding: 12px 16px;
}
.campaign-sidebar[data-v-17ce6f76] {
    flex-direction: row;
    overflow-x: auto;
}
.campaign-sidebar__item[data-v-17ce6f76] {
    white-space: nowrap;
}
.campaign-sidebar__desc[data-v-17ce6f76] {
    display: none;
}
}

.campaign-new-page[data-v-7dce5838] {
  /* max-width: 1600px; */
  width: 100%;
  margin: 0 auto;
}
