body {
	font-size: 13px;
	background: #444;
	margin:0px;
	font-family: "Roboto";
	color: #ddd;
	margin-bottom: 400px;
}
.box-background {
	background: rgba(0, 0, 0, 0.8);
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
}

.box {
	font-size: 20px;
	width: 400px;
	height: 150px;
	background: #a00;
	border: 1px solid #fff;
	box-shadow: 0 1px 4px #000;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}

.box div {
	margin-top: 10px;
}

.btn {
	width: 100px;
	border: none;
	border-radius: 5px;
	color: #fff;
	padding: 5px;
}
.red {
	background: red;
}
.green {
	background: green;
}
tt {
	display: block;
	font-size: 20px;
	width:100%;
	padding:8px;
	text-align: center;
	margin-bottom: 40px;
}

h2 {
	text-align:center;
}
td { line-height: 20px; }

td {
	border-bottom: 1px solid #555;
	min-height:10px;
	padding: 2px;
	color: #fff;
}

th {
	padding: 6px;
	color: #fff;
	font-weight: normal;
	background: #222;
	border: 1px solid #555;
}

.visible {
	display: block;
}

.invisible {
	display: none;
}

msg, fatal, cannot, msg_confirm{
	z-index: 999;
	position:fixed;
	left:0px;
	min-height: 30px;
	top:50px;
    text-align:center;
    width:500px;
	opacity: 0.9;
    background-color: #063;
    color: #fff;
    padding: 10px;
	background-position: 99% 1%;
    background-repeat: no-repeat; 

}
fatal, cannot {
    background-color: #a00;
	padding: 20px;
	border: 1px solid #fff;
	box-shadow: 0 1px 4px #000;
}


a:link, a:visited {
	color: #6af;
	text-decoration: none;
}

a.blink, a.bblink, .blink, .bblink {
	user-select: none;
	text-decoration: none;
	margin: 1px;
	color: #fff;
    background:#579;
    border:0 none;
    cursor:pointer;
	display: inline-block;
    padding: 5px 8px;
}
a.bblink, .bblink { background: #616; } 
	
a.rlink {
	user-select: none;
	text-decoration: none;
	margin: 1px 3px;
    padding:4px 8px; 
	color: #fff;
    border:0 none;
    cursor:pointer;
	display: inline-block;
	background: #600;
    padding: 5px 8px;
}

green, black, orange, red, nocolor, wheat,  .nocolor, dark {
    padding:4px 8px; 
	color: #fff;
    background:#062;
    border:0 none;
	display: inline-block;
    padding: 5px 8px;
}
black             { background:#000; }
dark			  { background:#383838; color: #bbb; }
orange            { background:#a50; }
red               { background:#600; }
wheat			  { background:wheat; color: #333; }
nocolor, .nocolor { background:none;  border: 1px solid #555; }

.blink:hover, .bblink:hover, .rlink:hover, .nocolor:hover {
	background: #c60 !important;
}

textarea {
    padding:5px;
	color: #fff;
	background: #333;
	border: none;
	width: 95%;
	height: 90%;
	white-space: nowrap;
}

total_logins {
	display: inline-block;
	margin: 80px 0px 10px 0px;
	padding: 5px 10px;
	background-color: #062;
	border: 1px solid #383;
}

fatal, cannot {
	background-image: url("close.svg");
	background-position: 99% 1%;
    background-repeat: no-repeat; 
}

input, select {
	padding: 2px;
	margin: 4px;
	color: #fff;
	background: #333;
	border: none;
}

input  {
    padding:4px 8px; 
}


::placeholder {
	color: #666;
}


.nowrap {
	white-space: nowrap;
}
select {
    max-width:600px; 
    overflow:hidden; 
    white-space:pre; 
    text-overflow:ellipsis;
	border-bottom: 1px solid #444;
}

option {
  border: solid 1px #DDDDDD; 
}

withHelp {
    position: relative;
    display: inline-block;
	padding: 1px 4px 1px 4px;
	text-align: left;
	cursor: help;
    background-color: wheat;
	color: #222;
}

withHelp help {
    visibility: hidden;
	min-width:200px;
	max-width:600px;
	display: block;
	border: 1px solid #243;
    padding: 8px;
    position: fixed;
	left:30%;
	top:30%;
    z-index: 1;
    background-color: wheat;
    color: #444;
}
withHelp hr {
	border: 0.5px dashed #960;
}

withHelp:hover help {
    visibility: visible;
}
#g-signin-png:hover {
	cursor: pointer;
	-webkit-filter: hue-rotate(150deg);
	filter: hue-rotate(150deg);
}
table { border-collapse: collapse; }

table.noborder td, table.noborder tr { border-bottom: none; text-align: center; }
table.nobreak td, table.nobreak tr { white-space: nowrap; }
table#gg_listing, table#gg_listing tr, table#gg_listing td { border-right: 1px solid #888; white-space: nowrap; text-align: center; margin-right:20px; }

.grey {
	opacity: 0.3;
}
.no-display{
	display: none;
}

.frame {
	border: 1px solid #888;
	margin: 4px;
	padding: 4px;
}

#home {
	display: block;
	text-align: left;
	padding: 20px;

}
dd {
	z-index: 1001;
}

right-menu-box, left-menu-box { cursor: default; user-select: none; background-color: #555; z-index:100; padding: 10px; border: 1px solid #888; position: absolute; display: none; }
left-menu-box                 { display: block; left: 0px; text-align: center; padding-top: 0px; top:0px; width: 130px; }
right-menu-box                { right: 0px; top: 30px; }

button-right-menu-box, button-left-menu-box { user-select: none; text-decoration: none; color:#6af; padding: 1px; cursor: pointer; position: absolute; top:6px; z-index:500; }
close-left-menu-box, close-right-menu-box   { font-size: 18px; color: #6af; float: right; cursor:pointer; }
button-left-menu-box                        { left:4px; font-size: 16px; font-weight: bold; cursor: pointer; }
button-right-menu-box                       { right:4px; cursor: pointer; }

button-right-menu-box:hover, button-left-menu-box:hover { color: #c60 !important; }
close-left-menu-box:hover, close-right-menu-box:hover  { opacity: 0.3; }

.left-menu                    { padding-left: 15px; }
.left-menu a, left-menu-box a { width: 100px !important; text-align: center !important; }
#amsg                     { display: none; position: fixed; left: 150px; top: 60px; max-width: 500px; padding: 10px; color: #fff; z-index: 1000; }
#python_msg                   { display: block; position: fixed; left: 150px; top: 60px; max-width: 500px; padding: 10px; color: #fff; z-index: 100; background-color: #800; }


.results-pictures {
	display: block;
	margin: 15px 0px 0px 0px;
}

.results-pictures + p {
	margin: 3px 0px 0px 0px;
}

input[type="submit"], button             { margin:0px 2px 0px 0px; user-select: none; background-color: #324; color: #ccc; border: 1px solid #555; padding: 4px; cursor: pointer; font-size: 13px; }
input[type="submit"]:hover, button:hover { opacity:0.7; }


.bulkProps       { user-select: none !important; background: none !important; padding:2px !important; color: #6af !important; text-decoration: none !important; }
.bulkProps:hover {  color: #c60 !important; cursor: pointer;  }


#apainter-texts-floor { user-select: none; position: absolute; left: 140px; top: 40px; color: #fff; opacity: 0.1; font-size: 16px; font-family: 'Sans'; }
#apainter-texts-keys  { user-select: none; position: absolute; left: 140px; top: 60px; color: #fff; opacity: 0.1; font-size: 13px; font-family: 'Sans'; }
#apainter-texts-pos   { user-select: none; position: absolute; left: 340px; top: 50px; color: #fff; opacity: 0.4; font-size: 12px; font-family: 'Sans'; }

#scenario { visibility: hidden; position: absolute; }
.axis path, .axis line { fill: none; stroke: #3e3e3e; } 
.axis { font-family: 'Roboto'; }
.snap_v, .snap_h { stroke : #fff; stroke-width : 5; stroke-dasharray : 10; stroke-opacity : 0.7; }
#snapper { pointer-events: none; }

legend0 { position: absolute ; left: 150px ; top: 0px ; user-select: none ; }
legend1 { position: fixed    ; left: 240px ; top: 0px ; user-select: none ; }
legend2 { position: absolute ; right: 2px ; top: 0px ; user-select: none ; }
.legend { display: inline-block; padding: 4px;  cursor: pointer; }

status { cursor: default; float: right; }

#apainter-svg      { position: fixed; left: 10px; top: 30px; border: 1px solid #555; font: 10px; }
#animator-canvas   { position: fixed; left: 10px; top: 30px; border: 1px solid #555; width:100%; height:100%}

text { fill: #888; font-size: 11px; user-select: none; }
.building-label { fill: #ddd; font-size: 50px; }
.building-vertex { fill: #ff0; font-size: 30px; }

canvas-mouse-coords { pointer-events: none; z-index:20; display: none; background-color: #600; font-size: 12px; padding: 4px; color: #fff; border: 1px solid #a77; position: absolute; }
#div-cad-json-textarea { height:90vh; margin-left:130px }
#cad-json-textarea { height: 100%; }
letter { display: inline; padding: 0px 4px 1px 4px; background-color: #960; color: #fff;  }
#alter-polypoints { margin-left:20px; margin-top: 8px; height: 140px; width: 120px }
#alter-z { margin-left: 20px; height: 20px; width: 110px }
#alter-geom-letter { width: 20px; }
#apainter-next-view::first-letter { background-color: #960; padding-left: 3px; padding-right: 3px; margin-right: 1px; }
#alter-z0{width: 6ch;}
#alter-z1{width: 6ch;}
#active-sims{
	position: fixed;
	bottom: 0;
	left: 0;
	width:110px;
	border-top: 2px solid #888;
	border-left: 2px solid #888;
	border-right: 2px solid#888;
	overflow: auto; 
}

#left_column {
	padding-right:15px;
}

.photo > img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
.top_padding {
	padding-top: 30px;
}
