/* NxRoms v223 — cartes catalogue harmonisées avec le thème pastel */
body.nx-v207-public #nx207GridContent.nx207-grid{
  gap:16px !important;
}

body.nx-v207-public #nx207GridContent .nx207-card.game-card{
  position:relative !important;
  overflow:hidden !important;
  border-radius:16px !important;
  border:1px solid rgba(124,58,237,.12) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(249,247,255,.98)) !important;
  color:#2b2d42 !important;
  box-shadow:
    0 10px 28px rgba(74,67,119,.10),
    0 1px 0 rgba(255,255,255,.85) inset !important;
  min-height:332px !important;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease !important;
}
body.nx-v207-public #nx207GridContent .nx207-card.game-card:hover{
  transform:translateY(-5px) !important;
  border-color:rgba(124,58,237,.28) !important;
  box-shadow:
    0 18px 38px rgba(88,70,148,.15),
    0 1px 0 rgba(255,255,255,.9) inset !important;
}

body.nx-v207-public #nx207GridContent .nx207-card .nx207-cover.game-cover{
  position:relative !important;
  height:226px !important;
  min-height:226px !important;
  overflow:hidden !important;
  border-radius:15px 15px 0 0 !important;
  background:
    radial-gradient(circle at 50% 20%,rgba(255,255,255,.95),rgba(245,242,255,.75) 42%,rgba(229,232,245,.92) 100%) !important;
  border-bottom:1px solid rgba(124,58,237,.08) !important;
}
body.nx-v207-public #nx207GridContent .nx207-cover::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:34px;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.10));
  z-index:1;
}
body.nx-v207-public #nx207GridContent .nx207-cover img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  padding:0 !important;
  border-radius:0 !important;
  transition:transform .22s ease,filter .22s ease !important;
}
body.nx-v207-public #nx207GridContent .nx207-card:hover .nx207-cover img:not(.fit-contain){
  transform:scale(1.025) !important;
  filter:saturate(1.03) !important;
}
body.nx-v207-public #nx207GridContent .nx207-cover img.fit-contain{
  object-fit:contain !important;
  padding:10px !important;
  background:
    radial-gradient(circle at 50% 25%,#fff 0,#f7f4ff 48%,#e9eaf4 100%) !important;
}
body.nx-v207-public #nx207GridContent .nx207-no-cover{
  color:rgba(99,72,160,.28) !important;
  font:900 30px/1 Outfit,Inter,sans-serif !important;
  letter-spacing:.03em !important;
}

body.nx-v207-public #nx207GridContent .nx207-info.game-info{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  padding:13px 13px 14px !important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,245,255,.98)) !important;
}
body.nx-v207-public #nx207GridContent .nx207-info.game-info::before{
  content:"";
  position:absolute;
  left:13px;right:13px;top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(124,58,237,.14),transparent);
}
body.nx-v207-public #nx207GridContent .nx207-title,
body.nx-v207-public #nx207GridContent .game-info h3{
  margin:0 !important;
  color:#2f3144 !important;
  min-height:2.55em !important;
  font:800 12.5px/1.3 Outfit,Inter,sans-serif !important;
  letter-spacing:-.01em !important;
  overflow-wrap:anywhere !important;
}
body.nx-v207-public #nx207GridContent .nx207-card:hover .nx207-title,
body.nx-v207-public #nx207GridContent .nx207-card:hover .game-info h3{
  color:#6540c8 !important;
}
body.nx-v207-public #nx207GridContent .nx207-meta,
body.nx-v207-public #nx207GridContent .game-info .meta{
  margin-top:auto !important;
  padding-top:10px !important;
  color:#7b8092 !important;
  font:650 9.5px/1.45 Inter,sans-serif !important;
}

