91 lines
1.7 KiB
SCSS
91 lines
1.7 KiB
SCSS
@import "../variables/mixins";
|
|
@import "../variables/sizes";
|
|
@import "../variables/colors";
|
|
|
|
// A Puzzle is a set of pieces that are connected one way or another
|
|
.Puzzle {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: flex-start;
|
|
|
|
& > .Puzzle-piece:not(:first-child):not(:last-child) {
|
|
margin-right: -1px;
|
|
margin-left: -1px;
|
|
border-right: 0;
|
|
border-left: 0;
|
|
border-radius: 0;
|
|
}
|
|
}
|
|
|
|
.Puzzle-piece {
|
|
position: relative;
|
|
box-sizing: border-box;
|
|
min-width: 100px;
|
|
min-height: 34px;
|
|
padding: 8px 10px; // sufficient padding on sides to not be overlapped by ::after blocks
|
|
border: 1px solid $cStructure-mainLine;
|
|
border-radius: 3px;
|
|
font-size: 14px;
|
|
line-height: 1;
|
|
|
|
&.is-placeholder,
|
|
&.is-placeholder.connect-left::before,
|
|
&.is-placeholder.connect-right::after {
|
|
border-style: dashed;
|
|
}
|
|
|
|
&.connect-left::before,
|
|
&.connect-left::after,
|
|
&.connect-right::before,
|
|
&.connect-right::after {
|
|
content: '';
|
|
display: block;
|
|
position: absolute;
|
|
top: 10px;
|
|
width: 10px;
|
|
height: 10px;
|
|
border: 1px solid $cStructure-mainLine;
|
|
background-color: $cStructure-grayBkg;
|
|
}
|
|
|
|
&.connect-left::before,
|
|
&.connect-right::before {
|
|
z-index: 2;
|
|
border-radius: 50px;
|
|
}
|
|
|
|
&.connect-left::after,
|
|
&.connect-right::after {
|
|
z-index: 3;
|
|
height: 12px;
|
|
border: 0;
|
|
}
|
|
|
|
&.connect-left::before {
|
|
left: -7px;
|
|
}
|
|
|
|
&.connect-left::after {
|
|
left: 0;
|
|
}
|
|
|
|
&.connect-right::before {
|
|
right: -7px;
|
|
}
|
|
|
|
&.connect-right::after {
|
|
right: 0;
|
|
}
|
|
}
|
|
|
|
.Puzzle-piece--inset {
|
|
min-width: 50px;
|
|
background-color: rgba(#DDD, 0.2);
|
|
}
|
|
|
|
.Puzzle-pieceIcon {
|
|
max-height: 13px; // for content not to expand it's size
|
|
margin-top: -2px; // vertically center, since not square
|
|
color: #CCC;
|
|
}
|