/* ── Базовая кнопка ─────────────────────────────────────────── */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  font-family: var(--font-body);
  font-size: var(--text-body-m);
  font-weight: 700;
  line-height: 1;
  padding: 14px 28px;
  border-radius: var(--radius-md);
  border: 2px solid transparent;
  cursor: pointer;
  transition: var(--transition-base);
  text-decoration: none;
  white-space: nowrap;
  min-height: 44px;
  user-select: none;
}

/* ── Orange (CTA) ───────────────────────────────────────────── */
.btn--orange {
  background: var(--color-orange);
  color: var(--color-bg);
  border-color: var(--color-orange);
  box-shadow: var(--shadow-btn-orange);
}
.btn--orange:hover {
  background: var(--color-orange-dark);
  border-color: var(--color-orange-dark);
  color: var(--color-bg);
  transform: translateY(-2px);
  box-shadow: 0 6px 28px rgba(255, 140, 0, 0.5);
}
.btn--orange:active { transform: translateY(0); }

/* ── Cyan outline ────────────────────────────────────────────── */
.btn--cyan {
  background: transparent;
  color: var(--color-cyan);
  border-color: var(--color-cyan);
}
.btn--cyan:hover {
  background: var(--color-cyan);
  color: var(--color-bg);
  box-shadow: var(--shadow-btn-cyan);
  transform: translateY(-2px);
}

/* ── Ghost (белый outline на тёмном фоне) ─────────────────── */
.btn--ghost {
  background: var(--btn-ghost-bg);
  color: var(--color-text-primary);
  border-color: var(--btn-ghost-border);
}
.btn--ghost:hover {
  background: var(--btn-ghost-bg-hover);
  border-color: var(--btn-ghost-border-hover);
  color: #fff;
  transform: translateY(-2px);
}

/* ── Размеры ─────────────────────────────────────────────────── */
.btn--lg { padding: 18px 36px; font-size: var(--text-body-l); border-radius: var(--radius-lg); }
.btn--sm { padding: 10px 20px; font-size: var(--text-body-s); }

/* ── Полная ширина ───────────────────────────────────────────── */
.btn--block { width: 100%; }
