/*
.ng-scope{
  height: 100%;
}
*/
html {
  font-size: 62.5%;
  line-height: 1.4;
}
body {
  font-size: 1.6rem;
}
a, a:focus, a:hover {
    color: #23527c;
    text-decoration: none;
}
.md-toolbar-tools a{
	color: currentColor;
}
a.md-button:hover{
	color: currentColor;
}
md-sidenav, md-sidenav.md-locked-open-add-active, md-sidenav.md-locked-open {
    width: 200px;
    min-width: 200px;
    max-width: 200px;
}
.md-button, .md-tab {
 text-transform: none;	
}
dl{
	margin:0px;
}
table {
    border-spacing: 0px;
    border-collapse: collapse;
    box-sizing: border-box;
}
th{
	text-align: left;
}
.table > tbody > tr > td, 
.table > tbody > tr > th, 
.table > tfoot > tr > td, 
.table > tfoot > tr > th, 
.table > thead > tr > td, 
.table > thead > tr > th {
    padding: 8px;
    border-top: 1px solid #DDD;
}

.table-striped > tbody > tr:nth-of-type(2n+1) {
    background-color: #e8eaf6;	//currently: indigo palette, blue: #e3f2fd, twb: #F9F9F9
}

.table-hover > tbody > tr:hover {
  background-color: rgb(220,220,220);
  cursor:pointer;
}

dt:not(:first-child) {
    padding-top: 8px;
}

.widget {
    background: #fff;
    margin: 8px; 
}

.widget-content > table {
    width: 100%;
    max-width: 100%;
    margin-bottom: 24px;
    border-spacing: 0;
    border-collapse: collapse;
}

.widget-content > table > tbody > tr:nth-of-type(2n+1){
	background-color: #e8eaf6;
}

.widget-content > table.table-hover > tbody > tr:hover {
  background-color: rgb(220,220,220);
  cursor:pointer;
}

.widget-content > table > thead > tr > th {
	padding: 8px;
	line-height: 24px;	
    vertical-align: bottom;
    border-bottom: 1px solid rgba(0, 0, 0, 0.12);
    text-align: left;
}
.widget-content > table > tbody > tr > td{
    padding: 8px;
    line-height: 24px;
    vertical-align: top;
}

.widget .widget-title .md-subhead{
	margin: 0;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: .01em;
    line-height: 24px;
}
.widget .widget-title .md-body-1, .widget .widget-title .md-body-2 {
    opacity: .5;
}
.widget .widget-title .md-body-1{
	margin: 0;
}

.dl-horizontal dt {
    float: left;
    width: 140px;
    overflow: hidden;
    clear: left;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
    padding-top: 0px;
	font-weight: 500;
	letter-spacing: .010em;  
	color: rgba(0,0,0,0.54);  
}
.dl-horizontal dd {
    margin-left: 160px;
}

.dl-horizontal dd:after {
   clear: both;
 }
.dl-horizontal dd:before,
.dl-horizontal dd:after {
	display: table;
	content: " ";
 }
 
/* Rules for sizing the icon. */
.material-icons.md-18 { font-size: 18px; }
.material-icons.md-24 { font-size: 24px; }
.material-icons.md-36 { font-size: 36px; }
.material-icons.md-48 { font-size: 48px; }

/* Rules for using icons as black on a light background. */
.material-icons.md-dark { color: rgba(0, 0, 0, 0.54); }
.material-icons.md-dark.md-inactive { color: rgba(0, 0, 0, 0.26); }

/* Rules for using icons as white on a dark background. */
.material-icons.md-light { color: rgba(255, 255, 255, 1); }
.material-icons.md-light.md-inactive { color: rgba(255, 255, 255, 0.3); }

.slim .md-subheader .md-subheader-inner{
	padding: 0px;
}

.slim md-list-item{
	padding: 0px;
	margin: 0px;
	min-height: 36px;
	height: 36px;
}

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

.attendance_open{
	border-left:8px solid #ffeb3b;
}
.attendance_present{
	border-left:8px solid #76ff03;
}
.attendance_absent{
	border-left:8px solid #f44336;
}
.attendance_excused{
	border-left:8px solid #ff9800;
}

