/* All collection grids retain appended cards and share the Official Merch framework. */
.zzz-home .grid--official, .zzz-home .grid--collection { grid-template-columns: repeat(6, minmax(0, 1fr)); margin-top: 24px; }
.zzz-home .official-controls, .zzz-home .collection-controls { display: flex; flex-direction: column; align-items: center; gap: 14px; margin-top: 34px; }
.zzz-home .official-status, .zzz-home .collection-status { color: var(--text-2); font-size: 12px; text-align: center; }
.zzz-home .official-more, .zzz-home .collection-more { justify-content: center; min-width: 178px; min-height: 44px; border: 0; }
.zzz-home .official-more:disabled, .zzz-home .collection-more:disabled { cursor: default; background: var(--panel); color: var(--text-3); }
.zzz-home .official-more[hidden], .zzz-home .collection-more[hidden] { display: none; }
.zzz-home .figure-showcase { position: relative; margin-top: 24px; padding: 24px; border: 1px solid var(--line); background: var(--panel); }
.zzz-home .figure-showcase::before, .zzz-home .figure-showcase::after { content: ""; position: absolute; width: 56px; height: 2px; background: var(--signal); }
.zzz-home .figure-showcase::before { top: -1px; left: 24px; }
.zzz-home .figure-showcase::after { bottom: -1px; right: 24px; }
@media (max-width: 1180px) { .zzz-home .grid--official, .zzz-home .grid--collection { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 860px) { .zzz-home .grid--official, .zzz-home .grid--collection { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 640px) {
  .zzz-home .grid--official, .zzz-home .grid--collection { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 12px; }
  .zzz-home .official-controls, .zzz-home .collection-controls { margin-top: 26px; }
  .zzz-home .figure-showcase { padding: 14px; }
}
