* {
	margin: 0;
	padding: 0;
}

body {
  background: #fff;
	font-family: Arial, sans-serif;
	font-size: 14px;
}

header {
	background: #f0f0f0;
	border-bottom: 1px solid #000;
	display: block;
	padding: 5px;
}

header .toolbar {
	position: absolute;
	right: 17px;
	top: 17px;
}

.toolbar a {
	padding: 0 10px 0 0;
}

article,details {
	clear: none;
	display: block;
	float: none;
}

.small {
	font-size: 12px;
}

#logo {
	background: url('../pic/engelsystem_logo_30c3.png') top left no-repeat;
	display: block;
	float: left;
	height: 42px;
	margin: 0;
	width: 202px;
}

#menu {
	float: left;
	padding: 10px;
	width: 180px;
}

#menu p {
  padding: 4px;
}

#menu h4 {
	font-size: 14px;
	padding: 3px;
	text-transform: capitalize;
}

#menu ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#menu li a {
	display: block;
	padding: 3px;
}

#menu li a:hover, .toolbar a:hover {
	color: #900;
}

#menu li.selected a, .toolbar a.selected {
  color: #900;
	font-weight: bold;
}

#content {
	margin-left: 200px;
	padding: 10px;
}

a {
	color: #000;
}

th,td,dt,dd {
	padding: 4px;
	vertical-align: top;
}

dt {
	font-weight: bold;
}

dd {
	margin-left: 20px;
}

h1,h2,h3,h4 {
  font-size: 16px;
  padding: 3px;
}

h1 {
	font-size: 18px;
	margin-bottom: 10px;
}

hr {
	margin: 10px 0;
}

ul {
	padding: 5px 0 5px 20px;
}

nav {
	margin: 0 0 20px 0;
}

#content>article {
	padding: 3px;
}

#content h2 {
	margin-top: 15px;
}

#content h2:first-child {
	margin-top: 0;
}

p {
	padding: 0 0 10px 0;
}

a.sprache img {
	margin-right: 5px;
}

table {
	border-collapse: collapse;
	margin-top: 5px;
	display: block;
}

tr:hover > td {
  background-color: #f0f0f0;
}

#shifts {
	background-color: #fff;
}

#shifts td.free {
	background-color: #F6CECE;
}

#shifts td.occupied {
	background-color: #BCF5A9;
}

#shifts td.own {
	background-color: #CECEF6;
}

#shifts td.collides {
	background-color: #9B9B9B;
}

#shifts td.empty {
	border: 0;
}

table.scrollable {
	max-width: 100%;
	overflow: auto;
}

fieldset hr {
	background-color: #f0f0f0;
	border: none;
	color: #f0f0f0;
	height: 1px;
	margin: 0;
	padding: 0;
}

fieldset table {
	margin: 4px;
}

fieldset p {
	clear: both;
	margin: 4px;
	min-height: 23px;
}

fieldset p label {
	display: block;
	float: left;
	width: 200px;
}

fieldset p label[for] {
	width: auto;
}

fieldset p label input {
	float: right;
	margin: 2px 10px 0 0;
}

th {
	background: #f0f0f0;
}

thead th {
	vertical-align: bottom;
}

td,th {
	border: 1px solid #888;
}

th.Gekommen {
	/* this is a hack because the height of the row isn't adjusted automatically */
	height: 6em;
}

div.rotate {
	transform: rotate(270deg);
	width: 1ex;
	margin: 0 auto -2px;
	-webkit-transform: rotate(270deg);
	padding: 0 3px;
	white-space: nowrap;
}

textarea {
	font-family: inherit;
	font-size: inherit;
	height: 200px;
	padding: 2px;
	width: 300px;
}

.hidden {
	background: #fff;
	border: 1px solid #888;
	display: none;
	font-size: 12px;
	padding: 4px;
}

td .hidden {
	position: absolute;
}

tr:hover .hidden {
	display: block;
}

.clear {
	clear: both;
}

.pagination {
	text-align: center;
}

.error,.info,.success {
	background: #f0f0f0;
	border: 1px solid #888;
	border-radius: 2px;
	color: #000;
	margin-bottom: 10px;
	padding: 5px;
}

