form#login div.tab-body fieldset {
	border: none;
}

form#login div.tab-body fieldset.login-box legend {
	display: none;
}

fieldset div.login-box.local div.field {
	margin-bottom: 1ex;
}

fieldset div.login-box.local div.field label {
	display:     block;
	font-weight: bold;
}

fieldset div.login-box.local div.field input.textfield {
	width:      100%;
	box-sizing: border-box;
}

fieldset div.login-box.local div.actions {
	text-align: right;
}

div#course-instances-wide table#instances tr.header {
	background-color: #D8D8D8;
}

div#course-instances-wide table#instances tr.body {
	cursor: pointer;
}

div#course-instances-wide table#instances tr.body:hover {
	background-color: lightyellow !important;
}

div#course-instances-wide table#instances tr.body.even {
	background-color: #F8F8F8;
}

div#course-instances-wide table#instances tr.body.odd {
	background-color: #E2E2E2;
}

div#course-instances-wide table#instances td.content {
	padding: 0 1ex;
}

div#course-instances-wide img.status-indicator {
	height: 1em;
}

div#course-instances-wide a {
	color:           inherit;
	text-decoration: none;
}

div#course-instances-large {
	display:               grid;
	grid-template-columns: repeat(auto-fit, minmax(30em, 1fr));
	gap:                   1ex;
}

div#course-instances-large a.course {
	display:         block;
	border:          1px solid darkgray;
	position:        relative;
	padding:         1ex 1ex 3ex 1ex;
	border-radius:   5px;
	background:      #F8F8F8 linear-gradient(#F0F0F0 0%, #F9F9F9 100%);
	color:           inherit;
	text-decoration: none;

}

div#course-instances-large a.course:hover {
	border:     1px solid yellow;
	background: #FFFFD9 linear-gradient(#FFFFCC 0%, #FFFFE6 100%);

}


div#course-instances-large a.course div.status {
	position: absolute;
	top:      1ex;
	right:    1ex;

}

div#course-instances-large a.course div.status img.status-indicator {
	height: 1.2em;
}

div#course-instances-large a.course div.date {
	font-size:   110%;
	font-weight: bold;
}

div#course-instances-large a.course div.title {
	font-size:   150%;
	font-weight: bold;
}

div#course-instances-large a.course div.days {
	position:   absolute;
	bottom:     1ex;
	font-style: italic;

}

div#course-instances-large a.course div.days-space {
	visibility: hidden;
}

div#categories {
	display:               grid;
	grid-template-columns: repeat(auto-fit, minmax(30em, 1fr));
	gap:                   1ex;
}

div.category-overview-wide {
	border:         1px solid darkgray;
	border-radius:  5px;
	vertical-align: top;
	overflow:       auto;
	position:       relative;
	padding-bottom: 26em;
	background:     #F8F8F8 linear-gradient(#F0F0F0 0%, #F9F9F9 100%);
}

div.category-overview-wide h3 {
	margin:  0;
	padding: 1ex

}

div.category-overview-wide p {
	padding: 0.5ex

}

div.category-overview-wide div.courses {
	position: absolute;
	height:   26em;
	overflow: auto;
	bottom:   0;
	width:    100%;
}


div#course-view div#instance-list {
	display:   flex;
	flex-wrap: wrap;
}


div#course-view div#instance-list div.instance {
	border:         1px solid darkgray;
	border-radius:  5px;
	width:          24em;
	position:       relative;
	display:        flex;
	flex-direction: column;
	margin:         0.5ex 0 0 0.5ex
}

div#course-view div#instance-list div.instance.clickable {
	cursor: pointer;
}

div#course-view div#instance-list div.instance div.header {
	background-color: #F8F8F8;
	border-radius:    5px 5px 0 0;
	border-bottom:    1px solid darkgray;
	padding:          5px;
	display:          flex;
}

