h1 {
  font-family: 'Bahnschrift' ;
 
}
body {
    background: #f1f1f1;
}
  #canv , #canvBg{

    position:absolute;
  }
  #canvOverlay {

    position:absolute;

  }
  #canvBg {
      z-index:-1;
       background:white;

  }
  canvas {

    margin-top:65px;
        cursor:crosshair;
  }
  body.move-mode canvas {
    cursor: grab;
  }
  body.move-mode canvas:focus {
    cursor: grabbing;
  }
  body.search-mode canvas {
    cursor: cell;
  }
  * {
      user-select:none;
  }
  holder {
    box-shadow:0px 2px 3px #aaa;
    /* margin: 0px 0px 20px 0px; */
    padding: 12px 10px;
    display: block;
    background: #222;
    margin-top:0px !important;
    z-index: 16;
    border-bottom: 1px solid #444;
    position: fixed;
    right: 0;
    left: 0;
  }
  holder h1 {
    display:inline-block;
    margin:0px;
    font-family: 'Bahnschrift';
    padding-left: 10px;
    color: #fff;
    letter-spacing: 0px;
    font-weight: 100;
    /* text-transform: capitalize; */
    font-size: 26px;
    vertical-align: 2px;
  }

  .elem>span, .elem>option {
    width: 90px;
    display: inline-block;
    font-weight: bold;
  }
  .elem {
    border-bottom: 1px solid #bbb;
    display: block;
    margin: 0 -15px;
    padding: 5px 10px 5px 20px;
  }
  #properties .elem:last-child {
    border-bottom:none;
  }
  .elem input {
    border:0px;
    padding: 10px;
    margin: -9px 0px -9px 10px;
    color: #222;
    border-bottom-width: 1px !important;
  }
  .elem input[disabled] {

    box-shadow:0px 0px 0px !important;
    color:#444;
    border:1px solid transparent !important;
    background:transparent  !important;
  }


div#line.on.open {
  opacity:1;
  display:block !important;
}
div#sidebarProp {

  width:260px;
  height:400px;
}
div#line {

top:490px;
display: none !important;

opacity:0;
height:200px;

min-height:0px !important;

overflow:hidden;

display:block;

/* position:absolute; */
}
button[flat][real] {
  padding-right:16px;
}
button[flat][real]:hover {
  color:white;
  background:#2196f3;
}
#actionDrag {
  color:#222;margin:0px; padding:0px 3px;vertical-align: -6px;
}
#action button {
   padding: 15px 19px 15px 11px !important;
}

body {
  overflow: hidden;
}
#docFooter {
  position:fixed;
  left:0px;
  right:0px;
  bottom: 0px;
  height:30px;
  background:#ccc;
  border-top:1px solid #666;
}
#shortcutHelp {
 position:absolute;
 right:10px;
 margin-top:3px;
 font-family:'Montserrat',sans-serif;
 display: inline-block;
}
#footerBarHolder {
  display: inline-block;
}
#textLP {
  width:55px !important;
  border:1px solid #999 !important;
}
:root {
    --dark-primary: #444 !important;
    --primary: #2196F3 !important;
}
group {
  vertical-align: 5px;
}


  #footerBarHolder>*.open{
    position: fixed;
    top: 80px;
  }



div[linked] {
  display:inline-block;
  font-weight: 400;
  font-family:'Montserrat';
  background:white;
  border-right:1px solid #999;
  padding: 5px 15px;
  text-transform: uppercase;
}
div[linked]:hover {
  background:#eee;
  cursor:pointer;
  margin-top:-3px;
  border-top:3px solid #2196f3;
}

#viewer.on.open {
  width: 280px;
  height:300px;
}


#textLP , sliderInput {

border-radius: 4px;

vertical-align: -3px;

background: white !important;

padding: 6px 10px;
}

