EventMapper/assets/styles/style.css

220 lines
No EOL
3.9 KiB
CSS

@keyframes load {
to { transform: rotate(1turn) }
}
body, html {
margin: 0;
height: 100vh;
width: 100vw;
box-sizing: border-box;
overflow: hidden;
background-color: #404040;
}
h1.widget-heading {
margin: 0;
margin-bottom: 4px;
font-size: 14px;
letter-spacing: 0.25em;
text-transform: uppercase;
/* border-bottom: 1px solid currentColor;
padding-bottom: 2px; */
}
p.widget-description {
margin: 0;
margin-bottom: 8px;
/* border-bottom: 1px solid currentColor;
padding-bottom: 2px; */
}
button {
background-color: transparent;
border: none;
color: inherit;
font: inherit;
padding: 6px;
border-radius: 4px;
height: 36px;
border: 1px solid #0008;
}
button:hover {
background-color: #0004;
}
button:active {
background-color: #0008;
}
button:disabled {
background-color: #8884;
}
#map {
cursor: grab;
}
#map-ui {
position: absolute;
left: 0;
top: 0;
width: 100vw;
height: 100vh;
pointer-events: none;
user-select: none;
}
#map-ui #zoom {
pointer-events: all;
box-sizing: border-box;
display: flex;
flex-direction: column;
gap: 8px;
position: absolute;
padding: 8px;
top: 16px;
left: 16px;
border-radius: 4px;
background-color: #202020;
color: #fff;
box-shadow: 0 0 8px 0 #0008;
}
#map-ui #zoom .zoom-button {
width: 36px;
}
#map-ui #floors {
pointer-events: all;
display: inline-block;
box-sizing: border-box;
position: absolute;
padding: 8px;
top: 16px;
right: 16px;
border-radius: 4px;
background-color: #202020;
color: #fff;
box-shadow: 0 0 8px 0 #0008;
transition: right 0.5s;
}
#map-ui #floors.empty {
right: -100%;
}
#map-ui #floors #floor-buttons {
display: flex;
flex-direction: column;
gap: 8px;
}
#map-ui #floors #floor-buttons .floor-button {
text-align: left;
width: 200px;
padding: 12px;
height: unset;
}
#map-ui #floors #floor-buttons .floor-button.selected {
padding-left: 9px;
border: 1px solid #fff;
border-left: 4px solid #fff;
}
#map-ui #events-container {
position: absolute;
left: 0;
bottom: 0;
overflow: visible;
width: 100%;
}
#map-ui #events-container #events,
#map-ui #events-container #events-minimized {
pointer-events: all;
box-sizing: border-box;
display: inline-block;
position: absolute;
padding: 8px;
bottom: 16px;
border-radius: 4px;
background-color: #202020;
color: #fff;
box-shadow: 0 0 8px 0 #0008;
transition: left 0.5s;
}
#map-ui #events-container #events {
left: 16px;
width: 300px;
}
#map-ui #events-container.minimized #events {
left: -100%;
}
#map-ui #events-container #events-minimized {
left: -100%;
}
#map-ui #events-container.minimized #events-minimized {
left: 16px;
}
#map-ui #events-container #events #footer #footer-buttons {
display: flex;
align-items: center;
gap: 8px;
}
#map-ui #events-container #events #event-list {
min-height: 100px;
max-height: calc(50% - 16px);
margin: 8px 0;
padding: 8px;
background-color: #0002;
display: flex;
flex-direction: column;
gap: 4px;
}
#map-ui #events-container #events #event-list .event-list-container p {
margin: 2px 0;
white-space: pre-line;
}
#map-ui #events-container #footer #footer-buttons button,
#map-ui #events-container #events-minimized button {
width: 36px;
}
#map-ui #loading {
display: inline-block;
position: absolute;
width: 96px;
height: 96px;
left: calc(50vw - 48px);
top: calc(50vh - 48px);
background-color: #2228;
border-radius: 8px;
opacity: 0;
transition: opacity 0.25s;
}
#map-ui.loading #loading {
opacity: 1;
}
#map-ui #loading #loading-circle {
display: inline-block;
position: relative;
width: 64px;
height: 64px;
top: 16px;
left: 16px;
background: conic-gradient(from 0deg,#fff0,#fff);
-webkit-mask-image: radial-gradient(circle, #fff0 0%, #fff0 33%, #ffff 33%, #ffff 66%, #fff0 66%, #fff0 100%);
mask-image: radial-gradient(circle, #fff0 0%, #fff0 33%, #ffff 33%, #ffff 66%, #fff0 66%, #fff0 100%);
animation: load 0.5s linear infinite;
}