div#course-view div#instance-list div.instance div.header div.title {
	text-align:  left;
	font-weight: bold;
	flex-grow:   1;
	white-space: nowrap;
}

div#course-view div#instance-list div.instance div.header div.status {
	text-align: right;
	font-size:  80%;
}

div#course-view div#instance-list div.instance div.body {
	padding:   5px;
	flex-grow: 1;
}

div#course-view div#instance-list div.instance div.body table {
	width: 100%;
}

div#course-view div#instance-list div.instance div.body table td.time {
	text-align: right;

}

div#course-view div#instance-list div.instance div.footer a.button {
	border:           1px solid #204D74;
	border-radius:    5px;
	padding:          5px;
	text-align:       center;
	display:          block;
	text-decoration:  none;
	margin:           2px;
	color:            #FFFFFF;
	background-color: #286090;
}

div#course-view a.marking {
	border:           1px solid #204D74;
	border-radius:    5px;
	padding:          5px;
	text-align:       center;
	display:          inline-block;
	text-decoration:  none;
	color:            #FFFFFF;
	background-color: #286090;
}

a.course-category-overview-entry {
	border:          1px solid darkgray;
	border-radius:   5px;
	padding:         3px;
	margin:          3px;
	display:         block;
	text-decoration: none;
	color:           inherit;
	background:      #F0F0F0 linear-gradient(#E8E8E8 0%, #F0F0F0 100%);

}

a.course-category-overview-entry.draft {
	border:     1px solid red;
	background: #FAAFAF linear-gradient(#FAAFAF 0%, #FACDCD 100%);
}

a.course-category-overview-entry.review {
	border:     1px solid orange;
	background: #FADBAF linear-gradient(#FADBAF 0%, #FAE2C1 100%);
}

a.course-category-overview-entry:hover {
	background:   #3746FF linear-gradient(#77C1FF 0%, #4AADFF 100%);
	border-color: blue;
}

a.course-category-overview-entry div.header {
	display: flex;
}

a.course-category-overview-entry div.header div.info {
	margin-left: 1em;
	padding:     2px 0;
}

a.course-category-overview-entry div.header div.info span {
	display: block;
}

a.course-category-overview-entry div.header div.info img.gender {
	height: 1em;
}

a.course-category-overview-entry div.header div.info span.label {
	font-size:   70%;
	font-weight: bold;
	color:       darkgray;
}


a.course-category-overview-entry div.header div.title {
	flex-grow:   1;
	font-weight: bold;
}

a.course-category-overview-entry:hover {
	text-decoration: none;
	color:           inherit;
}

div#course-view div.content h2 {
	border-bottom: 1px solid darkgray;
}

div#course-view div.content {
	flex-grow: 1;
}

div#course-view div.content p {
	max-width: 60em;
}

div#course-view div.content div dt {
	font-weight: bold;
}

div#portlet-price div.content {
	padding: 3px;
}

div#portlet-price table#price-table {
	width: 100%;
}

div#portlet-price table#price-table th.title {
	text-align: left;
}

div#portlet-price table#price-table td.value {
	text-align: right;
}

div#portlet-price table#price-table td.line {
	border:           1px solid darkgray;
	background-color: black;
}

div#portlet-evaluations div.evaluations-box div.category {
	padding: 3px;
}

div#portlet-evaluations div.evaluations-box div.category.even {
	background-color: #E2E2E2;
}

div#portlet-evaluations div.evaluations-box div.category.odd {
	background-color: #F8F8F8;
}

div#form-space {
	display: flex;
}

div#form-space div#subscribe-form-information {
	flex-grow:   1;
	margin-left: 1em;
}

div#form-space form.deform {
	flex-grow: 1;
	max-width: 60em;
}

div#subscribe div.item-mandate label.control-label {
	display: none;
}

div#subscribe div.item-flags label.control-label {
	display: none;
}

div#subscribe div.item-asb label.control-label {
	display: none;
}

