*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}


/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* -- end of reset.css -- */

td {
	vertical-align: middle;
}

.middle {
	display: inline-block;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}

.header1 {
	margin-bottom: 20px;
	font-weight: bold;
	text-align: center;
}




@font-face {
	font-family: 'Liberation Sans';
	src: url('../fonts/LiberationSans.ttf') format('truetype');
}

@font-face {
	font-family: 'Liberation Sans';
	src: url('../fonts/LiberationSans-Italic.ttf') format('truetype');
	font-style: italic;
}

@font-face {
	font-family: 'Liberation Sans';
	src: url('../fonts/LiberationSans-Bold.ttf') format('truetype');
	font-weight: bold;
}

@font-face {
	font-family: 'Liberation Sans';
	src: url('../fonts/LiberationSans-BoldItalic.ttf') format('truetype');
	font-style: italic;
	font-weight: bold;
}


@font-face {
	font-family: 'Cousine';
	src: url('../fonts/Cousine-Regular.ttf') format('truetype');
}

body, select, input {
	font-family: 'Liberation Sans', Arial;
	font-size: 13pt;
}

strong {
	font-weight: bold;
}

p {
	margin:10px;
	line-height: 130%;
	text-align: justify;
}

h1 {
	text-align: center;
	
	font-size:120%;
	font-weight:bold;
	margin: 5px;
	margin-top:30px;
}

h3 {
	text-align: left;
	color: #455A64;
	font-size:100%;
	font-weight:bold;
	margin: 5px;
	margin-top:30px;
}

.center {
	margin:auto;
}

.full_screen {
	width:100%;
	height:100vh;
	position: absolute;
	left:0px;
	top:0px;
}

.abs {
	position:absolute;
	left:0px;
	top:0px;
	display:none;
}


.common_button {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    white-space: nowrap;
    cursor: pointer;
}

.common_button:active {
	transform: translate(0px, 2px);
}

.list_item {
	cursor:pointer;
	
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;	
}

.list_item:hover {
	background:#E2EDF5;
	color:black;
}

.list_item:active {
	background:silver;
	color:black;
}

.menu_item {
	cursor:pointer;
	
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;	
}

.menu_item:hover {
	background:black;

}

.menu_item:active {
	background:#000080;

}

a.white_link {
	color:DarkBlue;
}

.list_item_marked {
	background: #B6DBF6;
	color:black;
	cursor: pointer;
}

.list_item_marked:hover {
	background:#E2EDF5;
	color:black;
}

.list_item_marked:active {
	background:silver;
	color:black;
}

.black_hover:hover {
	background:#455A64;
}

.internal_button {
	background:#455A64;
	color: white;
	text-align: center;
	padding:3px;
	border-radius:4px;
}


#tooltip {
	position: absolute;
	background-color: #ffffdd;
	color: black;
	padding: 5px;
	border: solid 1px #909000;
	border-radius: 5px;
	white-space: nowrap;
}

