/* ===========================================================================
   GaDangme — Reading List / Useful Links resource cards, resource single,
   and directory card images. Loaded on those views.
   ========================================================================== */

.resource-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(300px, 1fr)); gap:var(--space-lg); }

.resource-card { display:flex; flex-direction:column; background:var(--bg); border:1px solid var(--border); border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow); transition:box-shadow var(--duration) var(--ease-out), transform var(--duration) var(--ease-out); }
.resource-card:hover { box-shadow:var(--shadow-md); transform:translateY(-2px); }
.resource-card__cover { display:block; aspect-ratio:16/10; overflow:hidden; }
.resource-card__cover img { width:100%; height:100%; object-fit:cover; }
.resource-card__body { display:flex; flex-direction:column; gap:.4rem; padding:var(--space-lg); flex:1; }
.resource-card__title { margin:0; font-family:var(--font-display); font-size:1.15rem; line-height:1.25; }
.resource-card__title a { color:var(--text); }
.resource-card__title a:hover { color:var(--brand-purple); }
.resource-card__author { margin:0; color:var(--text-light); font-size:.88rem; }
.resource-card__desc { margin:0; color:var(--text-light); font-size:.9rem; flex:1; }
.resource-card__links { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:var(--space-sm); }

.resource-link { display:inline-block; padding:.4rem .9rem; border-radius:var(--radius-pill); font-size:.82rem; font-weight:600; border:1px solid var(--border); color:var(--brand-purple); transition:background var(--duration) var(--ease-out), color var(--duration) var(--ease-out); }
.resource-link:hover { background:var(--brand-gradient); color:#fff; border-color:transparent; }
.resource-link--buy { background:var(--brand-gradient); color:#fff; border-color:transparent; }
.resource-link--buy:hover { filter:brightness(.95); color:#fff; }

/* Resource / book single — cover left, details right */
.resource-single__layout { display:flex; gap:var(--space-lg); align-items:flex-start; padding:var(--space-lg) 0; }
.resource-single__cover { flex:0 0 210px; max-width:210px; }
.resource-single__cover img { width:100%; height:auto; border-radius:var(--radius); box-shadow:var(--shadow-md); }
.resource-single__meta { flex:1; min-width:0; }
.resource-single__meta .article-meta { margin-bottom:var(--space-xs); }
.resource-single__title { font-family:var(--font-display); font-size:clamp(1.7rem,3vw,2.3rem); line-height:1.15; margin:0 0 .2rem; }
.resource-single__author { margin:0 0 var(--space-sm); color:var(--text-light); font-size:1rem; }
.resource-single__desc { font-size:1.02rem; line-height:1.55; color:var(--text); margin:0; }
.resource-single__meta .article-content { margin-top:var(--space-sm); }
.resource-single__meta .article-content > :last-child { margin-bottom:0; }
.resource-single__links { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:var(--space-md); }
@media (max-width:640px) {
	.resource-single__layout { flex-direction:column; gap:var(--space-md); }
	.resource-single__cover { flex:0 0 auto; max-width:190px; }
}
