demo-int-table/front/src/assets/sidebar.scss

253 lines
5.0 KiB
SCSS

$bg: fade-out(#fff, 0.05);
$textColor: #484848;
$textColor2: #9A9697;
$primary: #E75B12;
$boxShadow: 0px 0px 8px rgba(0, 0, 0, .25);
.homelink {
position: absolute;
right: 2rem;
top: 2rem;
transition: right 300ms linear;
a {
color: $bg;
line-height: 1;
font-size: 2.5rem;
display: flex;
align-items: center;
}
svg {
filter: drop-shadow($boxShadow);
}
&.open {
right: 31vw;
svg {
transform: scale(-1, 1);
}
}
}
.itemnav {
position: absolute;
bottom: 5rem;
left: 50%;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: 1fr 1fr;
// flex-wrap: wrap;
column-gap: 1rem;
max-width: 8rem;
align-items: center;
justify-content: center;
>* {
grid-row-start: 2;
grid-row-end: 2;
line-height: 1;
font-size: 2.5rem;
display: flex;
align-items: center;
justify-content: center;
border-radius: 50%;
background-color: $bg;
color: var(--primary-color);
width: 2.5rem;
height: 2.5rem;
filter: drop-shadow($boxShadow);
&.invisible {
visibility: hidden;
pointer-events: none;
}
>a {
line-height: 1;
font-size: 0;
color: inherit;
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
}
svg {
width: 50%;
height: 50%;
}
}
&_one {
grid-column-start: 2;
grid-column-end: 4;
grid-row-start: 1;
grid-row-end: 1;
margin: 1rem 0.75rem;
}
&_big {
width: 4rem;
height: 4rem;
}
&-deep {
svg {
width: 70%;
height: 70%;
}
}
}
.sidebar {
position: fixed;
width: 30vw;
top: 2rem;
right: -50%;
bottom: 0;
transition: all 300ms linear;
line-height: 1.25;
display: flex;
flex-direction: column;
gap: 1.5rem;
color: #484848;
pointer-events: none;
&.open {
right: 0;
}
&-inner {
// max-height: calc(100vh - 38rem);
overflow: auto;
}
&-content {
pointer-events: all;
background-color: $bg;
border-top-left-radius: 0.5rem;
border-bottom-left-radius: 0.5rem;
box-shadow: $boxShadow;
color: $textColor;
display: flex;
flex-direction: column;
max-height: calc(100vh - 8rem);
}
&-accordion {
padding: 1.125rem 1rem;
border-bottom: 2px solid var(--primary-color);
min-height: 1.625rem;
overflow: hidden;
display: flex;
flex-direction: column;
&:last-child {
border-bottom: none;
}
h3 {
font-weight: 700;
font-size: 1.25rem;
}
p {
&:not(:last-child) {
margin-bottom: 1rem;
}
}
&-title {
display: flex;
align-items: center;
justify-content: flex-start;
gap: 0.75rem;
color: var(--primary-color);
cursor: pointer;
svg {
flex-shrink: 0;
}
}
&-content {
height: calc(100% - 2rem);
overflow: auto;
margin-top: 1.125rem;
padding-left: 2rem;
scrollbar-gutter: stable;
}
}
h2 {
font-size: 1.5rem;
text-align: center;
padding: 0.5rem 1rem;
min-height: 3rem;
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
font-weight: 700;
text-transform: uppercase;
line-height: 1;
border-bottom: 2px solid var(--primary-color);
}
&-list {
&-item {
font-size: 1.25rem;
position: relative;
display: flex;
justify-content: space-between;
margin-right: 0.25rem;
margin-bottom: 0.25rem;
input[type=radio],
input[type=checkbox] {
order: 10
}
label {
flex-grow: 1;
}
$r: 0.5rem;
&:before,
&::after {
content: '';
display: block;
background-color: var(--primary-color);
position: absolute;
left: -1.5rem;
opacity: 0.5;
}
&:before {
width: $r;
height: $r;
border-radius: 50%;
top: calc(50% - 0.125rem)
}
&:after {
width: 0.125rem;
top: 50%;
bottom: -50%;
transform: translate3d((0.125rem)*1.5, -100%, 0);
}
}
}
}