platypush-app/app/src/main/assets/web/css/style.css

293 lines
4.4 KiB
CSS

html, body {
width: 100%;
height: 100%;
margin: 0;
}
#app {
width: 100%;
height: 100%;
background: #e0eae8;
font-size: 20px;
display: flex;
justify-content: center;
font-family: Avenir, Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
color: #2c3e50;
}
.services {
width: 60%;
height: max-content;
min-width: 17em;
max-width: 22.5em;
background: white;
margin-top: 2em;
box-shadow: 1px 1px 2px 2px #bbb;
border-radius: 1.5em;
}
.services h3 {
width: 100%;
text-align: center;
}
.no-items {
text-align: center;
padding: 2em 1em;
}
.service {
width: 100%;
padding: 1em .5em;
border-bottom: 1px solid #ccc;
cursor: pointer;
position: relative;
}
.service:first-child {
border-radius: 1.5em 1.5em 0 0;
}
.service:last-child {
border-radius: 0 0 1.5em 1.5em;
}
.service:hover {
background: #bef6da;
}
.service .remove {
position: absolute;
right: 1.5em;
}
.service .remove img {
width: 1.2em;
height: 1.2em;
}
.name {
font-weight: bold;
}
.add-btn {
width: 2.5em;
height: 2.5em;
background: url('../icon/plus.svg');
position: fixed;
bottom: 1em;
right: 1em;
cursor: pointer;
}
.add-btn:hover {
opacity: .75;
}
/* Add host modal */
.add-modal-container {
width: 100%;
height: 100%;
position: fixed;
display: flex;
justify-content: center;
align-items: center;
z-index: 2;
}
.add-modal-background {
width: 100%;
height: 100%;
background: black;
position: absolute;
opacity: .87;
}
.add-modal {
width: 80%;
height: max-content;
max-width: 22.5em;
background: #f0f0f0;
display: flex;
flex-direction: column;
font-size: 1.2em;
padding: 1em;
border-radius: 1em;
z-index: 3;
}
.add-modal .header {
display: flex;
align-items: center;
justify-content: center;
padding-bottom: .5em;
}
.add-modal form,
.add-modal form label {
width: 100%;
}
.add-modal form input {
border-radius: .25em;
padding: .25em;
}
.add-modal form input[type=text],
.add-modal form input[type=number] {
width: 95%;
font-size: 1.05em;
margin-bottom: .5em;
}
.add-modal form input[type=submit] {
font-size: 1.05em;
}
.add-modal .buttons {
width: 100%;
display: flex;
align-items: center;
}
.add-modal .buttons .button {
width: 50%;
}
/* Splash screen */
.splash {
width: 100vw;
height: 100vh;
position: absolute;
background: white;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
font-size: 1.2em;
z-index: 1000;
}
.splash .icon {
width: 150px;
height: 150px;
display: flex;
margin-bottom: .5em;
}
.splash .icon img {
width: 100%;
height: 100%;
}
/* Fade in/out animations */
.fade-in {
animation-duration: 0.5s;
-webkit-animation-duration: 0.5s;
animation-fill-mode: both;
animation-name: fadeIn;
-webkit-animation-name: fadeIn;
}
.fade-out {
animation-duration: 0.5s;
-webkit-animation-duration: 0.5s;
animation-fill-mode: both;
animation-name: fadeOut;
-webkit-animation-name: fadeOut;
}
@keyframes fadeIn {
0% {opacity: 0;}
100% {opacity: 1;}
}
@keyframes fadeOut {
0% {opacity: 1;}
100% {
opacity: 0;
display: none;
}
}
/* Loading animation */
.loading {
display: flex;
align-items: center;
justify-content: center;
font-size: 3em;
position: absolute;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
background: #909090;
opacity: 0.5;
}
.icon {
display: inline-block;
position: relative;
width: 80px;
height: 80px;
}
.icon div {
position: absolute;
top: 33px;
width: 13px;
height: 13px;
border-radius: 50%;
background: #fff;
animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.icon div:nth-child(1) {
left: 8px;
animation: lds-ellipsis1 0.6s infinite;
}
.icon div:nth-child(2) {
left: 8px;
animation: lds-ellipsis2 0.6s infinite;
}
.icon div:nth-child(3) {
left: 32px;
animation: lds-ellipsis2 0.6s infinite;
}
.icon div:nth-child(4) {
left: 56px;
animation: lds-ellipsis3 0.6s infinite;
}
@keyframes lds-ellipsis1 {
0% {
transform: scale(0);
}
100% {
transform: scale(1);
}
}
@keyframes lds-ellipsis3 {
0% {
transform: scale(1);
}
100% {
transform: scale(0);
}
}
@keyframes lds-ellipsis2 {
0% {
transform: translate(0, 0);
}
100% {
transform: translate(24px, 0);
}
}