simple-svg-editor
Version:
Method Draw is an SVG Editor for the web
2,642 lines (2,256 loc) • 55.9 kB
CSS
:root, .inverted-undo { /* red */ /* yellow */ /* green */
--z0: #111827; --a0: #2a1c26; --b0: #2a2429; --c0: #162730;
--z1: #1e2433; --a1: #421f24; --b1: #45322a; --c1: #1c3b3b;
--z2: #2b313f; --a2: #5a2122; --b2: #60422b; --c2: #1f4f47;
--z3: #393e4c; --a3: #71231f; --b3: #7b522a; --c3: #226452;
--z4: #474c59; --a4: #89221c; --b4: #976328; --c4: #227a5e;
--z5: #565a66; --a5: #a22018; --b5: #b47424; --c5: #20906a;
--z6: #656974; --a6: #bb1b13; --b6: #d1861d; --c6: #1ba776;
--z7: #747782; --a7: #d4100b; --b7: #f0990f; --c7: #0ebf82;
--z8: #848790; --a8: #e62b18; --b8: #ffa723; --c8: #31ce8f;
--z9: #94969f; --a9: #ee5035; --b9: #ffb146; --c9: #59d49c;
--z10: #a4a6ae; --a10: #f66d50;--b10: #ffbc63; --c10: #76dbaa;
--z11: #b4b7bd; --a11: #fb866c;--b11: #ffc67d; --c11: #8fe0b7;
--z12: #c5c7cc; --a12: #ff9f88;--b12: #ffd197; --c12: #a7e6c5;
--z13: #d6d8db; --a13: #ffb7a5;--b13: #ffdbb1; --c13: #bdecd3;
--z14: #e7e9eb; --a14: #ffcfc3;--b14: #ffe6cb; --c14: #d2f1e1;
--z15: #f9fafb; --a15: #fee6e1;--b15: #fef1e5; --c15: #e8f6ef;
--d0: #152239; --e0: #181e39; --f0: #1f1d39; --g0: #291d30;
--d1: #1a3050; --e1: #202651; --f1: #2f2251; --g1: #43223b;
--d2: #1d3d69; --e2: #282e69; --f2: #3f2769; --g2: #5e2647;
--d3: #1e4c82; --e3: #303782; --f3: #502b82; --g3: #7a2953;
--d4: #1e5a9d; --e4: #383f9d; --f4: #622e9d; --g4: #962a5f;
--d5: #1c69b8; --e5: #4047b8; --f5: #7430b8; --g5: #b32a6c;
--d6: #1779d4; --e6: #4750d4; --f6: #8732d4; --g6: #d12678;
--d7: #0b89f0; --e7: #4e59f0; --f7: #9933f0; --g7: #ef2085;
--d8: #3797ff; --e8: #6366ff; --f8: #aa43ff; --g8: #ff3892;
--d9: #62a3ff; --e9: #7e78ff; --f9: #b85fff; --g9: #ff5c9f;
--d10: #7fafff; --e10: #958aff; --f10: #c477ff;--g10: #ff78ac;
--d11: #98bbfe; --e11: #a99cff; --f11: #cf8fff;--g11: #ff91b9;
--d12: #aec8fe; --e12: #bbafff; --f12: #daa5ff;--g12: #ffa8c6;
--d13: #c3d4fd; --e13: #cdc2fe; --f13: #e3bbfe;--g13: #ffbed4;
--d14: #d7e2fd; --e14: #ddd6fd; --f14: #ebd1fd;--g14: #ffd4e1;
--d15: #eaeffc; --e15: #ece9fc; --f15: #f3e8fc;--g15: #fde9ef;
-webkit-font-smoothing: antialiased;
--shadow-bg: 0 var(--x2) var(--x4) var(--z0);
--shadow: 0 var(--x1) var(--x8) rgba(0,0,0,0.4);
--accent0: var(--d0); --comp0: var(--g0);
--accent1: var(--d1); --comp1: var(--g1);
--accent2: var(--d2); --comp2: var(--g2);
--accent3: var(--d3); --comp3: var(--g3);
--accent4: var(--d4); --comp4: var(--g4);
--accent5: var(--d5); --comp5: var(--g5);
--accent6: var(--d6); --comp6: var(--g6);
--accent7: var(--d7); --comp7: var(--g7);
--accent8: var(--d8); --comp8: var(--g8);
--accent9: var(--d9); --comp9: var(--g9);
--accent10: var(--d10); --comp10: var(--g10);
--accent11: var(--d11); --comp11: var(--g11);
--accent12: var(--d12); --comp12: var(--g12);
--accent13: var(--d13); --comp13: var(--g13);
--accent14: var(--d14); --comp14: var(--g14);
--accent15: var(--d15); --comp15: var(--g15);
}
.inverted {
--z0: #ffffff; --a0: #ffebe5; --b0: #fff5e9; --c0: #edfaf3;
--z1: #ececee; --a1: #ffd2c6; --b1: #ffeace; --c1: #d7f5e4;
--z2: #dadade; --a2: #ffbaa7; --b2: #ffdfb3; --c2: #c1efd5;
--z3: #c8c8ce; --a3: #ffa28a; --b3: #ffd399; --c3: #aae9c7;
--z4: #b6b6be; --a4: #fe886d; --b4: #ffc87f; --c4: #92e2b9;
--z5: #a4a5ae; --a5: #f76e51; --b5: #ffbd64; --c5: #78dcab;
--z6: #93949e; --a6: #ef5135; --b6: #ffb247; --c6: #5ad59d;
--z7: #82838f; --a7: #e62c18; --b7: #ffa723; --c7: #31ce8f;
--z8: #727380; --a8: #d30d0a; --b8: #ef980e; --c8: #0dbe81;
--z9: #616371; --a9: #b91612; --b9: #cf841c; --c9: #18a574;
--z10: #525463; --a10: #9e1a17; --b10: #b17122; --c10: #1d8c68;
--z11: #424555; --a11: #851b1a; --b11: #935e26; --c11: #1e745b;
--z12: #333647; --a12: #6c1b1c; --b12: #764c27; --c12: #1d5d4e;
--z13: #25283a; --a13: #53191e; --b13: #5a3a27; --c13: #1a4742;
--z14: #171b2d; --a14: #3b1620; --b14: #3e2a26; --c14: #153236;
--z15: #080c21; --a15: #221320; --b15: #231a23; --c15: #0f1e2a;
--d0: #eff3ff; --e0: #f2eeff; --f0: #f9ecff; --g0: #ffedf3;
--d1: #dbe5ff; --e1: #e2d9ff; --f1: #f0d5ff; --g1: #ffd7e5;
--d2: #c7d8ff; --e2: #d1c5ff; --f2: #e7bfff; --g2: #ffc1d6;
--d3: #b2caff; --e3: #bfb2ff; --f3: #dda8ff; --g3: #ffabc8;
--d4: #9bbdff; --e4: #ac9eff; --f4: #d290ff; --g4: #ff93bb;
--d5: #81b0ff; --e5: #978bff; --f5: #c679ff; --g5: #ff7aad;
--d6: #63a3ff; --e6: #7f78ff; --f6: #b960ff; --g6: #ff5da0;
--d7: #3897ff; --e7: #6366ff; --f7: #ab44ff; --g7: #ff3992;
--d8: #0788f0; --e8: #4d58f0; --f8: #9932f0; --g8: #ef1e85;
--d9: #1077d2; --e9: #444ed2; --f9: #842fd2; --g9: #cf2277;
--d10: #1466b5; --e10: #3b44b5; --f10: #702cb5; --g10: #b02369;
--d11: #165599; --e11: #323a99; --f11: #5d2899; --g11: #91235c;
--d12: #15467e; --e12: #29317e; --f12: #4a247e; --g12: #74214f;
--d13: #143664; --e13: #212764; --f13: #381f64; --g13: #581e42;
--d14: #11284b; --e14: #181e4b; --f14: #271a4b; --g14: #3c1a36;
--d15: #0d1a33; --e15: #101633; --f15: #161433; --g15: #21142a;
-webkit-font-smoothing: auto;
--shadow-bg: 0 var(--x2) var(--x4) var(--z3);
--shadow: 0 var(--x1) var(--x8) rgba(0,0,0,0.1);
--accent0: var(--d0); --comp0: var(--g0);
--accent1: var(--d1); --comp1: var(--g1);
--accent2: var(--d2); --comp2: var(--g2);
--accent3: var(--d3); --comp3: var(--g3);
--accent4: var(--d4); --comp4: var(--g4);
--accent5: var(--d5); --comp5: var(--g5);
--accent6: var(--d6); --comp6: var(--g6);
--accent7: var(--d7); --comp7: var(--g7);
--accent8: var(--d8); --comp8: var(--g8);
--accent9: var(--d9); --comp9: var(--g9);
--accent10: var(--d10); --comp10: var(--g10);
--accent11: var(--d11); --comp11: var(--g11);
--accent12: var(--d12); --comp12: var(--g12);
--accent13: var(--d13); --comp13: var(--g13);
--accent14: var(--d14); --comp14: var(--g14);
--accent15: var(--d15); --comp15: var(--g15);
}
:root {
--x1: 4px;
--x2: 8px;
--x3: 12px;
--x4: 16px;
--x5: 20px;
--x6: 24px;
--x7: 28px;
--x8: 32px;
--x9: 36px;
--x10: 40px;
--x11: 44px;
--x12: 48px;
--x13: 52px;
--x14: 56px;
--x15: 60px;
--x16: 64px;
--mono-font: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, Courier, monospace;
--ui-font: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;
--panel-width: calc(var(--x10)*2*2 + var(--x1));
--transition-duration: 200ms;
--transition: all var(--transition-duration) ease;
}
/* Comment to prevent wrong concat */
body {
background: var(--z1);
font: 14px/120% -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
margin: 0;
padding: 0;
}
body.inverted {
background: var(--z2);
}
::selection {background: #000; color: #fff; /* Safari */}
::-moz-selection {background: #000; color: #fff; /* Firefox */}
html, body {
overscroll-behavior-x: none;
overflow: hidden;
width: 100%;
height: 100%;
}
::-webkit-scrollbar {
width: var(--x1);
height: var(--x1);
background: transparent;
position: absolute;
}
::-webkit-scrollbar-track {
border-radius: 10px;
background: transparent;
}
::-webkit-scrollbar-thumb {
border-radius: 10px;
background: var(--z3);
}
::-webkit-scrollbar-corner {
background: transparent;
}
.inverted ::-webkit-scrollbar-thumb {
background: var(--z3);
}
div#font-selector {
width:140px;
height:300px;
overflow:auto;
margin:0 auto;
position:absolute;
top:27px;
right:0;
border:1px solid black;
padding:10px;
display:none;
background-color:white;
z-index: 10;
border-radius: 3px;
box-shadow: 0 5px 10px rgba(0,0,0,0.7);
}
div#font-selector img {
width: 100%;
}
div#font-selector .font-item {
border-bottom: solid #ddd 1px;
padding: 5px 10px;
margin: 0 -10px;
}
div#font-selector .font-item:hover {
background-color: #eee;
}
.dropdown_set input[type=text], .dropdown_set input[type=number] {
width: 50px;
}
input[type=text].wide, input[type=number].wide {width: 110px;}
input[type=text].tuco, input[type=number].tuco {width: 150px;}
input[type=submit], input[type=button], button {
background: var(--accent7);
color: var(--z15);
border-radius: var(--x1);
padding: var(--x2) var(--x4);
border: none;
line-height: 140%;
font-size: 16px;
font-weight: 550;
cursor: pointer;
}
input[type=submit]:hover,
input[type=button]:hover,
button:hover {
background: var(--accent9);
}
input[type=submit]:active,
input[type=button]:active,
button:active {
box-shadow: 0 0 0 var(--x1) var(--accent14);
outline: none;
}
input[type=submit]:focus,
input[type=button]:focus,
button:focus {
outline: none;
}
button.cancel, input.Cancel, input.cancel, input.jGraduate_Cancel, button.cancel {
-webkit-appearance: none;
background-color: var(--z12);
color: var(--z3);
margin: 0;
}
button.cancel:hover, input.Cancel:hover, input.cancel:hover, input.jGraduate_Cancel:hover, button.cancel:hover {
background-color: var(--z13);
}
button.warning {
-webkit-appearance: none;
background-color: var(--b6);
color: var(--z15);
margin: 0;
}
button.warning:hover {
background-color: var(--b7);
}
#svgcontent {
overflow: hidden;
}
.wireframe #svgcontent * {
fill: none;
stroke: #000;
stroke-width: 1px;
stroke-opacity: 1.0;
stroke-dasharray: 0;
opacity: 1;
pointer-events: stroke;
vector-effect: non-scaling-stroke;
filter: none;
}
.wireframe #svgcontent text {
fill: #000;
stroke: none;
}
#canvas_panel {
display: block;
}
#multiselected_panel .selected_tool {
vertical-align: 12px;
}
#cur_context_panel {
position: absolute;
top: 47px;
left: 68px;
line-height: 22px;
overflow: auto;
border-bottom: none;
border-right: none;
padding-left: 5px;
font-size: 12px;
background: black;
color: #999;
opacity: 0.5;
padding: 0 10px;
border-radius: 0 10px 10px 0;
}
#cur_context_panel a {
float: none;
text-decoration: none;
color: #fff;
}
#cur_context_panel a:hover {
text-decoration: underline;
}
#main_menu li#tool_open, #main_menu li#tool_import {
position: relative;
overflow: hidden;
}
#tool_image {
overflow: hidden;
}
.disabled {
opacity: 0.5;
cursor: default;
}
.width_label {
padding-right: 5px;
}
#tool_bold span, #tool_italic span {
position: absolute;
width: 100%;
height: 100%;
top: 0; left: 0;
background: #ccc;
opacity: 0;
}
#tools_bottom {
position: absolute;
left: var(--x12);
right: 0;
bottom: 0;
height: var(--x10);
overflow: visible;
}
ul li.current {
background-color: #F4E284;
}
.toolbar_button button .svg_icon {
display: none;
}
.invisible {
visibility: none;
}
/* For modern browsers */
.clearfix:before,
.clearfix:after {
content:"";
display:table;
}
.clearfix:after {
clear:both;
}
input[readonly=readonly]:focus {
box-shadow: none;
}
#color_canvas_tools, #fill_bg, #stroke_bg {
background: var(--z15) url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMAQMAAABsu86kAAAAA3NCSVQICAjb4U/gAAAABlBMVEXu7u7///8o06qaAAAACXBIWXMAAAsSAAALEgHS3X78AAAAFXRFWHRDcmVhdGlvbiBUaW1lADcvMjIvMTL7FNdCAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M1cbXjNgAAABFJREFUCJljYP7AgIb+MKAhAM8/C5vWL6zSAAAAAElFTkSuQmCC) top left repeat;
}
#color_canvas_tools {
width: 60px;
height: 40px;
margin: 23px 5px 5px 5px;
position: relative;
overflow: hidden;
}
#color_canvas_tools {
display: block;
}
#stroke_style_label {
font-size: 30px;
margin-top: 33px;
letter-spacing: -1px;
}
.stroke_tool .caret {
top: 60%;
}
table.jPicker {
border-collapse: collapse;
margin-top: var(--x4);
}
table.jPicker td {
padding: var(--x1);
}
.jPicker .Icon {
display: inline-block;
height: var(--x6);
position: relative;
text-align: left;
width: var(--x6);
}
.jPicker .Icon span.Color, .jPicker .Icon span.Alpha {
background-position: 2px 2px;
display: block;
height: 100%;
left: 0;
position: absolute;
top: 0;
width: 100%}
.jPicker .Icon span.Image {
background-repeat: no-repeat;
cursor: pointer;
display: block;
height: 100%;
left: 0;
position: absolute;
top: 0;
width: 100%}
.jPicker.Container {
z-index: 10;
}
.jPicker .Move {
background-color: var(--z12);
border-color: var(--z15) var(--z6) var(--z6) var(--z15);
border-style: solid;
border-width: 1px;
cursor: move;
height: 12px;
padding: 0;
}
.jPicker .Title {
display: none;
}
.jPicker .Map {
border: solid var(--z1) 1px;
height: 256px;
width: 256px;
cursor: crosshair;
margin: 0;
overflow: hidden;
padding: 0;
position: relative;
}
.jPicker .Bar {
border: solid var(--z1) 1px;
cursor: n-resize;
height: 260px;
margin: 0;
overflow: hidden;
padding: 0;
position: relative;
width: 24px;
height: 256px;
width: 20px;
}
.jPicker .Map .Map1,
.jPicker .Map .Map2,
.jPicker .Map .Map3,
.jPicker .Bar .Map1,
.jPicker .Bar .Map2,
.jPicker .Bar .Map3,
.jPicker .Bar .Map4,
.jPicker .Bar .Map5,
.jPicker .Bar .Map6 {
background-color: transparent;
background-image: none;
display: block;
left: 0;
position: absolute;
top: 0;
}
.jPicker .Map .Map1,
.jPicker .Map .Map2,
.jPicker .Map .Map3 {
height: 2596px;
width: 256px;
}
.jPicker .Bar .Map1, .jPicker .Bar .Map2, .jPicker .Bar .Map3, .jPicker .Bar .Map4 {
height: 3896px;
width: 20px;
}
.jPicker .Bar .Map5, .jPicker .Bar .Map6 {
height: 256px;
width: 20px;
}
.jPicker .Map .Map1, .jPicker .Map .Map2, .jPicker .Bar .Map6 {
background-repeat: no-repeat;
}
.jPicker .Map .Map3, .jPicker .Bar .Map5 {
background-repeat: repeat;
}
.jPicker .Bar .Map1, .jPicker .Bar .Map2, .jPicker .Bar .Map3, .jPicker .Bar .Map4 {
background-repeat: repeat-x;
}
.jPicker .Map .Arrow {
display: block;
position: absolute;
}
.jPicker .Bar .Arrow {
display: block;
left: 0;
position: absolute;
}
.jPicker .Preview {
font-size: 9px;
text-align: center;
}
.jPicker .Preview div.bgt {
height: 62px;
margin: 0 auto;
padding: 0;
width: 62px;
}
.jPicker .Preview div span {
border: 1px solid var(--z0);
display: block;
height: 30px;
margin: 0 auto;
padding: 0;
width: 60px;
}
.jPicker .Preview .Active {
border-bottom-width: 0;
}
.jPicker .Preview .Current {
border-top-width: 0;
cursor: pointer;
}
.jPicker .Button {
text-align: center;
width: 115px;
}
.jPicker .Button input {
width: 100px;
cursor: pointer;
}
.jPicker td.Radio {
margin: 0;
padding: 0 0 0 var(--x2);
width: var(--x8);
white-space: nowrap;
}
.jPicker td.Radio input {
margin: 0 var(--x1) 0 0;
padding: 0;
cursor: pointer;
}
.jPicker td.Text {
font-size: 12px!important;
height: 22px;
margin: 0;
padding: 0;
text-align: left;
width: 70px;
white-space: nowrap;
}
.jPicker tr.Hex td.Text {
width: 100px;
}
.jPicker tr.Hex td.Text label {
margin-left: var(--x4);
}
.jPicker tr.Hex td.Text span {
width: 100px;
color: #333;
}
.jPicker td.Text input {
background-color: var(--z15);
height: var(--x4);
margin: 0 0 0 var(--x1);;
text-align: left;
width: var(--x8);
color: var(--z15);
}
#color_picker input[type=text], #color_picker input[type=number] {
-webkit-appearance: none;
width: 30px;
background: var(--z0);
border: none;
border-radius: var(--x1);
}
#color_picker input[type=radio] {
position: relative;
top: 2px;
}
#color_picker .jPicker tr.Hex td.Text input.Hex {
width: var(--x12);
display: inline-block;
float: none;
}
.jPicker tr.Hex td.Text input.AHex {
width: var(--x5);
display: none;
}
.jPicker .Grid {
text-align: center;
float: right;
width: 108px;
}
.jPicker .Grid span.QuickColor {
cursor: url(../images/eyedropper.svg) 0 23, crosshair;
background-repeat: no-repeat;
display: inline-block;
height: var(--x4);
line-height: var(--x4);
margin: 0;
padding: 0;
width: var(--x4);
}
.jPicker .Grid span.QuickColor:hover {
position: relative;
z-index: 10;
outline: solid var(--z0) 1px;
}
.jPicker td {
vertical-align: top;
}
.jPicker td.colorsquare {
width: 275px;
}
.jPicker .prev_div {
margin-top: -15px;
}
.jPicker .actions {
position: absolute;
bottom: 20px;
left: 20px;
right: 20px;
}
.jPicker .actions .Ok{
position: absolute;
top: 0;
right: 0px;
}
.jPicker .actions .Cancel{
position: absolute;
top: 0;
left: 0px;
}
.jPicker .color_preview {
width: 62px;
margin: 0 auto;
}
/*
* jGraduate Default CSS
*
* Copyright (c) 2010 Jeff Schiller
* http://blog.codedread.com/
*
* Copyright (c) 2010 Alexis Deveria
* http://a.deveria.com/
*
* Licensed under the Apache License Version 2
*/
#color_picker {
position: absolute;
display: none;
background: var(--z1);
width: calc(9 * var(--x15));
height: calc(6 * var(--x15));
border-radius: var(--x3);
z-index: 5;
box-shadow: var(--shadow);
padding: var(--x4);
color: var(--z8);
}
/* Remove editing options for radial gradients with userspaceonuse which will do nothing */
#color_picker.radialUserSpace div.grad_coord,
#color_picker.radialUserSpace .jGraduate_Form {
display: none !important;
}
#color_picker.radialUserSpace .jGraduate_gradPick:after {
content: 'Click on the color drops to change the color of the gradient';
position: absolute;
right: var(--x8);
width: 250px;
color: var(--z12);
bottom: 50%;
font-size: 1.2em;
line-height: 1.5em;
}
#color_picker input {
color: var(--z14);
}
h2.jGraduate_Title {
display: none;
}
.jGraduate_tabs {
padding: var(--x4);
--neg: calc(var(--x4) *-1);
margin: var(--neg) var(--neg) 0 var(--neg);
}
.jGraduate_tabs li {
display: inline-block;
padding: var(--x4) var(--x4) var(--x4) var(--x4);
cursor: pointer;
color: var(--z9);
}
.jGraduate_tabs li:hover {
color: var(--z12);
}
li.jGraduate_tab_current,
li.jGraduate_tab_current:hover {
color: var(--accent7);
-webkit-text-stroke: 0.5px var(--accent8);
}
.jGraduate_colPick {
display: none;
}
.jGraduate_gradPick {
display: none;
overflow: visible;
/* position: relative;*/
}
.jGraduate_tabs {
position: relative;
padding: 0;
}
div.jGraduate_Swatch {
float: left;
margin: 0 var(--x4) 0 0;
}
div.jGraduate_GradContainer {
border: solid #000 1px;
background-image: url(../images/map-opacity.png);
background-position: 0px 0px;
height: calc(var(--x16) * 4);
width: calc(var(--x16) * 4);
position: relative;
}
div.jGraduate_GradContainer div.grad_coord {
background: var(--z0);
color: var(--z12);
box-shadow: 0 2px 4px rgba(0,0,0,0.3);
border-radius: var(--x4);
width: var(--x4);
height: var(--x4);
position: absolute;
margin: calc(var(--x2) * -1);
top: 0;
left: 0;
text-align: center;
font-size: 10px;
line-height: 14px;
text-decoration: none;
cursor: move;
user-select: none;
font-weight: bold;
}
.jGraduate_AlphaArrows {
position: absolute;
margin-top: -10px;
margin-left: 250.5px;
}
div.jGraduate_Opacity {
border: solid var(--z13) 1px;
margin-top: 14px;
background-color: black;
background-image: url(../images/Maps.png);
background-position: 0px -2816px;
height: 20px;
cursor: ew-resize;
}
div.jGraduate_StopSlider {
margin: -10px 0 0 -10px;
width: 276px;
overflow: visible;
height: var(--x11);
cursor: copy;
}
div.jGraduate_StopSlider svg path {
cursor: ew-resize;
}
div.jGraduate_StopSection {
width: 120px;
float: left;
}
div.jGraduate_StopSection.jGraduate_SpreadMethod {
display: none;
}
input.jGraduate_Ok, input.jGraduate_Cancel {
display: block;
width: 100px;
}
.jGraduate_Picker .jGraduate_OkCancel .jGraduate_Cancel, .jGraduate_Picker input.Cancel {
background-color: var(--z5);
}
.jGraduate_Picker .jGraduate_OkCancel .jGraduate_Cancel:hover, .jGraduate_Picker input.Cancel:hover {
background-color: var(--z6);
}
input.jGraduate_Ok {
margin: 0 0 5px 0;
}
.colorBox {
float: left;
height: 16px;
width: 16px;
border: 1px solid #808080;
cursor: pointer;
margin: 4px 4px 4px 30px;
}
.colorBox + label {
float: left;
margin-top: 7px;
}
label.jGraduate_Form_Heading {
color: var(--z15);
font-size: 14px;
}
div.jGraduate_Form_Section {
padding: var(--x4) var(--x1) var(--x1) var(--x1);
width: 100px;
text-align: center;
overflow: hidden;
background: var(--z2);
border-radius: var(--x1);
position: relative;
}
div.jGraduate_Form label {
color: var(--x12);
position: relative;
top: -6px;
padding: 0 var(--x2);
}
div.jGraduate_StopSection input[type=text],
div.jGraduate_Slider input[type=text] {
width: 33px;
}
div.jGraduate_LightBox {
position: fixed;
top: 0px;
left: 0px;
right: 0px;
bottom: 0px;
background-color: #000;
opacity: 0.5;
display: none;
}
div.jGraduate_stopPicker {
position: absolute;
display: none;
background: white;
padding: 20px;
border-radius: 3px;
width: 530px;
height: 300px;
box-shadow: 0 5px 25px black;
}
.jGraduate_gradPick {
width: 526px;
}
.jGraduate_gradPick div.jGraduate_Slider {
line-height: 160%
}
.jGraduate_gradPick div.jGraduate_Slider label:last-child {
position: absolute;
right: 10px;
top: 0;
font-weight: bold;
}
.jGraduate_gradPick div.jGraduate_Slider label:last-child input {
margin: 0 3px 0 0;
}
.jGraduate_gradPick .jGraduate_Form {
float: left;
width: 270px;
position: absolute;
left: 284px;
width: 266px;
height: 200px;
top: 195px;
margin: -3px 3px 0px 10px;
line-height: 200%;
}
.jGraduate_gradPick .jGraduate_Form label,
.jGraduate_gradPick .jGraduate_Form input {
width: auto;
float: left;
}
.jGraduate_gradPick .jGraduate_Form.jGraduate_rg_field #color_picker_jGraduate_match_ctr {
float: none;
}
.jGraduate_gradPick .jGraduate_Form label {
clear: left;
}
.jGraduate_gradPick .jGraduate_Form label.match-center {
white-space: nowrap;
font-size: 11px;
}
.jGraduate_gradPick .jGraduate_Points {
position: static;
float: left;
margin: 0;
width: auto;
}
.jGraduate_Colorblocks {
display: table;
border-spacing: 0 5px;
}
.jGraduate_colorblock {
display: table-row;
}
.jGraduate_Colorblocks .jGraduate_colorblock > * {
display: table-cell;
vertical-align: middle;
margin: 0;
float: none;
}
.jGraduate_gradPick .jGraduate_Form_Section {
padding-top: 9px;
}
.jGraduate_Slider {
text-align: center;
float: left;
width: 100%;
position: relative;
}
.jGraduate_Slider .jGraduate_Form_Section {
border: none;
width: 250px;
padding: 0 2px;
overflow: visible;
}
.jGraduate_Slider label.prelabel {
width: var(--x10);
text-align: left;
line-height: var(--x8);
}
.jGraduate_SliderBar {
width: 120px;
float: left;
margin: 0 var(--x2);
border: 1px solid var(--z6);
height: var(--x4);
position: relative;
}
div.jGraduate_Slider input {
margin-top: 5px;
}
div.jGraduate_Slider img {
top: -2px;
left: 0;
position: absolute;
cursor:ew-resize;
}
.jPicker .Button .Ok, .jGraduate_Picker .jGraduate_OkCancel .jGraduate_Ok {
-webkit-appearance: none;
margin: 0;
position: absolute;
bottom: var(--x2);
right: var(--x2);
}
.jPicker .Button .Cancel, .jGraduate_Picker .jGraduate_OkCancel .jGraduate_Cancel {
margin: 0;
position: absolute;
bottom: var(--x2);
left: var(--x2);
}
.dropdown {
position: relative;
float: left;
}
.dropdown button {
width: 21px;
height: 22px;
padding: 0 3px 0 3px;
border: none;
background-color: var(--z6);
border-radius: 0 2px 2px 0;
margin-left: -1px;
position: relative;
}
.dropdown button:hover {
background-color: var(--z7);
}
.dropdown button:after {
content: '';
position: absolute;
border: solid transparent 4px;
border-top-color: var(--z9);
top: 9px;
left: 6px;
}
.dropdown button.down {
border-left: 1px solid #808080;
border-top: 1px solid #808080;
border-right: 1px solid #FFFFFF;
border-bottom: 1px solid #FFFFFF;
background-color: #B0B0B0;
}
.dropdown ul {
list-style: none;
position: absolute;
margin: 0;
padding: 0;
left: -80px;
top: 26px;
z-index: 4;
display: none;
}
.dropup ul {
top: auto;
bottom: 26px;
border-radius: 3px;
box-shadow: 0 5px 10px #000;
}
.dropup ul:after {
content: '';
display: block;
position: absolute;
bottom: -10px;
right: 50%;
top: auto;
width: 0;
height: 0;
border: solid transparent 5px;
border-top-color: #fff;
}
.dropdown li {
display: block;
width: 120px;
padding: 5px 10px;
color: #333;
background: #fff;
margin: 0;
line-height: 16px;
}
.dropdown li:first-child {border-radius: 3px 3px 0 0;}
.dropdown li:last-child {border-radius: 0 0 3px 3px;}
.dropdown li:hover {
background-color: #ddd;
color: #000;
}
.dropdown li.special {
padding: 10px;
background: white;
border: none;
box-shadow: 0 3px 10px black;
border-radius: 3px !important;
}
.dropdown li.special:after {
content: '';
display: block;
position: absolute;
top: -10px;
right: 50%;
border: solid transparent 5px;
border-bottom-color: #fff;
}
.dropdown li.special.down:after {
bottom: -10px;
right: 50%;
top: auto;
border: solid transparent 5px;
border-top-color: #fff;
}
.flyout_arrow_horiz {
position: absolute;
bottom: -1px;
right: 0;
z-index: 10;
}
.draginputs {
display: flex;
flex-direction: row;
justify-content: flex-start;
flex-wrap: wrap;
}
.draginput {
background-color: var(--z2);
border-radius: var(--x1);
width: calc(50% - var(--x2));
height: calc(var(--x9) * 2);
display: block;
position: relative;
margin: 0 var(--x2) var(--x2) 0;
overflow: hidden;
transition: var(--transition);
box-shadow: none;
}
.dragging .draginput {
pointer-events: none;
}
.dragging .draginput.active {
pointer-events: all;
box-shadow: none;
}
.draginput:hover {
background-color: var(--z3);
transition: none;
box-shadow: var(--shadow-bg);
}
.draginput:hover span,
.draginput.active span {
color: var(--z15);
}
.draginput:hover input,
.draginput.active input {
color: var(--accent8);
}
.draginput.active,
.draginput.active:hover {
background-color: var(--z0);
}
.draginput.active:hover {
transition: none;
}
/* TODO this will only work for two line buttons */
.draginput-button {
text-align: center;
color: var(--z9);
padding-top: var(--x5);
box-sizing: border-box;
cursor: pointer;
}
.draginput-button-delete:hover {
background-color: var(--a7);
color: var(--a15);
transition: none;
}
.draginput .caret {
border: solid transparent 5px;
border-top-color: var(--z9);
position: absolute;
width: 0;
height: 0;
right: 5px;
margin-top: -2px;
top: 50%;
}
.draginput label {
margin: 28px 10px 0 5px;
font-size: 14px;
color: var(--z15);
font-weight: bold;
}
.draginput label#resolution_label, .draginput label#seg_type_label {
font: bold 12px/110% sans-serif;
position: absolute;
left: auto;
right: 10px;
z-index: 0;
text-align: right;
}
.draginput label#seg_type_label {
margin-top: 40px;
}
.draginput label#seg_type_label .caret {
top: 66%;
}
.draginput label#resolution_label .pull {
position: relative;
left: -15px;
}
.draginput label#resolution_label span {
right: -13px;
left: auto;
font-size: 16px;
top: 2px;
font-weight: bold;
color: white;
}
.draginput input {
border: none;
background: transparent;
font: 24px/normal sans-serif;
text-align: center;
color: var(--accent7);
padding: 30px 0 16px;
width: 100%;
height: 24px;
position: relative;
z-index: 2;
}
.draginput input::selection { background: var(--accent9); }
.draginput.text-input input,
.draginput.text-input input:hover,
.draginput.text-input input:active {
cursor: text;
}
.draginput.text-input input {
text-align: left;
text-indent: var(--x2);
}
.draginput.textcontent.hidden {
position: absolute;
opacity: 0;
z-index: 0;
pointer-events: none;
}
.draginput.textcontent input {
cursor: text;
text-align: left;
text-indent: var(--x2);
}
.draginput.textcontent input,
.draginput.textcontent input:hover,
.draginput.textcontent input:active {
cursor: text;
}
.text-path .draginput.textcontent {
opacity: 1;
position: relative;
cursor: text;
pointer-events: auto;
}
.draginput.twocol {
width: 100%;
}
.draginput input, .draginput input:hover, .draginput input:active {
cursor: url(../images/drag.png), move;
cursor: -webkit-grab;
cursor: -moz-grab;
}
.draginput input[type="checkbox"], .draginput input[type="checkbox"]:hover, .draginput input[type="checkbox"]:active {
cursor: pointer;
}
.draginput.checkbox {
cursor: pointer;
}
.draginput.active input, .draginput.active input:hover, .draginput.active input:active {
cursor: url(../images/dragging.png), move;
cursor: -webkit-grabbing;
cursor: -moz-grabbing;
}
.draginput input:invalid {
color: var(--a7);
}
.draginput.error {
background-color: var(--a7);
color: var(--a15);
}
.draginput span {
font: 12px/130% sans-serif;
color: var(--z8);
display: block;
position: absolute;
top: 5px;
left: 5px;
text-align: left;
white-space: nowrap;
z-index: 1;
}
.draginput.stroke_tool {
text-align: center;
}
.draginput select {
-webkit-appearance: none;
opacity: 0;
display: block;
position: absolute;
height: 100%;
width: 100%;
margin: 0;
z-index: 1;
top: 0;
left: 0;
cursor: pointer;
}
.draginput:hover .draginput_cursor {
border-color: var(--accent6);
}
.draginput_cursor{
position: absolute;
top: 50%;
width: 100%;
border-top: solid var(--accent4) 1px;
z-index: 0;
}
.draginput input[readonly=readonly] {
-webkit-appearance: none;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.draginput input:focus {
background: var(--accent7);
color: var(--accent15);
outline: none;
box-shadow: 0 0 5px 2px var(--accent7);
}
.draginput input:focus+span {
z-index: 10;
color: var(--z15);
}
.draginput .push_bottom {
bottom: 0;
position: absolute;
}
.draginput .angle {
width: var(--x12);
height: var(--x12);
border-radius: var(--x12);
background-color: var(--z3);
position: absolute;
bottom: var(--x1);
left: 14px;
}
body.dragging .draginput .angle {
background-color: var(--z1);
}
.draginput:hover .angle {
background: var(--z4);
}
.draginput .angle-cursor {
width: 4px;
height: 25px;
border-top: solid var(--accent7) 3px;
position: absolute;
margin: 0 0 0 23px;
transform-origin: 50% 0;
}
.draginput.font_style:hover {
background-color: var(--z2);
}
.draginput.loading:before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: var(--z2);
opacity: 0.8;
z-index: 10;
}
.draginput.loading:after {
content: '';
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: var(--x4);
height: var(--x4);
border-radius: var(--x4);
z-index: 10;
border: solid var(--accent7) 2px;
border-top-color: transparent;
animation: spin 1s linear infinite;
}
@keyframes spin {
0% { transform: translate(-50%, -50%) rotate(0); }
100% { transform: translate(-50%, -50%) rotate(360deg); }
}
/* inverted */
.inverted .draginput {
background-color: var(--z1);
}
.inverted .draginput {
background-color: var(--z1);
}
.inverted .draginput:hover {
background-color: var(--z0);
}
.inverted .draginput .angle {
background-color: var(--z2);
}
.inverted .draginput span {
color: var(--z9);
}
body.inverted.dragging .draginput .angle {
background-color: var(--z1);
}
#menu_bar {
padding: 0 0 0 var(--x12);
position: relative;
z-index: 2;
height: var(--x8);
display: flex;
}
#menu_bar.active .menu.open .menu_list {
display: block;
}
.menu {
position: relative;
z-index: 5;
color: var(--z3);
display: inline-block;
}
.menu_title {
cursor: pointer;
display: inline-block;
z-index: 10;
color: var(--z15);
position: relative;
line-height: var(--x8);
padding: 0 var(--x3);
vertical-align: top;
}
.menu .menu_title:hover {
background: var(--z2);
}
.menu_list .separator {
margin: var(--x1) 0;
border-top: solid var(--z14) 1px;
}
.menu_list {
position: absolute;
left: 0;
top: var(--x8);
white-space: nowrap;
background: var(--z15);
padding: var(--x2) 0;
border-radius: 0 var(--x2) var(--x2) var(--x2);
box-shadow: var(--shadow);
}
#menu_bar.active .menu.open .menu_title {
background: var(--z15);
color: var(--z1);
}
.inverted #menu_bar.active .menu.open .menu_title {
background: var(--z0);
color: var(--z15);
}
.menu .menu_list {
display: none;
position: absolute;
}
.menu_list .menu_item {
position: relative;
overflow: hidden;
line-height: var(--x6);
padding: var(--x1) var(--x16) var(--x1) var(--x6);
cursor: pointer;
color: var(--z3);
}
.menu_list input[type=file] {
-webkit-appearance: none;
position: absolute;
opacity: 0;
cursor: pointer;
left: 0;
right: 0;
top: 0;
bottom: 0;
display: block;
background: red;
z-index: 100;
}
.menu_list .menu_item.tool_button {
background: transparent;
border: none;
margin: 0;
padding: var(--x1) var(--x16) var(--x1) var(--x6);
height: auto;
width: auto;
}
.menu_list .menu_item.push_button_pressed:before {
content: '✔';
position: absolute;
display: block;
left: 6px;
top: var(--x1);
}
.menu_list .menu_item:hover,
.menu_list .menu_item.push_button_pressed:hover {
background: var(--accent15);
color: #000;
}
.menu_list .menu_item.disabled:hover,
.menu_list .menu_item.push_button_pressed.disabled:hover {
background: transparent;
color: var(--z3);
}
.menu_list .menu_item.push_button_pressed {
background: transparent;
border: none;
width: auto;
height: auto;
margin: 0;
}
.menu_list .menu_item span {
display: block;
position: absolute;
right: var(--x2);
padding: 0 var(--x2);
background: var(--z14);
top: 50%;
transform: translate(0, -50%);
text-align: center;
font-size: 12px;
line-height: var(--x6);
border-radius: var(--x1);
font-weight: 600;
}
.menu_list .menu_item:not(.disabled):hover span {
background: var(--accent13);
}
#modal_donate {
display: none;
}
.menu-right {
margin-left: auto;
}
.menu-right button {
background: transparent;
line-height: var(--x5);
}
.menu-right button:hover {
background: transparent;
}
.menu-right button:active {
box-shadow: none;
outline: none;
}
.menu-right button:hover svg {
fill: var(--z12);
}
.menu-right svg {
fill: var(--z5);
}
.inverted .menu-right svg {
fill: var(--z10);
}
#logo svg {
pointer-events: none;
margin-top: var(--x2);
fill: var(--z7);
}
#logo svg path:last-child {
fill: var(--z13);
}
#logo:hover svg {
fill: var(--z9);
}
#logo svg path:last-child {
fill: var(--z15);
}
#rulers > div {
position: absolute;
background: var(--z2);
z-index: 1;
overflow: hidden;
-webkit-font-smoothing: none;
}
.inverted #rulers > div {
background: var(--z1);
}
#rulers #ruler_corner {
top: var(--x8);
left: var(--x12);
width: var(--x4);
height: var(--x4);
z-index: 2;
border-radius: var(--x2) 0 0 0;
}
#ruler_x {
height: var(--x4);
top: var(--x8);
left: var(--x12);
right: calc(var(--panel-width) + var(--x4));;
overflow: hidden;
border-radius: var(--x2);
}
#ruler_y {
width: var(--x4);
top: var(--x8);
left: var(--x12);
bottom: var(--x10);
overflow: hidden;
border-radius: var(--x2);
}
#ruler_x > div,
#ruler_y > div {
overflow: hidden;
}
#palette {
display: block;
position: absolute;
z-index: 2;
left: 10px;
bottom: 5px;
width: 410px;
right: 145px;
height: 30px;
}
.palette_item {
height: 20%;
width: 5.2%;
float: left;
cursor: url(../images/eyedropper.svg) 0 16, crosshair;
}
.palette_item.transparent, .palette_item.white, .palette_item.black {
background: #fff;
position: absolute;
width: 10px;
height: 10px;
left: -10px;
top: 0;
}
.palette_item.transparent {
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNXG14zYAAAAVdEVYdENyZWF0aW9uIFRpbWUAOC8yMi8xMg1cp6sAAABESURBVBiVjdBBCgAgCETRr/e/87SJKFPLnfIcQRMIwMBIShIAvgZzoSrfkzrs8WyF1+kX9r3p8AE7nL7kSpSshN+JEQ8GixkF0mSevgAAAABJRU5ErkJggg==);
}
.palette_item.black {
background: #000;
top: 10px;
}
.palette_item.white {
background: #fff;
top: 20px;
}
#color_tools #tool_fill .color_block > div {
position: absolute;
top: 0;
left: 0;
}
#color_tools #tool_fill .color_block #fill_bg, #color_tools #tool_stroke .color_block #stroke_bg {
position: absolute;
top: 1px;
left: 1px;
bottom: 1px;
right: 1px;
}
#stroke_color:after {
content: '';
position: absolute;
display: block;
left: var(--x1);
right: var(--x1);
top: var(--x1);
bottom: var(--x1);
background: var(--z1);
box-shadow: 0 0 0 1px var(--z13);
}
#tool_switch {
cursor: pointer;
width: 11px;
height: 11px;
position: absolute;
top: -5px;
right: 0;
cursor: nwse-resize
}
#tool_switch svg {
fill: var(--z6);
}
#tool_switch:hover svg {
fill: var(--z15);
}
#stroke_color:hover:after {
box-shadow: 0 0 0 1px var(--z15);
}
.color_block {
width: var(--x5);
height: var(--x5);
overflow: hidden;
border: solid var(--z12) 1px;
cursor: pointer;
}
.color_block svg {
width: 22px;
height: 22px;
}
#tool_stroke .color_block > div {
position: absolute;
bottom: 0;
right: 0;
}
#color_tools {
position: relative;
width: 48px;
height: 48px;
margin: 12px 6px 0 6px;
}
#color_tools {
width: auto;
height: auto;
}
#tool_fill {
position: absolute;
top: 0;
left: 0;
z-index: 1;
}
#tool_fill.active,
#tool_stroke.active {
z-index: 2;
}
#tool_stroke {
top: 14px;
left: 14px;
}
#tool_fill, #tool_stroke, #tool_canvas {
box-shadow: 0 0 0 1px var(--z0);
position: absolute;
}
#tool_canvas .color_block {
width: 58px;
height: 38px;
}
#tool_canvas .color_block svg {
width: auto;
height: auto;
}
/* Generic context menu styles */
.contextMenu {
position: absolute;
z-index: 99999;
background: var(--z15);
padding: 5px 0;
margin: 0px;
display: none;
font: 14px/18px -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;
border-radius: 5px;
box-shadow: 2px 5px 10px rgba(0,0,0,.3);
}
.contextMenu LI {
list-style: none;
padding: 0px;
margin: 0px;
}
.contextMenu .shortcut {
width: 115px;
text-align:right;
float:right;
}
.contextMenu A {
-moz-user-select: none;
-webkit-user-select: none;
color: var(--z2);
text-decoration: none;
display: block;
line-height: 20px;
height: 20px;
background-position: 6px center;
background-repeat: no-repeat;
outline: none;
padding: 0px 15px 1px 20px;
}
.contextMenu LI.hover A {
background-color: var(--accent7);
color: var(--z15);
cursor: default;
}
.contextMenu LI.disabled A {
color: #999;
}
.contextMenu LI.hover.disabled A {
background-color: transparent;
}
.contextMenu LI.separator {
border-top: solid 1px #E3E3E3;
padding-top: 5px;
margin-top: 5px;
}
#shape_buttons {
overflow: auto;
top: 0;
bottom: 0;
left: 136px;
right: 0;
position: absolute;
vertical-align: top;
}
#shape_cats {
min-width: 110px;
display: block;
position: absolute;
left: 0;
top: 0;
height: 320px;
background: var(--z14);
border-radius: var(--x1) 0 0 var(--x1);
z-index: 2;
}
#shape_cats > div {
padding: 0 var(--x4);
background: var(--z14);
color: var(--z6);
height: var(--x7);
line-height: var(--x7);
transition: background-color 100ms ease;
}
#shape_cats > div:first-child {
border-radius: var(--x1) 0 0 0;
}
#shape_cats > div:last-child {
border-radius: 0 0 0 var(--x1);
}
#shape_cats div:hover {
color: var(--z0);
}
#shape_cats div.current {
font-weight: bold;
background: var(--accent7);
color: var(--z15);
}
.tools_flyout {
position: absolute;
display: none;
cursor: pointer;
width: 410px;
z-index: 10;
left: var(--x12);
top: 230px;
height: 336px;
background: var(--z15);
border-radius: var(--x1);
box-shadow: var(--shadow);
}
.tools_flyout .tool_button {
float: left;
background-color: var(--z15);
height: var(--x6);
width: var(--x6);
}
/* Necessary to keep the flyouts sized properly */
#shape_buttons {background: var(--z15); border-radius: 0 3px 3px 0; padding: 10px}
.tools_flyout .tool_button,
.tools_flyout .tool_flyout {
background: var(--z15);
width: var(--x10);
height: var(--x10);
margin: var(--x1);
}
.tools_flyout .tool_button svg,
.inverted .tools_flyout .tool_button svg {
fill: var(--z4);
}
.tools_flyout .tool_button:hover svg {
fill: var(--z1);
}
.modal {
background: rgba(50,50,50,0.8);
position: absolute;
z-index: 1000;
top: 0;
left: 0;
right: 0;
bottom: 0;
display: flex;
align-items: center;
justify-content: center;
opacity: 1;
font-size: 16px;
line-height: 150%;
}
.modal.hidden {
opacity: 0;
pointer-events: none;
transition: opacity 300ms ease;
}
.modal-item {
background-color: white;
position: relative;
border-radius: var(--x1);
padding: var(--x12);
max-width: 600px;
margin: 32px;
}
.modal-item.modal-item-wide {
max-width: none;
width: 900px;
}
.modal-item.modal-item-source {
height: 504px;
max-width: none;
width: 704px;
}
.modal h1:first-child {
margin-top: 0;
}
#svg_source_editor {
position: relative;
width: 800px;
height: 600px;
margin: -48px;
}
#svg_source_container {
width: 800px;
position: relative;
height: 100%;
}
#svg_source_editor form {
position: absolute;
top: 0;
bottom: 55px;
left: 0;
right: 0;
font-size: 14px;
background-color: var(--z14);
border-radius: 8px 8px 0 0;
}
#svg_source_textarea {
width: calc(100% - 64px);
height: calc(100% - 64px);
line-height: 140%;
font-family: var(--mono-font);
font-size: 14px;
color: var(--z4);
border: none;
padding: 32px;
background-color: transparent;
}
#svg_source_editor #tool_source_back {
position: absolute;
display: flex;
justify-content: space-between;
bottom: 0;
left: 0;
right: 0;
padding: var(--x2) var(--x2);
}
#shortcuts {
columns: 4;
}
.shortcut-keys {
display: flex;
margin: var(--x1) 0;
break-inside: avoid;
}
.shortcut-key {
text-transform: uppercase;
color: var(--z4);
border: solid var(--z4) 1px;
border-radius: var(--x1);
padding: 0 var(--x1);
margin: 2px;
font-size: 12px;
font-weight: 600;
}
.shortcut-name {
margin-left: var(--x2);
line-height: 160%;
white-space: nowrap;
}
#dialog_box {
display: none;
}
#dialog_box_overlay {
background: var(--z0);
opacity: .5;
height: 100%;
left:0;
position:absolute;
top:0;
width:100%;
z-index: 6;
}
#dialog_content {
height: 95px;
padding: 32px;
overflow: auto;
text-align: left;
font-size: 16px;
}
#dialog_content h4 {
margin: 0;
}
#dialog_buttons input:last-child {
position: absolute;
left: 10px;
bottom: 10px;
}
#dialog_buttons input:first-child {
position: absolute;
right: 10px;
bottom: 10px;
}
#dialog_content.prompt {
height: 75px;
}
#dialog_content p {
line-height: 1.3em;
}
#dialog_container {
position: absolute;
left: 50%;
top: 50%;
width: 400px;
transform: translate(-50%, -50%);
position:fixed;
z-index:50001;
background: var(--z15);
}
#dialog_container, #dialog_content {
border-radius: 3px;
}
#dialog_buttons input[type=text] {
width: 90%;
display: block;
margin: 0 0 5px 11px;
}
#dialog_buttons input[type=button] {
margin: 0 1em;
}
#svgroot {
-moz-user-select: none;
-webkit-user-select: none;
display: block;
}
#svg_editor {
background: var(--z1);
}
#svgcanvas {
background-color: var(--z2);
display: block;
}
#workarea {
display: block;
position:absolute;
top: var(--x8);
left: var(--x12);
bottom: var(--x10);
right: calc(var(--panel-width) + var(--x4));
background-color: var(--z2);
overflow: auto;
align-items: center;
justify-content: center;
transition: transform 500ms cubic-bezier(0.13,0.66,0.24,0.92);
border-radius: var(--x2);
box-shadow: var(--shadow-bg);
}
.inverted #svgcanvas,
.inverted #workarea {
background: var(--z1);
}
#workarea.rect, #workarea.line, #workarea.ellipse, #workarea.path, #workarea.shapelib {
cursor: crosshair;
}
#workarea.text {
cursor: text;
}
#workarea.eyedropper {
cursor: url(../images/eyedropper.svg) 0 16, crosshair;
}
#workarea.fhpath {
cursor: url(../images/pencil_cursor.png) 0 16, crosshair;
}
#workarea.rotate * {
cursor: url(../images/rotate.png) 12 12, auto;
}
#workarea.select text, #workarea.multiselect text {
cursor: default;
}
#workarea.n-resize * {cursor: n-resize !important;}
#workarea.e-resize * {cursor: e-resize !important;}
#workarea.w-resize * {cursor: w-resize !important;}
#workarea.s-resize * {cursor: s-resize !important;}
#workarea.ne-resize * {cursor: ne-resize !important;}
#workarea.se-resize * {cursor: se-resize !important;}
#workarea.nw-resize * {cursor: nw-resize !important;}
#workarea.sw-resize * {cursor: sw-resize !important;}
#workspace.dragging *,
body.dragging * {
cursor: url(../images/dragging.png), move;
cursor: -webkit-grabbing;
cursor: -moz-grabbing;
}
#workspace.drag * {
cursor: url(../images/dragging.png), move;
cursor: -webkit-grabbing;
cursor: -moz-grabbing;
}
#workarea.copy {
cursor: copy;
}
#workarea.zoom {
cursor: crosshair;
cursor:-moz-zoom-in;
cursor:-webkit-zoom-in;
}
#workarea.zoom.out {
cursor: crosshair;
cursor:-moz-zoom-out;
cursor:-webkit-zoom-out;
}
#selectorRubberBand {
shape-rendering: crispEdges;
}
#tools_left {
position: absolute;
border-right: none;
width: var(--x12);
top: var(--x8);
bottom: 0;
left: 0;
z-index: 4;
}
.tool_button {
height: var(--x12);
width: var(--x12);
cursor: pointer;
line-height: 60px;
text-align: center;
transform: scale(0.8);
}
.inverted .tool_button svg {
fill: var(--z13);
}
.tool_button:hover {
transform: scale(1);
}
.tool_button:hover svg {
fill: var(--z13);
}
.tool_button.current {
transform: scale(1.4);
}
.tool_button svg {
vertical-align: center;
fill: var(--z5);
}
.tool_button.current svg {
fill: var(--accent8);
}
.tool_button.current svg {
fill: var(--accent7);
}
.tool_button.disabled svg {
background-color: #aaa;
cursor: not-allowed;
fill: var(--z3);
pointer-events: none;
}
#tool_rect svg {
position: relative;
top: -1px;
left: 1px;
}
#tool_ellipse svg {
position: relative;
top: 2px;
left: 1px;
}
.button-container {
clear: both;
margin-top: var(--x4);
}
.button {
height: var(--x12);
cursor: pointer;
line-height: var(--x12);
text-align: left;
color: var(--z13);
border: solid var(--z5) 2px;
border-radius: var(--x1);
white-space: nowrap;
margin: var(--x2) var(--x2) var(--x2) 0;
padding: 0 var(--x4);
display: inline-block;
font-weight: bold;
background-color: var(--z1);
}
.button:hover {
background-color: var(--z2);
}
.button.full {
display: block;
text-align: center;
}
.button svg {
vertical-align: center;
fill: var(--z5);
}
.button:hover svg {
fill: var(--z10);
}
.button.current {
background-color: var(--z0);
}
.button.current svg {
fill: var(--accent15);
}
.button.disabled svg {
background-color: #aaa;
cursor: not-allowed;
fill: var(--z3);
pointer-events: none;
}
.select-input {
margin: var(--x2) 0;
position: relative;
}
.select-input:after {
content: '↓';
font-weight: bold;
position: absolute;
right: var(--x6);
top: 50%;
color: var(--z7);
transform: translate(0, -50%);
}
.select-input select {
-webkit-appearance: none;
background-color: var(--z3);
color: var(--z14);
height: var(--x8);
display: block;
width: calc(100% - var(--x2));
padding: 0 var(--x4);
border: none;
border-radius: var(--x1);
}
.select-input select:focus {
outline: none;
box-shadow: 0 0 0 1px var(--accent7);
}
#panels {
position: absolute;
box-sizing: border-box;
width: var(--panel-width);
right: var(--x1);
top: var(--x5);
bottom: 0;
border-bottom: none;
overflow: auto;
padding: 0;
}
.context_panel {
display: none;
}
.context_panel h4 {
color: var(--z15);
font-weight: normal;
margin: 0;
padding: 10px 0 5px 0;
}
.context_panel label {
display: block;
color: var(--z13);
white-space: nowrap;
}
#align_tools {
display: none;
}
#panels.multiselected #multiselected_panel {
display: block !important;
}
#panels.multiselected #multiselected_panel .hidable {
display: none;
}
#tool_text_on_path {
display: none !important;
}
.align_buttons {
margin-bottom: var(--x2);
}
.align_button,
.align_button * {
transition: var(--transition);
}
.align_button:hover,
.align_button:hover * {
transition: none;
}
.align_button {
float: left;
height: var(--x13);
width: var(--x13);
line-height: var(--x16);
text-align: center;
cursor: pointer;
position: relative;
}
.align_button:hover {
background-color: var(--z0);
border-color: var(--z3);
}
.align_button svg {
fill: var(--z10);
}
.align_button:hover svg {
fill: var(--z15);
transition: none;
}
.align_button:nth-child(1) {border-radius: var(--x1) 0 0 0;}
.align_button:nth-child(3) {border-radius: 0 var(--x1) 0 0;}
.align_button:nth-child(4) {border-radius: 0 0 0 var(--x1);}
.align_button:nth-child(6) {border-radius: 0 0 var(--x1) 0