.error {
  background: #fff;
  border-color: #ed1a3b;
  color: #ed1a3b;
  font-weight: bold;
}

.success {
  background: #fff;
  border-color: rgb(0, 178, 107);
  color: rgb(0, 178, 107);
  font-weight: bold;
}

.new_message {
	font-weight: bold;
}

.news_comment,.news {
	border: 1px solid #888;
	margin: 10px 0;
}

.news_comment details,.news details {
	background: #f0f0f0;
	padding: 4px;
}

.news_comment p,.news p,h3 {
	padding: 4px;
}

.news_comment p,.news_comment details {
	margin-left: 72px;
}

.avatar {
	float: left;
	margin: 4px;
	max-width: 64px;
}

.news.meeting {
	border: 1px solid #000;
	box-shadow: 1px 1px 5px #888;
}

.done {
	text-decoration: line-through;
}

.form .form_input.spinner a {
	background: #f0f0f0;
	border: 1px solid #888;
	padding: 1px 5px;
	text-decoration: none;
}

.form .form_input.spinner input {
	border: 1px solid #888;
	border-left: none;
	border-right: none;
	padding: 3px 3px 1px 3px;
	margin: 0;
	text-align: right;
	width: 42px;
}

.toolbar {
	margin: 0 0 10px 0;
}

.actions a {
	background: 2px 1px no-repeat;
	padding-right: 5px;
}

a.button {
	background: #f0f0f0 2px 2px no-repeat;
	border: 1px solid #888;
	border-radius: 4px;
	line-height: 25px;
	padding: 2px 5px;
	text-decoration: none;
	white-space: nowrap;
}

.button.on {
	color: #fff;
	background: #444;
}

.button:hover, .toolbar .button:hover {
	color: #000;
	background-color: #fff;
}

.button.add, .actions .add {
  background-image: url('../pic/icons/add.png');
  padding-left: 20px;
}

.button.edit, .actions .edit {
  background-image: url('../pic/icons/pencil.png');
  padding-left: 20px;
}

.button.ok, .actions .ok {
	background-image: url('../pic/icons/tick.png');
	padding-left: 20px;
}

.button.cancel, .actions .cancel {
	background-image: url('../pic/icons/cross.png');
	padding-left: 20px;
}

.button.delete, .actions .delete {
	background-image: url('../pic/icons/bin.png');
	padding-left: 20px;
}

.button.back, .actions .back {
	background-image: url('../pic/icons/arrow_left.png');
	padding-left: 20px;
}

a.engel {
  background: url('../pic/icons/engel.png') no-repeat;
  padding-left: 20px;
}

a.logout {
  background: url('../pic/icons/door_in.png') no-repeat;
  padding-left: 20px;
}

a.settings {
  background: url('../pic/icons/application_form_edit.png') no-repeat;
  padding-left: 20px;
}

.form {
	border: 1px solid #888;
	border-radius: 2px;
	margin: 10px 0;
	padding: 10px 10px 0 10px;
}

.form_element {
	/* clear: left; */
	min-height: 32px;
	margin-bottom: 10px;
}

.form_label {
	display: block;
	float: left;
	width: 250px;
}

.form_input {
	margin-left: 250px;
}

.form input[type="text"],.form input[type="password"],.form textarea {
	background: #fff;
	border: 1px solid #888;
	color: inherit;
	font-family: inherit;
	font-size: inherit;
	padding: 2px;
	width: 350px;
}

.form input[disabled="disabled"] {
	background: #f0f0f0;
	color: #999;
}

.form input[type="submit"] {
	cursor: pointer;
	font-family: inherit;
	font-size: inherit;
}

.form input[type="checkbox"] {
	margin-right: 10px;
}

.form ul {
	list-style: none;
}

.selection ul {
	list-style: none;
	padding: 0;
}

.selection.rooms,.selection.days,.selection.types,.selection.filled {
	display: inline-block;
	vertical-align: top;
	margin-right: 15px;
}

.selection ul li.heading {
  text-align: center;
  font-weight: bold;
}

.selection ul li:nth-child(even) {
  background: #f0f0f0;
}

#filter {
	padding: 10px;
}

#filter input[type="submit"] {
	padding: 15px;
}

td .entries img {
	vertical-align: bottom;
}

td.time {
	text-align: right;
}