2472 lines
47 KiB
CSS
2472 lines
47 KiB
CSS
:root {
|
|
--fg-gray: #495057;
|
|
--bg-gray: rgba(0,0,0,0.25);
|
|
--bg-gray-lt: rgba(0,0,0,0.15);
|
|
--gradbar: linear-gradient(to right, #ddd, #666, #ddd);
|
|
--gradbar2: linear-gradient(to right, #ddd, #999, #ddd);
|
|
--gradbar-vert: linear-gradient(to bottom, #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-dk: linear-gradient(to top, rgba(100,100,100,0.1), rgba(255,255,255,0.25), 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;
|
|
--highlight: rgba(126,153,183,0.4);
|
|
--main-color: rgba(126,153,183,1);
|
|
--main-color-hover: rgb(96,127,164);
|
|
--row-hover: rgb(126,153,183,0.25);
|
|
--work-area: transparent;
|
|
--header: rgba(126,153,183,0.5);
|
|
--menu: #f0f0f0;
|
|
--menu-text: #222;
|
|
--menu-border: #555;
|
|
--dark-menu-text: #fff;
|
|
--menu-hover: #ddd;
|
|
--blue-00: rgb(31, 48, 66);
|
|
--blue-0: rgb(48, 64, 82);
|
|
--blue-1: rgb(96,127,164);
|
|
--blue-2: rgb(126,153,183);
|
|
--blue-3: rgb(190, 204, 219);
|
|
--blue-4: rgb(221, 228, 234);
|
|
--blue-5: rgb(240, 243, 245);
|
|
--blue-6: rgb(247, 249, 250);
|
|
--slide-bg: rgba(190, 204, 219, 0.5);
|
|
--scroll-bg: transparent;
|
|
}
|
|
|
|
/* surface size configuration and font import */
|
|
@font-face {
|
|
font-family: 'Russo One';
|
|
src: url('../moto/russo-one.ttf');
|
|
}
|
|
|
|
html, body {
|
|
position: relative;
|
|
height: 100%;
|
|
margin: 0;
|
|
scrollbar-width: none !important;
|
|
scrollbar-color: var(--blue-2) var(--scroll-bg);
|
|
}
|
|
/* default element configuration */
|
|
a, a:hover, a:visited {
|
|
border: none;
|
|
color: inherit;
|
|
text-decoration: none;
|
|
}
|
|
div {
|
|
position: relative;
|
|
}
|
|
button.yellow {
|
|
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: 3px 7px 3px 7px;
|
|
margin: 1px 1px 2px;
|
|
cursor: pointer;
|
|
text-transform: capitalize;
|
|
white-space: nowrap;
|
|
}
|
|
button:not([disabled]):hover {
|
|
background-color: var(--main-color);
|
|
color: white;
|
|
}
|
|
button[load] {
|
|
width: 100%;
|
|
text-align: left;
|
|
}
|
|
button[del] {
|
|
margin-left: 5px;
|
|
}
|
|
button[disabled] {
|
|
color: #999;
|
|
}
|
|
input {
|
|
margin-top: 1px;
|
|
margin-bottom: 1px;
|
|
padding-top: 0;
|
|
padding-bottom: 0;
|
|
position: relative;
|
|
text-align: right;
|
|
}
|
|
input:focus {
|
|
outline: 0;
|
|
box-shadow: 0 0 0 0.2rem rgb(0 100 255 / 10%);
|
|
}
|
|
input[type="range"] {
|
|
width: 85px;
|
|
background-color: transparent;
|
|
}
|
|
input[type=range]::-moz-focus-outer {
|
|
border: 0;
|
|
}
|
|
input[type="checkbox"] + .color {
|
|
z-index: 10000;
|
|
width: 15px;
|
|
height: 15px;
|
|
border: 1px solid rgba(0,0,0,0.1);
|
|
border-radius: 3px;
|
|
display: inline-block;
|
|
pointer-events: none;
|
|
margin: 2px;
|
|
}
|
|
input[type="checkbox"]:not(:checked) + .color {
|
|
border: 1px solid blue;
|
|
background-color: rgba(255,255,255,0.5) !important;
|
|
}
|
|
input[type="checkbox"].color {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
opacity: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
select, textarea, button, input, a {
|
|
outline: none;
|
|
}
|
|
textarea {
|
|
overflow: scroll;
|
|
}
|
|
select {
|
|
border-radius: 3px;
|
|
}
|
|
th, tr, td, span, div, label, button {
|
|
user-select: none;
|
|
}
|
|
th, tr, td, label {
|
|
white-space: nowrap;
|
|
}
|
|
details summary {
|
|
display: flex;
|
|
list-style: none;
|
|
padding-left: 0 !important;
|
|
}
|
|
details summary::-webkit-details-marker {
|
|
display: none;
|
|
}
|
|
details summary::before {
|
|
content: "";
|
|
}
|
|
details summary {
|
|
position: relative;
|
|
cursor: pointer;
|
|
}
|
|
details summary::after {
|
|
content: "▸";
|
|
position: absolute;
|
|
right: 5px;
|
|
font-size: 1em;
|
|
transform: rotate(-90deg);
|
|
transition: transform 0.2s ease;
|
|
}
|
|
details[open] summary::after {
|
|
transform: rotate(90deg);
|
|
}
|
|
|
|
.rot90 {
|
|
transform: rotate(90deg);
|
|
}
|
|
|
|
/* for bambu mgr dialog */
|
|
.video {
|
|
border: 1px solid #888;
|
|
border-radius: 3px;
|
|
}
|
|
|
|
.nocap {
|
|
text-transform: none !important;
|
|
}
|
|
|
|
/* container for entire page / app */
|
|
#app {
|
|
position: fixed;
|
|
font-size: 14px;
|
|
font-weight: normal;
|
|
font-family: sans-serif;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
}
|
|
|
|
#app-name .km-font {
|
|
font-size: larger;
|
|
}
|
|
|
|
/** dark conversion */
|
|
:root[data-theme="dark"] {
|
|
/* global alerts / labels */
|
|
#alert-border:hover {
|
|
background-color: rgba(255,255,255,0.7);
|
|
}
|
|
#mesh-info label,
|
|
#mesh-info span,
|
|
#oplist div .del {
|
|
color: #aaa;
|
|
}
|
|
/* shared panels */
|
|
.mod-top, .mod-end {
|
|
background-color: var(--blue-00);
|
|
}
|
|
.pop-sep,
|
|
.set-sep {
|
|
background-color: #555 !important;
|
|
}
|
|
.t-body {
|
|
border: 1px solid #555;
|
|
}
|
|
#render-tools .pop,
|
|
#render-tools svg,
|
|
.pop-tics > div,
|
|
#menubar.content,
|
|
#app-name,
|
|
.set2-sep,
|
|
.var-row,
|
|
#layers .var-row,
|
|
#slider-zero,
|
|
#slider-max,
|
|
.mdialog,
|
|
.t-body,
|
|
.cam-pop-op,
|
|
.mod-print,
|
|
.mod-print .header label {
|
|
background-color: #282828;
|
|
color: white;
|
|
}
|
|
/* borders + emphasis */
|
|
#dev-list:hover {
|
|
background-color: var(--blue-1);
|
|
}
|
|
#render-tools .pop,
|
|
#render-tools svg,
|
|
.cam-pop-op {
|
|
border-color: #555;
|
|
}
|
|
.btn-sel,
|
|
.txt-sel button {
|
|
/* color: #fff; */
|
|
background-color: var(--blue-1);
|
|
}
|
|
/* lists / rows */
|
|
.set2-group .var-row:hover,
|
|
.var-row:hover {
|
|
border-right: 3px solid var(--blue-3);
|
|
background-color: var(--blue-1) !important;
|
|
}
|
|
#slider-line {
|
|
background-color: #444;
|
|
}
|
|
.set-header {
|
|
background-color: var(--blue-00);
|
|
}
|
|
#oplist > div,
|
|
.opdiv {
|
|
background-color: #333;
|
|
border: 1px solid #888;
|
|
}
|
|
#oplist > div:hover,
|
|
#op-add:hover {
|
|
background-color: var(--blue-1);
|
|
}
|
|
#oplist div:hover .del {
|
|
color: #777 !important;
|
|
}
|
|
/* menu states */
|
|
#menubar.content > div:hover {
|
|
background-color: var(--blue-1);
|
|
}
|
|
.top-menu label {
|
|
color: var(--dark-menu-text)
|
|
}
|
|
#render-tools svg:hover {
|
|
background-color: var(--blue-1);
|
|
border-color: var(--blue-3);
|
|
}
|
|
.top-menu > span:hover {
|
|
background-color: var(--blue-1);
|
|
}
|
|
.top-menu > span:hover label,
|
|
.top-menu > span:hover svg {
|
|
color: var(--dark-menu-text) !important;
|
|
}
|
|
.top-menu > span.selected,
|
|
.top-menu > span.selected svg,
|
|
.top-menu-drop div.selected {
|
|
background-color: var(--blue-1);
|
|
color: #fff;
|
|
}
|
|
/* status + side widgets */
|
|
#slider-hold {
|
|
background-color: var(--blue-0);
|
|
}
|
|
#stats {
|
|
color: #888;
|
|
}
|
|
#rnfo {
|
|
color: #aaa;
|
|
border: 1px solid rgba(255,255,255,0.25);
|
|
background-color: rgba(0,0,0,0.75);
|
|
}
|
|
#rnfo label {
|
|
color: #ada;
|
|
}
|
|
#slider-hold .handle {
|
|
background-color: #999;
|
|
}
|
|
#speedbar label {
|
|
color: black;
|
|
}
|
|
.widopt {
|
|
background-color: #222;
|
|
}
|
|
#camops summary {
|
|
background-color: var(--blue-0);
|
|
}
|
|
/* overlays */
|
|
#wassup {
|
|
background-color: rgba(0,255,0,0.2);
|
|
}
|
|
.blurb p:first-child,
|
|
.blurb p:last-child {
|
|
color: #fff;
|
|
}
|
|
#curtain {
|
|
color: white;
|
|
background-color: black;
|
|
}
|
|
/* dialogs + print */
|
|
#op-add-list > div:hover {
|
|
color: black;
|
|
background-color: var(--blue-2) !important;
|
|
}
|
|
.mod-x {
|
|
border-color: #555;
|
|
background-color: rgba(0,0,0,0.15);
|
|
}
|
|
#mod-help a:hover {
|
|
color: #333;
|
|
}
|
|
.mod-print .box {
|
|
background-color: rgba(0,0,0,0.15);
|
|
border-color: #555;
|
|
}
|
|
.mod-print button {
|
|
background-color: #555;
|
|
border-color: #777;
|
|
}
|
|
/* layer controls */
|
|
#layer-animate button {
|
|
border: 1px solid #555;
|
|
background-color: #444;
|
|
}
|
|
#layer-animate button:hover {
|
|
background-color: var(--main-color);
|
|
}
|
|
#layer-animate button svg {
|
|
color: #ddd;
|
|
}
|
|
#layer-animate label {
|
|
border: 1px solid #555;
|
|
background-color: #444;
|
|
}
|
|
#layer-animate input {
|
|
border: 1px solid #444;
|
|
}
|
|
}
|
|
|
|
/* top menu bar, drop menus */
|
|
#app-name {
|
|
background-color: #fff;
|
|
text-transform: capitalize;
|
|
font-family: sans-serif;
|
|
z-index: 15;
|
|
color: var(--appname-blue);
|
|
font-weight: bold;
|
|
align-self: center;
|
|
justify-self: stretch;
|
|
height: 100%;
|
|
}
|
|
.top-menu {
|
|
display: flex;
|
|
gap: 0px;
|
|
white-space: nowrap;
|
|
align-items: stretch;
|
|
}
|
|
.top-menu > span {
|
|
position: relative;
|
|
display: flex;
|
|
gap: 5px;
|
|
align-items: center;
|
|
padding: 5px 9px 5px 9px;
|
|
border-left: 1px solid transparent;
|
|
border-right: 1px solid transparent;
|
|
}
|
|
.top-menu hr {
|
|
width: calc(100% - 3px);
|
|
margin: 0;
|
|
border: 0;
|
|
padding: 0;
|
|
height: 0.5px;
|
|
background-color: var(--menu-border);
|
|
}
|
|
.top-menu label {
|
|
color: #444;
|
|
}
|
|
.top-menu svg {
|
|
color: var(--blue-1);
|
|
}
|
|
.top-menu > span:hover label {
|
|
color: #000;
|
|
}
|
|
.top-menu > span:hover > svg {
|
|
color: black;
|
|
}
|
|
.top-menu > span:hover {
|
|
background-color: var(--blue-4);
|
|
border-left: 1px solid var(--blue-2);
|
|
border-right: 1px solid var(--blue-2);
|
|
}
|
|
.top-menu > span.selected,
|
|
.top-menu-drop div.selected
|
|
{
|
|
background-color: var(--blue-3);
|
|
}
|
|
.top-menu > span:hover .top-menu-drop {
|
|
display: flex;
|
|
}
|
|
/* .top-menu-right .content {
|
|
border-top-right-radius: 4px;
|
|
align-items: self-end;
|
|
} */
|
|
.top-menu-left {
|
|
align-items: self-start;
|
|
}
|
|
.top-menu-center .content > div > label {
|
|
text-align: center !important;
|
|
}
|
|
.top-menu-left .content {
|
|
border-top-left-radius: 4px;
|
|
}
|
|
.top-menu-drop {
|
|
position: absolute;
|
|
display: none;
|
|
top: 100%;
|
|
left: -1px;
|
|
right: -1px;
|
|
flex-direction: column;
|
|
font-family: sans-serif;
|
|
}
|
|
.top-menu-drop svg {
|
|
width: 15px;
|
|
}
|
|
|
|
#menubar.content {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: stretch;
|
|
gap: 2px;
|
|
padding: 2px;
|
|
background-color: #fff;
|
|
border-top: 1px dashed var(--blue-2);
|
|
border-left: 1px solid var(--blue-2);
|
|
border-right: 1px solid var(--blue-2);
|
|
border-bottom: 1px solid var(--blue-2);
|
|
border-bottom-right-radius: 4px;
|
|
border-bottom-left-radius: 4px;
|
|
}
|
|
#menubar.content > div {
|
|
display: flex;
|
|
flex-direction: row;
|
|
}
|
|
#menubar.content > div > span {
|
|
padding: 2px 7px 2px 7px;
|
|
padding-left: 10px;
|
|
text-align: center;
|
|
}
|
|
#menubar.content > div > label {
|
|
text-align: left;
|
|
flex-grow: 1;
|
|
padding: 2px 7px 2px 7px;
|
|
justify-self: stretch;
|
|
align-self: stretch;
|
|
border-radius: 3px;
|
|
}
|
|
#menubar.content > div:hover {
|
|
background-color: var(--blue-4);
|
|
}
|
|
|
|
#app,div {
|
|
display: flex;
|
|
padding: 0;
|
|
border: 0;
|
|
margin: 0;
|
|
}
|
|
#loading {
|
|
width: 40px;
|
|
height: 40px;
|
|
padding-right: 15px;
|
|
position: fixed;
|
|
display: none;
|
|
}
|
|
|
|
.hide-scroll {
|
|
scrollbar-color: transparent transparent !important;
|
|
}
|
|
.nooutline {
|
|
outline: none;
|
|
}
|
|
.noselect {
|
|
-khtml-user-select: none;
|
|
-moz-user-select: none;
|
|
-ms-user-select: none;
|
|
user-select: none;
|
|
}
|
|
.km-font {
|
|
font-family: 'Russo One', sans-serif;
|
|
}
|
|
.menu-title {
|
|
font-size: larger;
|
|
font-weight: bold;
|
|
}
|
|
.b0 {
|
|
border: 0px;
|
|
}
|
|
.bt1 {
|
|
border: 1px solid transparent;
|
|
}
|
|
.bt2 {
|
|
border: 2px solid transparent;
|
|
}
|
|
.bred {
|
|
border-color: red !important;
|
|
}
|
|
.checker {
|
|
background:
|
|
linear-gradient(135deg, transparent 45%, #555 45%, #555 55%, transparent 55%) !important;
|
|
background-size: 10px 10px;
|
|
background-position: 0 0, 5px 5px;
|
|
}
|
|
.contents {
|
|
display: contents;
|
|
}
|
|
.full {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
display: flex;
|
|
flex-direction: column;
|
|
justify-content: center;
|
|
align-items: center;
|
|
}
|
|
.nope, .nope * {
|
|
pointer-events: none;
|
|
}
|
|
.allpe {
|
|
pointer-events: auto !important;
|
|
}
|
|
.hide {
|
|
display: none !important;
|
|
}
|
|
.noshow {
|
|
display: none;
|
|
}
|
|
.mono {
|
|
font-family: monospace;
|
|
}
|
|
.font-smol {
|
|
font-size: smaller;
|
|
}
|
|
.font-tiny {
|
|
font-size: x-small;
|
|
}
|
|
.gap1 {
|
|
gap: 1px;
|
|
}
|
|
.gap2 {
|
|
gap: 2px;
|
|
}
|
|
.gap3 {
|
|
gap: 3px;
|
|
}
|
|
.gap4 {
|
|
gap: 4px;
|
|
}
|
|
.gap5 {
|
|
gap: 5px;
|
|
}
|
|
.gap10 {
|
|
gap: 10px;
|
|
}
|
|
.pad3 {
|
|
padding: 3px !important;
|
|
}
|
|
.pad4 {
|
|
padding: 4px !important;
|
|
}
|
|
.pad5 {
|
|
padding: 5px !important;
|
|
}
|
|
.h100 {
|
|
height: 100%;
|
|
}
|
|
.grid {
|
|
display: grid;
|
|
}
|
|
.frow, .f-row {
|
|
flex-direction: row;
|
|
}
|
|
.fcol, .f-col {
|
|
flex-direction: column;
|
|
}
|
|
.f-grow > * {
|
|
flex: 1;
|
|
}
|
|
.auto {
|
|
flex-basis: auto;
|
|
}
|
|
.basis-50 {
|
|
flex-basis: 50%;
|
|
}
|
|
.grow0 {
|
|
flex-grow: 0 !important;
|
|
}
|
|
.grow {
|
|
flex-grow: 1;
|
|
}
|
|
.shrink0 {
|
|
flex-shrink: 0;
|
|
}
|
|
.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;
|
|
}
|
|
.j-stretch {
|
|
justify-items: stretch;
|
|
}
|
|
.as-stretch {
|
|
align-self: stretch;
|
|
}
|
|
.space-around {
|
|
justify-content: space-around;
|
|
}
|
|
.space-between {
|
|
justify-content: space-between;
|
|
}
|
|
.center, .t-center {
|
|
text-align: center;
|
|
}
|
|
.t-left {
|
|
text-align: left;
|
|
}
|
|
.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;
|
|
}
|
|
.mh35 {
|
|
max-height: 35%;
|
|
}
|
|
.mh85 {
|
|
max-height: 85%;
|
|
}
|
|
.mlr10 {
|
|
margin: 0 10px 0 10px;
|
|
}
|
|
.mt10 {
|
|
margin-top: 5px;
|
|
}
|
|
#wassup {
|
|
background-color: rgba(0,255,100,0.3);
|
|
border-top: 5px solid rgba(0,255,100,0.5);
|
|
border-bottom: 5px solid rgba(0,255,100,0.5);
|
|
}
|
|
#wassup:hover {
|
|
border-top: 5px solid rgba(0,255,100,0.5);
|
|
border-bottom: 5px solid rgba(0,255,100,0.5);
|
|
}
|
|
.blurb {
|
|
max-width: 200px;
|
|
align-items: flex-end;
|
|
justify-content: center;
|
|
text-align: right;
|
|
padding: 10px 0 10px 0;
|
|
color: var(--blue-2);
|
|
gap: 10px;
|
|
}
|
|
.blurb p {
|
|
margin: 0;
|
|
}
|
|
.blurb p:first-child, .blurb p:last-child {
|
|
color: #000;
|
|
}
|
|
.mlr-10 {
|
|
margin: 0 10px 0 10px;
|
|
}
|
|
|
|
#curtain {
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
position: fixed;
|
|
color: black;
|
|
background-color: #fff;
|
|
font-family: 'Russo One', sans-serif;
|
|
z-index: 1000;
|
|
}
|
|
|
|
|
|
#tracker {
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
position: absolute;
|
|
display: none;
|
|
z-index: 101;
|
|
}
|
|
|
|
#container {
|
|
border: 0;
|
|
margin: 0;
|
|
padding: 0;
|
|
position: fixed;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
z-index: -1;
|
|
}
|
|
#container canvas {
|
|
overflow: hidden;
|
|
margin: 0;
|
|
border: 0;
|
|
padding: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
|
|
.chonk {
|
|
min-height: 3px;
|
|
max-height: 3px;
|
|
min-width: 100px;
|
|
background-color: var(--bg-gray-lt);
|
|
}
|
|
.chonk2 {
|
|
min-height: 3px;
|
|
max-height: 3px;
|
|
min-width: 100px;
|
|
background-color: var(--bg-gray-lt);
|
|
}
|
|
|
|
#doit {
|
|
display: none;
|
|
position: absolute;
|
|
white-space: nowrap;
|
|
font-size: smaller;
|
|
font-family: sans-serif;
|
|
margin-top: 5px;
|
|
padding: 5px;
|
|
top: 100%;
|
|
left: 50%;
|
|
transform: translateX(-50%);
|
|
}
|
|
#undo, #redo {
|
|
color: var(--main-color);
|
|
margin: 2px;
|
|
padding: 4px;
|
|
}
|
|
#undo:disabled, #redo:disabled {
|
|
color: rgba(0,0,0,.1) !important;
|
|
background-color: rgba(0,0,0,0.1) !important;
|
|
}
|
|
#undo:hover, #redo:hover {
|
|
color: black;
|
|
background-color: rgba(0,0,0,0.2);
|
|
}
|
|
|
|
#mid {
|
|
position: fixed;
|
|
top: 45px;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.mod-print button, #catalogList button, #settingsList button {
|
|
text-transform: none !important;
|
|
}
|
|
|
|
#panel-right {
|
|
overflow: unset;
|
|
}
|
|
#ws-widgets, #camops, #fdm-ranges {
|
|
padding: 0 4px 0 4px;
|
|
}
|
|
#camops {
|
|
padding-bottom: 2px;
|
|
}
|
|
#panel-left {
|
|
padding-right: 5px;
|
|
}
|
|
.slideshow #panel-slide {
|
|
padding-right: 1px;
|
|
border-right: 20px solid rgba(128,128,128,0.3);
|
|
border-top-right-radius: 5px;
|
|
border-bottom-right-radius: 5px;
|
|
transform: translateX(calc(-100% + 20px));
|
|
transition: transform 0.15s ease-in-out, border 0.15s ease-in-out;
|
|
}
|
|
.slideshow #panel-slide:hover {
|
|
transition: transform 0.15s ease-in-out, border 0.15s ease-in-out;
|
|
transform: translateX(0);
|
|
border-right: 0px solid rgba(128,128,128,0.3);
|
|
}
|
|
#panel-left, #panel-right {
|
|
max-height: 100%;
|
|
background-color: var(--work-area);
|
|
}
|
|
#panel-left, #panel-right, #modal {
|
|
pointer-events: visible;
|
|
}
|
|
#panel-left label, #panel-left svg, button svg {
|
|
pointer-events: none;
|
|
}
|
|
#ws-widgets button {
|
|
text-transform: none;
|
|
text-align: left;
|
|
white-space: nowrap;
|
|
align-items: center;
|
|
overflow: hidden;
|
|
max-width: 150px;
|
|
}
|
|
#ws-widgets button.selected {
|
|
background-color: var(--blue-3);
|
|
color: #000;
|
|
}
|
|
.widpop:not(:hover) .widopt {
|
|
display: none;
|
|
}
|
|
.widopt {
|
|
background-color: white;
|
|
border-radius: 3px;
|
|
position: absolute;
|
|
top: 0;
|
|
right: 100%;
|
|
bottom: 0;
|
|
}
|
|
.widopt button.disabled {
|
|
background-color: var(--blue-3);
|
|
}
|
|
#top-sep {
|
|
display: none;
|
|
z-index: 14;
|
|
height: 1px;
|
|
min-height: 1px;
|
|
max-height: 1px;
|
|
background-image: var(--gradbar);
|
|
}
|
|
.line-sep2 {
|
|
z-index: 14;
|
|
height: 1px;
|
|
min-height: 1px;
|
|
max-height: 1px;
|
|
background-image: var(--gradbar2);
|
|
}
|
|
|
|
.closer {
|
|
position: absolute;
|
|
top: 3px;
|
|
right: 6px;
|
|
z-index: 200;
|
|
}
|
|
.closer:hover {
|
|
color: #555;
|
|
}
|
|
|
|
.tictac {
|
|
margin: 2px 2px 2px 0;
|
|
padding: 4px;
|
|
border-radius: 3px;
|
|
border: 1px solid white;
|
|
background-color: rgba(255,255,255,0.7);
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
.tictac:hover {
|
|
border: 1px solid #ccc;
|
|
background-color: #eee;
|
|
}
|
|
.tictac.selected {
|
|
background-color: var(--main-color);
|
|
color: #fff;
|
|
}
|
|
|
|
#float-tools {
|
|
position: absolute;
|
|
margin: 0;
|
|
top: 90px;
|
|
left: 50%;
|
|
transform: translateX(-50%);
|
|
z-index: 16;
|
|
}
|
|
#float-tools button {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
#float-tools .menu {
|
|
margin-right: 5px;
|
|
border-right: 3px solid var(--main-color);
|
|
}
|
|
#float-tools .title {
|
|
min-height: 18px;
|
|
}
|
|
|
|
#lab-axis, #lab-scale, #lab-size {
|
|
border-radius: 3px;
|
|
padding: 2px;
|
|
border: 1px solid white;
|
|
}
|
|
#lab-axis:hover, #lab-scale:hover {
|
|
background-color: var(--main-color);
|
|
color: white;
|
|
}
|
|
/* mode toolbar */
|
|
#mode-tools {
|
|
pointer-events: all;
|
|
gap: 3px;
|
|
top: 0;
|
|
left: 0;
|
|
right: 0;
|
|
align-items: center;
|
|
justify-content: center;
|
|
flex-direction: row;
|
|
}
|
|
#mode-tools > span {
|
|
text-transform: capitalize;
|
|
display: flex;
|
|
flex-direction: row;
|
|
align-items: center;
|
|
color: var(--menubar-fore);
|
|
background-color: var(--menubar-back);
|
|
border-bottom-left-radius: 4px;
|
|
border-bottom-right-radius: 4px;
|
|
border-left: 1px solid var(--border-gray);
|
|
border-right: 1px solid var(--border-gray);
|
|
border-bottom: 1px solid var(--border-gray);
|
|
padding: 4px 8px 4px 8px;
|
|
}
|
|
#mode-tools svg {
|
|
aspect-ratio: 1/1;
|
|
font-size: 20px;
|
|
padding: 0 5px 0 0;
|
|
}
|
|
#mode-tools > span:hover {
|
|
border-color: var(--appname-blue);
|
|
background-color: var(--menu-hover-bg);
|
|
}
|
|
#mode-tools > span.selected {
|
|
border-color: var(--appname-blue);
|
|
background-color: var(--menu-active-bg);
|
|
}
|
|
/** fdm extruder drop-down */
|
|
#ft-nozzle .splat {
|
|
width: 10px;
|
|
height: 10px;
|
|
margin: 3px;
|
|
border-radius: 3px;
|
|
border: 1px solid #555;
|
|
}
|
|
#ft-nozzle > div {
|
|
flex-direction: row;
|
|
align-items: center;
|
|
}
|
|
/** selection rotation */
|
|
#ft-rotate {
|
|
gap: 2px;
|
|
grid-template-rows: auto auto auto 1fr;
|
|
grid-template-columns: auto auto auto auto;
|
|
}
|
|
#ft-rotate label {
|
|
padding: 0 5px 0 5px;
|
|
}
|
|
#ft-rotate label,
|
|
#ft-rotate svg,
|
|
#fr-rotate div
|
|
{
|
|
margin: 0;
|
|
text-align: center;
|
|
align-self: center;
|
|
}
|
|
#ft-rotate svg {
|
|
padding: 2px;
|
|
margin-top: 2px;
|
|
aspect-ratio: 2/1;
|
|
border-radius: 3px;
|
|
border: 1px solid transparent;
|
|
}
|
|
#ft-rotate > div:hover > svg {
|
|
background-color: var(--main-color);
|
|
color: white;
|
|
}
|
|
#ft-rotate > div {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
#ft-rotate .buttons {
|
|
align-items: stretch;
|
|
grid-column: 1/4;
|
|
min-width: 100px;
|
|
}
|
|
#ft-rotate button {
|
|
justify-content: center;
|
|
}
|
|
/** selection scaling */
|
|
#ft-scale {
|
|
gap: 3px;
|
|
grid-template-rows: auto auto auto 1fr;
|
|
grid-template-columns: auto auto auto 1fr;
|
|
justify-content: stretch;
|
|
align-items: stretch;
|
|
}
|
|
#ft-scale > div {
|
|
align-items: center;
|
|
flex-direction: row;
|
|
}
|
|
#ft-scale > input {
|
|
margin: 0;
|
|
}
|
|
#ft-scale > div > label {
|
|
flex-grow: 1;
|
|
text-align: center;
|
|
}
|
|
#ft-scale > div > input {
|
|
position: absolute;
|
|
right: 0;
|
|
}
|
|
#ft-scale .buttons {
|
|
grid-column: 1/4 !important;
|
|
}
|
|
/** selection mesh actions */
|
|
#ft-mesh-btn {
|
|
display: grid;
|
|
grid-auto-flow: row;
|
|
grid-template-rows: 1fr;
|
|
}
|
|
#ft-mesh-btn button {
|
|
justify-content: center;
|
|
flex-grow: 1;
|
|
}
|
|
#ft-mesh label {
|
|
font-size: smaller;
|
|
}
|
|
#ft-mesh .value {
|
|
font-family: monospace;
|
|
padding-left: 4px;
|
|
}
|
|
#mesh-info {
|
|
margin: 2px 1px 1px 1px;
|
|
}
|
|
#mesh-info label, #mesh-info span {
|
|
align-self: unset !important;
|
|
margin: 0;
|
|
}
|
|
#mesh-info span {
|
|
display: inline-flex;
|
|
align-items: center;
|
|
}
|
|
#mesh-info .em1 span {
|
|
min-width: 1em;
|
|
}
|
|
#mesh-info .em3 span {
|
|
min-width: 3.5em;
|
|
}
|
|
#lay-flat.selected {
|
|
background-color: var(--main-color);
|
|
}
|
|
|
|
#act-animate.disabled {
|
|
color: #aaa !important;
|
|
}
|
|
|
|
.dev-buttons {
|
|
margin: 1px -1px 0 -1px;
|
|
}
|
|
.dev-buttons button {
|
|
margin-left: 2px;
|
|
margin-right: 2px;
|
|
padding-bottom: 2px;
|
|
}
|
|
#dg .ext-buttons button {
|
|
cursor: pointer;
|
|
}
|
|
.ext-buttons button {
|
|
display: inline-flex;
|
|
line-height: 1;
|
|
justify-content: center;
|
|
align-items: center;
|
|
text-align: center;
|
|
flex: 1 1 0; /* equal width */
|
|
margin-top: 3px;
|
|
height: 75%;
|
|
}
|
|
.ext-buttons label {
|
|
font-size: smaller;
|
|
margin: 3px 0 3px 0;
|
|
}
|
|
.txt-sel {
|
|
background-color: #eee;
|
|
}
|
|
.txt-sel button, .btn-sel {
|
|
background-color: var(--highlight);
|
|
}
|
|
|
|
#end {
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
position: fixed;
|
|
text-align: center;
|
|
font-size: smaller;
|
|
}
|
|
|
|
#camop_dialog {
|
|
flex-direction: column;
|
|
}
|
|
#camop_dialog textarea {
|
|
border: 1px solid gray;
|
|
margin: 5px 1px 5px 1px;
|
|
}
|
|
#camop_dialog button,
|
|
#camop_dialog label
|
|
{
|
|
text-align: center;
|
|
display: block;
|
|
}
|
|
#camops {
|
|
display: flex;
|
|
}
|
|
#oplist {
|
|
max-height: calc(70vh - 200px);
|
|
min-height: 0;
|
|
overflow-y: auto;
|
|
padding-top: 1px;
|
|
}
|
|
.cam-pop-op {
|
|
top: 0;
|
|
right: calc(100% + 4px);
|
|
text-align: left;
|
|
position: absolute;
|
|
white-space: nowrap;
|
|
flex-direction: column;
|
|
background-color: #fff;
|
|
border: 1px solid #aaa;
|
|
border-radius: 5px;
|
|
margin-right: 6px;
|
|
padding: 5px 3px 5px 3px;
|
|
gap: 1.5px;
|
|
}
|
|
.pop-tics {
|
|
position: absolute;
|
|
left: -1px;
|
|
right: -1px;
|
|
bottom: 100%;
|
|
margin: 0 0 2px 0;
|
|
}
|
|
.pop-tics > div {
|
|
gap: 3px;
|
|
padding: 5px;
|
|
width: 100%;
|
|
max-width: 100%;
|
|
overflow: hidden;
|
|
font-size: 11px;
|
|
flex-direction: row;
|
|
background-color: rgba(255,255,255,0.6);
|
|
border: 1px solid rgba(0,0,0,0.25);
|
|
border-radius: 5px;
|
|
word-break: break-word;
|
|
white-space: normal;
|
|
}
|
|
.z-select {
|
|
aspect-ratio: 1;
|
|
border-radius: 50%;
|
|
border-color: rgba(128,128,128,0.5) !important;
|
|
}
|
|
#oplist {
|
|
gap: 3px;
|
|
margin-bottom: 3px;
|
|
}
|
|
#oplist .clock {
|
|
border: 0;
|
|
background-color: var(--blue-3);
|
|
}
|
|
#camops .set-sep {
|
|
margin-bottom: 4px;
|
|
}
|
|
#camops summary {
|
|
background-color: var(--blue-4);
|
|
}
|
|
#oplist .clock:hover {
|
|
background-color: var(--blue-2);
|
|
}
|
|
#oplist .loop:hover {
|
|
background-color: rgba(100, 150, 255, 0.35);
|
|
}
|
|
#oplist .in-loop {
|
|
margin-left: 10px;
|
|
}
|
|
#oplist .in-loop::before {
|
|
content: "";
|
|
border: 1px solid var(--blue-2);
|
|
border-radius: 3px;
|
|
width: 2px;
|
|
height: 80%;
|
|
position: absolute;
|
|
left: -10px;
|
|
}
|
|
#oplist > div {
|
|
padding: 4px 20px 4px 7px !important;
|
|
}
|
|
#oplist > div, .opdiv {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: left;
|
|
justify-content: center;
|
|
border: 1px solid rgba(0,0,0,0.25);
|
|
border-radius: 4px;
|
|
padding: 5px 10px 5px 10px;
|
|
background-color: rgba(255,255,255,0.75);
|
|
white-space: nowrap;
|
|
}
|
|
#oplist > div:hover, #op-add:hover {
|
|
background-color: var(--blue-4);
|
|
}
|
|
#oplist > div.editing, #lzr-surface button.editing {
|
|
background-color: rgba(190,230,190,0.85);
|
|
}
|
|
#oplist .drag {
|
|
background-color: var(--highlight) !important;
|
|
}
|
|
#oplist .notime {
|
|
background-color: rgba(150,150,150,0.5) !important;
|
|
}
|
|
#oplist .disabled {
|
|
background-color: rgba(125,125,125,0.5) !important;
|
|
}
|
|
#oplist div .label {
|
|
pointer-events: none;
|
|
}
|
|
#oplist div .del {
|
|
position: absolute;
|
|
right: 6px;
|
|
font-size: 14px;
|
|
color: rgba(0,0,0,0.25);
|
|
}
|
|
#oplist div:hover .del {
|
|
color: #888;
|
|
z-index: 103;
|
|
}
|
|
#oplist div .del:hover {
|
|
color: #000;
|
|
}
|
|
#oplist div .opop {
|
|
position: absolute;
|
|
bottom: 100%;
|
|
white-space: pre;
|
|
font-family: monospace;
|
|
font-size: smaller;
|
|
text-align: left;
|
|
margin: 2px;
|
|
padding: 5px;
|
|
display: none;
|
|
}
|
|
#oplist div:hover .opop {
|
|
display: flex;
|
|
}
|
|
.mobile #oplist {
|
|
font-size: larger;
|
|
}
|
|
.mobile #op-add-pop {
|
|
font-size: larger;
|
|
}
|
|
#op-add-pop {
|
|
pointer-events: all !important;
|
|
position: absolute;
|
|
display: none;
|
|
top: 50%;
|
|
right: 100%;
|
|
transform: translateY(-50%);
|
|
}
|
|
#op-add:hover #op-add-pop {
|
|
display: flex;
|
|
}
|
|
.op-grid {
|
|
display: grid !important;
|
|
grid-template-columns: 1fr 1fr 1fr;
|
|
grid-template-rows: auto;
|
|
align-items: center;
|
|
gap: 5px;
|
|
}
|
|
#op-add-list {
|
|
margin-right: 10px;
|
|
padding: 4px;
|
|
display: flex;
|
|
align-items: stretch;
|
|
flex-direction: column;
|
|
text-transform: none !important;
|
|
}
|
|
#op-add-list > div {
|
|
padding: 3px 5px 3px 5px;
|
|
display: flex;
|
|
flex-direction: column;
|
|
border: 1px dashed gray;
|
|
border-radius: 3px;
|
|
text-align: center;
|
|
}
|
|
#op-add-list > div:hover {
|
|
background-color: var(--blue-4);
|
|
}
|
|
#op-add-contour-menu, #op-add-register-menu {
|
|
position: absolute;
|
|
right: 0;
|
|
top: 0;
|
|
}
|
|
|
|
#progress-overlay {
|
|
position: fixed;
|
|
inset: 0;
|
|
z-index: 3000;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
pointer-events: auto;
|
|
background: rgba(0,0,0,0.08);
|
|
}
|
|
|
|
#progress-indicator {
|
|
display: flex;
|
|
flex-direction: column;
|
|
align-items: center;
|
|
justify-content: center;
|
|
gap: 8px;
|
|
min-width: 120px;
|
|
padding: 14px 18px 12px;
|
|
border: 1px solid var(--border-gray);
|
|
border-radius: 10px;
|
|
background: var(--menubar-back);
|
|
color: var(--menubar-fore);
|
|
box-shadow: 0 8px 24px rgba(0,0,0,0.25);
|
|
}
|
|
|
|
#progress-ring {
|
|
--progress-deg: 0deg;
|
|
width: 56px;
|
|
height: 56px;
|
|
border-radius: 50%;
|
|
background:
|
|
radial-gradient(circle at center, transparent 58%, var(--menubar-back) 59%),
|
|
conic-gradient(var(--appname-blue) var(--progress-deg), rgba(128,128,128,0.25) 0);
|
|
}
|
|
|
|
#progress-ring.indeterminate {
|
|
background: none;
|
|
border: 5px solid rgba(128,128,128,0.3);
|
|
border-top-color: var(--appname-blue);
|
|
animation: progress-spin 0.9s linear infinite;
|
|
}
|
|
|
|
#progress-pct {
|
|
min-height: 16px;
|
|
font-size: 12px;
|
|
font-weight: 600;
|
|
color: var(--menubar-fore);
|
|
}
|
|
|
|
#progtxt {
|
|
min-height: 16px;
|
|
max-width: 280px;
|
|
text-align: center;
|
|
font-size: 12px;
|
|
color: var(--menubar-fore);
|
|
white-space: nowrap;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
}
|
|
|
|
@keyframes progress-spin {
|
|
from { transform: rotate(0deg); }
|
|
to { transform: rotate(360deg); }
|
|
}
|
|
|
|
#dialog {
|
|
position: fixed;
|
|
z-index: 310;
|
|
outline: none;
|
|
color: black;
|
|
top: 100px;
|
|
left: 50%;
|
|
transform: translateX(-50%);
|
|
background-color: rgba(255,255,255,0.85);
|
|
border: 0;
|
|
border-top: 8px solid rgba(180,180,180,1);
|
|
border-bottom: 7px solid rgba(180,180,180,1);
|
|
border-radius: 5px;
|
|
overflow: hidden;
|
|
margin: 0;
|
|
padding: 5px;
|
|
}
|
|
|
|
#modal {
|
|
display: none;
|
|
position: fixed;
|
|
z-index: 300;
|
|
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%;
|
|
max-height: 80%;
|
|
}
|
|
|
|
.mdialog {
|
|
display: none;
|
|
padding: 10px 20px 10px 20px;
|
|
min-height: 20px;
|
|
background-color: #fff;
|
|
}
|
|
.mod-top {
|
|
height: 10px;
|
|
border-top-left-radius: 10px;
|
|
border-top-right-radius: 10px;
|
|
background-color: var(--main-color);
|
|
}
|
|
|
|
#tool-cols {
|
|
max-height: 350px;
|
|
}
|
|
.mod-x {
|
|
border-radius: 5px;
|
|
border: 2px solid rgba(255,255,255,0.5);
|
|
background-color: rgba(255,255,255,0.5);
|
|
position: absolute;
|
|
z-index: 30;
|
|
bottom: calc(-4px - 1em);
|
|
right: 0;
|
|
height: 1em;
|
|
aspect-ratio: 1 / 1 !important;
|
|
}
|
|
.mod-x svg {
|
|
aspect-ratio: 1 / 1 !important;
|
|
}
|
|
#mod-setup {
|
|
min-height: 550px;
|
|
max-height: 60%;
|
|
min-width: 725px;
|
|
max-width: 70%;
|
|
padding-bottom: 5px;
|
|
}
|
|
#mod-setup textarea {
|
|
border-radius: 3px;
|
|
}
|
|
#mod-setup .header {
|
|
text-align: center;
|
|
border-bottom: 1px solid rgba(126,153,183,1);
|
|
padding-bottom: 5px;
|
|
margin-bottom: 5px;
|
|
font-weight: bold;
|
|
}
|
|
#mod-setup .header.sub {
|
|
padding-top: 10px;
|
|
}
|
|
#mod-setup .left {
|
|
width: 180px;
|
|
padding-right: 10px;
|
|
margin-right: 10px;
|
|
border-right: 1px solid #ddd;
|
|
}
|
|
#mod-tools .set-header {
|
|
margin: 0;
|
|
}
|
|
#mod-help svg {
|
|
width: 36px;
|
|
height: 36px;
|
|
padding-right: 10px;
|
|
color: var(--main-color);
|
|
}
|
|
#mod-help a {
|
|
border-radius: 5px;
|
|
padding: 3px 10px 3px 5px;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: flex-start;
|
|
}
|
|
#mod-help a:hover {
|
|
background-color: #eee;
|
|
}
|
|
#mod-help a:hover svg {
|
|
color: #123;
|
|
}
|
|
#mod-help .title {
|
|
font-weight: bold;
|
|
font-size: larger;
|
|
padding-bottom: 10px;
|
|
}
|
|
#export-support {
|
|
padding-top: 10px;
|
|
text-align: center;
|
|
}
|
|
#export-support a {
|
|
padding: 5px;
|
|
border-radius: 2px;
|
|
}
|
|
.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: 12px 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;
|
|
}
|
|
#print-palette {
|
|
display: none;
|
|
}
|
|
#code-preview-textarea {
|
|
min-width: 50em;
|
|
width: 100%;
|
|
height: 7em;
|
|
font-size: x-small;
|
|
font-family: Courier,monospace;
|
|
white-space: nowrap;
|
|
resize: none;
|
|
}
|
|
.mod-end {
|
|
height: 10px;
|
|
border-bottom-left-radius: 10px;
|
|
border-bottom-right-radius: 10px;
|
|
background-color: var(--main-color);
|
|
}
|
|
#settingsNew {
|
|
margin-top: 5px;
|
|
padding-top: 5px;
|
|
border-top: 1px solid var(--main-color);
|
|
}
|
|
#settingsName {
|
|
margin-right: 4px;
|
|
padding-right: 4px;
|
|
padding-left: 4px;
|
|
text-align: center;
|
|
}
|
|
#settingsList {
|
|
max-height: 450px;
|
|
overflow-y: auto;
|
|
}
|
|
#settingsList button.selected {
|
|
font-weight: bold;
|
|
background-color: #ccc;
|
|
}
|
|
#settingsList button.selected:hover {
|
|
background-color: #aaa;
|
|
}
|
|
#settingsList svg {
|
|
pointer-events: none;
|
|
}
|
|
|
|
#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 li {
|
|
list-style-type: circle;
|
|
margin-left: 10px;
|
|
}
|
|
#help .header {
|
|
border: 1px solid rgba(0,0,0,0.75);
|
|
background-color: rgba(0,0,0,0.05);
|
|
border-radius: 2px;
|
|
justify-content: center;
|
|
white-space: nowrap;
|
|
text-align: center;
|
|
margin-bottom: 5px;
|
|
padding: 1px 0 2px 0;
|
|
font-family: monospace;
|
|
font-size: larger;
|
|
font-weight: bold;
|
|
}
|
|
#help .header2 {
|
|
border: 1px solid rgba(0,0,0,0.25);
|
|
background-color: rgba(0,0,0,0.03);
|
|
border-radius: 2px;
|
|
justify-content: center;
|
|
white-space: nowrap;
|
|
text-align: center;
|
|
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;
|
|
padding-left: 22px ;
|
|
text-indent: -22px ;
|
|
}
|
|
#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-tabs p, #help-tabs li, #help-tabs table {
|
|
color: #035;
|
|
}
|
|
#help-tab-support a:hover, #help-tab-start a:hover {
|
|
background-color: rgba(61,133,198,0.25);
|
|
border-radius: 5px;
|
|
}
|
|
#help-start {
|
|
margin: 5px 0 5px 0;
|
|
}
|
|
#help-start a {
|
|
padding: 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;
|
|
}
|
|
.image-convert-dialog {
|
|
gap: 8px;
|
|
padding: 10px 14px 6px;
|
|
min-width: 360px;
|
|
}
|
|
.image-convert-title {
|
|
margin: 0;
|
|
text-align: center;
|
|
}
|
|
.image-convert-copy {
|
|
width: 320px;
|
|
line-height: 1.5em;
|
|
padding: 5px 0 5px 0;
|
|
margin: 0;
|
|
}
|
|
.image-convert-fields {
|
|
justify-content: center;
|
|
}
|
|
.image-convert-fields table {
|
|
border-collapse: collapse;
|
|
}
|
|
.image-convert-fields th,
|
|
.image-convert-fields td {
|
|
padding: 3px 6px;
|
|
vertical-align: middle;
|
|
}
|
|
.image-convert-fields th {
|
|
font-weight: 600;
|
|
}
|
|
.image-convert-fields input[type="checkbox"] {
|
|
margin: 0;
|
|
}
|
|
.image-convert-actions {
|
|
width: 100%;
|
|
margin-top: 4px;
|
|
}
|
|
|
|
.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;
|
|
margin: 5px;
|
|
cursor: pointer;
|
|
}
|
|
.dev-type svg {
|
|
width: 60px;
|
|
height: 30px;
|
|
}
|
|
.dev-sel {
|
|
background-color: var(--highlight);
|
|
}
|
|
|
|
.t-head {
|
|
font-weight: bold;
|
|
}
|
|
.t-33 {
|
|
width: 33%;
|
|
}
|
|
.flex {
|
|
display: flex;
|
|
}
|
|
.fat5 {
|
|
display: inline-block;
|
|
min-width: 5px !important;
|
|
}
|
|
.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,1);
|
|
border: 1px solid #bbb;
|
|
border-radius: 3px;
|
|
}
|
|
.t-inset {
|
|
padding: 3px;
|
|
}
|
|
|
|
#devices {
|
|
width: 225px;
|
|
}
|
|
/* #device1, #device2, #palette3 {
|
|
width: 225px;
|
|
} */
|
|
#palette3 {
|
|
display: none;
|
|
}
|
|
#dev-gcode textarea {
|
|
font-family: monospace;
|
|
overflow: auto;
|
|
padding: 5px;
|
|
width: 100%;
|
|
/* background-color: #f8f8f8; */
|
|
}
|
|
#device-action {
|
|
align-items: center;
|
|
}
|
|
#device-action a {
|
|
right: 0;
|
|
position: absolute;
|
|
border-bottom: 1px dotted;
|
|
}
|
|
#device-action a:hover {
|
|
color: #888;
|
|
border-bottom: 1px transparent;
|
|
}
|
|
#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-animate {
|
|
pointer-events: all;
|
|
position: absolute;
|
|
z-index: 200;
|
|
left: 0;
|
|
right: 0;
|
|
bottom: 0;
|
|
padding: 4px;
|
|
}
|
|
#layer-animate svg {
|
|
color: #333;
|
|
font-size: 30px;
|
|
}
|
|
#layer-animate .padleft {
|
|
margin-left: 8px !important;
|
|
}
|
|
#layer-animate button {
|
|
width: 45px;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
#layer-animate label {
|
|
display: inline-flex;
|
|
border-radius: 3px;
|
|
margin: 1px 2px 2px 1px;
|
|
padding: 2px;
|
|
justify-content: center;
|
|
align-items: center;
|
|
font-weight: bold;
|
|
border: 1px solid #ddd;
|
|
background-color: #eee;
|
|
}
|
|
#layer-animate input {
|
|
border-radius: 4px;
|
|
}
|
|
|
|
#layer-slider {
|
|
position: absolute;
|
|
font-size: smaller;
|
|
gap: 2px;
|
|
left: 15px;
|
|
right: 15px;
|
|
bottom: max(3px, env(safe-area-inset-bottom));
|
|
pointer-events: all;
|
|
}
|
|
#slider.slider-mobile {
|
|
height: 40px !important;
|
|
}
|
|
#slider {
|
|
display: none;
|
|
height: 25px;
|
|
z-index: 100;
|
|
}
|
|
.mobile .sli-drag-el {
|
|
background-color: rgba(200,0,0,0.8) !important;
|
|
}
|
|
#slider-hi-val, #slider-lo-val {
|
|
display: none;
|
|
position: absolute;
|
|
font-family: monospace;
|
|
transform: translateY(-50%);
|
|
border: 1px solid #ddd;
|
|
bottom: 110%;
|
|
left: 50%;
|
|
}
|
|
#slider > div {
|
|
justify-content: center;
|
|
flex-direction: row;
|
|
align-items: center;
|
|
}
|
|
#slider-line {
|
|
position: absolute;
|
|
left: 0;
|
|
right: 0;
|
|
top: calc(50%-1.5px);
|
|
height: 3px;
|
|
min-height: 3px;
|
|
max-height: 3px;
|
|
background-color: #bbb;
|
|
}
|
|
#slider-zero {
|
|
z-index: 10;
|
|
min-width: 3em;
|
|
background-color: #bbb;
|
|
border-top-left-radius: 5px;
|
|
border-bottom-left-radius: 5px;
|
|
}
|
|
#slider-max {
|
|
min-width: 3em;
|
|
background-color: #bbb;
|
|
border-top-right-radius: 5px;
|
|
border-bottom-right-radius: 5px;
|
|
}
|
|
#slider-hold {
|
|
background-color: var(--blue-3);
|
|
position: absolute;
|
|
bottom: 0;
|
|
right: 0;
|
|
top: 0;
|
|
}
|
|
#slider-hold .slider-mobile {
|
|
width: 40px !important;
|
|
}
|
|
#slider-hold .handle {
|
|
width: 15px;
|
|
height: 100%;
|
|
background-color: var(--blue-1);
|
|
}
|
|
#slider-mid {
|
|
width: 20px;
|
|
}
|
|
|
|
#top-slider {
|
|
position: absolute;
|
|
display: none;
|
|
top: 10px;
|
|
left: 35px;
|
|
right: 50px;
|
|
z-index: 1000;
|
|
pointer-events: all;
|
|
}
|
|
#anim-slider {
|
|
width: 100%;
|
|
}
|
|
|
|
#alert-area {
|
|
display: none;
|
|
justify-content: center;
|
|
align-items: center;
|
|
position: absolute;
|
|
top: 90px;
|
|
right: 0;
|
|
left: 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: normal;
|
|
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: 3px;
|
|
background-color: transparent;
|
|
}
|
|
#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;
|
|
margin: 0.5px;
|
|
border-radius: 3px;
|
|
}
|
|
|
|
.settings {
|
|
gap: 3px;
|
|
max-height: 100%;
|
|
overflow-y: auto;
|
|
overflow-x: hidden;
|
|
align-items: stretch;
|
|
text-transform: capitalize;
|
|
}
|
|
.settings .set-header a {
|
|
font-size: smaller;
|
|
}
|
|
#dev-sel, .dev-sel {
|
|
margin-bottom: 0 !important;
|
|
}
|
|
#dev-list, .dev-list {
|
|
align-self: stretch;
|
|
padding: 0 5px 0 5px;
|
|
}
|
|
#dev-list:hover {
|
|
background-color: var(--blue-4);
|
|
}
|
|
.set2-group {
|
|
background-color: var(--menubar-back);
|
|
flex-flow: column;
|
|
padding: 0 0 2px 0;
|
|
}
|
|
.set2-group .var-row, .var-row {
|
|
background: var(--menubar-back);
|
|
padding: 1px 4px 1px 4px;
|
|
margin: 0 !important;
|
|
border-left: 3px solid transparent;
|
|
border-right: 3px solid transparent;
|
|
}
|
|
.set2-group .var-row:hover, .var-row:hover {
|
|
border-right: 3px solid var(--blue-1);
|
|
background-color: var(--blue-4) !important;
|
|
}
|
|
.set2-group .var-row label, #mod-setup .var-row label {
|
|
margin-right: 25px;
|
|
}
|
|
.set2-sep {
|
|
background: #fff;
|
|
flex-shrink: 0;
|
|
flex-direction: column;
|
|
margin: 0 0 3px 0;
|
|
}
|
|
.pop-sep, .set-sep {
|
|
border: 0 !important;
|
|
padding: 0 !important;
|
|
height: 1px;
|
|
min-height: 1px;
|
|
max-height: 1px;
|
|
margin-top: 2px;
|
|
margin-bottom: 2px;
|
|
background-color: #bbb !important;
|
|
}
|
|
.set-header {
|
|
overflow: hidden;
|
|
white-space: nowrap;
|
|
justify-content: left;
|
|
background-color: var(--blue-3);
|
|
border-left: 3px solid transparent;
|
|
border-bottom: 0.5px solid var(--main-color-hover);
|
|
padding: 4px;
|
|
margin: 0 0 4px 0;
|
|
}
|
|
.set-header.hidden {
|
|
margin-bottom: 0 !important;
|
|
}
|
|
.set-header > span {
|
|
color: var(--blue-2);
|
|
font-size: smaller;
|
|
}
|
|
.set-header-line {
|
|
margin-left: 5px;
|
|
width: 100%;
|
|
}
|
|
.set-pop {
|
|
top: 50%;
|
|
left: calc(100% + 6px);
|
|
position: absolute;
|
|
white-space: nowrap;
|
|
flex-direction: column;
|
|
transform: translateY(-50%);
|
|
background-color: #fff;
|
|
border: 1px solid #aaa;
|
|
border-radius: 5px;
|
|
margin-right: 5px;
|
|
padding: 5px;
|
|
}
|
|
.settings .ext-buttons {
|
|
margin: 0 4px 0 4px;
|
|
gap: 2px;
|
|
}
|
|
#layers .var-row {
|
|
border-radius: 10px;
|
|
background-color: #ddd;
|
|
padding: 2px 5px 2px 5px;
|
|
margin: 0 2px 3px 2px;
|
|
}
|
|
#layers button {
|
|
margin-left: 4px;
|
|
margin-top: 0;
|
|
margin-bottom: 3px;
|
|
padding-left: 9px;
|
|
padding-right: 9px;
|
|
border-radius: 10px;
|
|
font-weight: bold;
|
|
background-color: var(--highlight);
|
|
}
|
|
#layers button:hover {
|
|
background-color: var(--main-color);
|
|
}
|
|
|
|
.tiny.var-row select {
|
|
width: 10em;
|
|
max-width: 10em;
|
|
font-size: smaller;
|
|
}
|
|
.var-row {
|
|
white-space: nowrap;
|
|
align-items: center;
|
|
gap: 4px;
|
|
}
|
|
.var-row label {
|
|
padding: 2px 4px 2px 0;
|
|
flex-grow: 1;
|
|
font-size: smaller;
|
|
text-align: left;
|
|
}
|
|
.var-row .dim {
|
|
text-align: right;
|
|
font-size: smaller;
|
|
align-self: center;
|
|
justify-self: center;
|
|
}
|
|
.var-row input {
|
|
/* flex: 1 1 auto; */
|
|
min-width: 0;
|
|
max-width: 7ch;
|
|
margin-right: 0;
|
|
margin-bottom: 1px;
|
|
padding-bottom: 1px;
|
|
padding-top: 1px;
|
|
border: 0;
|
|
/* border-bottom: 1px solid; */
|
|
}
|
|
.var-row select {
|
|
border: 0;
|
|
/* border-bottom: 1px solid; */
|
|
border-radius: 0;
|
|
text-align: right;
|
|
}
|
|
.var-row #tool-name {
|
|
max-width: 15ch;
|
|
}
|
|
.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;
|
|
}
|
|
|
|
#fs-edit {
|
|
text-transform: none;
|
|
padding: 1px 3px 1px 3px;
|
|
margin: 0 3px 0 0 !important;
|
|
}
|
|
#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;
|
|
}
|
|
#stats {
|
|
position: fixed;
|
|
font-size: 10px;
|
|
bottom: 5px;
|
|
right: 5px;
|
|
color: #000;
|
|
flex-direction: column;
|
|
align-items: flex-end;
|
|
white-space: nowrap;
|
|
}
|
|
#stats hr {
|
|
width: 100%;
|
|
}
|
|
#stats:hover #rnfo {
|
|
display: grid;
|
|
}
|
|
#rnfo {
|
|
display: none;
|
|
grid-template-columns: min-content 1fr;
|
|
position: absolute;
|
|
bottom: 100%;
|
|
gap: 3px;
|
|
right: 0;
|
|
background-color: rgba(255,255,255,0.75);
|
|
border: 1px solid rgba(0,0,0,0.5);
|
|
border-radius: 3px;
|
|
padding: 5px;
|
|
}
|
|
#rnfo label {
|
|
text-align: right;
|
|
}
|
|
#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;
|
|
color: black;
|
|
}
|
|
#context-menu .sep {
|
|
border-top: 1px solid #ddd;
|
|
margin: 5px 0 5px 0;
|
|
}
|
|
|
|
.range-info {
|
|
position: relative;
|
|
}
|
|
.range-info:hover .range-detail {
|
|
display: flex;
|
|
}
|
|
.range-detail {
|
|
position: absolute;
|
|
display: none;
|
|
flex-direction: column;
|
|
bottom: 50%;
|
|
right: 100%;
|
|
padding: 5px;
|
|
margin: 0 10px 0 10px;
|
|
font-size: smaller;
|
|
font-family: monospace;
|
|
transform: translateY(50%);
|
|
background-color: rgba(255,255,255,0.8);
|
|
border: 1px solid #aaa;
|
|
border-radius: 5px;
|
|
}
|
|
.range-detail label.pad {
|
|
padding-right: 8px;
|
|
border-bottom: 1px solid rgba(0,0,0,0.1);
|
|
}
|
|
.range-detail label.val {
|
|
font-weight: bold;
|
|
}
|
|
.range-detail span {
|
|
flex-grow: 1;
|
|
}
|
|
|
|
.devel #modal-box {
|
|
height: 80%;
|
|
}
|
|
.devel #mod-x-any {
|
|
height: 100%;
|
|
}
|
|
.devel #code-preview {
|
|
flex-grow: 1;
|
|
}
|
|
.devel #code-preview > div,
|
|
.devel #code-preview-textarea {
|
|
height: 100%;
|
|
}
|
|
|
|
.em20 {
|
|
max-width: 20em;
|
|
}
|