.pace {
  -webkit-pointer-events: none;
  pointer-events: none;

  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.pace-inactive {
  display: none;
}

.pace .pace-progress {
  background: rgb(255, 171, 64);
  position: fixed;
  z-index: 2000;
  top: 0;
  right: 100%;
  width: 100%;
  height: 2px;
}
.warn{
	color: rgb(255, 87, 34);
}

/*Pagination*/
.pagination {
    display: inline-block;
    padding-left: 0;
    margin: 20px 0;
    border-radius: 4px;
    margin-top: 10px;
    margin-bottom: 10px;  
    box-sizing: border-box;  
}
.pagination > li {
    display: inline;
}
.pagination > li:first-child > a, .pagination > li:first-child > span {
    margin-left: 0;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}

.pagination > li:first-child > a, .pagination > li:first-child > span {

    margin-left: 0;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;

}
.pagination > li > a, .pagination > li > span {
    position: relative;
    float: left;
    padding: 6px 12px;
    margin-left: -1px;
    line-height: 1.42857143;
    color: #3f51b5;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid #ddd;
}
.pagination > .active > a, .pagination > .active > a:focus, .pagination > .active > a:hover, .pagination > .active > span, .pagination > .active > span:focus, .pagination > .active > span:hover {
    z-index: 3;
    color: #fff;
    cursor: default;
    background-color: #3f51b5;
    border-color: #3f51b5;
}

/* Streamline */
.m-b {
    margin-bottom: 16px;
}
.b-l {
    border-left: 1px solid #dddee0;
}
.streamline {
    position: relative;
    border-color: #dddee0;
}
.sl-item {
    position: relative;
    padding-bottom: 1px;
    border-color: #dddee0;
}
.sl-content {
    padding-bottom: 10px;
    margin-top: -6px;
    margin-left: 24px;
}
.text-muted-dk {
    color: inherit;
    opacity: .5;
}
.sl-item::before, .sl-item::after {
    display: table;
    content: " ";
}
.streamline .sl-item::after, .streamline::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 11px;
    height: 11px;
    margin-left: -6px;
    background-color: #fff;
    border-color: inherit;
    border-style: solid;
    border-width: 2px;
    border-radius: 50%;
    content: '';
}
.sl-item::after {
    top: 0;
    bottom: auto;
}
.sl-item::after {
    clear: both;
}
.sl-item::before, .sl-item::after {
    display: table;
    content: " ";
}
*::before, *::after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
.sl-content p {
    margin: 0 0 10px;
}
.b-success {
    border-color: #4caf50;
}
.b-info {
    border-color: #2196f3;
}
.sl-item.sl-item-md .sl-icon {
    top: -10px;
}
.sl-icon {
    position: absolute;
    left: -15px;
    z-index: 1;
}
.b-warning {
    border-color: #ffc107;
}

/* Kurs�bersicht */
div.courseWeekRow:nth-of-type(2n+1){
    background-color: #e8eaf6;	/*currently: indigo palette, blue: #e3f2fd, twb: #F9F9F9	*/
}
div.courseWeekCourse{
 border-left:1px solid #999;
 border-right:1px solid #999;
 padding-left:2px;
 padding-right:2px;
}
.open{
	border-bottom: 3px solid rgb(182, 255, 0);
}
.full{
	border-bottom: 3px solid rgb(255, 146, 1);
}
.overload{
	border-bottom: 3px solid rgb(183, 37, 0);
}

md-list-item.striped:nth-of-type(2n+1){
	background-color: #e8eaf6;
}
/* Kontakt-�bersicht */
md-list.contact-index md-list-item{
	min-height: 24px;
}
md-list.contact-index md-list-item:nth-of-type(2n+1){
	background-color: #e8eaf6;
}
md-list.contact-index md-list-item a.md-button{
	margin: 0px;
}
.text-right {
    text-align: right;
}
.text-center {
    text-align: center;
}
.text-left {
    text-align: left;
}
.no-padding {
    padding: 0px;
}
.no-margin {
    margin: 0px;
}
.max-member-border{
	border-bottom: 1px solid #ef9a9a;
}

div.striped:nth-of-type(2n+1){
	background-color: #e8eaf6;
}
th > md-input-container{
	margin: 0px;
}
.strong{
	font-weight: 700;
}
md-toast.toast-error .md-toast-content{
	background-color: #b71c1c;
}
md-toast.toast-success .md-toast-content{
	background-color: #1b5e20;
}
.last-md-tab {
  width: 150px;
}

