/**
 * Wish Lists: the cards. Forked from the signup card family so a wish list
 * and a signup read as siblings; theme-token fallbacks keep the module
 * presentable on any theme.
 */

.rt-wl-grid {
  display: grid;
  grid-template-columns: 1fr;
  align-items: stretch;
  gap: 24px;
  max-width: var(--rt-maxw, 1120px);
  margin: 0 auto;
  justify-content: center;
}
@media (min-width: 760px) {
  .rt-wl-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
/* Fewer cards than lanes: the tracks size to a card and the set centers
   (RallyTrain rule: a short row never parks left). Count classes come
   from the renderer, so this stays deterministic instead of relying on
   auto-fit, which counts lanes by the MAX and comes up short. */
@media (min-width: 760px) {
  .rt-wl-grid.rt-wl-grid--n1 { grid-template-columns: repeat(1, minmax(0, 360px)); justify-content: center; }
  .rt-wl-grid.rt-wl-grid--n2 { grid-template-columns: repeat(2, minmax(0, 360px)); justify-content: center; }
}
@media (min-width: 1100px) {
  .rt-wl-grid.rt-wl-grid--n3 { grid-template-columns: repeat(3, minmax(0, 360px)); justify-content: center; }
}

@media (min-width: 1100px) {
  .rt-wl-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

.rt-wl-card[hidden] {
  display: none;
}

.rt-wl-card {
  display: flex;
  flex-direction: column;
  padding: 0;
  border: 1px solid var(--rt-line, #e7e2d6);
  border-radius: var(--rt-radius, 10px);
  overflow: hidden;
  background: #fff;
  box-shadow: var(--rt-shadow, 0 6px 24px rgba(0, 0, 0, 0.12));
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.rt-wl-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--rt-shadow-lift, 0 10px 24px rgba(0, 0, 0, 0.12));
}

/* The slim branded strip the signup cards use, with a gift glyph riding it. */
/* The slim branded strip the signup and store cards wear: site mark right,
   accent underline. */
/* The band carries the card's title (Furi, 9-15: an empty black strip with
   the title under it read as a mistake). Site mark stays at the right. */
.rt-wl-art {
  flex: none;
  display: flex;
  align-items: center;
  min-height: 72px;
  padding: 12px 86px 12px 18px;
  background-image: var(--rt-banner-logo, none);
  background-size: auto 54px;
  background-position: right 16px center;
  background-repeat: no-repeat;
  background-color: var(--rt-black, #141414);
  box-shadow: inset 0 -3px 0 var(--rt-primary, #f4b41c);
}

.rt-wl-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 18px 20px 20px;
}

.rt-wl-name {
  margin: 0 0 6px;
  font-size: 1.1rem;
  line-height: 1.3;
}
.rt-wl-art .rt-wl-name {
  margin: 0;
  color: #fff;
  font-family: var(--rt-font-display, "RT Display", "Arial Narrow", sans-serif);
  font-weight: var(--rt-font-display-weight, 400);
  letter-spacing: 0.04em;
  text-transform: uppercase;
  font-size: 1.15rem;
  line-height: 1.15;
  text-align: left;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
}

.rt-wl-desc {
  margin: 0 0 10px;
  color: var(--rt-gray, #6b6b6b);
  font-size: 0.95rem;
}

.rt-wl-items {
  margin: 0 0 12px;
  padding-left: 20px;
  font-size: 0.92rem;
}
.rt-wl-items li {
  margin: 2px 0;
}

/* Centered at every width, per the 8-24 house rule: action buttons center
   in their card; only a backwards action earns an edge. */
.rt-wl-ctas {
  margin-top: auto;
  padding-top: 12px;
  margin-bottom: 0;
  display: flex;
  justify-content: center;
}

.rt-wl-btn {
  display: inline-block;
  padding: 7px 16px;
  border: 0;
  border-radius: 999px;
  background: var(--rt-primary, #f4b41c);
  color: var(--rt-on-primary, #141414) !important;
  font-family: inherit;
  font-weight: 700;
  font-size: 0.85rem;
  line-height: inherit;
  text-decoration: none;
  cursor: pointer;
}
.rt-wl-btn:hover {
  background: var(--rt-secondary, #d99a00);
}
