.tabs {
display: flex;
flex-direction: column;
--padding: 10px;
}
.titles {
flex-grow: 0;
z-index: 1;
>ul {
list-style: none;
margin: 0;
padding: 0;
}
}
li.title {
border: 0;
margin: 0;
padding: var(--padding);
&:hover,
&.selected {
background-color: red;
}
}
.items {
flex-grow: 1;
z-index: 0;
&>ul {
list-style: none;
margin: 0;
padding: 0;
.item {
display: none;
visibility: hidden;
&.selected {
display: block;
visibility: visible;
}
}
}
}
.title-show-sep {
display: block;
visibility: visible;
border: 0;
margin: 0;
padding: 0;
height: 100%;
--sep-zone: 50px;
.title-drop-zone {
height: 100px;
position: absolute;
z-index: 100;
width: var(--sep-zone);
}
.title-drop-sep {
position: relative;
height: 100%;
&::before {
content: "";
height: 100%;
position: absolute;
background-color: gray;
--width: 2px;
width: var(--width);
left: calc(-1 * var(--width)/2);
}
}
&.title-dropping .title-drop-sep {
&::before {
background-color: white;
--width: 8px;
}
}
}
.titles {
.title-show-sep:first-child {
.title-drop-sep::before {
left: 0px;
}
}
.title-show-sep:last-child {
.title-drop-sep::before {
left: calc(-1 * var(--width));
}
}
}
.title-hide-sep {
display: none;
visibility: hidden;
}