div.info-table {
	display:         table;
	border-spacing:  5px 1px;
	border-collapse: separate;
}

div.info-table div.entry {
	display: table-row;
}

div.info-table div.entry div.title {
	display:     table-cell;
	font-weight: bold;
}

div.info-table div.entry div.info {
	display: table-cell;
}

div#subscribe-confirm div#subscriber pre {
	background-color: inherit;
	border:           none;
	margin:           inherit;
	padding:          inherit;
	font:             inherit;
}

table#statistic-table {
	border: 2px outset darkgray;
}

table#statistic-table td {
	border:     2px inset darkgray;
	padding:    2px;
	text-align: center;
}

table#statistic-table th {
	border:  2px inset darkgray;
	padding: 2px;
}

input.course-price-part {
	text-align: right;
	width:      6em;
}

input.course-price-part:after {
	content: "€";
}

div.checkbox-choice-multicolumn {
	display:        flex;
	flex-wrap:      wrap;
	flex-direction: column;
}

div.checkbox-choice-multicolumn label {
	font-weight:   inherit;
	margin-bottom: 0;
}

div.item-categories div.checkbox-choice-multicolumn {
	max-height: 10em;
}

div#course-evaluation-view div.evaluations-box {
	display:   flex;
	flex-wrap: wrap;
}

div#course-evaluation-view div.evaluations-box div.category {
	width:            24em;
	padding:          5px;
	border:           1px solid darkgray;
	border-radius:    5px;
	background-color: #E2E2E2;
	margin:           1ex 0 0 1ex;
}


div.evaluations-box div.category div.category-header {
	display: flex;
}

div.evaluations-box div.category div.category-header div.category-title {
	flex-grow:   1;
	font-weight: bold;
	margin:      0.5ex 0 0 0.5ex
}

div.evaluations-box div.category div.category-body div.graph-bars-vertical {
	display:     flex;
	align-items: flex-end;

}

div.evaluations-box div.category-body div.graph-bars-vertical div.bar {
	flex-grow:  1;
	flex-basis: 10px;
	margin:     0.5ex 0 0 0.5ex
}

div.evaluations-box div.category div.category-body div.graph-bars-vertical div.bar div.gfx {
	border: 1px solid darkgray;
}

div.evaluations-box div.category div.category-body div.graph-bars-vertical div.bar div.value {
	text-align: center;
}

div.evaluations-box div.category div.category-body div.graph-bars-vertical div.bar div.bar-title {
	text-align: center;
}

div.evaluations-box div.content div.evaluation-infos {
	background-color: #D8D8D8;
}

div.evaluations-box div.content div.evaluation-infos span#evaluation-legend {
	font-size:  80%;
	display:    block;
	text-align: center;
}

div.comment-box div.comment {
	margin-top: 1em;
}

div.comment-box div.comment div.name {
	font-weight: bold;
}

/* instance view */
div#instance-view table#participants {
	background-color: black;
}

div#instance-view table#participants th,
div#instance-view table#participants td {
	padding:        1px 3px;
	vertical-align: baseline;
}

div#instance-view table#participants tr.header {
	background-color: #9D9D9D;
	color:            white;
}

div#instance-view table#participants tr.body.even {
	background-color: #F0F0F0;
}

div#instance-view table#participants tr.body.odd {
	background-color: #F8F8F8;
}

div#instance-view table#participants td.participation-indicator {
	padding: initial;
}

div#instance-view table#participants td.participation-indicator img {
	height: 1.2em;
	margin: 1px;
}

div#instance-view table#participants tr.body td.contact-list {
	display:               grid;
	grid-template-columns: 1.5em 1fr;
}

div#instance-view table#participants tr.body td.contact-list img.contact.icon {
	height: 1.2em;
	margin: 1px;
}

div#instance-view table#participants tr.body img.icon {
	height: 1.2em;
	margin: 1px;
}

