ac70691cff
Signed-off-by: Victor Seiji Hariki <victorseijih@gmail.com>
313 lines
4.9 KiB
CSS
313 lines
4.9 KiB
CSS
* {
|
|
font-size: 100%;
|
|
font-family: Arial, Helvetica, sans-serif;
|
|
user-select: none;
|
|
}
|
|
|
|
input,
|
|
textarea {
|
|
user-select: auto;
|
|
}
|
|
|
|
/* Body is stuck with no scroll */
|
|
body {
|
|
width: 100%;
|
|
height: 100%;
|
|
|
|
margin: 0px;
|
|
padding: 0px;
|
|
|
|
overflow: clip;
|
|
}
|
|
|
|
.container {
|
|
position: relative;
|
|
}
|
|
|
|
.backgroundCanvas {
|
|
background-color: #ccc;
|
|
}
|
|
|
|
.mainHSplit {
|
|
display: grid;
|
|
grid-template-columns: 1fr;
|
|
grid-template-rows: repeat(2, 1fr);
|
|
grid-column-gap: 5px;
|
|
grid-row-gap: 5px;
|
|
}
|
|
|
|
.uiWrapper {
|
|
display: grid;
|
|
grid-template-columns: 1fr 15fr;
|
|
grid-template-rows: 1fr;
|
|
grid-column-gap: 5px;
|
|
grid-row-gap: 5px;
|
|
}
|
|
|
|
.collapsible {
|
|
background-color: rgb(0, 0, 0);
|
|
color: rgb(255, 255, 255);
|
|
border-radius: 5px;
|
|
cursor: pointer;
|
|
width: 100%;
|
|
border: none;
|
|
text-align: center;
|
|
outline: none;
|
|
font-size: 15px;
|
|
padding: 5px;
|
|
margin-top: 5px;
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
.collapsible:hover {
|
|
background-color: #777;
|
|
}
|
|
|
|
.content {
|
|
max-height: 0;
|
|
overflow-y: clip;
|
|
overflow-x: visible;
|
|
transition: max-height 0.2s ease-out, height 0s ease-out;
|
|
}
|
|
|
|
.menu-container {
|
|
background-color: rgba(255, 255, 255, 0.5);
|
|
padding-left: 10px;
|
|
padding-right: 10px;
|
|
padding-top: 5px;
|
|
padding-bottom: 5px;
|
|
|
|
color: black;
|
|
border: solid;
|
|
border-top: none;
|
|
border-color: black;
|
|
font-size: medium;
|
|
text-align: left;
|
|
max-height: fit-content;
|
|
overflow: visible;
|
|
cursor: auto;
|
|
}
|
|
|
|
.canvasHolder {
|
|
position: relative;
|
|
width: 2560px;
|
|
height: 1440px;
|
|
}
|
|
|
|
.mainCanvases {
|
|
position: absolute;
|
|
top: 0px;
|
|
left: 0px;
|
|
width: 2560px;
|
|
height: 1440px;
|
|
}
|
|
|
|
.masks {
|
|
display: grid;
|
|
grid-template-columns: repeat(3, 1fr);
|
|
grid-template-rows: 1fr;
|
|
grid-column-gap: 0px;
|
|
grid-row-gap: 0px;
|
|
}
|
|
|
|
/* Mask colors for mask inversion */
|
|
/* Filters are some magic acquired at https://codepen.io/sosuke/pen/Pjoqqp */
|
|
.mask-canvas {
|
|
opacity: 0%;
|
|
}
|
|
|
|
.mask-canvas.display {
|
|
opacity: 40%;
|
|
filter: invert(100%);
|
|
}
|
|
|
|
.mask-canvas.display.opaque {
|
|
opacity: 100%;
|
|
}
|
|
|
|
.mask-canvas.display.clear {
|
|
filter: invert(71%) sepia(46%) saturate(6615%) hue-rotate(321deg)
|
|
brightness(106%) contrast(100%);
|
|
}
|
|
|
|
.mask-canvas.display.hold {
|
|
filter: invert(41%) sepia(16%) saturate(5181%) hue-rotate(218deg)
|
|
brightness(103%) contrast(108%);
|
|
}
|
|
|
|
.strokeText {
|
|
-webkit-text-stroke: 1px #000;
|
|
font-size: 150%;
|
|
font-weight: 600;
|
|
color: #fff;
|
|
}
|
|
|
|
.wideSelect {
|
|
width: 100%;
|
|
text-overflow: ellipsis;
|
|
}
|
|
|
|
/* Host input */
|
|
.host-field-wrapper {
|
|
position: relative;
|
|
display: flex;
|
|
|
|
align-items: stretch;
|
|
justify-content: space-between;
|
|
|
|
width: 100%;
|
|
}
|
|
|
|
.host-field-wrapper input {
|
|
flex-shrink: 0;
|
|
width: calc(100% - 15px);
|
|
|
|
display: block;
|
|
|
|
border: 0;
|
|
}
|
|
|
|
.host-field-wrapper .connection-status {
|
|
width: 15px;
|
|
|
|
position: absolute;
|
|
left: calc(100% - 15px);
|
|
|
|
border-top-right-radius: 5px;
|
|
border-bottom-right-radius: 5px;
|
|
|
|
box-sizing: inherit;
|
|
|
|
cursor: pointer;
|
|
|
|
transition-duration: 50ms;
|
|
|
|
padding-top: 1px;
|
|
padding-bottom: 1px;
|
|
|
|
overflow: hidden;
|
|
}
|
|
.host-field-wrapper .connection-status:active,
|
|
.host-field-wrapper .connection-status:hover {
|
|
width: fit-content;
|
|
padding-left: 5px;
|
|
padding-right: 6px;
|
|
|
|
filter: brightness(110%);
|
|
}
|
|
|
|
.host-field-wrapper .connection-status:active {
|
|
filter: brightness(80%);
|
|
}
|
|
|
|
.host-field-wrapper .connection-status > #connection-status-indicator-text {
|
|
opacity: 0%;
|
|
transition-duration: 20ms;
|
|
}
|
|
|
|
.host-field-wrapper
|
|
.connection-status:hover
|
|
> #connection-status-indicator-text {
|
|
opacity: 100%;
|
|
}
|
|
|
|
.host-field-wrapper .connection-status.online {
|
|
background-color: #49dd49;
|
|
color: #1f3f1f;
|
|
}
|
|
|
|
.host-field-wrapper .connection-status.offline {
|
|
background-color: #dd4949;
|
|
color: #3f1f1f;
|
|
}
|
|
|
|
.host-field-wrapper .connection-status.cors-issue {
|
|
background-color: #dddd49;
|
|
color: #3f3f1f;
|
|
}
|
|
|
|
.host-field-wrapper .connection-status.before {
|
|
background-color: #777;
|
|
color: #1f1f1f;
|
|
}
|
|
|
|
input#host {
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
/* Prompt Fields */
|
|
|
|
div.prompt-wrapper {
|
|
overflow: visible;
|
|
}
|
|
|
|
div.prompt-wrapper > textarea {
|
|
margin: 0;
|
|
padding: 0;
|
|
|
|
resize: vertical;
|
|
}
|
|
|
|
div.prompt-wrapper > textarea:focus {
|
|
width: 700px;
|
|
}
|
|
|
|
/* Style Field */
|
|
select > .style-select-option {
|
|
cursor: pointer;
|
|
}
|
|
|
|
select > .style-select-option:hover {
|
|
background-color: #999;
|
|
}
|
|
|
|
select > .style-select-option:active {
|
|
background-color: #aaa;
|
|
}
|
|
|
|
/* Tool buttons */
|
|
.button-array {
|
|
display: flex;
|
|
justify-content: stretch;
|
|
}
|
|
|
|
.button-array > .button.tool {
|
|
flex: 1;
|
|
border-radius: 0;
|
|
}
|
|
|
|
.button-array > .button.tool:first-child {
|
|
border-top-left-radius: 5px;
|
|
border-bottom-left-radius: 5px;
|
|
}
|
|
|
|
.button-array > .button.tool:last-child {
|
|
border-top-right-radius: 5px;
|
|
border-bottom-right-radius: 5px;
|
|
}
|
|
|
|
.button.tool {
|
|
background-color: rgb(0, 0, 50);
|
|
color: rgb(255, 255, 255);
|
|
cursor: pointer;
|
|
border: none;
|
|
text-align: center;
|
|
outline: none;
|
|
font-size: 15px;
|
|
padding: 5px;
|
|
margin-top: 5px;
|
|
margin-bottom: 5px;
|
|
}
|
|
|
|
.button.tool:disabled {
|
|
background-color: #666 !important;
|
|
cursor: default;
|
|
}
|
|
|
|
.button.tool:hover {
|
|
background-color: rgb(30, 30, 80);
|
|
}
|
|
.button.tool:active,
|
|
.button.tool.active {
|
|
background-color: rgb(60, 60, 130);
|
|
}
|