Use color-mix for clearly distinct background tones

- Body: var(--b1) (baseline)
- Cards: color-mix(var(--b1) + 8% white) = lighter surface
- Navbar: color-mix(var(--b1) + 20% black) = darker header
- Cards hover: same as navbar
- Search dropdown: matches navbar darkness
This commit is contained in:
2026-07-03 12:47:30 +02:00
parent df5f616bc3
commit 41f42acd91
4 changed files with 7 additions and 7 deletions
@@ -1,6 +1,6 @@
<div id="artist-list" hx-swap-oob="true"> <div id="artist-list" hx-swap-oob="true">
{#if artists.isEmpty()} {#if artists.isEmpty()}
<div style="background:var(--b2);border:1px solid var(--b3);border-radius:0.5rem;padding:2.5rem;text-align:center"> <div style="background:color-mix(in srgb,var(--b1),white 8%);border:1px solid var(--b3);border-radius:0.5rem;padding:2.5rem;text-align:center">
<svg class="icon-lg" style="margin:0 auto 0.75rem;color:var(--bc);opacity:0.15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"> <svg class="icon-lg" style="margin:0 auto 0.75rem;color:var(--bc);opacity:0.15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
<path d="M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z"/> <path d="M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z"/>
</svg> </svg>
@@ -1,5 +1,5 @@
{#if entries.isEmpty()} {#if entries.isEmpty()}
<div style="background:var(--b2);border:1px solid var(--b3);border-radius:0.5rem;padding:3rem;text-align:center"> <div style="background:color-mix(in srgb,var(--b1),white 8%);border:1px solid var(--b3);border-radius:0.5rem;padding:3rem;text-align:center">
<p style="font-size:1.125rem;color:var(--bc);opacity:0.6">No releases found</p> <p style="font-size:1.125rem;color:var(--bc);opacity:0.6">No releases found</p>
<p style="font-size:0.875rem;color:var(--bc);opacity:0.4;margin-top:0.5rem">Add artists to your collection to see their releases here</p> <p style="font-size:0.875rem;color:var(--bc);opacity:0.4;margin-top:0.5rem">Add artists to your collection to see their releases here</p>
</div> </div>
@@ -7,9 +7,9 @@
<div style="display:flex;flex-direction:column;gap:1.5rem"> <div style="display:flex;flex-direction:column;gap:1.5rem">
{#for entry in entries} {#for entry in entries}
<a href="https://musicbrainz.org/release-group/{entry.mbid}" target="_blank" rel="noopener noreferrer" <a href="https://musicbrainz.org/release-group/{entry.mbid}" target="_blank" rel="noopener noreferrer"
style="display:flex;text-decoration:none;background:var(--b2);border:1px solid var(--b3);border-radius:0.5rem;overflow:hidden;transition:background 0.15s" style="display:flex;text-decoration:none;background:color-mix(in srgb,var(--b1),white 8%);border:1px solid var(--b3);border-radius:0.5rem;overflow:hidden;transition:background 0.15s"
onmouseover="this.style.background='var(--b3)'" onmouseover="this.style.background='color-mix(in srgb,var(--b1),black 20%)'"
onmouseout="this.style.background='var(--b2)'"> onmouseout="this.style.background='color-mix(in srgb,var(--b1),white 8%)'">
<div style="width:250px;height:250px;flex-shrink:0;overflow:hidden;background:var(--b3)"> <div style="width:250px;height:250px;flex-shrink:0;overflow:hidden;background:var(--b3)">
<img src="https://coverartarchive.org/release-group/{entry.mbid}/front-250" <img src="https://coverartarchive.org/release-group/{entry.mbid}/front-250"
alt="{entry.title}" style="width:100%;height:100%;object-fit:cover;display:block" alt="{entry.title}" style="width:100%;height:100%;object-fit:cover;display:block"
@@ -1,4 +1,4 @@
<div style="background:var(--b2);border:1px solid var(--b3);border-radius:0.5rem;box-shadow:0 8px 24px rgba(0,0,0,0.2);margin-top:0.25rem;max-height:24rem;overflow-y:auto"> <div style="background:color-mix(in srgb,var(--b1),black 20%);border:1px solid var(--b3);border-radius:0.5rem;box-shadow:0 8px 24px rgba(0,0,0,0.3);margin-top:0.25rem;max-height:24rem;overflow-y:auto">
{#if artists.isEmpty()} {#if artists.isEmpty()}
<div style="padding:1rem;text-align:center;font-size:0.875rem;color:var(--bc);opacity:0.5">No artists found</div> <div style="padding:1rem;text-align:center;font-size:0.875rem;color:var(--bc);opacity:0.5">No artists found</div>
{#else} {#else}
@@ -27,7 +27,7 @@
</script> </script>
</head> </head>
<body style="min-height:100vh;background:var(--b1)"> <body style="min-height:100vh;background:var(--b1)">
<div style="display:flex;align-items:center;gap:1rem;padding:0.5rem 1rem;background:var(--b3);box-shadow:0 1px 3px rgba(0,0,0,0.2)"> <div style="display:flex;align-items:center;gap:1rem;padding:0.5rem 1rem;background:color-mix(in srgb,var(--b1),black 20%);box-shadow:0 1px 3px rgba(0,0,0,0.3)">
<div style="display:flex;align-items:center;gap:0.25rem;flex-shrink:0"> <div style="display:flex;align-items:center;gap:0.25rem;flex-shrink:0">
<div class="tabs tabs-box"> <div class="tabs tabs-box">
<a href="/" class="tab tab-sm {#if activeTab == 'releases'}tab-active{/if}">Releases</a> <a href="/" class="tab tab-sm {#if activeTab == 'releases'}tab-active{/if}">Releases</a>