Pony.fm/resources/assets/styles/components/player.less
2016-08-08 17:11:20 +01:00

236 lines
4.3 KiB
Text
Vendored

/**
* Pony.fm - A community for pony fan music.
* Copyright (C) 2015 Peter Deltchev
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU Affero General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Affero General Public License for more details.
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
@import '../variables';
@import '../mixins';
.track-player {
padding: 0;
.image {
float: left;
width: 64px;
height: 64px;
position: relative;
overflow: hidden;
img {
.box-shadow(none);
display: block;
width: 64px;
height: 64px;
padding: 0;
}
.loader {
.transition(top 250ms @swift-ease-out);
z-index: 1000;
background: rgba(0, 0, 0, .6);
color: #fff;
position: absolute;
top: -64px;
left: 0;
width: 64px;
height: 66px;
line-height: 65px;
text-align: center;
font-size: 16px;
margin-top: -2px;
&.showing {
top: 2px;
}
}
}
.inner {
margin-left: 75px;
}
.song, .artist {
.ellipsis();
line-height: normal;
display: block;
font-size: 17px;
a {
color: #555;
&:hover {
text-decoration: none;
color: #111;
}
}
}
.song {
font-weight: bold;
padding-top: 12px;
}
.volume-slider {
display: none;
padding-top: 15px;
padding-bottom: 15px;
}
.transport {
background: #aaa;
height: 5px;
position: absolute;
cursor: pointer;
bottom: 58px;
left: 64px;
width: 100%;
width: ~"calc(100% - 64px)";
outline: 0;
.bar {
z-index: 500;
background: #84528A;
}
.loader-bar {
z-index: 200;
background: #ddd;
}
.bar, .loader-bar {
position: absolute;
top: 0;
left: 0;
height: 100%;
}
}
.buttons {
list-style: none;
margin: 0;
padding: 0;
float: right;
margin-top: 12px;
margin-right: 5px;
li.status {
font-size: 14px;
margin-top: 12px;
margin-right: 5px;
strong {
font-weight: normal;
}
}
li {
line-height: normal;
float: left;
margin: 0;
padding: 0;
font-size: 24px;
> a {
display: block;
padding: 3px 0 7px;
width: 44px;
text-align: center;
color: #5A5A5A;
text-decoration: none !important;
.border-radius(22px);
i {
font-size: 30px;
}
&:hover {
text-decoration: none;
background: darken(#eee, 10%);
color: #000;
}
&:active {
background: darken(#eee, 20%) !important;
}
}
> a.repeat.active {
text-decoration: none;
background: darken(#eee, 5%);
color: #000;
}
&.disabled {
a {
color: #ccc;
cursor: default;
&:hover {
background: transparent;
color: #ccc;
}
}
}
&.volume {
position: relative;
> a {
.border-radius(0);
}
.volume-slider {
display: none;
z-index: 1000;
position: absolute;
left: 0;
bottom: 44px;
width: 100%;
height: 150px;
background: #ddd;
.bar {
background: @pfm-purple;
width: 10px;
margin: auto;
height: 100%;
position: relative;
}
.knob {
position: absolute;
top: 0;
left: -3px;
background: darken(@pfm-purple, 20%);
width: 16px;
height: 16px;
}
}
&:hover, &.keep-open {
.volume-slider {
display: block;
}
background: #ddd;
}
}
}
}
}