/*
 * Conference CTA system
 * Mirrors the shared PATBOARD body buttons while leaving tabs, progress steps
 * and disclosure controls with their purpose-specific interaction styles.
 */
.btn,
.cr-actions button,
.cr-restart {
  align-items: center;
  border-radius: 3px;
  cursor: pointer;
  display: inline-flex;
  font-family: Montserrat, Arial, sans-serif;
  font-size: 13px;
  font-weight: 600;
  gap: 10px;
  justify-content: center;
  letter-spacing: 1.5px;
  min-height: 48px;
  padding: 14px 32px;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 0.3s ease, border-color 0.3s ease,
    box-shadow 0.3s ease, color 0.3s ease, transform 0.3s ease;
}

.btn--gold,
.cr-next,
.cr-pay {
  background: #d4af37;
  border: 1px solid #d4af37;
  color: #000d33;
}

.btn--outline {
  background: transparent;
  border: 1px solid #d4af37;
  color: #d4af37;
}

.cr-back,
.cr-restart {
  background: transparent;
  border: 1px solid #000d33;
  color: #000d33;
}

.btn svg,
.cr-pay span {
  transition: transform 0.3s ease;
}

.btn:focus-visible,
.cr-actions button:focus-visible,
.cr-restart:focus-visible {
  box-shadow: 0 0 0 4px rgba(212, 175, 55, 0.28);
  outline: 2px solid #000d33;
  outline-offset: 3px;
}

.cr-actions button:disabled {
  box-shadow: none;
  cursor: wait;
  opacity: 0.65;
  transform: none;
}

@media (hover: hover) {
  .btn--gold:hover,
  .cr-next:hover,
  .cr-pay:hover {
    background: #e0bd45;
    border-color: #e0bd45;
    box-shadow: 0 12px 30px rgba(212, 175, 55, 0.35);
    transform: translateY(-2px);
  }

  .btn--outline:hover {
    background: #d4af37;
    color: #000d33;
    transform: translateY(-2px);
  }

  .cr-back:hover,
  .cr-restart:hover {
    background: #000d33;
    color: #ffffff;
    transform: translateY(-2px);
  }

  .btn:hover svg,
  .cr-pay:hover span {
    transform: translateX(4px);
  }
}

@media (max-width: 560px) {
  .btn,
  .cr-actions button,
  .cr-restart {
    font-size: 11px;
    padding-inline: 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .btn,
  .btn svg,
  .cr-actions button,
  .cr-pay span,
  .cr-restart {
    transition: none;
  }
}
