Files
CVR_Return-green-UI/Keyboard.less
Malthbern d6662b4050 2025r180
2025-08-27 06:31:43 -05:00

488 lines
11 KiB
Plaintext
Executable File

@import "../Common/vars.css";
@menu-bg-colour: 55,48,33;
@menu-opacity: 1;
@keyboard-key-colour: 55,48,33;
:root {
--menu-bg-colour: @menu-bg-colour;
--keyboard-key-colour: @keyboard-key-colour;
--menu-opacity: @menu-opacity;
--collapsed: flex;
}
body{
margin: 0;
background-color: transparent !important;
opacity: var(--menu-opacity);
}
.wrapper {
width: 100%;
height: 100%;
display: flex;
coh-partitioned: on;
text-shadow: 2px 2px 8px #000;
color: white;
font-family: var(--standard-font-family);
.keyboard {
width: 100%;
border-radius: 0.5em;
box-sizing: border-box;
//border: 3px solid #59885d;
padding: 5px;
background-color: rgb(var(--menu-bg-colour));
filter: drop-shadow(0 0 2rem black);
text-align: center;
display: flex;
flex-direction: column;
align-self: flex-end;
position: relative;
.hide {
visibility: hidden;
animation-name: fadeOut;
animation-duration: 0.1s;
@keyframes fadeOut {
from {
opacity: 1;
visibility: visible;
}
to {
opacity: 0;
}
}
}
.show {
visibility: visible;
animation-name: fadeIn;
animation-duration: 0.1s;
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
}
}
.settings {
width: 60%;
height: 325px;
z-index: 10;
position: absolute;
bottom: 50px;
left: 20%;
background-color: rgb(var(--menu-bg-colour));
border-radius: 0.5em;
filter: drop-shadow(0 0 2rem black);
display: flex;
flex-direction: column;
justify-content: flex-start;
padding: 0.5em;
//Restyle the rangeslider a bit cause it's dark
.guic-horizontal-rangeslider-wrapper {
margin: 2.1em 0 0 !important;
.guic-horizontal-rangeslider {
background-color: rgba(255,255,255,0.3) !important;
}
.guic-rangeslider-horizontal-grid-pol {
background-color: white;
}
.guic-rangeslider-horizontal-grid-text {
visibility: hidden;
}
}
.setting-container {
display: flex;
margin-bottom: 5px;
h3 {
flex: 1;
text-align: left;
margin-bottom: 0.2em;
margin-top: 0.2em;
align-self: center;
}
}
/* The switch - the box around the slider */
.switch {
position: relative;
display: inline-block;
width: 60px;
height: 34px;
input {
opacity: 0;
width: 0;
height: 0;
}
.checked {
background-color: #2196F3 !important;
box-shadow: 0 0 1px #2196F3;
&:before {
-webkit-transform: translateX(26px);
-ms-transform: translateX(26px);
transform: translateX(26px);
}
}
/* The slider */
.slider {
position: absolute;
cursor: pointer;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: #ccc;
&:before {
position: absolute;
content: "";
height: 26px;
width: 26px;
left: 4px;
bottom: 4px;
background-color: white;
}
}
/* Rounded sliders */
.round {
border-radius: 34px;
&:before {
border-radius: 50%;
}
}
}
.separator {
border-top: 5px solid #bbb;
border-radius: 5px;
margin-top: 0.5em;
margin-bottom: 0.5em;
}
.header {
text-align: left;
width: 100%;
display: flex;
.close-btn {
width: 2em;
&:hover {
filter: brightness(0.8) !important;
}
img {
position: relative;
width: 2em;
height: 2em;
filter: invert(1);
}
}
h2 {
margin-top: 0;
margin-bottom: 0;
flex: 1;
}
}
}
.in {
left: 5%;
transition: left 0.2s linear;
}
.out {
left: 100%;
transition: left 0.2s linear;
}
.collapsible {
display: var(--collapsed) !important;
}
.keyboard-row {
width: 100%;
display: flex;
//border-top: 3px solid #59885d;
.spacer {
flex: 1.4;
}
.special-keys {
flex: .5 !important;
border: 0 !important;
background-color: transparent !important;
&:hover {
filter: brightness(0.8) !important;
}
}
.keyboard-key,
.keyboard-mod,
.keyboard-func {
flex: 1;
min-height: 2.5em;
font-size: 1.61em;
display: flex;
align-items: center;
justify-content: center;
border: 2px solid #59885d;
margin: 2px;
border-radius: 0.25em;
background-color: rgb(var(--keyboard-key-colour));
span {
width: 1em;
display: block;
pointer-events: none;
}
img {
position: relative;
width: 1.5em;
height: 1.5em;
margin-left: -0.5em;
margin-right: -0.5em;
filter: invert(1);
pointer-events: none;
}
.flip-icon {
transform: rotate(180deg);
}
&:hover,
&:active {
background-color: #1b5037;
}
}
.active {
background-color: #1b5037;
}
.wide {
flex: 1.5;
}
.wider {
flex: 2;
}
.widest {
flex: 2.5;
}
.space {
flex: 10;
}
.cancel-key {
background: #E43600;
&:hover {
background-color: #E43600;
filter: brightness(80%);
}
}
.submit-key {
background: #37BD3C;
span {
width: 4em;
display: block;
}
&:hover{
background-color: #37BD3C;
filter: brightness(80%);
}
}
}
.keyboard-input-block{
width: unset;
flex: 10;
position: relative;
margin-left: 4px;
margin-right: 4px;
.textarea-info {
position: absolute;
background-color: rgb(var(--menu-bg-colour));
border-top-left-radius: 0.5em;
border-top-right-radius: 0.5em;
right: 10px;
top: -20px;
padding: 5px;
}
.textarea-title {
position: absolute;
display: none;
background-color: rgb(var(--menu-bg-colour));
border-top-left-radius: 0.5em;
border-top-right-radius: 0.5em;
left: 10px;
top: -20px;
padding: 5px;
}
.textarea-background {
position: absolute;
bottom: 0;
width: 100%;
height: auto;
background-color: rgb(var(--menu-bg-colour));
border-radius: 0.5em;
}
.textarea-container {
padding-top: 8px;
padding-left: 8px;
padding-right: 8px;
padding-bottom: 12px;
bottom: 0;
width: 100%;
.input-container {
background-color: white;
border-radius: 0.5em;
border-top-width: initial;
border-left-width: initial;
border-bottom-width: initial;
border-right-width: initial;
border-top-style: solid;
border-left-style: solid;
border-right-style: solid;
border-bottom-style: solid;
border-top-color: rgba(153, 153, 153, 1.000000);
border-left-color: rgba(153, 153, 153, 1.000000);
border-right-color: rgba(237, 237, 237, 1.000000);
border-bottom-color: rgba(237, 237, 237, 1.000000);
background-color: rgba(255, 255, 255, 1.000000);
position: relative;
display: block;
padding-left: 4px;
padding-right: 4px;
width: 100%;
overflow-x: auto;
.inputLineBlock {
text-align: left;
font-size: 2em;
color: black;
background-color: transparent;
width: 100%;
white-space: pre-wrap;
text-shadow: 0 0 0 #00000000;
}
.input {
text-align: left;
font-size: 2em;
color: black;
margin: 0;
border: 0;
background-color: transparent;
position: relative;
white-space: nowrap;
overflow-wrap: normal;
height: inherit;
display: flex;
min-height: 0;
min-width: 0;
width: initial;
overflow-x: auto;
caret-color: transparent;
font-family: "Noto Sans", "Noto Sans Symbols", "Noto Sans JP", "Noto Sans TC", "Noto Sans KR", "Noto Sans Arabic", "Noto Sans SC", sans-serif;
}
}
.input_mirror {
text-align: left;
height: 100%;
width: 100%;
color: transparent !important;
display: flex;
font-size: 2em;
padding-left: 6px;
padding-right: 4px;
text-shadow: 0 0 0 #00000000;
position: absolute;
white-space: pre-wrap;
top:10px;
pointer-events: none;
overflow: auto;
z-index: 2;
span {
margin: 0;
display: inline;
}
.cursor {
font-size: 1em;
color: black;
border:0.1px solid transparent;
margin-left: -8px;
display: block;
position: relative;
align-self: flex-end;
padding-bottom: 6px;
//animation: blink-animation 1s steps(5, start) infinite;
//-webkit-animation: blink-animation 1s steps(5, start) infinite
@keyframes blink-animation {
to {
visibility: hidden;
}
}
@-webkit-keyframes blink-animation {
to {
visibility: hidden;
}
}
}
}
}
.placeholder {
display: block;
font-size: 2em;
color: dimgrey;
z-index: 2;
position: absolute;
text-shadow: 0 0 0 rgba(0, 0, 0, 0);
padding-bottom: 8%;
align-self: flex-start;
padding-left: 12px;
bottom: 0;
}
}
}
}