diff options
Diffstat (limited to 'player.css')
| -rw-r--r-- | player.css | 184 |
1 files changed, 184 insertions, 0 deletions
diff --git a/player.css b/player.css new file mode 100644 index 0000000..294a914 --- /dev/null +++ b/player.css @@ -0,0 +1,184 @@ +/* Player container */ +.spinitron-player { + position: fixed; + bottom: 0; + left: 0; + right: 0; + background: #1a1a1a; + color: white; + padding: 1rem; + z-index: 10000; + box-shadow: 0 -2px 10px rgba(0,0,0,0.2); + display: flex; + gap: 2rem; + align-items: center; + transition: transform 0.3s ease; +} + +.spinitron-player.hidden { + transform: translateY(100%); +} + +/* Play button */ +.spinitron-play-button { + background: #4CAF50; + border: none; + padding: 0.8rem 1.5rem; + border-radius: 5px; + color: white; + cursor: pointer; + display: flex; + align-items: center; + justify-content: center; /* Center content horizontally */ + gap: 0.5rem; + min-width: 120px; + transition: background 0.3s ease; + text-align: center; /* Ensure text is centered */ +} + +.spinitron-play-button:hover { + background: #45a049; +} + +/* Metadata container */ +.spinitron-metadata { + flex-grow: 1; + display: flex; + gap: 2rem; + overflow: hidden; +} + +/* Song and show info */ +.spinitron-song-info, +.spinitron-show-info { + display: flex; + flex-direction: column; + gap: 0.3rem; + min-width: 0; +} + +/* Status labels */ +.spinitron-now-playing { + font-size: 0.9em; + text-transform: uppercase; + letter-spacing: 0.5px; + transition: color 0.3s ease; +} + +/* Title text */ +.spinitron-title { + font-weight: bold; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.spinitron-title a, +#spinitronArtistAlbum a, +#spinitronEpisodeName a, +#spinitronSongTitle, +#spinitronShowTitle { + color: #ccc !important; +} + +/* Artist/album and episode info */ +#spinitronArtistAlbum, +#spinitronEpisodeName { + font-size: 0.9em; + color: #ccc; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; +} + +.spinitron-title a, +#spinitronArtistAlbum a, +#spinitronEpisodeName a { + color: inherit; + text-decoration: none; +} + +.spinitron-title a:hover, +#spinitronArtistAlbum a:hover, +#spinitronEpisodeName a:hover { + text-decoration: underline; +} + +.listen-now a { + color: #4CAF50 !important; + font-weight: bold; +} + +/* Responsive design */ +@media (max-width: 768px) { + .spinitron-player { + flex-direction: column; + align-items: flex-start; + gap: 1rem; + padding: 1rem; + } + + .spinitron-metadata { + flex-direction: column; + gap: 1rem; + width: 100%; + } + + .spinitron-play-button { + width: 100%; /* Make button full width on mobile */ + justify-content: center; /* Keep content centered */ + } +} + + + + +/* Recently played marquee */ +#spin-recent { + background: #222; + color: #fff; + padding: 10px 0; + overflow: hidden; + white-space: nowrap; + box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); +} + +#ticker { + display: flex; + animation: ticker-scroll 20s linear infinite; +} + +#ticker p { + margin: 0; + display: flex; + gap: 2rem; +} + +#ticker span { + display: inline-block; + padding-right: 2rem; +} + +#ticker a { + color: #4CAF50; + text-decoration: none; +} + +#ticker a:hover { + text-decoration: underline; +} + +.recent-link { + color: inherit; + text-decoration: none; +} + +.recent-link:hover { + text-decoration: underline; +} + +/* Marquee animation */ +@keyframes ticker-scroll { + 0% { transform: translateX(100%); } + 100% { transform: translateX(-100%); } +} |
