#album-status:empty { min-height: 0; margin: 0; }
.album-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(28px, 3vw, 40px) clamp(12px, 1.7vw, 24px);
  padding-top: 8px;
}
.album-card { min-width: 0; }
.album-link { display: block; }
.album-link:focus-visible { outline: 2px solid var(--accent); outline-offset: 6px; border-radius: 3px; }
.album-stack {
  position: relative;
  isolation: isolate;
  aspect-ratio: 1;
  --print-inset: clamp(8px, 1vw, 12px);
}
.album-print {
  position: absolute;
  inset: var(--print-inset);
  overflow: hidden;
  background: #eeeae2;
  border: clamp(4px, .65vw, 8px) solid #eeeae2;
  box-shadow: 0 1px 3px #0003, 0 8px 20px #0002;
}
.album-print img { display: block; width: 100%; height: 100%; object-fit: cover; }
.album-print-2 { transform: translate(-1%, -1.5%) rotate(-3deg); }
.album-print-1 { transform: translate(1%, -.5%) rotate(3deg); }
.album-print-1 img, .album-print-2 img { filter: brightness(.8) saturate(.8); }
.album-print-0 { box-shadow: 0 1px 4px #0003, 0 10px 24px #0003; }
.album-list h2 { margin: 14px 0 8px; font-size: clamp(.95rem, 1.8vw, 1.3rem); line-height: 1.5; word-break: keep-all; }
.album-link:hover h2 { color: var(--accent); }
.album-card > p { color: var(--muted); font-size: .75rem; line-height: 1.8; margin: 0; }
.album-card .tag-list { margin-top: 10px; }
.album-card .tag-list span { overflow-wrap: anywhere; max-width: 100%; }
.album-stack .album-placeholder { height: 100%; aspect-ratio: auto; padding: 16px; }
@media (max-width: 1000px) {
  .album-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 580px) {
  .album-list { gap: 24px 12px; }
  .album-list h2 { margin-top: 10px; font-size: .9375rem; }
  .album-card > p { font-size: .6875rem; }
  .album-card .tag-list { gap: 4px; }
  .album-card .tag-list span { padding: 3px 6px; font-size: .625rem; }
  .album-stack .album-placeholder { font-size: .75rem; padding: 8px; }
}
