/* Item Collections expressed in the original PhpOG library language. */
.collection-shell { max-width: none; margin: 0; padding: 40px; color: #cbd5e1; }
.collection-hero { margin-bottom: 32px; padding: 0 0 32px; border: 0; border-bottom: 1px solid #334155; border-radius: 0; background: transparent; }
.collection-hero h1,
.collection-detail h1 { margin: 8px 0; color: #fbbf24; font-size: 32px; font-weight: 700; line-height: 1.2; }
.collection-hero p,
.collection-summary { max-width: 700px; margin-bottom: 0; color: #cbd5e1; font-size: 16px; line-height: 1.7; }
.collection-eyebrow,
.collection-card > span,
.collection-directory-card > span { color: #94a3b8; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.collection-grid,
.collection-grid-responsive { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 24px; }
.collection-grid-one { grid-template-columns: 1fr; }
.collection-grid-two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.collection-grid-three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.collection-card,
.collection-directory-card { display: flex; min-height: 0; flex-direction: column; padding: 24px; border: 1px solid #334155; border-radius: 8px; background: #1e293b; transition: border-color .2s ease, transform .2s ease; }
.collection-card:hover,
.collection-directory-card:hover { border-color: #fbbf24; transform: translateY(-4px); }
.collection-card h2,
.collection-directory-card h2 { margin: 10px 0 12px; font-size: 18px; line-height: 1.3; }
.collection-card h2 a,
.collection-directory-card h2 a { color: #fbbf24; }
.collection-card p,
.collection-directory-card p { min-height: 0; margin-bottom: 16px; color: #cbd5e1; font-size: 14px; line-height: 1.7; }
.collection-card > a:last-child,
.collection-directory-card > a:last-child { margin-top: auto; color: #fbbf24; font-size: 13px; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.collection-detail { max-width: 900px; margin: 0 auto; padding: 0; border: 0; border-radius: 0; background: transparent; color: #cbd5e1; line-height: 1.8; }
.collection-detail figure { margin: 28px 0; }
.collection-detail img,
.collection-detail video { border: 1px solid #334155; border-radius: 8px; }
.collection-code pre { padding: 24px; overflow-x: auto; border: 1px solid #334155; border-radius: 8px; background: #0c1221; color: #e2e8f0; }
.collection-empty { padding: 24px; border: 1px solid #334155; border-radius: 8px; background: #1e293b; }
.collection-button { border-color: #fbbf24; border-radius: 6px; background: #fbbf24; color: #0f172a; }
@media (max-width: 768px) {
	.collection-shell { padding: 24px; }
	.collection-grid,
	.collection-grid-two,
	.collection-grid-three,
	.collection-grid-responsive { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
	.collection-shell { padding: 18px 14px 32px; }
}