table.course-gantt{
	border-collapse: separate;
}
table.course-gantt > tbody{
	border: 1px solid black;
}
.course-gantt td{
	/*border-left: 1px solid grey;*/
	border-right: 1px solid grey;
	font-size: 13px;
	padding-left: 4px;
	padding-right: 4px;
	
	width:35px;
	min-width:35px;
	max-width:35px;
	overflow:hidden;
}
.course-gantt tr.divider td{
	border-top: 1px solid black;
}
.course-gantt div.left{
	width: 60%; float: left; text-align: left;
}
.course-gantt div.right{
	width: 40%; float: left; text-align: right;
}
table.course-gantt > tbody > tr:last-child > td { 
	border-bottom: 1px solid black;
}
table.course-gantt > tbody > tr > td:first-child { 
	border-left: 1px solid black;
}
.highlight td{
	background-color: #f57c00;
}
.course-caption{
	color:inherit; 
	font-size:1.4rem;
}
.tab-has-error{
	color: red;
}

[ng-click],
[data-ng-click],
[x-ng-click] {
    cursor: pointer;
}
.doc-template:hover{
	color:#f00;
}

.demo-menu-example {
  background: white;
  border-radius: 4px;
  box-shadow: 0 7px 8px -4px rgba(0, 0, 0, 0.2),
      0 13px 19px 2px rgba(0, 0, 0, 0.14),
      0 5px 24px 4px rgba(0, 0, 0, 0.12);
  width: 350px;
}

table > tbody > tr > td > a{
	display : block;
}

md-icon svg {
  fill: inherit;
}

.tb-blue-background {
	background: #e8eaf6;
}

.tb-white-background {
	background: white;
}

.icas-fab {
	position: fixed;
	bottom: 20px;
	right: 20px;
}

table > thead > tr > th {
	color: rgba(0,0,0,0.54);
	font-weight: 500;
	font-size: 14px;
}

md-card md-card-header md-card-header-text .md-title{
	font-size: 16px;
	font-weight: 400;
}

#calendarModule_menu {
    width: 50%;
    margin: 0 auto;
    text-align: center;
}

#calendarModule_content {
    margin: 0px;
}

#calendarModule_calendar {
    width: 100%;
    height: auto;
    margin: 0 auto;
    background: white;
    text-align: center;
    word-wrap: break-word;
    word-break: break-all;
}

.calendarModule_calendar_month_item {
    min-height: 50px;
    text-align: left;
    margin: 2px;
    padding: 2px;
}

.calendarModule_calendar_month_item:hover {
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.calendarModule_disabled {
    pointer-events: none;
    opacity: 0.2;
}

.calendarModule_calendar_month_item_element {
    width: 100%;
    text-align: left;
    cursor: pointer;
}

.calendarModule_calendar_month_item_mobile {
    width: 100%;
    text-align: left;
    cursor: pointer;
    margin-top: 2px;
    margin-bottom: 2px;
}

.calendarModule_calendar_month_vertical_spacer {
	height: 100px;
	background: rgb(250,250,250);
}

.calendarModule_calendar_month_item_element:hover {
    color: white;
    background-color: #536DFE;
}

.calendarModule_calendar_month_date {
    color: #3F51B5;
    margin-left: 4px;
    margin-right: 5px;
    margin-top: 4px;
    margin-bottom: 4px;
}

.calendarModule_calendar_month_date_with_items {
    color: #3F51B5;
    margin-left: 4px;
    margin-right: 5px;
    margin-top: 4px;
    margin-bottom: 4px;
    font-weight: bold;
}

.calendarModule_calendar_month_caption {
    background-color: #3F51B5;
    color: white;
}

#calendarModule_calendar_month_title {
    color: white;
}

.calendarModule_calendar_month_day_caption {
    background-color: #536DFE;
    color: white;
    padding-top: 10px;
    padding-bottom: 10px;
}

.calendarModule_calendar_month_week_nr {
    background-color: #536DFE;
    color: white;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 10px;
    padding-left: 10px;
    cursor: pointer;
    width: 20px;
}

.calendarModule_calendar_month_week_nr_no_hover {
    background-color: #536DFE;
    color: white;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 10px;
    padding-left: 10px;
    width: 20px;
}

.calendarModule_calendar_month_week_nr:hover {
    background-color: #3F51B5;
}

.calendarModule_calendar_month_time {
	background: #81D4FA;
	color: #000000;
	height: 100%;
	border-radius: 4px;
	margin-right: 2px;
}

