/* Steam / Wishlist button — shared by demo.htm and credits.htm.
   Same look as the button on the home page, using the site palette
   (style.css): #1e1e1e / #232323 backgrounds, #515352 and #707070
   borders, #b4b9be text.

   NOTE: this file must be linked AFTER the inline <style> block of the
   page, so it overrides the older unused .steam-button rules in demo.htm. */

.steam-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  padding: 16px 38px;
  font-family: 'IM FELL Great Primer Roman', serif;
  font-size: 1.5rem;
  line-height: 1;
  color: #b4b9be;
  text-decoration: none;
  background: linear-gradient(180deg, #353535 0%, #1e1e1e 100%);
  border: 1px solid #707070;
  border-radius: 4px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.45);
  transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease,
              border-color 0.2s ease, color 0.2s ease;
}

.steam-button:hover,
.steam-button:focus {
  background: linear-gradient(180deg, #515352 0%, #232323 100%);
  border-color: #b4b9be;
  color: #f0f0f0;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.6);
  transform: translateY(-2px);
}

.steam-button:focus-visible {
  outline: 2px solid #b4b9be;
  outline-offset: 3px;
}

.steam-button .fa {
  font-size: 1.6rem;
  margin-right: 0;
}

/* Sticky button, always visible while scrolling.
   Top right on desktop; on mobile it moves to the bottom, where it does
   not cover the menu and stays within thumb reach. */
.steam-button-fixed {
  /* Hidden on desktop: the nav is position:fixed, so the "Wishlist" menu entry
     is already permanently on screen and this would be a duplicate.
     Shown below 970px, where the menu collapses into the burger. */
  display: none;
  position: fixed;
  top: 18px;
  right: 18px;
  z-index: 999;
  padding: 10px 20px;
  font-size: 1rem;
  gap: 10px;
}

.steam-button-fixed .fa {
  font-size: 1.1rem;
}

@media screen and (max-width: 970px) {
  .steam-button-fixed {
    display: inline-flex;
    top: auto;
    bottom: 14px;
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    font-size: 1rem;
    padding: 12px 22px;
  }

  .steam-button-fixed:hover,
  .steam-button-fixed:focus {
    transform: translateX(-50%) translateY(-2px);
  }
}

/* Respect the user's reduced-motion preference */
@media (prefers-reduced-motion: reduce) {
  .steam-button {
    transition: none;
  }

  .steam-button:hover {
    transform: none;
  }

  .steam-button-fixed:hover {
    transform: translateX(-50%);
  }
}
