.og-card{--og-card-radius: 8px;--og-card-shadow: 0 2px 8px rgba(0, 0, 0, .15);--og-card-shadow-hover: 0 8px 24px rgba(0, 0, 0, .25);--og-card-overlay-bg: linear-gradient(transparent 40%, rgba(0, 0, 0, .85));--og-card-title-color: #fff;--og-card-desc-color: rgba(255, 255, 255, .85);--og-card-placeholder-bg: linear-gradient(135deg, #667eea, #764ba2);--og-card-skeleton-bg: rgba(128, 128, 128, .2);--og-card-transition: .2s ease;position:relative;border-radius:var(--og-card-radius);overflow:hidden;box-shadow:var(--og-card-shadow);transition:transform var(--og-card-transition),box-shadow var(--og-card-transition)}.og-card.hover-scale:hover,.og-card.hover-both:hover{transform:scale(1.03)}.og-card.hover-shadow:hover,.og-card.hover-both:hover{box-shadow:var(--og-card-shadow-hover)}.og-card .og-card-link{display:block;text-decoration:none;color:inherit;aspect-ratio:var(--og-card-ar, 1.91)}.og-card .og-card-inner{position:relative;width:100%;height:100%}.og-card .og-card-thumbnail{position:absolute;top:0;right:0;bottom:0;left:0}.og-card .og-card-thumbnail img{width:100%;height:100%;object-fit:cover;display:block}.og-card .og-card-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--og-card-placeholder-bg);display:flex;align-items:center;justify-content:center;padding:1.5rem}.og-card .og-card-placeholder .og-card-placeholder-title{color:var(--og-card-title-color);font-size:1.5rem;font-weight:700;text-align:center}.og-card .og-card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--og-card-overlay-bg);display:flex;flex-direction:column;justify-content:flex-end;padding:1rem}.og-card .og-card-title{color:var(--og-card-title-color);font-size:1rem;font-weight:600;margin:0;line-height:1.3}.og-card .og-card-description{color:var(--og-card-desc-color);font-size:.8rem;margin:.25rem 0 0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.og-card .og-card-icons{display:flex;gap:.4rem;margin-top:.5rem;align-items:center;align-self:flex-end}.og-card.og-card-skeleton .og-card-inner{background:var(--og-card-skeleton-bg);animation:og-card-pulse 1.5s ease-in-out infinite}.og-card-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}.og-card-row::-webkit-scrollbar{height:6px}.og-card-row::-webkit-scrollbar-thumb{background:#80808066;border-radius:3px}.og-card-row>*{scroll-snap-align:start;flex-shrink:0}@keyframes og-card-pulse{0%,to{opacity:1}50%{opacity:.5}}
