.card { position: relative; overflow: hidden; display: flex; text-decoration: none; color: inherit; border: 1px solid var(--border-color); transition: border-color 120ms ease, transform 120ms ease, box-shadow 120ms ease; @mixin dark { --border-color: var(--mantine-color-dark-4); } @mixin light { --border-color: var(--mantine-color-gray-3); } &:hover { border-color: var(--mantine-primary-color-filled); transform: translateY(-1px); box-shadow: var(--mantine-shadow-sm); } } .backdrop { position: absolute; inset: 0; background-size: cover; background-position: center; filter: blur(20px) saturate(1.2); transform: scale(1.3); opacity: 0.16; pointer-events: none; } .content { position: relative; z-index: 1; flex: 1; min-width: 0; } .poster { flex-shrink: 0; object-fit: cover; box-shadow: var(--mantine-shadow-sm); }