/* Button */

.sivar-btn {
  font-family: 'Inter', system-ui, sans-serif;
  font-weight: var(--sivar-btn-font-weight, 600);
  font-size: var(--sivar-btn-font-size, 14px);
  padding: var(--sivar-btn-padding, 10px 18px);
  border-radius: var(--sivar-btn-radius, var(--r-btn));
  border: 1px solid rgb(var(--sivar-line));
  background: rgb(var(--sivar-surface));
  color: rgb(var(--sivar-ink));
  cursor: pointer;
  transition: all 150ms ease;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  line-height: 1.2;
  text-decoration: none;
}
.sivar-btn:hover {
  border-color: rgb(var(--sivar-ink));
  /* Subtle editorial hover lift */
  transform: translateY(-1px);
  box-shadow: 0 2px 6px -2px rgb(var(--sivar-ink) / 0.25);
}
.sivar-btn:active {
  /* Press it back down */
  transform: translateY(0);
  box-shadow: none;
}
.sivar-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  border-color: rgb(var(--sivar-line));
  transform: none;
  box-shadow: none;
}
.sivar-btn-sm {
  font-size: var(--sivar-btn-sm-font-size, 12.5px);
  padding: var(--sivar-btn-sm-padding, 8px 13px);
}
.sivar-btn-full { width: 100%; }

/* Accessibility: honor reduced-motion — drop the lift/press. */
@media (prefers-reduced-motion: reduce) {
  .sivar-btn {
    transition: none;
  }
  .sivar-btn:hover,
  .sivar-btn:active {
    transform: none;
    box-shadow: none;
  }
}

/* Primary — ink fill */
.sivar-btn-primary {
  background: rgb(var(--sivar-btn-primary-bg, var(--sivar-ink)));
  color: rgb(var(--sivar-btn-primary-fg, var(--sivar-paper)));
  border-color: rgb(var(--sivar-btn-primary-border, var(--sivar-btn-primary-bg, var(--sivar-ink))));
}
.sivar-btn-primary:hover {
  opacity: 0.92;
  border-color: rgb(var(--sivar-btn-primary-border, var(--sivar-btn-primary-bg, var(--sivar-ink))));
}

/* Secondary — paper fill */
.sivar-btn-secondary {
  background: rgb(var(--sivar-paper));
  color: rgb(var(--sivar-ink));
  border-color: rgb(var(--sivar-line));
}

/* Ghost — text-only */
.sivar-btn-ghost {
  background: transparent;
  border: none;
  color: rgb(var(--sivar-ink-soft));
  padding: 10px 4px;
}
.sivar-btn-ghost:hover {
  color: rgb(var(--sivar-ink));
  text-decoration: underline;
  border-color: transparent;
}

/* Danger — destructive action */
.sivar-btn-danger {
  background: rgb(var(--sivar-red));
  color: #fff;
  border-color: rgb(var(--sivar-red));
}
.sivar-btn-danger:hover { opacity: 0.92; border-color: rgb(var(--sivar-red)); }

/* Success — positive action */
.sivar-btn-success {
  background: rgb(var(--sivar-green));
  color: #fff;
  border-color: rgb(var(--sivar-green));
}
.sivar-btn-success:hover { opacity: 0.92; border-color: rgb(var(--sivar-green)); }
