217 lines
4.1 KiB
SCSS
217 lines
4.1 KiB
SCSS
@use "common";
|
|
@use "var";
|
|
@use "color";
|
|
|
|
$panel-width: 30vw;
|
|
$panel-width-max: "400px + 3 * #{var.$block-spacing}";
|
|
$panel-actual-width: min($panel-width, #{$panel-width-max});
|
|
|
|
#projects {
|
|
&.with-feed, &.with-settings {
|
|
#title {
|
|
max-width: calc(100vw - var.$block-spacing - $panel-actual-width - (var.$button-width + var.$block-spacing * 2) * 2);
|
|
}
|
|
}
|
|
|
|
&.with-feed {
|
|
#submap {
|
|
transform: translateX(calc($panel-actual-width / -2));
|
|
}
|
|
|
|
.map-container-right {
|
|
transform: translateX(calc(100vw - $panel-actual-width));
|
|
}
|
|
}
|
|
|
|
&.with-settings {
|
|
#submap {
|
|
transform: translateX(calc($panel-actual-width / 2));
|
|
}
|
|
|
|
.map-container-left {
|
|
transform: translateX(0);
|
|
|
|
.map-panel {
|
|
box-shadow: 2px 2px var.$block-shadow 0px color.$over-img-shadow;
|
|
}
|
|
}
|
|
}
|
|
|
|
&.with-feed.with-settings {
|
|
#submap {
|
|
transform: translateX(0);
|
|
}
|
|
|
|
#title {
|
|
max-width: calc(100vw - var.$block-spacing - $panel-actual-width * 2 - (var.$button-width + var.$block-spacing * 2) * 2);
|
|
}
|
|
}
|
|
|
|
.map-container { //#feed, #settings
|
|
position: absolute;
|
|
top: 0;
|
|
bottom: 0;
|
|
z-index: 1;
|
|
user-select: none;
|
|
width: #{$panel-width};
|
|
max-width: calc(#{$panel-width-max});
|
|
transition: transform 0.5s;
|
|
|
|
&.moving {
|
|
cursor: grabbing;
|
|
transition: none;
|
|
}
|
|
|
|
.map-panel { //#feed-panel, #settings-panel
|
|
position: absolute;
|
|
top: 0;
|
|
bottom: 0;
|
|
left: 0;
|
|
}
|
|
|
|
input, textarea {
|
|
background-color: color.$post-input-bg;
|
|
color: color.$post;
|
|
outline: none;
|
|
}
|
|
|
|
button, a.button {
|
|
background-color: color.$default-inv-bg;
|
|
color: color.$default-inv;
|
|
|
|
&:hover, &:hover a, &:hover a:visited {
|
|
background-color: color.$default-bg-light;
|
|
color: color.$default;
|
|
}
|
|
|
|
a, a:visited {
|
|
background-color: color.$default;
|
|
color: color.$default-bg;
|
|
text-decoration: none;
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
.map-container-left { //#settings
|
|
transform: translateX(-100%);
|
|
|
|
.map-panel { //#settings-panel
|
|
width: calc(100% - var.$block-spacing);
|
|
margin: var.$block-spacing;
|
|
border-radius: var.$block-radius;
|
|
color: color.$default;
|
|
background: color.$default-bg-trans;
|
|
display: flex;
|
|
flex-direction: column;
|
|
flex-wrap: nowrap;
|
|
}
|
|
}
|
|
|
|
.map-container-right { //#feed
|
|
transform: translateX(100vw);
|
|
|
|
.map-panel { //#feed-panel
|
|
width: 100%;
|
|
padding-top: var.$block-spacing;
|
|
}
|
|
}
|
|
|
|
.map-control {
|
|
position: absolute;
|
|
background-color: color.$default-bg;
|
|
padding: var.$elem-spacing;
|
|
border-radius: 3px;
|
|
box-shadow: 2px 2px var.$block-shadow 0px color.$over-img-shadow;
|
|
font-size: 12px;
|
|
line-height: 1.5;
|
|
|
|
&.map-control-top {
|
|
top: var.$block-spacing;
|
|
}
|
|
|
|
&.map-control-bottom {
|
|
bottom: var.$block-spacing;
|
|
}
|
|
|
|
&.map-control-icon {
|
|
cursor: pointer;
|
|
|
|
.spot-icon {
|
|
color: color.$default;
|
|
}
|
|
|
|
&:hover {
|
|
background-color: color.$default-inv-bg;
|
|
|
|
.spot-icon {
|
|
color: color.$default-inv;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.feed-control {
|
|
right: calc(100% + var.$block-spacing);
|
|
}
|
|
|
|
.settings-control {
|
|
left: calc(100% + var.$block-spacing);
|
|
}
|
|
|
|
#legend {
|
|
.track {
|
|
white-space: nowrap;
|
|
.line {
|
|
width: 2em;
|
|
display: inline-block;
|
|
border-radius: 2px;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.desc {
|
|
font-size: 1em;
|
|
margin-left: 0.5em;
|
|
color: color.$legend;
|
|
}
|
|
}
|
|
}
|
|
|
|
#title {
|
|
left: calc(100% + var.$button-width + 2 * var.$block-spacing);
|
|
max-width: calc(100vw - var.$block-spacing - (var.$button-width + 2 * var.$block-spacing) * 2);
|
|
transition: max-width 0.5s;
|
|
@include common.no-text-overflow();
|
|
|
|
span {
|
|
font-size: 1.3em;
|
|
line-height: calc(var.$block-spacing / 1.3);
|
|
}
|
|
}
|
|
|
|
#background {
|
|
background: color.$loader-bg;
|
|
position: absolute;
|
|
left: 0;
|
|
top: 0;
|
|
bottom: 0;
|
|
right: 0;
|
|
}
|
|
|
|
#submap {
|
|
position: absolute;
|
|
left: 0;
|
|
top: 0;
|
|
bottom: 0;
|
|
right: 0;
|
|
transition: transform 0.5s;
|
|
|
|
.loader {
|
|
position: absolute;
|
|
font-size: 3em;
|
|
top: calc(50% - 0.5em);
|
|
left: calc(50% - 1.25em/2);
|
|
color: color.$loader;
|
|
}
|
|
}
|
|
} |