.calendarModule_calendar_month_time_mobile {
	background: #81D4FA;
	color: #000000;
	height: 100%;
	border-radius: 4px;
	margin-left: 2px;
	margin-right: 2px;
}

.calendarModule_calendar_week_background {
    background-color: white;
}

.calendarModule_calendar_week_caption {
    background-color: #3F51B5;
    color: white;
}

.calendarModule_calendar_week_title {
    background-color: #536DFE;
    color: white;
    padding-top: 10px;
    padding-bottom: 10px;
}

.calendarModule_calendar_week_date {
    background-color: white;
    color: #3F51B5;
    padding-top: 10px;
    padding-bottom: 10px;
}

.calendarModule_calendar_week_hour {
    background-color: #536DFE;
    color: white;
    padding-top: 4px;
    padding-bottom: 4px;
    padding-left: 4px;
    padding-right: 4px;
}

.calendarModule_calendar_week_item {
    background-color: white;
    color: black;
    padding-top: 4px;
    padding-bottom: 4px;
    padding-left: 4px;
    padding-right: 4px;
    text-align: left;
    cursor: pointer;
}

.calendarModule_calendar_week_item:hover {
    background-color: #536DFE;
    color: white;
}

.calendarModule_calendar_week_column {
    border-top: dashed #536DFE 1px;
}

.calendarModule_calendar_week_title_row {
    border-right: dashed white 1px;
}

.calendarModule_calendar_week_item_row {
    border-right: dashed #536DFE 1px;
}

.calendarModule_calendar_day_caption {
    background-color: #3F51B5;
    color: white;
}

.calendarModule_calendar_day_title {
    background-color: #536DFE;
    color: white;
    padding-top: 10px;
    padding-bottom: 10px;
    text-align: center;
}

.calendarModule_calendar_day_item {
    background-color: white;
    color: black;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 10px;
    padding-right: 10px;
    text-align: left;
    cursor: pointer;
}

.calendarModule_calendar_day_item:hover {
    color: white;
    background-color: #536DFE;
}

.calendarModule_calendar_day_column {
    border-top: dashed #536DFE 1px;
}

.calendarModule_list_view_desktop {
	position: fixed;
	right: 0px;
	left: 0px;
	bottom: 0px;
	top: 130px;
}

.calendarModule_list_view_smartphone {
	position: fixed;
	right: 0px;
	left: 0px;
	bottom: 0px;
	top: 180px;
}

.calendarModul_icon_margin {
	margin-left: 10px;
	margin-right: 10px;
}

.pre{
  white-space: pre;
}

.white-bg {
	background-color: white;
}

 md-nav-bar .md-button._md-nav-button.md-active{
 	color: rgb(63,81,181);
 }
 
 .sidebar-title-image {
 	background-image: url(/img/splash1-min.jpg);
 	background-size: cover;
 	height: 88px;
 }
 
em{
 	text-decoration: underline;
 	font-style:normal;
}
em em{
 	font-style:normal;
 	color: red;
}

/* 
 Responsive tables (vertical)

 Wrap your tables in `.table-responsive-vertical` and we'll make them mobile friendly
 by vertical table-cell display. Only applies <768px. Everything above that will display normally.
 For correct display you must add 'data-title' to each 'td'
*/
@media screen and (max-width: 768px) {
  .table-responsive-vertical > .table {
    margin-bottom: 0;
    background-color: transparent;
  }
  .table-responsive-vertical > .table > thead,
  .table-responsive-vertical > .table > tfoot {
    display: none;
  }
  .table-responsive-vertical > .table > tbody {
    display: block;
  }
  .table-responsive-vertical > .table > tbody > tr {
    display: block;
    border: 1px solid #e0e0e0;
    border-radius: 2px;
    margin-bottom: 1.6rem;
  }
  .table-responsive-vertical > .table > tbody > tr > td {
    background-color: #fff;
    display: block;
    vertical-align: middle;
    text-align: right;
  }
  .table-responsive-vertical > .table > tbody > tr > td[data-title]:before {
    content: attr(data-title);
    float: left;
    font-size: inherit;
    font-weight: 400;
    color: #757575;
  }
  .table-responsive-vertical.shadow-z-1 {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
  }
  .table-responsive-vertical.shadow-z-1 > .table > tbody > tr {
    border: none;
    -webkit-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.12), 0 1px 2px 0 rgba(0, 0, 0, 0.24);
    -moz-box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.12), 0 1px 2px 0 rgba(0, 0, 0, 0.24);
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.12), 0 1px 2px 0 rgba(0, 0, 0, 0.24);
  }
  .table-responsive-vertical > .table-bordered {
    border: 0;
  }
  .table-responsive-vertical > .table-bordered > tbody > tr > td {
    border: 0;
    border-bottom: 1px solid #e0e0e0;
  }
  .table-responsive-vertical > .table-bordered > tbody > tr > td:last-child {
    border-bottom: 0;
  }
  .table-responsive-vertical > .table-striped > tbody > tr > td,
  .table-responsive-vertical > .table-striped > tbody > tr:nth-child(odd) {
    background-color: #fff;
  }
  .table-responsive-vertical > .table-striped > tbody > tr > td:nth-child(odd) {
    background-color: #f5f5f5;
  }
  .table-responsive-vertical > .table-hover > tbody > tr:hover > td,
  .table-responsive-vertical > .table-hover > tbody > tr:hover {
    background-color: #fff;
  }
  .table-responsive-vertical > .table-hover > tbody > tr > td:hover {
    background-color: rgba(0, 0, 0, 0.12);
  }
}

