html,
body {
margin: 0;
padding: 0;
width: 100%;
height: 100%;
overflow: hidden;
background: black;
font-family: "Merriweather", serif;
}
.scene-tooltip {
background: black;
color: white !important;
padding: 4px;
max-width: 250px;
text-align: center;
font-size: 1rem !important;
line-height: 1.5;
font-family: "Merriweather", serif !important;
}
/** Legend */
.legend {
position: absolute;
bottom: 0;
left: 0;
font-size: 1rem;
line-height: 1.25;
padding: 1rem;
margin: 1rem 2rem;
background: rgba(0, 0, 0, 0.5);
color: #fff;
transition: opacity 0.2s;
text-transform: capitalize;
font-variant: small-caps;
}
.legend .category {
cursor: pointer;
}
.legend .category:hover {
text-decoration: underline;
opacity: 1;
}
.legend .selected {
text-decoration: underline;
}
.legend .unselected {
opacity: 0.8;
}
.legend .removeSelection {
cursor: pointer;
opacity: 0.6;
margin-bottom: 0.5rem;
}
.legend .removeSelection:hover {
opacity: 0.8;
text-decoration: underline;
}
/** Detail view */
.detail {
position: absolute;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
pointer-events: none;
transition: opacity 0.2s;
opacity: 0;
background: rgba(0, 0, 0, 0.75);
color: white;
display: flex;
flex-direction: row;
}
.detail.visible {
opacity: 1;
pointer-events: auto;
}
.detail > div {
height: 100vh;
width: 50vw;
}
.detail .content > div {
min-height: 100%;
padding: 3rem 5rem 6rem 5rem;
background: rgba(0, 0, 0, 0.5);
}
.detail .media {
padding: 3rem 5rem;
}
.detail .content {
overflow-x: hidden;
overflow-y: scroll;
}
.detail .content::-webkit-scrollbar {
width: 0;
opacity: 0;
}
.detail .content > div {
max-width: 600px;
}
.detail .title {
font-size: 1.25rem;
line-height: 1.5;
margin-bottom: 2rem;
text-transform: capitalize;
font-variant: small-caps;
}
.detail .title .index {
margin-bottom: 0.75rem;
}
.detail .citation {
font-size: 1rem;
line-height: 1.5;
margin-bottom: 2rem;
}
.detail .description {
font-size: 1rem;
line-height: 1.75;
}
.detail .description p {
text-indent: 2rem;
}
.detail .description p:first-of-type {
text-indent: 0;
}
/** Image galleries */
.gallery {
display: flex;
flex-direction: column;
justify-content: space-between;
align-items: center;
}
.gallery .image img {
cursor: pointer;
max-height: calc(100vh - 12rem);
max-width: 100%;
transition: opacity 100ms;
}
.buttons {
width: 100%;
text-align: right;
}
.buttons.close {
margin-bottom: 1rem;
}
.buttons img {
cursor: pointer;
height: 1.5rem;
}
.gallery .buttons {
margin-top: 1rem;
}
/** Videos */
.video {
display: flex;
height: calc(100vh - 12rem);
width: 100%;
}
.video > div,
.video iframe {
width: 100%;
height: 100%;
}