diff --git a/src/lib/components/AlbumCard.svelte b/src/lib/components/AlbumCard.svelte
index 8b82f74a4..6e7e7fb0d 100644
--- a/src/lib/components/AlbumCard.svelte
+++ b/src/lib/components/AlbumCard.svelte
@@ -169,11 +169,13 @@
class="artwork-container"
style="width: {cardSize}px; height: {cardSize}px"
>
- {#if imageError || !artwork}
-
-
-
- {:else}
+
+
+
+
+
+
+ {#if !imageError && artwork}
{/if}
@@ -256,13 +258,17 @@
position: relative;
margin-bottom: 8px;
border-radius: 8px;
+ overflow: hidden;
}
.artwork-container img {
+ position: absolute;
+ inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
border-radius: inherit;
+ z-index: 1;
}
.artwork-placeholder {
@@ -321,6 +327,7 @@
-webkit-backdrop-filter: blur(4px);
pointer-events: auto;
border-radius: inherit;
+ z-index: 2;
}
.album-card:hover .action-overlay,
diff --git a/src/lib/components/VirtualizedAlbumList.svelte b/src/lib/components/VirtualizedAlbumList.svelte
index b87e224a4..57ee7a048 100644
--- a/src/lib/components/VirtualizedAlbumList.svelte
+++ b/src/lib/components/VirtualizedAlbumList.svelte
@@ -274,6 +274,11 @@
onkeydown={(e) => e.key === 'Enter' && onAlbumClick(item.album)}
>
+
+
+
+
+
{#if item.album.artwork_path}
})
- {:else}
-
-
-
{/if}
@@ -382,6 +383,7 @@
}
.album-row-art {
+ position: relative;
width: 52px;
height: 52px;
border-radius: 8px;
@@ -390,9 +392,12 @@
}
.album-row-art img {
+ position: absolute;
+ inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
+ z-index: 1;
}
.artwork-placeholder {
diff --git a/src/lib/components/views/AlbumDetailView.svelte b/src/lib/components/views/AlbumDetailView.svelte
index 83e685295..730d42a52 100644
--- a/src/lib/components/views/AlbumDetailView.svelte
+++ b/src/lib/components/views/AlbumDetailView.svelte
@@ -1,6 +1,7 @@