/* generell css */
html,
body {
	height: 100%;
}
body {
  margin:0px;
  display: flex;
  align-items: stretch;
  overflow: hidden;
}
body * {
  font-family: 'Roboto', sans-serif;
}
/* sidebar css */
aside {
  width: 240px;
  min-width: 240px;
  display: inline-block;
	position: relative;
}
aside:after {
  content: "";
	height: 100%;
	position: absolute;
	width: 4px;
	background: red;
	right: -1700px;
	top: 0;
}
aside .logoHolder {
  height: 47px;
  background-color: #554102;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  padding-left: 20px;
  position: relative;
  z-index: 100;
}
aside ul {
    list-style: none;
    padding:0;
}
aside .submenu_trigger > a { position: relative; }
aside .submenu_trigger > a:after {
		position: absolute;
		right: 8px;
		top: 9px;
		content: '';
		background-color: #727272;
		-webkit-mask-repeat:no-repeat;
    -webkit-mask-size: cover;
    -webkit-mask-position: center;
    mask-repeat:no-repeat;
    mask-size: cover;
    mask-position: center;
    width: 22px;
    height: 22px;
		-webkit-transition: -webkit-transform 380ms;
		transition: transform 380ms;
		mask-image: url(ikoner/baseline-keyboard_arrow_down-24px.svg);
    -webkit-mask-image: url(ikoner/baseline-keyboard_arrow_down-24px.svg);
}
aside .submenu_trigger.fold > a:after {
	transform: rotate(-180deg);
}
aside .sub-menu {
		height: 0;
		overflow: hidden;
		padding-top: 0;
		padding-bottom: 0;
		-webkit-transition: all .5s ease;
			 -moz-transition: all .5s ease;
						transition: all .5s ease;
}
aside .submenu_trigger.fold .sub-menu {
		height: auto;
		padding-top: 5px;
		padding-bottom: 5px;
}
aside ul li a, aside ul li a span {
    color: #212121;
    text-decoration: none;
    font-weight: 500;
}
aside li ul a {
    padding: 8px 10px 8px 72px;
    display: block;
    font: 400 13px/18px 'Roboto', sans-serif;
    color: #212121;
}
aside > ul > li > a {
    padding: 8px 20px;
    display: block;
    font: 500 14px/25px 'Roboto',sans-serif;
    color: #212121;
    display: flex;
    align-items: center;
}
aside .menu_icon {
    width: 48px;
    display: inline-block;
}
aside .menu_icon i {
    background-color: #07851a;
    -webkit-mask-repeat:no-repeat;
    -webkit-mask-size: cover;
    -webkit-mask-position: center;
    mask-repeat:no-repeat;
    mask-size: cover;
    mask-position: center;
    width: 24px;
    height: 24px;
    display: block;
}
.dashboard {
    mask-image: url(ikoner/baseline-dashboard-24px.svg);
    -webkit-mask-image: url(ikoner/baseline-dashboard-24px.svg);
}
.devices {
    mask-image: url(ikoner/baseline-devices-24px.svg);
    -webkit-mask-image: url(ikoner/baseline-devices-24px.svg);
}
.person_pin {
    mask-image: url(ikoner/baseline-person_pin-24px.svg);
    -webkit-mask-image: url(ikoner/baseline-person_pin-24px.svg);
}
.loyalty {
    mask-image: url(ikoner/baseline-loyalty-24px.svg);
    -webkit-mask-image: url(ikoner/baseline-loyalty-24px.svg);
}
.view_list {
    mask-image: url(ikoner/baseline-view_list-24px.svg);
    -webkit-mask-image: url(ikoner/baseline-view_list-24px.svg);
}
.chrome_reader_mode {
    mask-image: url(ikoner/baseline-chrome_reader_mode-24px.svg);
    -webkit-mask-image: url(ikoner/baseline-chrome_reader_mode-24px.svg);
}
.graphic_eq {
    mask-image: url(ikoner/baseline-graphic_eq-24px.svg);
    -webkit-mask-image: url(ikoner/baseline-graphic_eq-24px.svg);
}
.backup {
    mask-image: url(ikoner/baseline-backup-24px.svg);
    -webkit-mask-image: url(ikoner/baseline-backup-24px.svg);
}
.wb_incandescent {
    mask-image: url(ikoner/baseline-wb_incandescent-24px.svg);
    -webkit-mask-image: url(ikoner/baseline-wb_incandescent-24px.svg);
}
.assignment_turned_in {
    mask-image: url(ikoner/baseline-assignment_turned_in-24px.svg);
    -webkit-mask-image: url(ikoner/baseline-assignment_turned_in-24px.svg);
}
.settings_system_daydream {
    mask-image: url(ikoner/baseline-settings_system_daydream-24px.svg);
    -webkit-mask-image: url(ikoner/baseline-settings_system_daydream-24px.svg);
}
.business {
    mask-image: url(ikoner/baseline-business-24px.svg);
    -webkit-mask-image: url(ikoner/baseline-business-24px.svg);
}
.account_circle {
		mask-image: url(ikoner/baseline-account_circle-24px.svg);
		-webkit-mask-image: url(ikoner/baseline-account_circle-24px.svg);
}
.errorSvg {
		mask-image: url(error.svg);
		-webkit-mask-image: url(error.svg);
}
/* body css */
section {
  width: 100%;
  background: #ececec;
  height: 100%;
  min-height: 100%;
	display: flex;
	flex-direction: column;
}
section header {
  width: 100%;
  height: 47px;
	min-height: 47px;
  background: #1976d2;
  display: flex;
	flex-direction: column;
  justify-content: center;
  box-shadow: 0 3px 6px rgba(0,0,0,.16), 0 3px 6px rgba(0,0,0,.23);
  padding: 0 25px;
}
section header ul {
  display: flex;
	align-items: stretch;
	margin: 5px 0px 0px;
	list-style: none;
	position: fixed;
	right: 20px;
	top: 0px;
}
section header ul li a {
  color: white;
	text-decoration: none;
	display: flex;
	align-items: stretch;
	text-shadow: none;
  border: none;
  line-height: 44px;
  font-size: 14px;
  padding: 0 15px;
}
section header ul li a i {
	background-color: white;
	-webkit-mask-repeat:no-repeat;
	-webkit-mask-size: cover;
	-webkit-mask-position: center;
	mask-repeat:no-repeat;
	mask-size: cover;
	mask-position: center;
	width: 22px;
	height: 22px;
	display: block;
	margin-top:10px;
	margin-right: 5px;
}

section main {
  width: 100%;
  display: flex;
	flex-direction: column;
  justify-content: center;
}
section main img:not(#loader) {
	max-width: 100%;
	margin-left:15px;
  height: auto;
	display: none;
}
section main img:first-child:not(#loader) {
	display: block;
}
section main .errorSvg {
	background-color: #444;
	-webkit-mask-repeat:no-repeat;
	-webkit-mask-size: cover;
	-webkit-mask-position: center;
	mask-repeat:no-repeat;
	mask-size: cover;
	mask-position: center;
	width: 122px;
	height: 122px;
	display: block;
	margin-top:10px;
	margin-right: 5px;
}
section main #fallback {
	display: none;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	margin-top: 150px;
}
section main #fallback h2 {
	color: #444;
	display: block;
	width: 100%;
	text-align: center;
  font-weight: 400;
	font-size: 24px;
}
section main #loader {
	  height: auto;
    max-width: 40px;
    background: white;
    padding: 6px;
    border-radius: 100%;
    position: fixed;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    top: 200px;
		visibility: hidden;
}
