atlas/web/_css/style.css

412 lines
7.5 KiB
CSS

/*
========================================================================
The 2022 r/place Atlas
An Atlas of Reddit's 2022 r/place, with information to each
artwork of the canvas provided by the community.
Copyright (c) 2017 Roland Rytz <roland@draemm.li>
Copyright (c) 2022 Place Atlas contributors
Licensed under the GNU Affero General Public License Version 3
https://place-atlas.stefanocoding.me/license.txt
========================================================================
*/
/* @font-face {
DejaVuSans-ExtraLight 2.37 - https://dejavu-fonts.github.io/
font-family: 'dejavu';
src: url('dejavusans-extralight.woff2') format('woff2');
font-weight: normal;
font-style: normal;
} */
html, body {
min-height: 100%;
min-width: 100%;
height: 100%;
width: 100%;
}
svg.icon {
display: inline-block;
vertical-align: -.125em;
}
body[data-mode] {
overflow: hidden;
background-color: #111;
}
#wrapper {
position: fixed;
height: 100%;
width: 100%;
overflow: hidden;
-webkit-overflow-scrolling: touch;
}
.navbar {
z-index: 1100 !important;
}
@supports (backdrop-filter: blur()) or (-webkit-backdrop-filter: blur()) {
.navbar, #offcanvasList, #offcanvasDraw {
-webkit-backdrop-filter: saturate(180%) blur(15px);
backdrop-filter: saturate(180%) blur(15px);
--bs-bg-opacity: .9 !important;
}
}
#offcanvasList, #offcanvasDraw {
top: 3.75rem;
}
body[data-mode]:not([data-mode="draw"]) #drawNavButtons, [data-mode="draw"] #defaultNavButtons {
display: none;
}
@media (max-width: 400px) {
.offcanvas-start.show {
border-right: none !important;
}
}
#linesCanvas {
position: absolute;
left: 0;
top: 0;
height: 100%;
/*width: calc(100% - 320px);*/
width: 100%;
z-index: -500;
}
#container {
width: calc(100% - 400px);
height: 100%;
margin-left: 400px;
touch-action: manipulation;
overflow: hidden;
overflow-x: hidden;
overflow-y: hidden;
}
#loading {
position: absolute;
background-color: rgba(17, 17, 17, .9);
top: 0;
left: 0;
right: 0;
bottom: 0;
-webkit-backdrop-filter: saturate(180%) blur(10px);
backdrop-filter: saturate(180%) blur(10px);
}
.listHidden #container{
width: 100%;
margin-left: 0;
}
#innerContainer {
height: 2000px;
width: 2000px;
position: absolute;
z-index: -2000;
}
body[data-init-done] .listTransitioning #innerContainer {
transition: left .3s ease-in-out;
}
#image {
position: absolute;
height: 100%;
width: 100%;
z-index: -1500;
image-rendering: -webkit-optimize-contrast;
image-rendering: pixelated;
}
#highlightCanvas {
z-index: -1200;
position: absolute;
height: 100%;
width: 100%;
image-rendering: -webkit-optimize-contrast;
image-rendering: pixelated;
}
#objectsList {
max-width: 300px;
width: 100%;
position: absolute;
right: 0;
top: 3.75rem;
max-height: calc(100% - 3.75rem);
overflow-y: auto;
z-index: 0;
}
#closeObjectsListButton {
height: 40px;
width: 40px;
position: absolute;
top: 4.25rem;
right: 300px;
}
#objectsListOverflowNotice {
max-width: 300px;
width: 100%;
position: absolute;
right: 0;
bottom: 1rem;
box-shadow: 0 .25rem 1rem rgba(17,17,17,.75)!important;
}
@media (max-width: 976px) {
#wrapper:not(.listHidden) > #objectsList {
max-width: calc(300px - 3rem);
}
#wrapper:not(.listHidden) > #closeObjectsListButton {
right: calc(300px - 3rem);
}
}
@media (max-width: 750px) {
#wrapper:not(.listHidden) > #objectsList {
display: none;
}
#wrapper:not(.listHidden) > #closeObjectsListButton {
display: none;
}
}
@media (max-width: 576px) {
#objectsList {
max-width: calc(300px - 3rem);
}
#closeObjectsListButton {
right: calc(300px - 3rem);
}
}
@media (max-width: 540px) {
#wrapper:not(.listHidden) > #bottomBar {
display: none !important;
}
}
#objectDescription p {
margin-bottom: 0.5rem;
}
#objectDescription p:last-child {
margin-bottom: 0;
}
#exportString {
min-height: 300px;
}
#bottomBar {
position: absolute;
bottom: 0;
left: 0;
right: 0;
transition: left .3s ease-in-out;
}
#wrapper:not(.listHidden) > #bottomBar {
left: 400px !important;
}
#author {
flex: 1 1 auto;
}
#variantControls {
flex: 1 0 auto;
}
#timeControls {
position: relative;
flex: 6 0 300px;
}
#bottomBar.no-time-slider #timeControls {
display: none;
}
@media (min-width: 800px) {
#wrapper.listHidden #bottomBar.no-time-slider {
align-items: flex-end;
}
#wrapper.listHidden #bottomBar.no-time-slider #variantControls {
flex: none;
}
#wrapper.listHidden #bottomBar.no-time-slider #author {
flex: none;
margin-left: auto;
}
}
@media (min-width: 1300px) {
#wrapper:not(.listHidden) #bottomBar.no-time-slider {
align-items: flex-end;
}
#wrapper:not(.listHidden) #bottomBar.no-time-slider #variantControls {
flex: none;
}
#wrapper:not(.listHidden) #bottomBar.no-time-slider #author {
flex: none;
margin-left: auto;
}
}
#timeControls {
display: flex;
align-items: center;
}
#timeControlsTooltip {
bottom: 2.75rem;
visibility: hidden;
transition: visibility .15s linear, opacity .15s linear;
}
@supports (backdrop-filter: blur()) or (-webkit-backdrop-filter: blur()) {
#timeControlsTooltip div, #author {
-webkit-backdrop-filter: saturate(180%) blur(15px);
backdrop-filter: saturate(180%) blur(15px);
--bs-bg-opacity: .8 !important;
}
}
#timeControls:hover #timeControlsTooltip, #timeControlsSlider:focus + #timeControlsTooltip {
opacity: 1;
visibility: visible;
}
#timeControlsSlider::-webkit-slider-thumb {
width: 0.75rem;
height: 1.5rem;
margin-top: -0.25rem;
border-radius: .25rem;
outline: 1px solid var(--bs-body-bg);
}
#timeControlsSlider::-webkit-slider-runnable-track {
height: 1rem;
border-radius: .25rem;
}
#timeControlsSlider::-moz-range-thumb {
width: 0.75rem;
height: 1.5rem;
margin-top: -0.25rem;
border-radius: .25rem;
outline: 1px solid var(--bs-body-bg);
}
#timeControlsSlider::-moz-range-track {
height: 1rem;
border-radius: .25rem;
}
#entriesList .card {
box-shadow: none !important;
transition: box-shadow 0.15s ease-in-out;
}
#entriesList .card:hover {
box-shadow: 0 0 0 .15rem rgba(var(--bs-primary-rgb), .75) !important;
}
#entriesListNav {
margin: 10px 0;
display: flex;
flex-shrink: 0;
justify-content: center;
}
#entriesListNav > * {
display: block;
cursor: pointer;
width: 120px;
height: 30px;
margin-right: 10px;
}
#entriesListNav > .small {
width: 30px;
padding: 2px;
flex-shrink: 0;
}
#entriesListNav > .small > img,
#entriesListNav > .small > svg {
height: 22px;
width: 22px;
}
#entriesListNav > .small:last-child {
margin-right: 0;
}
#entriesListNav > a:hover {
text-decoration: none;
background-image: linear-gradient(to bottom, #999, #777);
}
#entriesListNav > .small:hover {
background-image: none;
background: transparent;
border-color: transparent;
}
[data-mode="explore"] #entriesListControls {
display: none;
}
body:not([data-dev]) .show-only-on-dev {
display: none !important;
}
.nav-link.active {
font-weight: 700;
}
.period-group {
transition: box-shadow 0.15s ease-in-out;
}
.period-group[data-active=true] {
box-shadow: 0 0 0 .15rem rgba(var(--bs-primary-rgb), .75);
}
.period-group[data-active=true][data-status=active] {
box-shadow: 0 0 0 .15rem rgba(var(--bs-primary-rgb), .75);
}
.period-group[data-status=active] {
box-shadow: 0 0 0 .1rem rgba(var(--bs-primary-rgb), .5);
}
.period-group[data-active=true][data-status=error] {
box-shadow: 0 0 0 .15rem rgba(var(--bs-danger-rgb), .75);
}
.period-group[data-status=error] {
box-shadow: 0 0 0 .1rem rgba(var(--bs-danger-rgb), .5);
}
#periods #periodsStatus:empty {
display: none;
}
.period-group.no-time-slider input,
.period-group.no-time-slider label {
display: none;
}