@font-face {
	font-family: 'Droid Sans';
	font-style: normal;
	font-weight: 400;
	src: local('Droid Sans'), local('DroidSans'), url(../fonts/DroidSans.ttf) format('truetype');
}

@font-face {
	font-family: 'Droid Sans';
	font-style: normal;
	font-weight: 700;
	src: local('Droid Sans Bold'), local('DroidSans-Bold'), url(../fonts/DroidSans-Bold.ttf) format('truetype');
}

body {
	background: white;
	color: black;
	margin: 0;
	padding: 0;
	font-family: 'Droid Sans', sans-serif;
	font-size: 12pt;
}

#content {
	padding: 0;
	margin: 1.5em 0;
}

#top-nav {
	background: #eee;
	color: black;
}

#top-nav ul.main-nav {
	margin: 0 -0.75em;
	padding: 0;
	list-style-type: none;
}

.main-wrapper {
	margin: 0 1.5em;
}

#top-nav li.main-nav-item {
	display: inline-block;
}

#top-nav li input,
#top-nav li.main-nav-item a {
	color: black;
	display: inline-block;
	margin-bottom: 3px;
	text-decoration: none;
}

#top-nav li.main-nav-item a {
	padding: 0.2em 0.75em;
	outline: 0;
}

#top-nav li.main-nav-item a:focus,
#top-nav li.main-nav-item a:hover {
	color: firebrick;
	border-bottom: 3px solid firebrick;
	margin-bottom: 0;
}

#top-nav li.safety {
	float: right;
}
#top-nav li.safety ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
#top-nav li.safety li {
	display: inline-block;
}
#top-nav li.safety a {
	display: inline-block;
	width: 20px;
	height: 20px;
	border: 1px solid black;
}
#top-nav li.safety span {
	display: none;
}
#top-nav li.safety .safety-safe .enabled { background: lime; }
#top-nav li.safety .safety-safe .disabled { background: green; }
#top-nav li.safety .safety-sketchy .enabled { background: yellow; }
#top-nav li.safety .safety-sketchy .disabled { background: olive; }
#top-nav li.safety .safety-unsafe .enabled { background: red; }
#top-nav li.safety .safety-unsafe .disabled { background: maroon; }

#top-nav li.search {
	float: right;
	background: white;
	margin: 0 0.25em;
}
#top-nav li.search input {
	border: 0;
}

footer {
	text-align: center;
	margin-top: 1em;
	padding-top: 0.5em;
	border-top: 1px solid #eee;
	font-size: small;
	color: silver;
}

.clear {
	display: block;
	clear: both;
}

#sidebar {
	float: left;
	width: 256px;
	margin-right: 2em;
}
#sidebar .sidebar-unit {
	margin: 0 0 1.5em 0;
	padding: 0.75em;
	border: 1px solid #eee;
	padding-left: 0;
	border-left: 0;
}
#sidebar h1 {
	margin-top: 0;
}


#sidebar .key {
	padding-right: 0.5em;
}
#sidebar .key-value {
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#inner-content {
	overflow: hidden;
}

h1, h2, h3 {
	font-weight: normal;
}

p:first-child,
h1:first-child {
	margin-top: 0;
}

hr {
	background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAAIElEQVQYlWNgQAPv3r37j4wHXBJdATY5BnyScAX4TAUAdfp5IbOdz/YAAAAASUVORK5CYII=');
	border: 0;
	height: 4px;
}

a {
	color: firebrick;
	text-decoration: none;
	outline: 0;
}
a:focus,
a:hover {
	color: red;
}

i[class*='icon-'] {
	background-image: url('../img/icons.png');
	background-repeat: no-repeat;
	display: inline-block;
}
a i[class*='icon-'] {
	background-color: firebrick;
}
a:focus i[class*='icon-'],
a:hover i[class*='icon-'] {
	background-color: red;
}

form.aligned input,
form.aligned button {
	vertical-align: text-top;
}
form.aligned label {
	text-align: right;
	vertical-align: middle;
}
form.aligned label.left {
	display: inline-block;
	padding-right: 1em;
	width: 5em;
	min-height: 1em;
	float: left;
}
form.aligned>div {
	margin-bottom: 0.5em;
	clear: left;
}
form.aligned label,
form.aligned input,
form.aligned select,
form.aligned button {
	vertical-align: middle;
	line-height: 20px;
}
form.aligned label,
form.aligned input,
form.aligned select {
	padding: 5px;
}
form.aligned input[type=file] {
	padding: 5px 0;
}
form.aligned input[type=radio],
form.aligned input[type=checkbox] {
	vertical-align: text-top;
}

label {
	display: inline-block;
}
label,
input,
select,
button {
	font-family: inherit;
	font-size: 11pt;
}
select,
input:not([type=radio]):not([type=checkbox]):not([type=file]) {
	border: 1px solid #ccc;
}
ul.tagit input {
	border: 0 !important;
}
button {
	font-size: 115%;
	padding: 0.2em 0.7em;
	color: white;
	background: cornflowerblue;
	border: 0;
}
button:hover {
	background-color: royalblue;
	cursor: pointer;
}


.alert {
	text-align: center;
	padding: 10px;
	border-style: solid;
	border-width: 1px;
	max-width: 500px;
	margin: 0 auto;
}

.alert-success {
	border-color: #aba;
	background-color: #aea;
}
.alert-error {
	border-color: #faa;
	background-color: #fdd;
}

.alert-warning {
	border-color: #ffa;
	background-color: #ffd;
}

.inactive {
	opacity: .5;
}