.gallery__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr)); gap: 1rem; }
.gallery__card { display: flex; min-height: 18rem; flex-direction: column; border: 1px solid oklch(.7 .03 255 / 35%); border-radius: 1.25rem; background: white; padding: 1.25rem; box-shadow: 0 .75rem 2rem oklch(.3 .08 255 / 8%); }
.gallery__card-top { display: flex; align-items: center; justify-content: space-between; gap: .75rem; color: oklch(.44 .12 255); }
.gallery__mark { display: grid; width: 2.5rem; height: 2.5rem; place-items: center; border-radius: .75rem; background: oklch(.93 .05 255); color: oklch(.38 .13 255); font-weight: 900; }
.gallery__card-title { margin-top: 1.25rem; font-size: 1.35rem; font-weight: 900; }
.gallery__card-date { margin-top: .35rem; color: oklch(.45 .03 255); font-size: .78rem; }
.gallery__card-art { max-width: 14rem; margin: 1rem auto 0; overflow: hidden; border-radius: .8rem; }
.gallery__card-art .sixth-wave__creature-svg { display: block; width: 100%; height: auto; }
.gallery__card-text { min-height: 7rem; flex: 1; margin-top: 1rem; overflow: auto; white-space: pre-wrap; border-radius: .8rem; background: oklch(.97 .02 255); padding: .9rem; color: oklch(.28 .05 255); font: inherit; line-height: 1.5; }
.gallery__card-actions { display: flex; justify-content: flex-end; gap: .5rem; margin-top: 1rem; }
.gallery__empty { background: oklch(.98 .02 255); }
