|
|
|
:root {
|
|
|
|
--dark-blue: #2f343d;
|
|
|
|
--dark-hover: #888;
|
|
|
|
--radius: 5px;
|
|
|
|
--hgap: 5px;
|
|
|
|
--gap: 10px;
|
|
|
|
}
|
|
|
|
|
|
|
|
html, body {
|
|
|
|
margin: 0;
|
|
|
|
padding: 0;
|
|
|
|
width: 100%;
|
|
|
|
height: 100%;
|
|
|
|
overflow: hidden;
|
|
|
|
}
|
|
|
|
|
|
|
|
canvas {
|
|
|
|
width: 100%;
|
|
|
|
height: 100%;
|
|
|
|
display: block;
|
|
|
|
cursor: crosshair;
|
|
|
|
}
|
|
|
|
|
|
|
|
canvas.movemode {
|
|
|
|
cursor: grab;
|
|
|
|
}
|
|
|
|
|
|
|
|
canvas.movemode.moving {
|
|
|
|
cursor: grabbing;
|
|
|
|
}
|
|
|
|
|
|
|
|
.tools-wrapper {
|
|
|
|
position: fixed;
|
|
|
|
bottom: 0;
|
|
|
|
width: 100%;
|
|
|
|
display: flex;
|
|
|
|
justify-content: center;
|
|
|
|
align-items: end;
|
|
|
|
z-index: 10;
|
|
|
|
pointer-events: none;
|
|
|
|
}
|
|
|
|
|
|
|
|
.pallete-wrapper {
|
|
|
|
position: fixed;
|
|
|
|
top: 0;
|
|
|
|
left: 0;
|
|
|
|
height: 100%;
|
|
|
|
pointer-events: none;
|
|
|
|
display: flex;
|
|
|
|
flex-direction: column;
|
|
|
|
justify-content: center;
|
|
|
|
}
|
|
|
|
|
|
|
|
.pallete {
|
|
|
|
pointer-events: all;
|
|
|
|
display: grid;
|
|
|
|
flex-direction: column;
|
|
|
|
align-items: center;
|
|
|
|
background: var(--dark-blue);
|
|
|
|
border-top-right-radius: var(--radius);
|
|
|
|
border-bottom-right-radius: var(--radius);
|
|
|
|
/* border-bottom-left-radius: var(--radius);*/
|
|
|
|
padding-top: var(--gap);
|
|
|
|
padding-bottom: var(--gap);
|
|
|
|
}
|
|
|
|
|
|
|
|
.pallete .color {
|
|
|
|
padding: var(--gap);
|
|
|
|
cursor: pointer;
|
|
|
|
background: var(--dark-blue);
|
|
|
|
transition: transform .1s ease-in-out;
|
|
|
|
}
|
|
|
|
|
|
|
|
.pallete .color:hover {
|
|
|
|
background: var(--dark-hover);
|
|
|
|
}
|
|
|
|
|
|
|
|
.pallete .color.active {
|
|
|
|
transform: translateX(10px);
|
|
|
|
border-top-right-radius: var(--radius);
|
|
|
|
border-bottom-right-radius: var(--radius);
|
|
|
|
}
|
|
|
|
|
|
|
|
.pallete .color.active:hover {
|
|
|
|
background: var(--dark-blue);
|
|
|
|
}
|
|
|
|
|
|
|
|
.pallete .color-pane {
|
|
|
|
width: 24px;
|
|
|
|
height: 24px;
|
|
|
|
box-sizing: border-box;
|
|
|
|
border-radius: var(--radius);
|
|
|
|
}
|
|
|
|
|
|
|
|
.tools {
|
|
|
|
pointer-events: all;
|
|
|
|
display: flex;
|
|
|
|
align-items: center;
|
|
|
|
justify-content: center;
|
|
|
|
background: var(--dark-blue);
|
|
|
|
border-radius: var(--radius);
|
|
|
|
border-bottom-right-radius: 0;
|
|
|
|
border-bottom-left-radius: 0;
|
|
|
|
height: 42px;
|
|
|
|
padding-left: var(--gap);
|
|
|
|
padding-right: var(--gap);
|
|
|
|
}
|
|
|
|
|
|
|
|
.tool {
|
|
|
|
cursor: pointer;
|
|
|
|
padding-left: var(--gap);
|
|
|
|
padding-right: var(--gap);
|
|
|
|
height: 100%;
|
|
|
|
display: flex;
|
|
|
|
align-items: center;
|
|
|
|
background: var(--dark-blue);
|
|
|
|
transition: transform .1s ease-in-out;
|
|
|
|
user-select: none;
|
|
|
|
}
|
|
|
|
|
|
|
|
.tool:hover {
|
|
|
|
background: var(--dark-hover);
|
|
|
|
}
|
|
|
|
|
|
|
|
.tool.active {
|
|
|
|
transform: translateY(-10px);
|
|
|
|
border-top-right-radius: var(--radius);
|
|
|
|
border-top-left-radius: var(--radius);
|
|
|
|
background: var(--dark-blue);
|
|
|
|
}
|
|
|
|
|
|
|
|
.tool img {
|
|
|
|
height: 24px;
|
|
|
|
width: 24px;
|
|
|
|
filter: invert(100%);
|
|
|
|
}
|