.brsl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
@media(max-width:900px){.brsl-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:600px){.brsl-grid{grid-template-columns:1fr;}}
.brsl-card{display:block;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;transition:.2s;box-shadow:0 8px 20px rgba(0,0,0,.25);}
.brsl-card:hover{transform:translateY(-2px);box-shadow:0 14px 36px rgba(0,0,0,.35);}
.brsl-card img{width:100%;height:auto;display:block;}
.brsl-card-title{padding:10px;font-weight:600;font-size:.95rem;}
.brsl-btn{display:inline-block;padding:10px 18px;border-radius:999px;background:#ff2455;color:#fff;text-decoration:none;transition:.2s;}
.brsl-btn:hover{filter:brightness(1.1);}

/* Auto-centering for fewer items */
.brsl-grid {
  justify-content: center;
  justify-items: center;
}
.brsl-grid > .brsl-card {
  max-width: 320px;
  width: 100%;
}

/* v0.2.4 centering + theme button */
.brsl-collection-preview, .brsl-random{ display:grid; justify-items:center; }
.brsl-grid{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 18px;
  justify-content:center;
}
.brsl-card{
  max-width: 340px;
}
.brsl-btn{
  background: var(--brr-accent, #ff2455);
  border: 1px solid color-mix(in oklab, var(--brr-accent, #ff2455), #000 25%);
  box-shadow: 0 8px 22px rgba(0,0,0,.35), 0 0 18px color-mix(in oklab, var(--brr-accent, #ff2455), #fff 10% / 35%);
}
.brsl-btn:hover{ filter: brightness(1.06) saturate(1.02); }

/* v0.2.5: responsive centering by item count using :has() */
.brsl-collection-preview, .brsl-random{ justify-items: center; }
.brsl-grid{ margin: 0 auto; }
.brsl-grid:not(:has(.brsl-card:nth-child(2))){ /* 1 item */
  grid-template-columns: 1fr;
  max-width: 360px;
}
.brsl-grid:has(.brsl-card:nth-child(2)):not(:has(.brsl-card:nth-child(3))){ /* 2 items */
  grid-template-columns: repeat(2, minmax(260px, 1fr));
  max-width: 720px;
}
/* 3+ falls back to auto-fit rule already present */
