/* Kept separate from the answer-card/design stylesheet. */
.own-shop .own-shop-cards{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:12px}
.own-shop .own-shop-cards li{display:block;border:0;padding:0;min-width:0}
.own-shop-cards a{display:flex;align-items:center;gap:12px;min-height:72px;padding:8px;border:1px solid var(--line);border-radius:var(--r);text-decoration:none}
.own-shop-cards a:focus-visible{outline:3px solid currentColor;outline-offset:3px}
.own-shop-cards img{display:block;flex:0 0 72px;width:72px;height:72px;object-fit:contain;border-radius:8px;background:#fff}
.own-shop-details{display:flex;flex-direction:column;gap:4px;min-width:0}
.own-shop .own-shop-cards .own-shop-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;text-overflow:ellipsis;color:inherit;font-size:.9375rem;line-height:1.35;overflow-wrap:anywhere}
.own-shop-cards strong{font-weight:700;white-space:nowrap}

.own-shop .own-shop-cards li:nth-child(n+4){display:none}
.prose .own-shop h2{margin:0 0 4px;font-size:1.0625rem}
@media(min-width:768px){
  .own-shop .own-shop-cards{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(160px,auto);align-items:stretch}
  .own-shop .own-shop-cards li:nth-child(n+4){display:block}
  /* The hero takes its height from the small cards (contain:size), so the rows close up. */
  .own-shop .own-shop-cards li:first-child{grid-column:span 2;grid-row:span 2;contain:size}
  .own-shop .own-shop-cards:not(:has(li:nth-child(4))) li:not(:first-child){grid-column:span 2}
  /* Widen the last cards so 4, 7 or 8 items leave no empty cell. */
  .own-shop .own-shop-cards li:nth-child(4):last-child,
  .own-shop .own-shop-cards li:nth-child(6):nth-last-child(2),
  .own-shop .own-shop-cards li:nth-child(7):last-child,
  .own-shop .own-shop-cards li:nth-child(8):last-child{grid-column:span 2}
  .own-shop .own-shop-cards li:nth-child(6):last-child{grid-column:span 4}
  .own-shop-cards a{height:100%;box-sizing:border-box;flex-direction:column;align-items:stretch;gap:8px}
  .own-shop-cards img{flex:0 0 auto;width:100%;height:88px}
  .own-shop-cards li:first-child a{display:grid;grid-template-rows:minmax(0,1fr) auto}
  .own-shop-cards li:first-child img{min-height:0;height:100%;object-fit:contain}
  .own-shop-cards li:first-child .own-shop-name{font-size:1.125rem;-webkit-line-clamp:3}
  .own-shop-cards li:first-child strong{font-size:1.25rem}
}
