/* Relay Radio Store — Build 0033 wishlist-only YITH presentation.
 * WooCommerce and YITH remain the source of wishlist items, images, stock,
 * removal actions, product choices, sharing URLs and empty-state content.
 * Scoped by a verified wishlist-page body class: never style shop/cart tables.
 */

body.relay-store-theme.relay-store-wishlist {
  --wishlist-deep: #091320;
  --wishlist-panel: #0f1e30;
  --wishlist-edge: rgba(45, 133, 183, .33);
  --wishlist-txt: #eaf5ff;
  --wishlist-muted: #a2b7ca;
}

/* The stock YITH heading becomes a station-family introduction. */
body.relay-store-theme.relay-store-wishlist :is(.wishlist-title, .wishlist-title-container) {
  position: relative;
  background: linear-gradient(115deg, rgba(18, 54, 78, .89), rgba(18, 22, 48, .96));
  border: 1px solid var(--wishlist-edge);
  border-radius: 15px;
  padding: 24px 26px;
  margin-bottom: 24px;
  box-shadow: 0 12px 32px rgba(0, 0, 0, .17);
}
body.relay-store-theme.relay-store-wishlist :is(.wishlist-title, .wishlist-title-container)::before {
  content: 'RELAY RADIO STORE  /  SAVED MERCH';
  display: block;
  font-size: 10px;
  letter-spacing: .14em;
  color: #73e0ff;
  font-weight: 850;
  margin-bottom: 9px;
}
body.relay-store-theme.relay-store-wishlist :is(.wishlist-title, .wishlist-title-container)::after {
  content: 'Your favorites in one place. Ready when you are.';
  display: block;
  font-size: 13px;
  margin-top: 7px;
  color: var(--wishlist-muted);
}
body.relay-store-theme.relay-store-wishlist :is(.wishlist-title, .wishlist-title-container) :is(h1,h2,h3) {
  color: #fff !important;
  font-weight: 850;
  font-size: clamp(22px, 2.5vw, 30px) !important;
  letter-spacing: -.025em;
  margin: 0 !important;
  padding: 0;
  text-transform: none;
}
/* YITH sometimes prints a heading with no wrapper. */
body.relay-store-theme.relay-store-wishlist .main-content > h2,
body.relay-store-theme.relay-store-wishlist .yith-wcwl-form > h2 {
  color: #f3faff;
  font-weight: 850;
}

/* Desktop table: a dark Relay panel with a contained header and rows. */
body.relay-store-theme.relay-store-wishlist table.wishlist_table {
  width: 100%;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: var(--wishlist-deep) !important;
  border: 1px solid var(--wishlist-edge) !important;
  border-radius: 16px !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.19);
  overflow: hidden;
  color: var(--wishlist-txt) !important;
  margin-bottom: 22px;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table thead,