.table-overflow {
	overflow-x: auto;
	overflow-y: hidden;
	overflow: -moz-scrollbars-none;
	padding: 0px;
}

md-list.zebra md-list-item:nth-of-type(2n+1){
	background-color: #e8eaf6;
}
div.zebra:nth-child(odd) {
    background-color: #e8eaf6;
}

.dialog-datepicker {
	margin-top: 16px;
	margin-left: -14px;
}

.card-header-max-height {
	max-height: 60px;
}

/* Animationen aus */
* {
    -webkit-transition: none !important;
    transition: none !important;
}

.header-menu-button-position {
	margin-right: -10px;
}

.card-wordwrap {
	word-wrap: break-word;
}

body.dark_theme{
    font-family: Arial, Helvetica, sans-serif; 
}
body.dark_theme md-content.md-default-theme, body.dark_theme md-content {
    color: rgba(0,0,0,1);
    background-color: rgb(240,240,240);
}


body.dark_theme .dl-horizontal dt{
    color: rgba(0,0,0,1);
}

body.dark_theme .md-body-1, body.dark_theme table > thead > tr > th{
    color: rgba(0,0,0,1);
}

body.dark_theme md-card.md-default-theme, body.dark_theme md-card, body.dark_theme md-tabs .md-tab,
body.dark_theme md-nav-bar .md-button._md-nav-button.md-unselected,
body.dark_theme md-list .md-subheader,
body.dark_theme md-input-container .md-input,
body.dark_theme md-input-container label,
body.dark_theme md-input-container.md-input-has-value label{
    color: rgba(0,0,0,1); 
}

body.dark_theme sidenote{
    background-color: rgb(225,225,225);
}

body.dark_theme sidenote span.md-subhead{
   font-weight: bold;
}

body.dark_theme md-card-header{
    background-color: #3f51b5;
    /*background-color: #303f9f;*/
    color: #ffffff; 
}

body.dark_theme md-card-header md-icon{
    color: inherit;
}

body.dark_theme md-card md-card-header md-card-header-text .md-subhead{
    color: #ffffff;
}

body.dark_theme note-collection md-input-container label{
    color: #ffffff;
}

body.dark_theme md-tabs .md-tab.md-active,
body.dark_theme md-nav-bar .md-button._md-nav-button.md-active,
body.dark_theme md-tabs .md-tab{
    font-weight: bold;
}

body.dark_theme md-list{
    background-color: #ffffff;
}

body.dark_theme table > tbody > tr > td > a {
    color: #000000;
    text-decoration: none;
}

body.dark_theme .widget-title{
    font-weight: bold;
}

body.dark_theme .widget .widget-title .md-subhead{
    font-weight: bold;    
}

body.dark_theme note-collection .table-hover > tbody > tr:hover {
    background-color: #ffffff;
    border: 2px solid black;
    cursor:pointer;
}

body.dark_theme md-dialog-actions button{
    font-weight: bold;
}

md-card-header.default-card-header{
    color: rgba(0, 0, 0, 0.87);
    background-color: rgb(140, 158, 255);
}
