.btn {
    --hue: 190;
    position: relative;
    padding: 1rem 3rem;
    font-size: 1rem;
    color: white;
    text-decoration: none;
    background-color: hsl(var(--hue), 100%, 41%);
    outline: transparent;
    overflow: hidden;
    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
    white-space: nowrap;
    transition: 0.75s;
    height: 50px;
  }
  .btn:hover {
    background: hsl(var(--hue), 100%, 31%);
  }
  .btn-primary {
    --hue: 187;
  }
  .btn-ghost {
    color: hsl(var(--hue), 100%, 41%);
    background-color: transparent;
    border-color: hsl(var(--hue), 100%, 41%);
  }
  .btn-ghost:hover {
    color: white;
  }
  .btn-shine {
    color: white;
  }
  .btn-shine::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(120deg, transparent, hsla(var(--hue), 100%, 41%, 0.5), transparent);
    transform: translateX(-100%);
    transition: 0.6s;
  }
  .btn-shine:hover {
    background: transparent;
    text-shadow: 0px 0px 10px hsla(var(--hue), 100%, 41%, 2), 4px 4px 10px hsla(var(--hue), 100%, 41%, 2), 4px -4px 10px hsla(var(--hue), 100%, 41%, 2), -4px -4px 10px hsla(var(--hue), 100%, 41%, 2), -4px 4px 10px hsla(var(--hue), 100%, 41%, 2);
  }
  .btn-shine:hover::before {
    transform: translateX(100%);
  }
  