grid-apps-cmms/web/kiri/index.css
2020-12-13 09:55:30 -05:00

1262 lines
23 KiB
CSS

:root {
--fg-gray: #495057;
--bg-gray: rgba(0,0,0,0.25);
--gradbar: linear-gradient(to right, #ddd, #666, #ddd);
--holdbar: linear-gradient(to top, rgba(100,100,100,0.1), rgba(255,255,255,1), rgba(100,100,100,0.1));
--holdbar-sf: linear-gradient(to top, rgba(200,200,200,0.1), rgba(255,255,255,1), rgba(200,200,200,0.1)) !important;
}
a, a:hover, a:visited {
border: none;
color: inherit;
text-decoration: none;
}
#app {
position: fixed;
overflow: hidden;
font-weight: normal;
font-family: sans-serif;
font-size: larger;
top: 0;
left: 0;
right: 0;
bottom: 0;
}
#app,div {
display: flex;
padding: 0px;
border: 0px;
margin: 0px;
}
#gsbox {
width: 40px;
height: 40px;
padding-right: 15px;
position: fixed;
display: none;
}
div {
position: relative;
}
button.yellow {
background-color: #eda;
border: 1px solid rgba(0,0,255,0.5);
}
button.yellow:hover {
background-color: #eea;
}
button {
display: flex;
border: 1px solid #ccc;
border-radius: 3px;
background-color: #eee;
padding: 2px 7px 3px 7px;
margin: 1px;
margin-bottom: 2px;
}
button:hover {
background-color: #aaa;
color: black;
}
button[load] {
width: 100%;
text-align: left;
}
button[del] {
margin-left: 5px;
}
input {
background-color: #eee;
margin-bottom: 1px;
text-align: right;
border: 1px solid #bbb;
padding-top: 0;
padding-bottom: 0;
margin-top: 1px;
margin-bottom: 1px;
}
input:focus {
background-color: #fec;
}
input[disabled] {
background-color: #ddd;
color: #000;
border-width: 1px;
}
input[type="range"] {
width: 85px;
background-color: transparent;
}
input[type=range]::-moz-focus-outer {
border: 0;
}
select, textarea, button, input, a {
outline: none;
}
textarea {
overflow: scroll;
}
select {
border: 1px solid #bbb;
background-color: rgba(255,255,255,0.5);
border-radius: 3px;
}
select option[local="1"] {
color: #55d;
}
select option[favorite="1"] {
font-weight: bold;
}
th, tr, td, span, div, label, button {
user-select: none;
}
th, tr, td, label {
white-space: nowrap;
}
.noselect {
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.hide {
display: none !important;
}
.noshow {
display: none;
}
.f-row {
flex-direction: row;
}
.f-col {
flex-direction: column;
}
.auto {
flex-basis: auto;
}
.basis-50 {
flex-basis: 50%;
}
.grow {
flex-grow: 1;
}
.a-start {
align-items: flex-start;
}
.a-center {
align-items: center;
}
.a-end {
align-items: flex-end;
}
.a-stretch {
align-items: stretch;
}
.j-start {
justify-content: flex-start;
}
.j-center {
justify-content: center;
}
.j-end {
justify-content: flex-end;
}
.space-between {
justify-content: space-between;
}
.center {
text-align: center;
}
.t-just {
text-align: justify;
}
.t-right {
text-align: right;
}
.russo {
font-family: 'Russo One', sans-serif;
}
.overy {
overflow-y: auto;
}
.mh0 {
min-height: 0;
}
.mh85 {
max-height: 85%;
}
:-moz-any() {
overflow-x: hidden !important;
overflow-y: hidden !important;
}
:-moz-any() {
overflow-x: scroll !important;
overflow-y: scroll !important;
margin-right: -14px !important;
margin-bottom: -14px !important;
}
#curtain {
top: 0;
left: 0;
right: 0;
bottom: 0;
position: fixed;
background-color: #fff;
font-family: 'Russo One', sans-serif;
z-index: 11;
}
#tracker {
top: 0;
left: 0;
right: 0;
bottom: 0;
position: absolute;
display: none;
z-index: 101;
}
#container {
position: fixed;
z-index: -1;
width: 100%;
height: 100%;
}
#container canvas {
width: 100%;
height: 100%;
overflow: hidden;
}
#top {
font-family: 'Russo One', sans-serif;
background-color: rgba(255,255,255,0.75);
padding: 3px;
z-index: 15;
}
#top > div {
margin: 0 5px 0 5px;
}
#app-mode, #app-acct {
width: 125px;
}
#app-mode:hover #mode-info {
display: flex;
}
#mode-info {
display: none;
position: absolute;
white-space: nowrap;
font-size: smaller;
font-family: sans-serif;
margin-top: 5px;
padding: 5px;
left: -6px;
top: 100%;
color: var(--fg-gray);
border-radius: 3px;
border: 1px solid #ddd;
background-color: white;
}
#mode-info > div {
padding: 2px 0 2px 0;
}
#mode-info label {
font-weight: bold;
padding-right: 5px;
}
#app-name:hover #app-info {
display: flex;
}
#app-info {
display: none;
position: absolute;
white-space: nowrap;
font-size: smaller;
font-family: sans-serif;
margin-top: 5px;
padding: 5px;
top: 100%;
color: var(--fg-gray);
border-radius: 3px;
border: 1px solid #ddd;
background-color: white;
}
#app-acct {
align-items: center;
justify-content: flex-end;
}
#app-acct:hover #acct-pop {
display: flex;
}
#acct-pop {
display: none;
color: var(--fg-gray);
font-family: sans-serif;
position: absolute;
right: -6px;
top: 100%;
}
#acct-pop > div {
margin-top: 5px;
align-items: stretch;
background-color: white;
border: 1px solid #ddd;
border-radius: 3px;
padding: 0;
}
#acct-pop > div > div {
padding: 5px;
}
#acct-pop > div > div:hover {
color: #000;
background-color: #f4f4f4;
}
#acct-lang:hover #lang-pop, #acct-ver:hover #ver-pop {
display: flex;
}
#lang-pop, #ver-pop {
display: none;
position: absolute;
right: 100%;
top: -1px;
align-items: stretch;
text-align: right;
border-radius: 3px;
border: 1px solid #ddd;
background-color: white;
white-space: nowrap;
}
#ver-pop {
transform: translateY(-52%);
}
#lang-pop > div, #ver-pop > div {
padding: 5px 7px 5px 7px;
}
#lang-pop > div:hover, #ver-pop > div:hover {
color: #000;
background-color: #f4f4f4;
}
#ver-pop > div {
border-radius: 3px;
border: 1px solid white;
margin: 2px;
}
#ver-pop .cver {
background-color: #dfd !important;
border: 1px solid #aaa;
}
#mid {
pointer-events: none;
}
#mid-lcol, #mid-rcol, #modal {
pointer-events: visible;
}
#top-sep {
display: none;
}
#top-sep, #mid-sep {
z-index: 14;
height: 1px;
background-image: var(--gradbar);
}
#lt-top {
height: 10px;
border-top-right-radius: 10px;
background-color: var(--bg-gray);
left: -5px;
}
#lt-back, #lt-trash {
position: absolute;
display: none;
top: 0;
}
#act-sep, #lt-sep {
background-color: var(--bg-gray);
height: 10px;
left: -5px;
}
#lt-end {
height: 10px;
border-bottom-right-radius: 10px;
background-color: var(--bg-gray);
left: -5px;
}
.pop-lcol {
position: absolute;
display: none;
top: -3px;
bottom: -3px;
left: 100%;
z-index: 10;
}
.pop-lcol > div {
flex-direction: column;
justify-content: center;
align-items: center;
margin: 2px;
padding: 5px;
background-color: rgba(255,255,255,0.75);
border: 1px solid rgba(0,0,0,0);
border-radius: 3px;
width: 60px;
color: var(--fg-gray);
}
.pop-lcol > div:hover {
background-color: #eee;
border: 1px solid #aaa;
color: #000;
}
.pop-sel {
background-color: #ddd !important;
}
.lt-menu {
flex-direction: column;
align-items: center;
margin: 2px 0 2px 0;
padding: 5px 5px 5px 10px;
border: 1px solid rgba(0,0,0,0);
border-radius: 3px;
color: #ccc;
left: -5px;
background-color: rgba(255,255,255,0.75);
}
.lt-menu svg {
font-size: 40px;
text-align: center;
}
.lt-menu label {
font-size: smaller;
}
.lt-enabled {
color: var(--fg-gray);
}
.lt-enabled:hover {
background-color: #eee;
border: 1px solid #aaa;
color: #000;
}
.lt-enabled:hover .pop-lcol {
display: flex;
}
@media only screen and (max-height : 800px) {
.lt-menu, .pop-lcol {
font-size: 16px !important;
}
.lt-menu svg {
font-size: 30px !important;
}
.pop-lcol svg {
font-size: 20px !important;
}
#mod-x {
position: absolute;
font-size: 30px;
top: 8px;
}
}
.ext-buttons button {
justify-content: center;
align-items: center;
text-align: center;
flex-grow: 1;
margin-top: 3px;
height: 75%;
}
.txt-sel {
background-color: #eee;
}
.txt-sel button, .btn-sel {
background-color: #ccc;
}
#pop-rotate .value, #pop-scale .value {
width: 90%;
}
#pop-rotate label {
padding: 3px;
}
#pop-rotate svg {
padding: 3px;
font-size: 20px;
border-radius: 3px;
border: 1px solid rgba(0,0,0,0);
}
#pop-rotate svg:hover {
color: #345;
font-size: 20px;
background-color: rgba(255,255,255,0.5);
border: 1px solid #aaa;
}
#lock_x, #lock_y, #lock_z {
position: absolute;
left: 2px;
top: 7px;
}
#end {
left: 0;
right: 0;
bottom: 0;
position: fixed;
text-align: center;
font-size: smaller;
height: 25px;
}
#progress {
display: none;
position: absolute;
top: 0px;
left: 10%;
right: 10%;
text-align: center;
background-color: rgba(0,0,0,0.15);
border-radius: 3px;
}
#progbar {
width: 100%;
text-align: left;
position: relative;
background-color: rgba(255,0,0,0.65);
border-radius: 3px;
}
#progtxt {
color: white;
margin: 0 5px 0 5px;
padding: 0 5px 2px 5px;
white-space: nowrap;
flex-direction: row;
align-items: center;
vertical-align: middle;
}
#modal {
display: none;
position: fixed;
z-index: 20;
top: 50%;
left: 0px;
right: 0px;
bottom: 0px;
height: 300px;
transform: translateY(-50%);
background-color: var(--bg-gray);
border-bottom: 1px solid black;
border-top: 1px solid black;
overflow: hidden;
}
#modal > div {
position: absolute;
transform: translateX(50%) translateY(-50%);
right: 50%;
top: 50%;
}
.mdialog {
display: none;
padding: 10px;
min-height: 20px;
font-size: smaller;
background-color: rgba(255,255,255,0.75);
}
.mod-top {
height: 10px;
border-top-left-radius: 10px;
border-top-right-radius: 10px;
background-color: var(--bg-gray);
}
#mod-x {
position: absolute;
z-index: 30;
bottom: -20px;
right: 5px;
}
#mod-setup {
height: 500px;
}
#mod-print {
background-color: rgba(255,255,255,0.85);
}
#mod-print .grow button {
margin-left: 5px;
}
#mod-print .hint {
color: #345;
font-size: 12px;
font-style: italic;
text-align: center;
font-weight: normal;
padding-top: 5px;
}
#mod-print .box {
background-color: rgba(255,255,255,0.5);
border: 1px solid #bbb;
border-radius: 3px;
padding: 20px 10px 10px 10px;
}
#mod-print .box select {
min-width: 10em;
}
#mod-print .header {
flex-direction: column;
justify-content: center;
align-items: center;
transform: translateY(50%);
z-index: 10;
}
#mod-print .header label {
background-color: white;
padding: 0 10px 0 10px;
border-radius: 5px;
border-right: 1px solid #bbb;
border-left: 1px solid #bbb;
}
#mod-print a {
text-decoration: underline;
}
#mod-print a:hover {
color: #567;
background-color: #ddd;
}
#mod-print label {
flex-grow: 1;
font-weight: bold;
padding-right: 10px;
}
#mod-print button {
flex-direction: column;
justify-content: center;
align-items: center;
min-height: 2em;
}
#print-canvas {
width: 180px;
height: 320px;
border: 1px solid #ccc;
background-color: #f5f5f5;
transform: scale(-1, 1);
}
#print-layer {
font-family: 'Russo One', sans-serif;
font-size: small;
width: 5em;
padding: 0 !important;
text-align: right;
}
#print-download {
min-height: 4em !important;
}
#code-preview-textarea {
width: 100%;
height: 250px;
font-size: 10px;
}
.mod-end {
height: 10px;
border-bottom-left-radius: 10px;
border-bottom-right-radius: 10px;
background-color: var(--bg-gray);
}
#settingsList button.selected {
font-weight: bold;
background-color: #ccc;
}
#settingsList button.selected:hover {
background-color: #aaa;
}
#help p {
margin: 2px;
}
#help a {
font-weight: bold;
text-decoration: underline;
}
@supports (-moz-appearance:none) {
#help li {
margin-left: 20px;
}
.content br {
margin: 10px;
}
}
#help .header {
background-color: rgba(0,0,0,0.1);
justify-content: center;
white-space: nowrap;
text-align: center;
border-radius: 5px;
margin-bottom: 5px;
padding: 1px 0 2px 0;
font-family: monospace;
}
#help .title {
text-align: center;
font-size: larger;
font-weight: bold;
padding: 10px 0 5px 50px;
}
#help .title label {
display: inline-flex;
}
#help #kiri-version {
position: absolute;
right: 10px;
bottom: 5px;
font-family: monospace;
font-weight: normal;
font-size: smaller;
color: #333;
}
#help .content {
flex-direction: column;
margin: 3px 0 8px 0;
line-height: 1.5em;
}
#help .content p {
text-align: justify;
}
#help .content li {
line-height: 1.75em;
}
#help .footer {
font-family: monospace;
align-items: center;
white-space: nowrap;
flex-direction: column;
padding: 8px 0 3px 0;
border-top: 1px dashed #aaa;
}
#help th, #help td {
font-family: monospace;
}
#help td label {
font-weight: bold;
}
#help button {
display: inline-flex;
}
.help-label {
border-top-left-radius: 3px;
border-bottom-left-radius: 3px;
border: 1px solid rgba(0,0,0,0);
border-right: 0;
padding: 12px 10px 12px 8px;
z-index: 1000;
}
.help-label.sel {
background-color: white;
border: 1px solid #888;
border-right: 0;
}
#help-tabs {
width: 550px;
height: 450px;
transform: translateX(-1px);
}
#help-tab-support a:hover {
background-color: #aee;
border-radius: 5px;
}
.help-tab {
flex-grow: 1;
display: none;
overflow-y: auto;
border-top-right-radius: 3px;
border-bottom-right-radius: 3px;
border: 1px solid #888;
padding: 10px;
background-color: white;
white-space: normal;
}
.confirm {
padding-top: 15px;
}
.confirm > div {
padding-top: 10px;
}
.confirm label {
text-align: center;
line-height: 1.5em;
padding: 0 10px 0 10px;
}
.confirm button {
margin-left: 4px;
}
.confirm input {
padding: 3px;
margin: 0 10px 0 10px;
text-align: left;
}
.dev-type {
font-family: 'Russo One', sans-serif;
flex-direction: column;
align-items: center;
background-color: rgba(255,255,255,0.75);
border-radius: 5px;
width: 100px;
margin: 5px;
}
.dev-sel {
color: #033;
background-color: #bbb;
}
.t-head {
text-align: center;
font-weight: bold;
padding-bottom: 5px;
}
.t-33 {
width: 33%;
}
.t-group {
background-image: var(--gradbar);
white-space: nowrap;
text-align: center;
justify-content: center;
border-radius: 2px;
padding: 1px 0 2px 0;
margin: 5px 0 5px 0;
color: white;
}
.t-body {
background-color: rgba(255,255,255,0.5);
border: 1px solid #bbb;
border-radius: 3px;
}
.t-inset {
padding: 3px;
}
.t-pad {
width: 5px;
}
.t-pad2 {
width: 10px;
}
#devices {
width: 200px;
}
#device {
width: 200px;
}
#gcode-edit {
width: 200px;
}
#dev-gcode textarea {
font-family: monospace;
width: 100%;
}
#device-exp {
position: absolute;
left: 0;
z-index: 10;
}
#device-action, #tool-action {
margin-top: 5px;
}
#device-action button, #tool-action button {
flex-direction: column;
justify-content: center;
}
#catalogList {
min-width: 150px;
height: 350px;
overflow-y: scroll;
}
#catalogList .label {
width: 12em;
justify-content: flex-end;
}
#catalogList .rename {
font-style: italic;
color: #335;
}
#layer-slider {
position: absolute;
font-size: smaller;
left: 15px;
right: 15px;
bottom: 3px;
pointer-events: all;
}
#layer-animate {
position: absolute;
left: 15px;
right: 15px;
bottom: 3px;
}
#layer-animate svg {
color: #333;
font-size: 30px;
}
#layer-animate label {
display: inline-flex;
width: 30px;
border-radius: 3px;
border: 1px solid #aaa;
margin: 1px 2px 2px 4px;
padding: 2px;
justify-content: center;
align-items: center;
font-weight: bold;
background-color: #ddd;
}
#layer-toolpos {
position: absolute;
right: 3px;
bottom: 3px;
}
#layer-toolpos label, #layer-toolpos input {
display: inline-flex;
height: 30px;
border-radius: 3px;
border: 1px solid #ccc;
justify-content: center;
align-items: center;
font-weight: bold;
background-color: #ddd;
}
#layer-toolpos label {
width: 30px;
padding: 1px 1px 1px 1px;
margin: 1px 1px 2px 6px;
}
#layer-toolpos input {
background-color: #eee;
font-family: monospace;
padding: 1px 4px 1px 4px;
margin: 1px 1px 2px 1px;
}
#slider {
display: none;
height: 30px;
z-index: 100;
}
#slider-hi-val, #slider-lo-val {
display: none;
position: absolute;
font-family: monospace;
transform: translateY(-50%);
background-color: rgba(255,255,255,0.5);
border: 1px solid #ddd;
border-radius: 3px;
bottom: 110%;
left: 50%;
}
#slider > div {
justify-content: center;
flex-direction: row;
align-items: center;
}
#slider-max {
background-color: #ccc;
border-top-right-radius: 10px;
border-bottom-right-radius: 10px;
margin-left: 3px;
}
#slider-center {
background-image: var(--holdbar);
}
#slider-zero {
z-index: 10;
margin-right: 3px;
background-color: #ccc;
border-top-left-radius: 10px;
border-bottom-left-radius: 10px;
}
#slider-hold {
background-color: rgba(0,0,0,0.15);
position: absolute;
bottom: 0;
right: 0;
top: 0;
}
#slider-hold .handle {
width: 15px;
height: 100%;
border-radius: 3px;
background-color: var(--bg-gray);
}
#slider-mid {
width: 20px;
}
#alert-area {
display: none;
justify-content: center;
align-items: center;
position: absolute;
bottom: 45px;
left: 0;
right: 0;
}
#alert-border {
display: flex;
justify-content: center;
align-items: center;
max-width: 50%;
background-color: rgba(255,255,255,0.5);
border: 3px solid var(--bg-gray);
border-radius: 5px;
}
#alert-border:hover {
background-color: rgba(0,0,0,0.1);
}
#alert-text {
display: flex;
text-align: left;
font-weight: bold;
flex-direction: column;
margin: 3px 5px 3px 5px;
color: black;
}
#alert-text p {
margin: 5px;
text-align: center;
}
#speeds {
display: none;
position: absolute;
height: 100%;
top: 0;
right: 100%;
bottom: 0;
border: 0;
margin: 0;
padding: 0;
}
#speedbar {
position: absolute;
top: 3px;
right: 0;
bottom: 3px;
border-radius: 5px;
border: 3px solid rgba(200,200,200,0.5);
background-color: #888;
}
#speedbar label {
flex-grow: 1;
text-align: center;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
font-family: monospace;
font-size: 12px;
padding: 0 5px 0 5px;
color: #fff;
}
#settings {
align-items: stretch;
}
#set-top {
color: black;
padding: 1px 10px 2px 2px;
border-top-left-radius: 10px;
border-bottom-left-radius: 0;
background-color: var(--bg-gray);
}
#set-end {
color: black;
padding: 1px 10px 2px 2px;
border-top-left-radius: 0;
border-bottom-left-radius: 10px;
background-color: var(--bg-gray);
height: 10px;
}
.pop-sep {
border: 0 !important;
padding: 0 !important;
height: 1px;
margin-top: 2px;
background-color: #bbb;
}
.set-sep {
background-color: var(--bg-gray) !important;
height: 10px;
right: -9px;
}
.set-header {
background-color: rgba(0,0,0,0.1);
text-align: center;
white-space: nowrap;
justify-content: center;
border-radius: 2px;
padding: 1px 0 2px 0;
margin: 2px 0 3px 0;
}
.set-group {
align-items: center;
flex-direction: column;
background-color: rgba(255,255,255,0.75);
border: 1px solid rgba(0,0,0,0);
border-radius: 3px;
margin: 2px 0 2px 4px;
padding: 8px 10px 8px 5px;
color: var(--fg-gray);
right: -5px;
}
.set-group:hover {
background-color: #eee;
border: 1px solid #aaa;
color: #000;
}
.set-pop {
top: 50%;
right: 100%;
position: absolute;
white-space: nowrap;
flex-direction: column;
transform: translateY(-50%);
background-color: rgba(255,255,255,0.8);
border: 1px solid #aaa;
border-radius: 5px;
margin-right: 5px;
padding: 5px;
}
.set-pop.top {
transform: translateY(-20%) !important;
}
.marker {
position:absolute;
border-radius: 2px;
background-color: rgba(0,0,0,0.25);
bottom: 1px;
left: 1px;
width: 4px;
height: 4px;
}
#layers .var-row {
border-radius: 10px;
background-color: #ddd;
padding: 2px 5px 2px 5px;
margin: 0 2px 3px 2px;
}
.var-row {
white-space: nowrap;
align-items: center;
}
.var-row label {
padding: 2px 4px 2px 0;
flex-grow: 1;
font-size: smaller;
}
.var-row input {
margin-right: 0;
margin-bottom: 1px;
padding-bottom: 1px;
padding-top: 1px;
}
.var-row button {
margin-right: 0;
margin-bottom: 1px;
}
.table-row {
flex-direction: row;
align-items: stretch;
}
.nounderline a {
text-decoration: none !important;
line-height: 2em;
}
.nounderline svg {
width: 30px !important;
}
.mono {
font-family: monospace;
}
#gdpr {
position: absolute;
display: none;
bottom: 10px;
right: 10px;
z-index: 1000;
padding: 20px;
border-radius: 5px;
border: 1px solid black;
background-color: white;
}
#gdpr a {
text-decoration: underline;
}
#gotit {
font-weight: bold;
font-size: larger;
padding: 5px 20px 5px 20px;
margin-left: 10px;
}
#fps {
position: fixed;
font-size: 10px;
bottom: 5px;
right: 5px;
color: #000;
}
#tool-info {
position: fixed;
white-space: pre;
background-color: rgba(255,255,255,0.25);
border: 1px solid rgba(0,0,0,0.25);
border-radius: 4px;
padding: 4px;
font-family: monospace;
font-size: 12px;
color: #000;
}
#winfo {
position: fixed;
font-size: 10px;
bottom: 5px;
left: 5px;
color: #000;
}
#context-menu {
display: none;
position: absolute;
flex-direction: column;
padding: 4px 1px 4px 1px;
border: 1px solid #bbb;
border-radius: 3px;
background-color: rgba(255,255,255,0.85);
}
#context-menu button {
margin: 0;
padding: 10px;
border-radius: 0;
border: 1px solid rgba(255,255,255,0);
background-color: rgba(255,255,255,0);
}
#context-menu button:hover {
border-top: 1px solid #ddd;
border-bottom: 1px solid #ddd;
background-color: #eee;
}
#context-menu .sep {
border-top: 1px solid #ddd;
margin: 5px 0 5px 0;
}