.primary-button:hover:after,
.primary-button:active:after,
.secondary-button:hover:after,
.secondary-button:active:after {
  border-radius: inherit;
  content: "";
  display: block;
  inset-block-end: 0;
  inset-block-start: 0;
  inset-inline-end: 0;
  inset-inline-start: 0;
  position: absolute;
}

.primary-button:hover:after,
.secondary-button:hover:after {
  background-color: rgba(255, 255, 255, 0.2);
}

/* == Primary Buttons == */
.primary-button {
  position: relative;
  display: block;
  width: 100%;
  height: 3rem;
  font-size: 1rem;
  font-weight: 600;
  text-align: center;
  border-radius: 0.5rem;
  text-decoration: none;
  padding: 0.8125rem;
  cursor: pointer;
}

.primary-button:active:after {
  background-color: rgba(0, 0, 0, 0.1);
}

.primary-button.blue-button {
  background-color: var(--primary-100);
  box-shadow: 0px 0.25rem 0.875rem rgba(0, 128, 255, 0.3);
  color: white;
  border: none;
}

/* == Secondary Buttons == */
.secondary-button {
  position: relative;
  display: block;
  width: fit-content;
  text-align: center;
  padding: 0.625rem 1.5rem;
  text-decoration: none;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
}

.secondary-button.gray-button {
  color: var(--secondary-gray-100);
  background-color: var(--secondary-gray-20);
}

.secondary-button.blue-button {
  color: var(--primary-100);
  background-color: var(--secondary-20);
}

.secondary-button.pill-button {
  padding: 0;
  border-radius: 5.75rem;
  width: 10rem;
  height: 4rem;
  font-size: 1rem;
  font-weight: 500;
  display: flex;
  justify-content: center;
  align-items: center;
}

.secondary-button.gray-button:active:after {
  background-color: rgba(130, 142, 153, 0.1);
}

.secondary-button.blue-button:active:after {
  background-color: rgba(0, 128, 255, 0.1);
}

/* == Frame Buttons == */
.frame-button {
  position: relative;
  display: block;
  width: 100%;
  height: 2.5rem;
  font-size: 0.875rem;
  font-weight: 600;
  text-align: center;
  border-radius: 0.5rem;
  text-decoration: none;
  padding: 0.625rem;
  cursor: pointer;
}

.frame-button.white-button {
  color: var(--secondary-gray-100);
  background-color: white;
  border: 1px solid var(--secondary-gray-20);
}

.frame-button.white-button:hover {
  color: var(--secondary-gray-80);
  background-color: var(--secondary-gray-05);
}

.frame-button.white-button:active {
  color: #75808a;
  background-color: var(--secondary-gray-05);
}
