317 lines
5.2 KiB
SCSS
317 lines
5.2 KiB
SCSS
body {
|
|
display: -webkit-box;
|
|
display: -ms-flexbox;
|
|
display: flex;
|
|
-webkit-box-orient: vertical;
|
|
-webkit-box-direction: normal;
|
|
-ms-flex-direction: column;
|
|
flex-direction: column;
|
|
-webkit-box-pack: center;
|
|
-ms-flex-pack: center;
|
|
justify-content: center;
|
|
-webkit-box-align: center;
|
|
-ms-flex-align: center;
|
|
align-items: center;
|
|
background-image: url(/images/background.svg);
|
|
background-repeat: no-repeat;
|
|
background-blend-mode: multiply;
|
|
background-size: 100vh;
|
|
background-position: top;
|
|
background-color: #0c2738;
|
|
color: #ffffff;
|
|
height: 100%;
|
|
font-family: Ubuntu,serif;
|
|
}
|
|
|
|
.nobr {
|
|
white-space: nowrap;
|
|
}
|
|
|
|
.center {
|
|
margin: auto;
|
|
}
|
|
|
|
.song_list {
|
|
overflow: auto;
|
|
position: absolute;
|
|
top: 6em;
|
|
bottom: 0;
|
|
left: 1em;
|
|
right: 1em;
|
|
}
|
|
|
|
.song_search_bar {
|
|
position: relative;
|
|
max-width: 38em;
|
|
width: 95%;
|
|
margin: auto;
|
|
margin-top: 1em;
|
|
}
|
|
|
|
.song_search_field {
|
|
border: none;
|
|
border-radius: .3em;
|
|
padding: .7em 1em;
|
|
width: calc(100% - 11em);
|
|
color: #0c2738;
|
|
margin: 0;
|
|
float: left;
|
|
height: 2em;
|
|
border-top-right-radius: 0;
|
|
border-bottom-right-radius: 0;
|
|
}
|
|
|
|
.song_sort_button {
|
|
width: 3em;
|
|
height: 3.4em;
|
|
border-radius: 0;
|
|
border-style: none;
|
|
border-left-style: solid;
|
|
background-color: #427493;
|
|
transition: 0.4s;
|
|
color: #ffffff;
|
|
font-weight: 900;
|
|
}
|
|
|
|
.song_sort_button:hover {
|
|
background-color: #5598be;
|
|
transition: 0.4s;
|
|
}
|
|
|
|
.song_sort_button:active {
|
|
background-color: #30566c;
|
|
transition: 0.1s;
|
|
}
|
|
|
|
.song_sort_button_selected {
|
|
color: #00ff00;
|
|
transition: 0.1s;
|
|
}
|
|
|
|
.song_sort_button_right {
|
|
border-top-right-radius: 0.3em;
|
|
border-bottom-right-radius: 0.3em;
|
|
}
|
|
|
|
.song_search_counter {
|
|
font-size: smaller;
|
|
}
|
|
|
|
.song_item {
|
|
display: -webkit-box;
|
|
display: -ms-flexbox;
|
|
display: flex;
|
|
-webkit-box-orient: horizontal;
|
|
-webkit-box-direction: normal;
|
|
-ms-flex-direction: row;
|
|
flex-direction: row;
|
|
border-radius: 1em;
|
|
background: black;
|
|
max-width: 40em;
|
|
margin: auto;
|
|
margin-bottom: 1em;
|
|
animation: song_item_enter 1s 1;
|
|
box-shadow: #09babe 1px 1px;
|
|
}
|
|
|
|
@keyframes song_item_enter {
|
|
from {
|
|
opacity: 0;
|
|
/*margin-left: -16em;
|
|
margin-right: 16em;*/
|
|
}
|
|
to {
|
|
opacity: 1;
|
|
/*margin-left: 0;
|
|
margin-right: 0;*/
|
|
}
|
|
}
|
|
|
|
.song_item_info {
|
|
display: -webkit-box;
|
|
display: -ms-flexbox;
|
|
display: flex;
|
|
-webkit-box-orient: vertical;
|
|
-webkit-box-direction: normal;
|
|
-ms-flex-direction: column;
|
|
flex-direction: column;
|
|
-webkit-box-flex: 1;
|
|
-ms-flex: 1;
|
|
flex: 1;
|
|
flex-basis: max-content;
|
|
margin: 1em;
|
|
}
|
|
|
|
.song_item_cover {
|
|
width: 5em;
|
|
height: auto;
|
|
object-fit: cover;
|
|
border-top-left-radius: 1em;
|
|
border-bottom-left-radius: 1em;
|
|
}
|
|
|
|
.song_item_date {
|
|
font-size: smaller;
|
|
color: #427493;
|
|
}
|
|
|
|
.song_item_title {
|
|
margin: 0;
|
|
}
|
|
|
|
.song_item_artist {
|
|
font-size: smaller;
|
|
color: #adddff;
|
|
}
|
|
|
|
.song_gizmos {
|
|
flex-grow: 0;
|
|
flex-shrink: 1;
|
|
|
|
display: flex;
|
|
flex-direction: row-reverse;
|
|
flex-wrap: wrap;
|
|
|
|
padding-top: 1em;
|
|
padding-bottom: 1em;
|
|
padding-right: 0.5em;
|
|
}
|
|
|
|
.song_gizmos div {
|
|
margin: 0.5em;
|
|
}
|
|
|
|
.gizmo {
|
|
background-size: contain;
|
|
background-repeat: no-repeat;
|
|
width: 2em;
|
|
height: 2em;
|
|
}
|
|
|
|
.duet_icon {
|
|
background-image: url("/images/duet.svg");
|
|
}
|
|
|
|
.video_icon {
|
|
background-image: url("/images/video.svg");
|
|
}
|
|
|
|
.flag_icon {
|
|
background-image: url("/images/flag.svg");
|
|
}
|
|
|
|
.note_icon {
|
|
background-image: url("/images/note.svg");
|
|
}
|
|
|
|
.hidden {
|
|
visibility: hidden;
|
|
}
|
|
|
|
.play_queue {
|
|
position: fixed;
|
|
width: 26em;
|
|
max-width: 100%;
|
|
bottom: 0;
|
|
right: 0;
|
|
background-color: #434343;
|
|
border-top-left-radius: 1em;
|
|
border-top-right-radius: 1em;
|
|
max-height: 100%;
|
|
transition: max-height 0.3s;
|
|
}
|
|
|
|
@media (orientation: portrait) {
|
|
.play_queue {
|
|
width: 100%;
|
|
}
|
|
}
|
|
|
|
.play_queue_hidden {
|
|
max-height: 6.3em;
|
|
transition: max-height 0.3s;
|
|
}
|
|
|
|
.play_queue_head {
|
|
padding: 1em;
|
|
padding-top:0.4em;
|
|
border-bottom: solid 0.2em;
|
|
border-color: #fff;
|
|
border-top-left-radius: 1em;
|
|
border-top-right-radius: 1em;
|
|
background: rgba(99, 99, 99, 0.0);
|
|
transition: background 0.1s;
|
|
}
|
|
|
|
.play_queue_head:hover {
|
|
background: rgba(99, 99, 99, 1.0);
|
|
transition: background 0.1s;
|
|
}
|
|
|
|
.play_queue_list {
|
|
padding: 1em;
|
|
}
|
|
|
|
.spinner {
|
|
border: 16px solid #f3f3f3;
|
|
border-top: 16px solid #0c2738;
|
|
border-radius: 50%;
|
|
width: 48px;
|
|
height: 48px;
|
|
animation: spin 1.3s cubic-bezier(0.455, 0.03, 0.515, 0.955) infinite;
|
|
margin: auto;
|
|
border-bottom: 16px solid #0c2738;
|
|
}
|
|
|
|
@keyframes spin {
|
|
0% { transform: rotate(0deg); }
|
|
100% { transform: rotate(360deg); }
|
|
}
|
|
|
|
/* Tooltip container */
|
|
.tooltip {
|
|
position: relative;
|
|
display: inline-block;
|
|
border-bottom: 1px dotted black; /* If you want dots under the hoverable text */
|
|
}
|
|
|
|
/* Tooltip text */
|
|
.tooltip .tooltiptext {
|
|
visibility: hidden;
|
|
width: 120px;
|
|
background-color: #555;
|
|
color: #fff;
|
|
text-align: center;
|
|
padding: 5px 0;
|
|
border-radius: 6px;
|
|
|
|
/* Position the tooltip text */
|
|
position: absolute;
|
|
z-index: 1;
|
|
top: 125%;
|
|
left: 50%;
|
|
margin-left: -100px;
|
|
|
|
/* Fade in tooltip */
|
|
opacity: 0;
|
|
transition: opacity 0.3s;
|
|
}
|
|
|
|
/* Tooltip arrow */
|
|
.tooltip .tooltiptext::after {
|
|
content: "";
|
|
position: absolute;
|
|
bottom: 100%;
|
|
left: 100px;
|
|
margin-left: -5px;
|
|
border-width: 5px;
|
|
border-style: solid;
|
|
border-color: transparent transparent #555 transparent;
|
|
}
|
|
|
|
/* Show the tooltip text when you mouse over the tooltip container */
|
|
.tooltip:hover .tooltiptext {
|
|
visibility: visible;
|
|
opacity: 1;
|
|
}
|