@layer components {
/* New button component */

.new-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--spacing-2) var(--spacing-4);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-medium);
  line-height: var(--line-height-tight);
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  vertical-align: middle;
  cursor: pointer;
  user-select: none;
  border: var(--border-width-thin) solid transparent;
  border-radius: var(--border-radius);
  background-color: var(--primary-color);
  color: var(--white);
  transition: 
    color var(--transition-fast),
    background-color var(--transition-fast),
    border-color var(--transition-fast),
    box-shadow var(--transition-fast);
}

.new-button:hover,
.new-button:focus {
  color: var(--white);
  background-color: var(--primary-dark);
  border-color: var(--primary-dark);
}

/* Button with icon */
.new-button .icon {
  margin-right: var(--spacing-2);
  font-size: 1.2em;
}
}
