.card{position:relative;border-radius:var(--border-radius-lg);overflow:hidden;width:100%;background:var(--color-surface);display:flex;flex-direction:column;gap:0;padding:0;border:1px solid var(--color-border);margin:0 0 var(--spacing-md);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-normal);min-height:260px}.card:hover{box-shadow:var(--shadow-md)}.cardImageWrapper{width:100%;aspect-ratio:16/9;border-radius:0;overflow:hidden;border:none;background:var(--color-background)}.cardImage{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .3s ease}.card:hover .cardImage{transform:scale(1.1)}.highlight-icon-wrapper{position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);z-index:10;opacity:0;transition:opacity var(--transition-fast)}.card.highlighted .highlight-icon-wrapper,.card:hover .highlight-icon-wrapper{opacity:1}.highlight-icon{background-color:var(--color-surface);border-radius:50%;padding:4px;display:flex;align-items:center;justify-content:center}.highlight-icon:hover{background-color:var(--color-background)}.card-info{padding:var(--spacing-sm) var(--spacing-sm)}.cardTitle{font-size:.95rem;line-height:1.35rem;font-weight:600;margin:0 0 var(--spacing-xs);color:var(--color-text-primary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.subtitleRow{display:flex;align-items:center;gap:6px;margin:0 0 var(--spacing-xxs)}.subtitle{margin:0}.linkSubtitle{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1;min-width:0}.card-meta{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.dateTime,.location,.subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-regular);margin:0}@media (max-width:768px){.card{width:100%}}.card.shimmer{border:1px solid var(--color-border);background:linear-gradient(100deg,#f5f5f5 30%,#e9e9e9 50%,#f5f5f5 70%);background-size:400% 100%;animation:shimmer 1.4s ease-in-out infinite;min-height:240px}.shimmer-thumb{width:100%;aspect-ratio:16/9;border-radius:var(--border-radius-md);margin-bottom:var(--spacing-sm)}.shimmer-line,.shimmer-thumb{background:linear-gradient(100deg,#f0f0f0 30%,#e4e4e4 50%,#f0f0f0 70%);background-size:400% 100%;animation:shimmer 1.4s ease-in-out infinite}.shimmer-line{height:10px;border-radius:999px;margin-bottom:var(--spacing-xs)}.card-grid{display:grid;grid-template-columns:repeat(4,minmax(280px,1fr));width:100%;max-width:1750px;margin:0 auto;padding-top:.5rem;padding-bottom:2rem;grid-gap:var(--spacing-md);gap:var(--spacing-md);justify-items:stretch}.card-item{border:1px solid var(--color-border);border-radius:var(--border-radius-lg);background:var(--color-surface);padding:var(--spacing-sm);width:100%;max-width:380px;box-shadow:var(--shadow-sm)}.card-item img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:var(--border-radius-md);margin-bottom:.5rem}.card-title{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin-bottom:.25rem}.empty-message{display:flex;justify-content:center;align-items:center;height:200px}.no-results{font-size:1rem;color:var(--color-text-secondary);text-align:center}@media (min-width:1600px){.card-grid{grid-template-columns:repeat(4,minmax(280px,1fr));max-width:1750px}}@media (max-width:1399px){.card-grid{grid-template-columns:repeat(3,minmax(260px,1fr));gap:var(--spacing-md)}}@media (max-width:1100px){.card-grid{grid-template-columns:repeat(3,minmax(240px,1fr));gap:var(--spacing-md)}}@media (max-width:820px){.card-grid{grid-template-columns:repeat(2,minmax(220px,1fr));gap:var(--spacing-sm)}}@media (max-width:560px){.card-grid{grid-template-columns:repeat(1,minmax(220px,1fr));gap:var(--spacing-sm);padding-bottom:3rem}}.shimmer{background-repeat:no-repeat;border-radius:8px;width:100%;max-width:400px;margin-bottom:1rem}.shimmerImage{margin-bottom:.75rem}.shimmerLine{background-color:#ddd;margin-bottom:.5rem}@keyframes shimmer{0%{background-position:-500px 0}to{background-position:500px 0}}.card.shimmer{background-repeat:no-repeat;border-radius:8px;width:100%;max-width:400px;margin-bottom:1rem;display:flex;flex-direction:column}.shimmerImage{height:200px;border-radius:8px}.shimmerImage,.shimmerLine{background-color:#dddddd43;border:.5px solid #ddd}.shimmerLine{height:14px;border-radius:4px}.shimmerLine.short{width:60%}