css changes for enhanced search results for desktop and mobile

This commit is contained in:
Broque Thomas 2026-02-13 10:24:20 -08:00
parent 40be502a98
commit a91c10bee5
4 changed files with 109 additions and 44 deletions

View file

@ -1428,6 +1428,10 @@
<!-- Enhanced Search Dropdown (Overlay Panel) -->
<div id="enhanced-dropdown" class="enhanced-dropdown hidden">
<div class="enhanced-dropdown-content">
<!-- Mobile close bar -->
<button id="enhanced-dropdown-close" class="enhanced-dropdown-close">
<span></span> Close Results
</button>
<!-- Loading State -->
<div id="enhanced-loading" class="enhanced-loading hidden">
<div class="spinner"></div>

View file

@ -91,6 +91,10 @@
width: 100%;
}
.enhanced-dropdown-content {
max-width: 100% !important;
}
.dashboard-container {
gap: 15px;
margin: 15px;

View file

@ -2598,6 +2598,15 @@ function initializeSearchModeToggle() {
});
}
// Close button inside dropdown (mobile)
const dropdownCloseBtn = document.getElementById('enhanced-dropdown-close');
if (dropdownCloseBtn) {
dropdownCloseBtn.addEventListener('click', (e) => {
e.stopPropagation();
hideDropdown();
});
}
// Close dropdown when clicking outside
document.addEventListener('click', (e) => {
const dropdown = document.getElementById('enhanced-dropdown');

View file

@ -19993,12 +19993,46 @@ body {
padding: 16px 20px;
}
/* Close button inside dropdown - hidden on desktop, shown on mobile */
.enhanced-dropdown-close {
display: none;
}
/* Responsive: tighter padding on narrow screens */
@media (max-width: 700px) {
.enhanced-dropdown-content {
padding: 12px 16px;
}
.enhanced-dropdown-close {
display: flex;
align-items: center;
justify-content: center;
gap: 6px;
width: 100%;
padding: 10px 16px;
margin-bottom: 12px;
background: rgba(255, 255, 255, 0.08);
border: 1px solid rgba(255, 255, 255, 0.12);
border-radius: 10px;
color: rgba(255, 255, 255, 0.7);
font-size: 14px;
font-weight: 600;
cursor: pointer;
transition: all 0.2s ease;
}
.enhanced-dropdown-close:hover,
.enhanced-dropdown-close:active {
background: rgba(255, 255, 255, 0.14);
color: #ffffff;
}
.enhanced-dropdown-close span {
font-size: 16px;
line-height: 1;
}
/* Adjust search bar for mobile */
.enhanced-search-bar-container {
flex-direction: column;
@ -20180,13 +20214,13 @@ body {
/* Dropdown Sections - Enhanced with Premium Design */
.enh-dropdown-section {
margin-bottom: 24px;
margin-bottom: 16px;
background: linear-gradient(135deg,
rgba(35, 35, 35, 0.6) 0%,
rgba(20, 20, 20, 0.8) 100%);
border: 1px solid rgba(255, 255, 255, 0.12);
border-radius: 16px;
padding: 20px;
padding: 16px;
backdrop-filter: blur(20px);
box-shadow:
0 8px 24px rgba(0, 0, 0, 0.4),
@ -20216,8 +20250,8 @@ body {
display: flex;
align-items: center;
gap: 12px;
padding: 0 0 16px 0;
margin-bottom: 18px;
padding: 0 0 10px 0;
margin-bottom: 12px;
border-bottom: 2px solid rgba(255, 255, 255, 0.08);
position: relative;
}
@ -20238,9 +20272,9 @@ body {
display: inline-flex;
align-items: center;
justify-content: center;
width: 36px;
height: 36px;
font-size: 20px;
width: 28px;
height: 28px;
font-size: 16px;
background: linear-gradient(135deg,
rgba(29, 185, 84, 0.15) 0%,
rgba(30, 215, 96, 0.1) 100%);
@ -20273,7 +20307,7 @@ body {
.enh-section-title {
flex-grow: 1;
font-size: 18px;
font-size: 15px;
font-weight: 700;
color: #ffffff;
margin: 0;
@ -20285,15 +20319,15 @@ body {
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 32px;
height: 32px;
padding: 0 12px;
min-width: 26px;
height: 26px;
padding: 0 10px;
background: linear-gradient(135deg,
rgba(29, 185, 84, 0.2) 0%,
rgba(30, 215, 96, 0.15) 100%);
border: 1px solid rgba(29, 185, 84, 0.3);
border-radius: 16px;
font-size: 14px;
font-size: 12px;
font-weight: 700;
color: rgba(29, 185, 84, 1);
box-shadow:
@ -20308,8 +20342,8 @@ body {
.enh-artists-wrapper {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 20px;
margin-bottom: 24px;
gap: 14px;
margin-bottom: 16px;
}
/* Responsive: stack on narrow screens */
@ -20364,6 +20398,20 @@ body {
transparent 100%);
}
#enh-singles-section .enh-section-icon {
background: linear-gradient(135deg,
rgba(255, 152, 0, 0.15) 0%,
rgba(255, 193, 7, 0.1) 100%);
border-color: rgba(255, 152, 0, 0.2);
}
#enh-singles-section::before {
background: linear-gradient(90deg,
transparent 0%,
rgba(255, 152, 0, 0.5) 50%,
transparent 100%);
}
.enh-artist-section .enh-section-header {
border-bottom: 2px solid rgba(255, 255, 255, 0.08);
}
@ -20402,7 +20450,7 @@ body {
display: flex;
flex-direction: column;
align-items: center;
padding: 22px 18px;
padding: 16px 12px;
background: linear-gradient(135deg,
rgba(30, 30, 30, 0.4) 0%,
rgba(20, 20, 20, 0.6) 100%);
@ -20411,9 +20459,9 @@ body {
transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
border: 2px solid rgba(255, 255, 255, 0.05);
flex-shrink: 0;
width: 200px;
min-height: 250px;
max-height: 250px;
width: 150px;
min-height: 200px;
max-height: 200px;
position: relative;
overflow: hidden;
backdrop-filter: blur(10px);
@ -20447,7 +20495,7 @@ body {
rgba(40, 40, 40, 0.8) 0%,
rgba(25, 25, 25, 0.9) 100%);
border-color: rgba(138, 43, 226, 0.5);
transform: translateY(-12px) scale(1.05);
transform: translateY(-4px) scale(1.02);
box-shadow:
0 24px 48px rgba(138, 43, 226, 0.3),
0 0 60px rgba(138, 43, 226, 0.2),
@ -20464,8 +20512,8 @@ body {
}
.enh-item-image.artist-image {
width: 164px;
height: 164px;
width: 120px;
height: 120px;
border-radius: 50%;
object-fit: cover;
border: 4px solid rgba(138, 43, 226, 0.3);
@ -20481,7 +20529,7 @@ body {
.enh-compact-item.artist-card:hover .enh-item-image.artist-image {
border-color: rgba(138, 43, 226, 0.8);
transform: scale(1.05) rotate(2deg);
transform: scale(1.03);
box-shadow:
0 24px 56px rgba(0, 0, 0, 0.8),
0 0 60px rgba(138, 43, 226, 0.5),
@ -20498,8 +20546,8 @@ body {
}
.enh-item-image-placeholder.artist-placeholder {
width: 164px;
height: 164px;
width: 120px;
height: 120px;
border-radius: 50%;
background: linear-gradient(135deg,
rgba(138, 43, 226, 0.2) 0%,
@ -20507,7 +20555,7 @@ body {
display: flex;
align-items: center;
justify-content: center;
font-size: 66px;
font-size: 48px;
border: 4px solid rgba(138, 43, 226, 0.3);
margin-bottom: 16px;
box-shadow:
@ -20518,13 +20566,13 @@ body {
.enh-compact-item.artist-card .enh-item-info {
text-align: center;
min-width: 164px;
max-width: 200px;
min-width: 120px;
max-width: 150px;
flex-grow: 0;
}
.enh-compact-item.artist-card .enh-item-name {
font-size: 16px;
font-size: 14px;
font-weight: 700;
color: #ffffff;
margin: 0;
@ -20552,8 +20600,8 @@ body {
.enh-compact-list.albums-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
gap: 24px;
grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
gap: 16px;
}
/* Responsive: smaller album cards on narrow screens */
@ -20574,7 +20622,7 @@ body {
.enh-compact-item.album-card {
display: flex;
flex-direction: column;
padding: 20px 18px;
padding: 14px 12px;
background: linear-gradient(135deg,
rgba(30, 30, 30, 0.4) 0%,
rgba(20, 20, 20, 0.6) 100%);
@ -20608,7 +20656,7 @@ body {
.enh-compact-item.album-card:hover {
border-color: rgba(29, 185, 84, 0.5);
transform: translateY(-10px) scale(1.03);
transform: translateY(-4px) scale(1.02);
box-shadow:
0 20px 40px rgba(29, 185, 84, 0.25),
0 0 50px rgba(29, 185, 84, 0.15),
@ -20633,7 +20681,7 @@ body {
aspect-ratio: 1;
border-radius: 8px;
object-fit: cover;
margin-bottom: 16px;
margin-bottom: 10px;
box-shadow:
0 12px 32px rgba(0, 0, 0, 0.6),
0 0 30px rgba(29, 185, 84, 0.15);
@ -20643,7 +20691,7 @@ body {
}
.enh-compact-item.album-card:hover .enh-item-image.album-cover {
transform: scale(1.05) rotate(-2deg);
transform: scale(1.02);
box-shadow:
0 18px 48px rgba(0, 0, 0, 0.8),
0 0 50px rgba(29, 185, 84, 0.35);
@ -20667,7 +20715,7 @@ body {
align-items: center;
justify-content: center;
font-size: 72px;
margin-bottom: 16px;
margin-bottom: 10px;
box-shadow:
0 12px 32px rgba(0, 0, 0, 0.6),
0 0 30px rgba(29, 185, 84, 0.15);
@ -20677,7 +20725,7 @@ body {
}
.enh-compact-item.album-card .enh-item-name {
font-size: 16px;
font-size: 14px;
font-weight: 700;
color: #ffffff;
margin-bottom: 6px;
@ -20694,7 +20742,7 @@ body {
}
.enh-compact-item.album-card .enh-item-meta {
font-size: 14px;
font-size: 12px;
color: rgba(255, 255, 255, 0.65);
overflow: hidden;
text-overflow: ellipsis;
@ -20727,8 +20775,8 @@ body {
.enh-compact-item.track-item {
display: flex;
align-items: center;
gap: 16px;
padding: 12px 16px;
gap: 12px;
padding: 10px 12px;
background: linear-gradient(90deg,
rgba(30, 30, 30, 0.3) 0%,
rgba(20, 20, 20, 0.5) 100%);
@ -20788,8 +20836,8 @@ body {
}
.enh-item-image.track-cover {
width: 64px;
height: 64px;
width: 48px;
height: 48px;
border-radius: 6px;
object-fit: cover;
flex-shrink: 0;
@ -20816,8 +20864,8 @@ body {
}
.enh-item-image-placeholder.track-placeholder {
width: 64px;
height: 64px;
width: 48px;
height: 48px;
border-radius: 6px;
flex-shrink: 0;
background: linear-gradient(135deg,
@ -20826,7 +20874,7 @@ body {
display: flex;
align-items: center;
justify-content: center;
font-size: 32px;
font-size: 22px;
box-shadow:
0 4px 16px rgba(0, 0, 0, 0.5),
0 0 20px rgba(29, 185, 84, 0.1);