.favorites-page .wrap{
  width: 100%;
  max-width: 100vw;
  margin-inline: 0;
  padding-left: var(--page-gutter);
  padding-right: var(--page-gutter);
  padding-top: 1rem;
  padding-bottom: 3rem; /* зазор перед футером */  
  box-sizing: border-box;
}
@media (max-width:1024px){
  .right-content{ padding-right: min(4vw,24px); }
}
.fav-title{
  font-size: clamp(1.6rem, 2.4vw, 2.2rem);
  font-weight: 800;
  margin-bottom: 1rem;
}
.fav-subtitle{
  font-size: clamp(1.1rem, 1.8vw, 1.4rem);
  font-weight: 800;
  margin: 1.2rem 0 .8rem;
}
/* счётчик рядом с заголовком */
.fav-title .fav-count{
  color: var(--nt-text-dim, #b0b3c7);
  font-weight: 700;
  margin-left: .5rem;
}
.fav-empty{
  background: #1b1e28;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 12px;
  padding: 1.6rem;
  text-align: center;
  color: #b0b3c7;
}
.fav-login-btn{
  margin-top: .8rem;
  background: var(--nt-primary, #7709FF);
  color:#fff; border:0; border-radius:8px;
  padding:.7rem 1.2rem; font-weight:700; cursor:pointer;
}

/* ===== Сетка карточек избранного: строго 5-4-3-2-1 ===== */
#favGrid{
  display: grid;
  gap: 1.2rem;
  grid-template-columns: repeat(1, minmax(0, 1fr));
  margin-bottom: 2.4rem; /* доп. отступ от сетки до футера */
}
@media (min-width: 600px){  #favGrid{ grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (min-width: 900px){  #favGrid{ grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (min-width: 1200px){ #favGrid{ grid-template-columns: repeat(4, minmax(0,1fr)); } }
@media (min-width: 1500px){ #favGrid{ grid-template-columns: repeat(5, minmax(0,1fr)); } }

/* ====== Отдельная сетка и стиль карточек ИГР (5-4-3-2-1) ====== */
#favGamesGrid.fav-games-grid{
  display:grid;
  gap: 1.2rem;
  grid-template-columns: repeat(1, minmax(0,1fr));
  margin-bottom: 2rem;
}
@media (min-width: 600px){  #favGamesGrid.fav-games-grid{ grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (min-width: 900px){  #favGamesGrid.fav-games-grid{ grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (min-width: 1200px){ #favGamesGrid.fav-games-grid{ grid-template-columns: repeat(4, minmax(0,1fr)); } }
@media (min-width: 1500px){ #favGamesGrid.fav-games-grid{ grid-template-columns: repeat(5, minmax(0,1fr)); } }

.fav-game-card{
  position: relative;
  display:block;
  border-radius: 20px;
  overflow: hidden;
  border:1px solid rgba(255,255,255,.08);
  background:#0f1016;
  text-decoration:none;
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
  transition:
    transform var(--nt-transition, .24s cubic-bezier(.25,.8,.25,1)),
    box-shadow var(--nt-transition, .24s cubic-bezier(.25,.8,.25,1)),
    border-color var(--nt-transition, .24s cubic-bezier(.25,.8,.25,1));
}
.fav-game-card .fgc-media{ aspect-ratio: 16/9; background:#0e1118; }
.fav-game-card .fgc-media img{
  width:100%; height:100%; object-fit:cover; display:block;
  transition: transform .45s ease;
}
.fav-game-card .fgc-overlay{
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(4,6,10,0) 40%, rgba(4,6,10,.88) 100%);
  display:flex; align-items:flex-end; justify-content:flex-start;
 padding: 12px 14px;
}
.fav-game-card .fgc-info{ display:flex; align-items:center; gap:10px; }
.fav-game-card .fgc-svg{ display:inline-grid; place-items:center; width:28px; height:28px; }
.fav-game-card .fgc-svg img, 
.fav-game-card .fgc-svg svg{ width:28px; height:28px; display:block; }
.fav-game-card .fgc-title{ font-weight:800; color:#fff; font-size:16px; }

/* Hover/Focus: приподнять, подсветить, чуть приблизить изображение */
@media (hover:hover){
  .fav-game-card:hover{
    transform: translateY(-4px);
    box-shadow: 0 6px 24px rgba(119, 9, 255, .35);
    border-color: rgba(255,255,255,.16);
  }
  .fav-game-card:hover .fgc-media img{ transform: scale(1.06); }
}
.fav-game-card:focus-visible{
  outline: 2px solid #7709FF;
  outline-offset: 2px;
  transform: translateY(-3px);
  box-shadow: 0 6px 22px rgba(119, 9, 255, .32);
  border-color: rgba(255,255,255,.18);
}
@media (prefers-reduced-motion: reduce){
  .fav-game-card, .fav-game-card .fgc-media img{ transition: none !important; }
}

/* убрать любые подчёркивания у карточек игр */
.favorites-page #favGamesGrid .fav-game-card,
.favorites-page #favGamesGrid .fav-game-card *{ text-decoration: none !important; }

/* пустые «shelf» секции (как на скрине) */
.fav-empty-shelf{
  background: radial-gradient(80% 120% at 70% -10%, rgba(119,9,255,.18), transparent 60%), #0f1016;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 24px;
  padding: 1.3rem 1.4rem 1.6rem;
  margin: 0 0 1.6rem 0;
  box-shadow: 0 8px 28px rgba(0,0,0,.28) inset;
}
.fav-empty-shelf.outlined{ border-color: rgba(255,255,255,.14); }
/* универсальные плитки-плейсхолдеры */
.fav-ghost-grid .ghost-card,
.fav-ghost-row .ghost-card{
  height: 120px;
  background: linear-gradient(180deg, #1d1f28 0%, #171922 100%);
  border-radius: 22px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 12px 30px rgba(0,0,0,.35);
}

/* новый «shelf» — всегда одна строка: 5→4→3→2→1 */
.fav-ghost-row{
  position: relative;
  display: grid;
  gap: 1.2rem;
  margin-top: .8rem;
  grid-template-columns: repeat(1, 1fr);           /* 1 */
}
@media (min-width: 600px){  .fav-ghost-row{ grid-template-columns: repeat(2, 1fr); } } /* 2 */
@media (min-width: 900px){  .fav-ghost-row{ grid-template-columns: repeat(3, 1fr); } } /* 3 */
@media (min-width: 1200px){ .fav-ghost-row{ grid-template-columns: repeat(4, 1fr); } } /* 4 */
@media (min-width: 1500px){ .fav-ghost-row{ grid-template-columns: repeat(5, 1fr); } } /* 5 */

/* Показываем только нужное кол-во плиток в ОДНУ строку (без переноса).
   На узких ширинах лишние скрываем: 1 → 2 → 3 → 4 → 5. */
.fav-ghost-row .ghost-card{ display:none; }        /* базово скрыты все */
.fav-ghost-row .ghost-card:nth-child(1){ display:block; }                  /* 1 */
@media (min-width: 600px){  .fav-ghost-row .ghost-card:nth-child(-n+2){ display:block; } }  /* 2 */
@media (min-width: 900px){  .fav-ghost-row .ghost-card:nth-child(-n+3){ display:block; } }  /* 3 */
@media (min-width: 1200px){ .fav-ghost-row .ghost-card:nth-child(-n+4){ display:block; } }  /* 4 */
@media (min-width: 1500px){ .fav-ghost-row .ghost-card:nth-child(-n+5){ display:block; } }  /* 5 */

/* центральная подпись поверх всех плиток */
.fav-ghost-row .ghost-label{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  color:#fff;
  font-weight: 700;
  text-align: center;
  pointer-events: none;
}

/* Карточка в избранном — это <a>. Снимаем подчеркивание у САМОЙ карточки. */
.favorites-page #favGrid a.product-card-new,
.favorites-page #favGrid a.product-card-new:visited,
.favorites-page #favGrid a.product-card-new:hover,
.favorites-page #favGrid a.product-card-new:active{
  text-decoration: none;
}