body.relay-store-theme.relay-store-wishlist table.wishlist_table thead tr,
body.relay-store-theme.relay-store-wishlist table.wishlist_table thead th {
  background: #0a1526 !important;
  color: #b3c9dc !important;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table thead th {
  border: 0 !important;
  border-bottom: 1px solid rgba(52, 124, 171, .33) !important;
  padding: 17px 15px !important;
  font-size: 11px !important;
  font-weight: 850 !important;
  letter-spacing: .085em;
  text-transform: uppercase;
  line-height: 1.4;
  white-space: normal;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table tbody tr {
  background: linear-gradient(110deg, #112338, #0d1728) !important;
  transition: background .2s ease;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table tbody tr:nth-child(even) {
  background: linear-gradient(110deg, #13273c, #101c30) !important;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table tbody tr:hover {
  background: #142940 !important;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table tbody td {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(56, 116, 158, .22) !important;
  padding: 17px 13px !important;
  color: var(--wishlist-txt) !important;
  vertical-align: middle !important;
  font-size: 13px;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table tbody tr:last-child td {
  border-bottom: 0 !important;
}

/* Use the real YITH/Woo image with a consistent white media stage; no crops. */
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-thumbnail {
  width: 124px;
  min-width: 105px;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-thumbnail > a {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #dde6f1;
  background: #f6f8fc;
  border-radius: 11px;
  padding: 8px;
  min-height: 99px;
  text-decoration: none;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-thumbnail img {
  display: block;
  margin: auto !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 112px !important;
  object-fit: contain;
  border: 0 !important;
  border-radius: 5px;
  box-shadow: none !important;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-name {
  min-width: 195px;
  overflow-wrap: anywhere;
  font-weight: 800;
  line-height: 1.55;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-name a {
  color: #edf6ff !important;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.48;
  text-decoration: none !important;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-name a:hover,
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-name a:focus-visible {
  color: #61d9ff !important;
  text-decoration: underline !important;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-price {
  min-width: 110px;
  font-weight: 850;
  color: #f8fbff !important;
  white-space: normal;
  font-size: 14px;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-price :is(.amount,bdi,ins) {
  color: #f8fbff !important;
  font-weight: 850;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-price del,
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-price del .amount {
  color: #9caabd !important;
  font-weight: 500;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-stock-status,
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-stock-status .wishlist-in-stock {
  color: #67e7c0 !important;
  font-weight: 800;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-stock-status .wishlist-out-of-stock {
  color: #ffc17d !important;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-add-to-cart {
  min-width: 155px;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-add-to-cart :is(a.button,button.button,a.add_to_cart_button,a.product_type_variable) {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 137px;
  max-width: 100%;
  min-height: 42px;
  padding: 11px 16px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(84, 164, 246, .30) !important;
  background: linear-gradient(105deg,#7551e9,#197dc0) !important;
  box-shadow: 0 6px 16px rgba(31,55,129,.22);
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  line-height: 1.3 !important;
  text-align: center;
  text-transform: none !important;
  white-space: normal;
  transition: filter .2s, transform .2s;
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-add-to-cart :is(a.button,button.button,a.add_to_cart_button,a.product_type_variable):hover {
  filter: brightness(1.12);
  transform: translateY(-1px);
}
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.product-remove {
  width: 39px;
  padding-left: 13px !important;
  padding-right: 0 !important;
}
body.relay-store-theme.relay-store-wishlist :is(table.wishlist_table, .wishlist_view) a.remove_from_wishlist,
body.relay-store-theme.relay-store-wishlist :is(table.wishlist_table, .wishlist_view) a.remove {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 30px !important;
  height: 30px !important;
  min-width: 30px;
  min-height: 30px;
  padding: 0 !important;
  color: #c8d7e7 !important;
  border-radius: 9px !important;
  border: 1px solid rgba(96,133,167,.35) !important;
  background: #102136 !important;
  box-shadow: none !important;
  font-size: 19px !important;
  line-height: 1 !important;
  text-decoration: none !important;
}
body.relay-store-theme.relay-store-wishlist :is(table.wishlist_table, .wishlist_view) a.remove_from_wishlist:hover,
body.relay-store-theme.relay-store-wishlist :is(table.wishlist_table, .wishlist_view) a.remove:hover {
  color: #fff !important;
  border-color: rgba(255,115,138,.6) !important;
  background: rgba(155,47,77,.46) !important;
}

/* Wishlist sharing is an optional plugin feature. Keep share URLs intact. */
body.relay-store-theme.relay-store-wishlist :is(.yith-wcwl-share, .wishlist-share) {
  display: flex;
  flex-wrap: wrap;
  gap: 11px;
  align-items: center;
  background: linear-gradient(120deg, #0e2033, #10182b);
  border: 1px solid var(--wishlist-edge);
  border-radius: 13px;
  padding: 17px 19px;
  margin: 18px 0 22px;
}
body.relay-store-theme.relay-store-wishlist :is(.yith-wcwl-share, .wishlist-share) :is(h4,h3,span.share-title) {
  margin: 0 10px 0 0 !important;
  padding: 0;
  color: #ecf7ff !important;
  font-weight: 850;
  font-size: 14px;
}
body.relay-store-theme.relay-store-wishlist :is(.yith-wcwl-share, .wishlist-share) ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
}
body.relay-store-theme.relay-store-wishlist :is(.yith-wcwl-share, .wishlist-share) li {
  margin: 0 !important;
  list-style: none;
}
body.relay-store-theme.relay-store-wishlist :is(.yith-wcwl-share, .wishlist-share) li a {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  min-height: 36px;
  border-radius: 9px !important;
  background: rgba(21,48,76,.96) !important;
  color: #d8ecff !important;
  border: 1px solid rgba(76,137,187,.42) !important;
  box-shadow: none !important;
  transition: background .2s, transform .2s;
}
body.relay-store-theme.relay-store-wishlist :is(.yith-wcwl-share, .wishlist-share) li a:hover {
  background: rgba(30,89,127,.95) !important;
  transform: translateY(-2px);
}
/* YITH's empty list is also a normal, readable Relay panel. */
body.relay-store-theme.relay-store-wishlist table.wishlist_table td.wishlist-empty,
body.relay-store-theme.relay-store-wishlist .wishlist-empty,
body.relay-store-theme.relay-store-wishlist .wishlist-empty-message {
  padding: 33px 22px !important;
  text-align: center !important;
  background: #101e31 !important;
  color: #b7cce1 !important;
  border-radius: 12px;
  font-size: 15px;
}
body.relay-store-theme.relay-store-wishlist :is(.yith-wcwl-form, .wishlist-empty) a.button,
body.relay-store-theme.relay-store-wishlist a.button.wishlist-empty-button {
  border-radius: 10px !important;
  background: linear-gradient(115deg, #7056dc, #1586ba) !important;
  color: #fff !important;
  border: 0 !important;
  padding: 12px 19px;
  font-weight: 800;
}

/* Preserve YITH's mobile template behavior instead of replacing table rows. */
@media (max-width: 767px) {
  body.relay-store-theme.relay-store-wishlist :is(.wishlist-title,.wishlist-title-container) {
    padding: 20px 18px;
    border-radius: 13px;
  }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.mobile {
    width: 100%;
    table-layout: auto;
  }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.mobile tbody tr,
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.mobile tbody td {
    background: transparent !important;
    color: var(--wishlist-txt) !important;
  }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.mobile tr {
    border-bottom: 1px solid var(--wishlist-edge);
  }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.mobile td {
    padding: 12px 14px !important;
  }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.mobile td.product-thumbnail {
    min-width: 0;
    width: auto;
  }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.mobile td.product-add-to-cart {
    min-width: 0;
  }
  body.relay-store-theme.relay-store-wishlist :is(.yith-wcwl-share,.wishlist-share) {
    padding: 14px;
  }
  /* Older desktop-style YITH tables can extend past the viewport; contain
     overflow without altering plugin markup, row order or click handlers. */
  body.relay-store-theme.relay-store-wishlist .yith-wcwl-form {
    max-width: 100%;
    min-width: 0;
    overflow-x: auto;
  }
  /* YITH's classic table may still be used on mobile by Porto. Convert just
     that fallback to readable item cards so price and purchase actions remain
     visible without horizontal scrolling. YITH's native .mobile template is
     unaffected. */
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.traditional:not(.mobile),
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.traditional:not(.mobile) tbody {
    display: block !important;
    min-width: 0 !important;
    width: 100% !important;
  }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.traditional:not(.mobile) thead {
    display: none !important;
  }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.traditional:not(.mobile) tbody tr {
    display: grid !important;
    position: relative;
    grid-template-columns: 96px minmax(0,1fr);
    grid-template-areas: 'image name' 'price stock' 'action action';
    column-gap: 13px;
    row-gap: 8px;
    padding: 14px;
    border-bottom: 1px solid var(--wishlist-edge);
  }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.traditional:not(.mobile) tbody td {
    display: block !important;
    padding: 6px 0 !important;
    width: auto !important;
    min-width: 0 !important;
    border: 0 !important;
  }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.traditional:not(.mobile) td.product-thumbnail { grid-area: image; align-self: start; }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.traditional:not(.mobile) td.product-name { grid-area: name; padding-right: 20px !important; }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.traditional:not(.mobile) td.product-price { grid-area: price; font-size: 13px; }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.traditional:not(.mobile) td.product-stock-status { grid-area: stock; font-size: 13px; }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.traditional:not(.mobile) td.product-add-to-cart { grid-area: action; }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.traditional:not(.mobile) td.product-add-to-cart a.button { width: 100%; }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.traditional:not(.mobile) td.product-remove {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 2;
  }
  body.relay-store-theme.relay-store-wishlist table.wishlist_table.traditional:not(.mobile) td.product-thumbnail > a {
    min-height: 94px;
    padding: 6px;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.relay-store-theme.relay-store-wishlist table.wishlist_table a,
  body.relay-store-theme.relay-store-wishlist :is(.yith-wcwl-share,.wishlist-share) li a {
    transition: none !important;
  }
}
