/* v148 — Tarjetas compactas, especialmente para un solo comercio real.
   Importante: no generar comercios ni calificaciones ficticias. */
/* Reemplaza estrictamente la regla heredada v138 que expandía 1 comercio a toda la pantalla. */
@media (min-width: 761px) {
 html body#ssRacingPage #mainContainer.ss-client-modern
 .restaurant-grid.ssw146-restaurants:has(> .restaurant-card):not(:has(> .restaurant-card ~ .restaurant-card)) {
   display:grid!important;
   grid-template-columns:repeat(4,minmax(0,1fr))!important;
   align-items:start!important;
   gap:12px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern
 .restaurant-grid.ssw146-restaurants:has(> .restaurant-card):not(:has(> .restaurant-card ~ .restaurant-card)) > .restaurant-card {
   width:100%!important;
   min-width:0!important;
   max-width:none!important;
   min-height:0!important;
   height:auto!important;
   display:grid!important;
   grid-template-columns:96px minmax(0,1fr)!important;
   gap:10px!important;
   align-items:center!important;
   padding:10px!important;
   border:1px solid #e6e8ef!important;
   border-radius:16px!important;
   box-sizing:border-box!important;
   overflow:hidden!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern
 .restaurant-grid.ssw146-restaurants:has(> .restaurant-card):not(:has(> .restaurant-card ~ .restaurant-card)) > .restaurant-card > img.restaurant-image {
   display:block!important;
   width:96px!important;
   min-width:96px!important;
   max-width:96px!important;
   height:110px!important;
   min-height:110px!important;
   max-height:110px!important;
   flex:0 0 96px!important;
   object-fit:contain!important;
   object-position:center!important;
   border-radius:11px!important;
   background:#f4f6f9!important;
   box-shadow:none!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern
 .restaurant-grid.ssw146-restaurants:has(> .restaurant-card):not(:has(> .restaurant-card ~ .restaurant-card)) > .restaurant-card > .ss-client-restaurant-body {
   min-width:0!important;
   width:100%!important;
   padding:2px 18px 2px 0!important;
   gap:3px!important;
   margin:0!important;
   box-sizing:border-box!important;
   justify-content:center!important;
   align-items:flex-start!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern
 .restaurant-grid.ssw146-restaurants:has(> .restaurant-card):not(:has(> .restaurant-card ~ .restaurant-card)) .restaurant-name {
   overflow-wrap:anywhere!important;
   font-size:14px!important;
   line-height:1.15!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern
 .restaurant-grid.ssw146-restaurants:has(> .restaurant-card):not(:has(> .restaurant-card ~ .restaurant-card)) .restaurant-info,
 html body#ssRacingPage #mainContainer.ss-client-modern
 .restaurant-grid.ssw146-restaurants:has(> .restaurant-card):not(:has(> .restaurant-card ~ .restaurant-card)) .restaurant-categories {
   font-size:11px!important;
   line-height:1.3!important;
   overflow-wrap:anywhere!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern
 .restaurant-grid.ssw146-restaurants:has(> .restaurant-card):not(:has(> .restaurant-card ~ .restaurant-card)) .ss-client-closed-info {
   display:block!important;
   max-width:100%!important;
   font-size:10px!important;
   line-height:1.25!important;
 }
}
/* En otros comercios, logos cuadrados completos y nunca distorsionados. */
html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants > .restaurant-card > img.restaurant-image {
  object-fit:contain!important;
  object-position:center!important;
  background:linear-gradient(135deg,#f7f8fa,#eef0f4)!important;
}
html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants > .restaurant-card {
  overflow:hidden!important;
  box-sizing:border-box!important;
}
/* Los botones secundarios y estados no deben ensanchar ni tapar la tarjeta. */
html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants .ss-client-restaurant-body {min-width:0!important;}
html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants .ss-client-closed-info {overflow-wrap:anywhere!important;}
/* 3 columnas de 761 a 1150 px, con una sola tarjeta aún compacta. */
@media (min-width:761px) and (max-width:1150px) {
 html body#ssRacingPage #mainContainer.ss-client-modern
 .restaurant-grid.ssw146-restaurants:has(> .restaurant-card):not(:has(> .restaurant-card ~ .restaurant-card)) {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
 }
}
/* Móvil: se conserva formato horizontal, más espacio para leer textos. */
@media (max-width:760px) {
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants {display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;}
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants > .restaurant-card {
   display:grid!important;
   grid-template-columns:108px minmax(0,1fr)!important;
   align-items:center!important;
   min-width:0!important;
   min-height:125px!important;
   max-height:none!important;
   gap:10px!important;
   padding:8px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants > .restaurant-card > img.restaurant-image {
   width:108px!important; min-width:108px!important;max-width:108px!important;
   height:108px!important;min-height:108px!important;max-height:108px!important;
   object-fit:contain!important;
   border-radius:10px!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants > .restaurant-card > .ss-client-restaurant-body {
   min-width:0!important;width:100%!important;padding:2px 19px 2px 0!important;
 }
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants .restaurant-name {font-size:13px!important;line-height:1.2!important;}
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants .restaurant-info {font-size:11px!important;line-height:1.25!important;}
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants .ss-client-closed-info {font-size:10px!important;line-height:1.2!important;}
}
@media(max-width:359px){
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants > .restaurant-card {grid-template-columns:90px minmax(0,1fr)!important;gap:8px!important;}
 html body#ssRacingPage #mainContainer.ss-client-modern .restaurant-grid.ssw146-restaurants > .restaurant-card > img.restaurant-image {width:90px!important;min-width:90px!important;max-width:90px!important;height:96px!important;min-height:96px!important;max-height:96px!important;}
}

@media (min-width:761px) and (max-width:1000px) {
 html body#ssRacingPage #mainContainer.ss-client-modern
 .restaurant-grid.ssw146-restaurants:has(> .restaurant-card):not(:has(> .restaurant-card ~ .restaurant-card)) {
   grid-template-columns:repeat(2,minmax(0,1fr))!important;
 }
}
