body {
	background-color: #ffffff;
	color: #373737;
	font-family: Ubuntu, Verdana, sans-serif;
	margin: 0px;
	padding: 0px;
}
textarea {
	width: 100%;
}
a, a:visited {
	color: #1982d1;
}
.header {
	padding: 10px 0;
}
.header .login {
    float: right;
}
.username {
	font-size: 12px;
}

.content, .header {
    width: 750px;
	margin: 0 auto;
}
.title {
    color: #373737;
    font-weight: 400;
    padding: 15px 0;
	text-transform: uppercase;
	font-size: 20px;
	border-bottom: 1px solid #888888;
}
.title a {
	text-decoration: none;
}

/* flex menu */
.menu {
    width: 750px;
	margin: 0 auto;
    display: flex;
    grid-gap: 5px;
	flex-direction: row;
    background: #1982D1;
}
.menu a {
    width: 80px;
    cursor: pointer;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    height: 30px;
    line-height: 30px;
    font-size: 14px;
    color: #FFFFFF;
    background: #1982D1;
    border-right: 1px solid #D5D5D5;
    padding: 0 5px;
    text-align: center;
    text-decoration: none;
}
.menu a.selected,
.menu a.selected:hover {
    background: #125F98;
}

/* flex table */
.flex-table, .flex-row {
	display: flex;
	flex-wrap: nowrap;
    grid-gap: 5px;
    justify-content: space-between;
}
.flex-table {
	flex-direction: column;
}
.flex-row {
    align-items: center;
    border-bottom: 1px solid #DDDDDD;
    min-height: 40px;
}
.flex-row.header {
    font-size: 16px;
    font-weight: bold;
}
.flex-row > div {
    flex: 1;
    /*align-items: center;*/
}
.flex-row > div.wide {
    flex: 1;
}
.flex-row .int-value input {
    width: 40px;
}

.menu-block,
.param-block,
.note-block,
.button-block,
.info-block
{
	/*justify-content: space-between;*/
	display: flex;
	padding: 10px 0;
    align-items: center;
}
.note-block {
    font-size: 14px;
}
.list-block {
	padding: 3px 0;
}
.menu-block {
	border-bottom: 1px solid #888888;
}
.menu-block a{
	display: block;
	text-decoration: none;
}
.menu-block:hover{
	background-color: #EEEEEE; 
}

.info-block.error {
    background-color: #FF8844;
}
.info-block.info {
    background-color: #CCFFAA;
}

/* param block */
.param-block > div {
	flex: 1;
	flex-grow: 1;
}
.param-block > div.header {
    font-weight: bold;
}
.param-block > div.wide {
    flex: 2;
    flex-wrap: wrap;
}

/* inline selector */
.inline-selection {
    display: flex;
    grid-gap: 5px;
	flex-direction: row;
}
.inline-selection > div,
.inline-selection > a,
.action-button {
    width: 80px;
    cursor: pointer;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    height: 30px;
    line-height: 30px;
    font-size: 14px;
    color: #333333;
    background: #FFFFFF;
    border: 1px solid #D5D5D5;
    padding: 0 5px;
    text-align: center;
    text-decoration: none;
}
.inline-selection > div:hover,
.inline-selection > a:hover,
.action-button:hover {
    border: 1px solid #808080;
}

.inline-selection > div.selected,
.inline-selection > a.selected {
    background: #E0F4FF;
    border: 1px solid #44BBFF;
}   

/* canvas */
.canvas-block {
	padding: 10px 0;
}
.canvas-block .canvas-stl {
    width: 300px;
    height: 300px;
    margin: 0 auto;
    border: 1px solid #E5E5E5;
}
.canvas-block .canvas-progress {
    display: block;
    margin: 10px auto;
    width: 100%;
}

/* misc */
.separator {
    width: 100%;
    height: 1px;
    border-bottom: 1px solid #888888;
    margin: 10px 0;
}

/* button */
.button {
    height: 40px;
    line-height: 40px;
    padding: 0 20px;
    font-size: 18px;
    color: white;
    background-color: #1982D1;
    cursor: pointer;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    float:left;
    margin-right: 10px;
}
.button.disabled {
    cursor: default;
    opacity: .35;
}
.button:hover {
    background-color: #125F98;
}
.button.disabled:hover {
    background-color: #1982D1;
}

input[type="number"],
input[type="text"],
input[type="file"],
select
{
    height: 25px;
}