.dumb {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.popup {
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
	border: solid 1px #808080;
}

.appearing {
	transition: opacity .25s ease-in-out, transform .25s;
	-moz-transition: opacity .25s ease-in-out, transform .25s;
	-webkit-transition: opacity .25s ease-in-out, transform .25s;
}


/* editor */
.toolbar {
	background: #f2f2f2;
	border-right: solid 1px #b0b0b0;
	overflow-y: auto;
}


.toolbox {
	border-collapse: collapse;
	margin-bottom: 5px;
	
}
.toolbox img {
	border: 1px solid #EEEEEE;
	vertical-align: middle;
	margin:3px;
	padding:0px;
	border-radius: 11px;
	box-shadow: 1px 1px 1px #c5c5c5;
	cursor: pointer;
	transition: box-shadow 0.3s;
}

.toolbox img:active {
	box-shadow: none;
	transform: translate(0px, 2px);
}

.dlg_button {
	display: block;
	background: #455A64;
	color:white;
	border-radius: 5px;
	padding: 10px;
	margin: 3px;
	text-align: center;
	cursor: pointer;
}

/* help */

.fixed_back {
	background-color: black;
	position: absolute;
    left: 0px;
    top: 0px;	
    height: 100%;
    width: 100%;
    opacity: 0.2;
    display: "none";
}

.right_aligned_dialog {
	background-color: white;
	position: absolute;
	top: 0px;
	right: 0px;
	width:580px;	
	max-height:100%;
	overflow-y: auto;
	overflow-x: hide;
}

h2.exp {
	font-weight: bold;
	font-size: 130%;
	text-align: center;
	margin:5px;
	margin-top:10px;
}

h3.exp {
	font-weight: bold;
	font-size: 110%;
	text-align: left;
	margin:5px;
	color:#455A64;
}

p.exp {
	margin: 5px;
	text-align:left;
}

table.exp td {
	padding:5px;
	line-height: 130%;
}

.exp_button {
	cursor: pointer;
}

.exp_button:active {
	transform: translate(0px, 2px);
}

a.nav_menu, a.nav_menu:visited {
	display: block;
	font-weight: bold;
	font-size: 110%;
	color: #BE2921;
	text-decoration:none;
	margin:10px;
	margin-left:30px;
	margin-right:30px;
	border-radius:5px;
	padding:0px;
	text-align:center;
	padding-top:10px;
	padding-bottom:10px;
	border: solid 2px #BE2921;
}

a.nav_menu:hover {
	color: white;
	background: #BE2921;
}


/* PanicPanic */
.panic_button {
	display: block;
	background: linear-gradient(#758A94, #455A64);
	color:white;
	border-radius: 5px;
	padding: 10px;
	margin: 10px;
	text-align: center;
	cursor: pointer;
}

.panic_button:active {
	transform: translate(0px, 2px);
}

.common_button:active {
	transform: translate(0px, 2px);
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    white-space: nowrap;	
}

.no_under {
	text-decoration: none;
}


.big_picture_button {
	border: solid Silver;
	cursor: pointer;
	text-align: center;
}

.big_picture_button:hover {
	border: solid #455A64;
}

.big_picture_button:active {
	transform: translate(0px, 2px);
}

input[type=checkbox] {
  -ms-transform: scale(1.7); /* IE */
  -moz-transform: scale(1.7); /* FF */
  -webkit-transform: scale(1.7); /* Safari and Chrome */
  -o-transform: scale(1.7); /* Opera */
}

.disabled_button {
	display: block;
	background: grey;
	color:white;
	border-radius: 5px;
	padding: 10px;
	margin: 0px;
	text-align: center;
	cursor: default;
	
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    white-space: nowrap;		
}

.default_button {
	display: block;
	background: coral;
	color:white;
	border-radius: 5px;
	padding: 10px;
	margin: 0px;
	text-align: center;
	cursor: pointer;
}

.default_button:active {
	transform: translate(0px, 2px);
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    white-space: nowrap;	
}

input[type=checkbox].toggle_button {
   position: absolute;
   top: -9999px;
   left: -9999px;
   opacity: 0;
}

.toggle_label {
	display: inline-block;
	padding: 3px 10px;
	cursor: pointer;
	margin-left: 5px;
	border: solid 1px black;
}

/* Toggled State */
input[type=checkbox].toggle_button:checked + label {
   background: black;
   color: white;
}

input:focus {
    outline:none;
}

.dont-break-out {
	/* These are technically the same, but use both */
	overflow-wrap: break-word;
	word-wrap: break-word;

	-ms-word-break: break-all;
	/* This is the dangerous one in WebKit, as it breaks things wherever */
	word-break: break-all;
	/* Instead use this non-standard one: */
	word-break: break-word;

	/* Adds a hyphen where the word breaks, if supported (No Blink) */
	-ms-hyphens: auto;
	-moz-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
}