#textLP:hover , sliderInput:hover {
  box-shadow:0px 1px 2px #999;
}
[real][flat][err]:hover {
  background:#f44336;
}
#statusHolder {
  vertical-align:6px;
  margin-left:10px;
  float:right;
  padding-left: 17px;
  border:1px solid #999;
  background: transparent;
  font-family:monospace;
}
#statusHolder:hover {
  background:#ff9800;
  border:1px solid black;
}
.elem>input[double][type="range"] {
  width:100px;
  margin-left: 0px;
  vertical-align: -7px;
  background: transparent;
}


.elem>input[double][type="number"] {
  width: 56px !important;
}
input:not([type="range"]):not([type="file"]):not([type="checkbox"]):not([type="submit"]), input.active {
  box-shadow:0px 0px 0px red !important;
}
input[real][type="color"] {
    height:30px;
    width:100px !important;
}
input[real][type="color"]:hover {
  background:#999;
}

holder>button {
  vertical-align:6px;margin-left:10px;
}

dialog>.elem span {
  width:250px;
  font-weight: 100;
  font-family: 'Montserrat';
}
dialog>.elem {
  padding: 14px 30px 14px 30px;
  border-bottom-color:#ccc;
}
dialog>.elem>input[type="range"] {
  vertical-align: -5px !important;
}


/********************************/
/********************************/

#loadInd {

position: absolute;

padding: 4px !important;

/* background: #ffffff55; */

color: white;

text-align: center;

border-radius: 100%;

/* float: right; */

/* border: 1px solid #999; */

margin-top: 20px;

display:none;

margin-left: calc(100% - 161px);
}
#loadInd.load {
  display:block;
  animation:rot .7s linear infinite;
}
@keyframes rot {
  0% {transform:rotate(0deg);}

    100% {transform:rotate(360deg);}
}


.jump holder {
    box-shadow: 0px 0px;
}

/**/
.bottomfix[b3] {
  border-top: 1px solid #666;
  margin: 0 -13px 0 -12px;
  margin-top: 59px;
}
.bottomfix[b1] {
  border-top: 1px solid #666;
  margin: 0 -13px 0 -12px;
  margin-top: 17px;
}
.bottomfix button {
  border:none;
  padding: 10px 17.2px 10px 18px;
  transition:.2s;
}
.bottomfix[b1] button {

display: block;

width: 100%;

padding: 13px 10px;
}
.bottomfix button:hover {
  background: #2196F3;
  color: white;
  outline:none;
  cursor:pointer;
}
.bottomfix button[disabled] {
  color:#444;
}
.bottomfix button[disabled]:hover {
  cursor: not-allowed;
  background:#ccc;
}
.bottomfix button[warn]:hover {
  background: #F44336;
}
#sidebarProp .bottomfix button {
  width: 95px;
}
#sidebarProp {
  resize:none;
}


div#properties {
    height: 234px;
}

#multiselect {
  max-height: 430px;
  resize:none;
  width:310px;
  min-height: 300px;

  height: initial;
  padding-bottom: 0px;
}

#treeObj {
  max-height: 430px;
  resize:none;
  width:310px;
  min-height: 300px;

  height: initial;
  padding-bottom: 0px;
}
d[dbox][bold] {
  font-weight: bold;
}
d[dbox][montserrat] {
  font-family: 'Montserrat';
  letter-spacing: -1px;
    font-size: 14px;
}
d[dbox] {
    width: 50px;
    display: inline-block;
    font-size: 15px;
    color: #222;
    transition:all .2s;
}
#multirows span.elem {
  transition:all .1s;
  border-bottom: 1px solid #ddd;
}
#multirows d[dbox] {
  font-size:13px !important;
  color:black;

}
#multirows span.elem:hover {
  background:white;
  cursor:pointer;
}
#multirows {
  display:inline-blcok;
  overflow-x:hidden;
  overflow-y:auto;
  margin-left: 2px;
  max-height:160px;
}
#msClose {

position: absolute;
}
#msTypeSelect {
display: block;
position: absolute;
margin-top: -57px;
margin-left: 64px;
background: #222;
width: 145px;
border: 2px solid #2196F3;
}
#msbottomfix {

