diff --git a/themes/one-pager/assets/css/style.css b/themes/one-pager/assets/css/style.css index ccd17c1..ee7a6d9 100644 --- a/themes/one-pager/assets/css/style.css +++ b/themes/one-pager/assets/css/style.css @@ -85,7 +85,7 @@ body { padding: 4rem 2rem; position: relative; background: var(--bg-primary); - border-bottom: 4px solid var(--accent-yellow); + border-bottom: 4px solid var(--accent-grey); transition: background-color 0.4s ease; overflow: hidden; flex-shrink: 0; @@ -151,11 +151,37 @@ body { font-family: 'Poppins', sans-serif; font-weight: 900; font-size: 4rem; - color: var(--accent-yellow); + color: var(--accent-y); opacity: 0.15; pointer-events: none; } +#bannerino { + filter: grayscale(100%); + position:absolute; + top:0; + left:0; + right:0; + bottom:0; + z-index:0; + background-size:cover; + background-position:center; + background-attachment:fixed; +} + +#texture { + filter: invert(50%) sepia(100%) saturate(100%) hue-rotate(15deg); + position:absolute; + top:0; + left:0; + right:0; + bottom:0; + z-index:1; + background-image:url('/images/texture.png'); + background-size: 80%; + pointer-events:none; +} + /* Content sits above overlay */ .header-content { max-width: 1200px; @@ -163,8 +189,11 @@ body { width: 100%; position: relative; z-index: 1; + transition: all 1s ease; +} +.header-content:hover { + transition: all 1s ease; } - /* Profile layout */ .header-profile { display: flex; @@ -179,16 +208,21 @@ body { width: 180px; height: 180px; border-radius: 0; - border: 4px solid var(--accent-yellow); + border: 4px solid var(--accent-grey); object-fit: cover; - box-shadow: 12px 12px 0 var(--accent-yellow); + box-shadow: 12px 12px 0 var(--accent-grey); transition: all 0.3s ease; border-radius: 100%; + filter: grayscale(100%); +} +.profile-picture:hover { + filter: grayscale(0%); } .profile-picture:hover { transform: scale(1.02); box-shadow: 16px 16px 0 var(--accent-yellow); + border: 4px solid var(--accent-yellow); } @@ -206,7 +240,7 @@ body { font-size: 7rem; letter-spacing: -2px; line-height: 1.1; - color: var(--accent-yellow); + color: var(--accent-grey); text-transform: uppercase; margin-bottom: 0.5rem; text-shadow: @@ -234,13 +268,13 @@ body { line-height: 1.5; color: var(--text-secondary); - border-left: 4px solid var(--accent-yellow); + border: 4px solid var(--accent-grey); padding: 0.5rem 1rem 1.5rem 1.5rem; letter-spacing: 0.5px; background: rgba(0, 0, 0, 0.5); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); - border-radius: 0 8px 8px 0; + border-radius: 8px; } [data-theme="dark"] .profile-about { @@ -339,14 +373,13 @@ body { left: 0; right: 0; z-index: 999; - background: var(--bg-primary); + background: #0000008a; border-bottom: 3px solid var(--accent-yellow); padding: 0.8rem 2rem; transform: translateY(-100%); transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.4s ease; - box-shadow: 0 4px 20px var(--shadow-color); - backdrop-filter: blur(10px); - -webkit-backdrop-filter: blur(10px); + box-shadow: 0 4px 20px #0000008a; + backdrop-filter: blur(20px); } .sticky-nav.visible { @@ -472,7 +505,7 @@ body { left: 0; width: 80px; height: 4px; - background: var(--accent-yellow); + background: var(--accent-grey); } /* Blog Grid - KEEP SKEW ON CARDS */ @@ -494,14 +527,14 @@ body { .blog-card:hover { transform: skewX(0deg) translate(-4px, -4px); - box-shadow: 12px 12px 0 var(--accent-yellow); + box-shadow: 12px 12px 0 var(--accent-grey); } .blog-header-image { width: 100%; height: 220px; object-fit: cover; - border-bottom: 3px solid var(--accent-yellow); + border-bottom: 3px solid var(--accent-grey); filter: grayscale(100%); transition: all 0.3s ease; } @@ -553,7 +586,7 @@ button { .read-more-toggle { background: var(--accent-yellow); color: #0a0a0a !important; /* Force black */ - border: 2px solid var(--accent-grey); + border: 2px solid var(--accent-yellow); padding: 0.6rem 1.5rem; font-family: 'Poppins', sans-serif; font-weight: 700; @@ -566,7 +599,7 @@ button { .read-more-toggle:hover { background: var(--accent-black); - color: var(--accent-yellow) !important; /* Yellow on hover */ + color: var(--bg-primary) !important; /* Yellow on hover */ border-color: var(--accent-yellow); transform: scale(1.05); } @@ -579,10 +612,11 @@ button { margin-top: 1.5rem; padding: 1.5rem; background: var(--bg-secondary); - border-left: 4px solid var(--accent-yellow); + border: 1px solid var(--accent-yellow); color: var(--text-secondary); font-weight: 400; font-size: 0.95rem; + box-shadow: 0 10px 40px #ffd7005c } .blog-full-content img { @@ -610,14 +644,13 @@ button { .music-card:hover { transform: skewX(0deg) translate(-4px, -4px); - box-shadow: 12px 12px 0 var(--accent-yellow); + box-shadow: 12px 12px 0 var(--accent-grey); } .music-image { width: 100%; height: 200px; object-fit: cover; - border: 2px solid var(--accent-grey); margin-bottom: 1rem; filter: grayscale(100%); transition: all 0.3s ease; @@ -700,7 +733,7 @@ button { .lyrics-toggle { background: var(--accent-yellow); color: #0a0a0a !important; /* Force black */ - border: 2px solid var(--accent-grey); + border: 2px solid var(--accent-yellow); padding: 0.6rem 1.5rem; font-family: 'Poppins', sans-serif; font-weight: 700; @@ -710,6 +743,7 @@ button { cursor: pointer; transition: all 0.3s ease; margin-top: 0.8rem; + z-index: 10; } .lyrics-toggle:hover { @@ -727,13 +761,58 @@ button { margin-top: 1rem; padding: 1.5rem; background: var(--bg-secondary); - border-left: 4px solid var(--accent-yellow); + border-left: 1px solid var(--accent-yellow); color: var(--text-secondary); font-weight: 400; font-size: 0.9rem; white-space: pre-wrap; } +/* Music lightbox lyrics - below controls */ +.music-lightbox-lyrics { + margin-top: 1.5rem; + padding: 1.2rem 1.5rem; + background: rgba(0, 0, 0, 0.4); + border: 1px solid var(--accent-yellow); + border-radius: 0 8px 8px 0; + color: rgba(255, 255, 255, 0.85); + font-family: 'Poppins', sans-serif; + font-weight: 300; + font-size: 0.85rem; + line-height: 1.8; + max-height: 200px; + overflow-y: auto; + text-align: left; + width: 100%; + max-width: 500px; + backdrop-filter: blur(10px); + -webkit-backdrop-filter: blur(10px); + scrollbar-width: thin; + scrollbar-color: var(--accent-yellow) rgba(255, 255, 255, 0.1); + box-shadow: 0 10px 40px #ffd7005c; +} +.music-lightbox-lyrics::-webkit-scrollbar { + width: 4px; +} + +.music-lightbox-lyrics::-webkit-scrollbar-track { + background: rgba(255, 255, 255, 0.1); + border-radius: 2px; +} + +.music-lightbox-lyrics::-webkit-scrollbar-thumb { + background: var(--accent-yellow); + border-radius: 2px; +} + +.music-lightbox-lyrics p { + margin-bottom: 0.5rem; +} + +.music-lightbox-lyrics br { + display: block; + margin: 0.2rem 0; +} /* Photo Grid - KEEP SKEW ON CARDS */ .photo-grid { display: grid; @@ -753,7 +832,7 @@ button { .photo-item:hover { transform: skewX(0deg) translate(-4px, -4px); - box-shadow: 12px 12px 0 var(--accent-yellow); + box-shadow: 12px 12px 0 var(--accent-grey); } .photo-item img { @@ -809,14 +888,14 @@ button { .video-item:hover { transform: skewX(0deg) translate(-4px, -4px); - box-shadow: 12px 12px 0 var(--accent-yellow); + box-shadow: 12px 12px 0 var(--accent-grey); } .video-item video { width: 100%; background: var(--accent-black); display: block; - border-bottom: 3px solid var(--accent-yellow); + border-bottom: 3px solid var(--accent-grey); } .video-info { @@ -1045,8 +1124,7 @@ button { .profile-about { margin-left: auto; margin-right: auto; - border-left: none; - border-top: 4px solid var(--accent-yellow); + border: 4px solid var(--accent-grey); padding: 1rem; text-align: center; } @@ -1121,7 +1199,7 @@ button { .photo-item:hover, .video-item:hover { transform: translate(-2px, -2px); - box-shadow: 6px 6px 0 var(--accent-yellow); + box-shadow: 6px 6px 0 var(--accent-grey); } .custom-lightbox-prev, @@ -1223,8 +1301,8 @@ button { text-transform: uppercase; cursor: pointer; transition: all 0.3s ease; - filter: drop-shadow(0px 0px 10px var(--accent-yellow)); - animation: glow 1s infinite alternate; + filter: drop-shadow(0px 0px 20px var(--accent-yellow)); + animation: glow 3s infinite alternate; } .refresh-button:hover { @@ -1243,7 +1321,7 @@ button { filter: drop-shadow(0px 0px 5px var(--accent-yellow)); } to { - filter: drop-shadow(0px 0px 10px var(--accent-yellow)); + filter: drop-shadow(0px 0px 20px var(--accent-yellow)); } } /* ============ CYBERPUNK FOOTER ============ */ @@ -1908,8 +1986,10 @@ button { display: flex; align-items: center; justify-content: center; - background: rgba(0, 0, 0, 0.4); - opacity: 0; + background: rgba(0, 0, 0, 0); + background-image:url('/images/texture.png'); + background-size: 70%; + opacity: 1; transition: opacity 0.3s ease; cursor: pointer; } diff --git a/themes/one-pager/assets/js/scripts.js b/themes/one-pager/assets/js/scripts.js index e176862..0f2002a 100644 --- a/themes/one-pager/assets/js/scripts.js +++ b/themes/one-pager/assets/js/scripts.js @@ -222,9 +222,10 @@ function renderMusicTracks(tracks, containerId, randomize = false) { card.className = 'music-card clickable'; card.dataset.playlistIndex = index; - // Click on card opens lightbox + // Click on card opens lightbox (except when clicking on info button) card.addEventListener('click', function(e) { - if (e.target.closest('audio') || e.target.closest('.lyrics-toggle') || e.target.closest('.lyrics')) { + // Don't trigger if clicking on lyrics-toggle or inside lyrics + if (e.target.closest('.lyrics-toggle') || e.target.closest('.lyrics')) { return; } const idx = parseInt(this.dataset.playlistIndex); @@ -259,6 +260,7 @@ function renderMusicTracks(tracks, containerId, randomize = false) { content = originalTrack.content || ''; } + // Build the card HTML let cardHTML = `
Artist
Album
- -