/* badges : colorés mais plus doux */
body.nx-v207-public #nx207GridContent .nx207-badges{
  top:8px !important;
  right:8px !important;
  gap:5px !important;
  z-index:4 !important;
}
body.nx-v207-public #nx207GridContent .nx207-badge{
  padding:4px 7px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,.72) !important;
  color:#fff !important;
  font:900 8px/1 Inter,sans-serif !important;
  box-shadow:0 5px 13px rgba(40,33,72,.20) !important;
  backdrop-filter:blur(5px) !important;
}
body.nx-v207-public #nx207GridContent .nx207-badge.dlc{background:linear-gradient(135deg,#9b6cf2,#7139d5) !important;}
body.nx-v207-public #nx207GridContent .nx207-badge.xci{background:linear-gradient(135deg,#d84a58,#a91e2b) !important;}
body.nx-v207-public #nx207GridContent .nx207-badge.nsp{background:linear-gradient(135deg,#19a7b7,#087b8a) !important;}
body.nx-v207-public #nx207GridContent .nx207-badge.pkg{background:linear-gradient(135deg,#64748b,#475569) !important;}
body.nx-v207-public #nx207GridContent .nx207-badge.rar,
body.nx-v207-public #nx207GridContent .nx207-badge.zip,
body.nx-v207-public #nx207GridContent .nx207-badge['7z']{background:linear-gradient(135deg,#78849a,#536075) !important;}

/* Vue liste : même langage visuel, compacte */
body.nx-v207-public.nx207-list #nx207GridContent .nx207-card.game-card{
  grid-template-columns:104px minmax(0,1fr) !important;
  grid-template-rows:126px !important;
  height:126px !important;
  min-height:126px !important;
  max-height:126px !important;
  border-radius:14px !important;
  background:linear-gradient(90deg,#fff 0%,#fbf9ff 100%) !important;
}
body.nx-v207-public.nx207-list #nx207GridContent .nx207-card .nx207-cover.game-cover{
  width:104px !important;
  height:126px !important;
  min-height:126px !important;
  border-radius:13px 0 0 13px !important;
  border-right:1px solid rgba(124,58,237,.08) !important;
  border-bottom:0 !important;
}
body.nx-v207-public.nx207-list #nx207GridContent .nx207-info.game-info{
  height:126px !important;
  min-height:126px !important;
  padding:16px 18px !important;
  justify-content:center !important;
  background:linear-gradient(90deg,#fff,#faf7ff) !important;
}
body.nx-v207-public.nx207-list #nx207GridContent .nx207-info.game-info::before{display:none !important;}
body.nx-v207-public.nx207-list #nx207GridContent .nx207-title,
body.nx-v207-public.nx207-list #nx207GridContent .game-info h3{
  min-height:0 !important;
  font-size:16px !important;
}
body.nx-v207-public.nx207-list #nx207GridContent .nx207-meta,
body.nx-v207-public.nx207-list #nx207GridContent .game-info .meta{
  margin-top:4px !important;
  padding-top:0 !important;
  font-size:11px !important;
}

@media(max-width:640px){
  body.nx-v207-public #nx207GridContent.nx207-grid{gap:10px !important;}
  body.nx-v207-public #nx207GridContent .nx207-card.game-card{border-radius:13px !important;min-height:294px !important;}
  body.nx-v207-public #nx207GridContent .nx207-card .nx207-cover.game-cover{height:194px !important;min-height:194px !important;border-radius:12px 12px 0 0 !important;}
  body.nx-v207-public #nx207GridContent .nx207-info.game-info{padding:11px 10px 12px !important;}
  body.nx-v207-public.nx207-list #nx207GridContent .nx207-card.game-card{grid-template-columns:82px minmax(0,1fr) !important;grid-template-rows:108px !important;height:108px !important;min-height:108px !important;max-height:108px !important;}
  body.nx-v207-public.nx207-list #nx207GridContent .nx207-card .nx207-cover.game-cover{width:82px !important;height:108px !important;min-height:108px !important;border-radius:12px 0 0 12px !important;}
  body.nx-v207-public.nx207-list #nx207GridContent .nx207-info.game-info{height:108px !important;min-height:108px !important;padding:12px 13px !important;}
}