margin-top: 10px;
}
#msCurrList .elem {
  padding-left:8px;
}
a[nxt]:hover {
  cursor:pointer;
  background:#3f51b5;
  color:white !important;
}
a[nxt] {
  padding:1px 10px;
}
.inPropIcon {
  
padding: 0px;
font-size: 19px;
padding-top: 5px;
vertical-align: -5;
color: #333;
padding-left: 6px;
}
#saveElems {
  transition:.3s;
}

.move-mode #action-move-mode,
.search-mode #action-search-mode,
.place-mode #action-place-mode{
  background:#222;
}

#diagScrollable {
  max-height:300px;
  overflow:auto;
  margin-left: 200px;
  border-radius: 5px;
  margin-right: -16px;
  /* box-shadow: 0px 0px 15px 14px inset #ff9; */
  margin-top: 0px;
}
#about {
  width:650px;
  padding-top: 0;
}

div#diagMenu {
    position: absolute;
    background: #eee;
    margin-left: -16px;
    width: 175px;
    height: 316px;
    z-index: 999;
    max-height: 999;
    border-right:1px solid #ccc;
}
div#diagMenu a {
  display:block;
  padding: 12px 18px;
  margin: 5px 0px;
  /* background: red; */
  color: #222;
  margin-right:-1px;
  border-radius:4px;
  text-decoration: none;
  border:1px solid #eee;
  transition: .1s;
}
div#diagMenu a:hover {
  background:#ccc;
}
div#diagMenu>a:active , div#diagMenu>a:focus {

}

#projectName {
  font-family:'Bahnschrift';
  text-transform: uppercase;
  padding-bottom: 10px;
}
[dbox] {
  overflow: hidden;
  white-space: nowrap;
  display: online;
  max-width: 50px;
  text-overflow: ellipsis;
}

/**/
#selectNode {
  position:fixed;
  transition:all .3s;
  /* height: 57px; */
  left:0;
  right:0;
  top: -10px;
  background:black;
  padding: 17px;
}
.node-selection #selectNode {
  top: 64px;
  /* z-index: 99; */
}
.node-selection holder{
  box-shadow: 0px 2px 3px #000;
}
#selectNode b {
  font-family:'Bahnschrift';
  color: white;
}
#confirmNode:hover {
  cursor: pointer;
  background:#2196F3;
  border-color:black;
}
#confirmNode {
transition:all .15s;
outline:none;  
position: absolute;
border-radius: 4px;
background: transparent;
color: white;
padding: 10px;
margin: -8px;
border: 1px solid #999;
margin-left: 20px;
right: 100px;
}
#selectNode i {
  color:white;
  position:absolute;
  right:20px;
  top: 3px;
}
#selectNode * {
  color:white;
}

#clippy {
width:120px  ;
z-index: 99;
  
position: fixed;
animation: showClippy .7s;
opacity:0;
animation-delay: .6s;
animation-fill-mode: forwards;
right: 15px;
bottom:50px;

}
#clippyHelp {
  width:180px  ;
    z-index: 99; 
    position: fixed;  
    right: 15px;
    bottom:170px;
    background:#ccc;
    border-radius:4px;
    font-size:12px;
    padding:4px;
    border: 1px solid #444;
    animation: showClippyHelp .7s;
    opacity:0;
    animation-delay: .6s;
    animation-fill-mode: forwards;
}
#clippyHelp  button {
  display: block;
  border:none;
  cursor:pointer;
  font-size:12px;
  text-align:left;
  width:100%;
  background:transparent;
  padding-left:10px;
  outline:none;
}
#clippyHelp  button:hover {
  background:#eee;
}
#clippyHelp  button:before {
  content: '';
  position: absolute;
  width: 6px;
  height: 6px;
  background: #FFC107;
  margin-top: 4px;
  margin-left:-10px;
}
@keyframes showClippyHelp {
  0% {bottom:130px; opacity:0;}
  100% {bottom:170px;opacity:1;}
}
@keyframes showClippy {
  0% {bottom:30px; opacity:0;}
  100% {bottom:50px;opacity:1;}
}