div {
    box-sizing: border-box;
}
body {
	background: #eee;
	font-family: covik-sans-mono, sans-serif;
}
div.menu {
    background: #fff;
    min-height: 3rem;
}
div.main {
    background: #fff;
    padding: 4rem;
}
div#head {
    background: #eee;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 2rem 2rem 0.5rem;
    height: 11rem;
}
#head h1 {
	width: 240px;
	height: 51px;
	display: inline;
	float: left;
	margin: 3px 0 0 39px;
	background: transparent url('gfx/lumme-energia.svg') no-repeat left top;
}

#head h1
{
	display: block;
	cursor: pointer;
	width: 238px;
	height: 61px;
	text-indent: -9999px;
}
.footer {
	text-align: right;
	background: #fff;
	padding: 1rem 2rem;
	color: #888;
}
.Box {
	margin: 2rem 0;
}
.Box>div:first-child {
	color: #556469;
	background: #C0E300;
	padding: 1rem 2rem;
	font-size: 2rem;
}
.Box>div:last-child {
    background: #eee;
	padding: 3rem 4rem;
}
.Box form { margin: 0; }
.Box .button-primary {
	margin-top: 2rem;
}
.Notice {
	font-size: 1.8rem;
	color: #f00;
}
.menu {
	display: flex;
	flex-wrap: wrap;
	padding: .5rem 2rem;
	border-bottom: solid 1px #eee;
}
.menu > a {
	padding: 1rem 1.2rem;
	font-weight: 700;
	color: #000;
	text-decoration: none;
}


.button.button-primary,
button.button-primary,
input[type="submit"].button-primary,
input[type="reset"].button-primary,
input[type="button"].button-primary {
	color: #FFF;
	background-color: #96008F;
	border-color: #96008F;
}

.button.button-primary:hover,
button.button-primary:hover,
input[type="submit"].button-primary:hover,
input[type="reset"].button-primary:hover,
input[type="button"].button-primary:hover,
.button.button-primary:focus,
button.button-primary:focus,
input[type="submit"].button-primary:focus,
input[type="reset"].button-primary:focus,
input[type="button"].button-primary:focus {
	color: #FFF;
	background-color: #96008F;
	border-color: #96008F;
  opacity:0.8;
}

a {
    color: #96008F;
}

a:hover {
	color: #96008F;
	opacity: 0.8;
}
.ui-widget-header {
	background: #96008F !important;
}
#CalendarTBody td div {
	color: #96008F !important;
}
input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
    border: 1px solid #C0E300;
    outline: 0;
}

button:disabled,
.button.button-primary:disabled,
button.button-primary:disabled,
input[type="submit"].button-primary:disabled,
input[type="reset"].button-primary:disabled,
input[type="button"].button-primary:disabled {
	color: #ccc;
	background-color: #eee;
	border-color: #eee;
}


.menu > a.naviSubSelected {
	color: #C0E300;
}
.linkList>a {
	display: inline-block;
	padding: 0.5rem;
	text-decoration: none;
}
.mb1 {
	margin-bottom: 1rem;
}
.mb2 {
	margin-bottom: 2rem;
}
.ml2 {
    margin-left: 2rem;
}
.flex {
	display: flex;
	align-items: center;
}
.flex.sb {
	justify-content: space-between;
}
table.Calendar {
	width: 100%;
}
.Calendar td {
	width: 13%;
	border-right: 1px solid #E1E1E1;  
	text-align: center;
	padding: 0;
	height: 4rem;
}
.Calendar tr:first-child {
	background: #eee;
}
.Calendar td:first-child {
	width: 8%;
	background: #eee;
}
.Calendar td a {
	display: inline-block;
	text-decoration: none;
	padding: 1rem;
}
.KeepLines {
     white-space: pre-line;
}
input.Error, select.Error {
	background: #fff8f8;
}
.Validated input.Error {
	background: #fcc;
	border-color: #c66;
}
span.Error {
	color: #f00;
	background: #fff8f8;
	padding: 0.2rem 1rem;
	border: 1px solid #fcc;
	border-radius: 0.5rem;
}
.mr2 {
	margin-right: 2rem;
}
.mt2 {
	margin-top: 2rem;
}

td.hl, td.hc, td.hr {
	font-weight: bold;
}

td.nc, td.hc {
	text-align: center;
}

td.nr, td.hr {
	text-align: right;
}
.TopAligned td { 
    vertical-align: top;
}
.Bold {
	font-weight: bold;
}

.ResultRow {
	display: flex;
	flex-wrap: wrap;
	cursor: pointer;
	padding: 1rem;
}
.ResultRow:hover {
	background: #eee;
}
.ResultRow div {
    margin-right: 2rem;
}
.ResultRow div:first-child {
	font-weight: bold;
    margin-right: 1rem;
}
.ResultRow div:last-child {
	margin-right: 0;
}
.ResultRow div>span:first-child {
	color: #999;
	margin-right: 0.5rem;
}

.frow {
	display:flex;
    flex-wrap: wrap;
    margin-right: -2rem;
}

.fcrow {
	display:flex;
	justify-content: center;
    flex-wrap: wrap;
    margin-right: -2rem;
    margin-bottom: 2rem;
}
.fcrow>* {
	margin: 0;
	margin-right: 2rem;
}
.fcrow form { margin: 0; }



.fcol {
  width: 100%;
  margin-right: 2rem;
  min-height: 1rem;
  box-sizing: border-box; 
}

@media only screen and (max-width: 549.99px) {
	.xshide {
		display: none !important;
	}

	.narrow.button {
		padding: 0 10px;
	}
}


@media only screen and (min-width: 400px) {
	.nice.fcol {
		width: 44%;
	}
}
@media only screen and (min-width: 550px) {
	.nice.fcol {
		width: 29%;
	}
}

@media only screen and (max-width: 749.99px) {
	.mobile5r {
		height: 9em;
	}
}

/* Larger than tablet */
@media only screen and (min-width: 750px) {
  .nice.fcol                 { width: 22%;            }
  .two-md.col                { width: 13.3333333333%; }
  .three-md.col                  { width: 22%;            }
  .four-md.col                   { width: 30.6666666667%; }
  .offset-by-zero-md.col          { margin-left: 0; }
}


@media print {
	.menu, #head, .NoPrint {display:none;}
	
}

/* Larger than desktop */
@media (min-width: 1000px) {
	.nice.fcol {
		width: 17.8%;
	}
}

/* Larger than Desktop HD */
@media (min-width: 1200px) {
  .nice.fcol                 { width: 12.5%; }
}
select[size] {
	height: auto;
}
.InlineInput {
	margin-bottom: 3rem;
}
.InlineInput input {
	margin-bottom: 0;
}
input[type="checkbox"], input[type="radio"] {
	width: 2rem;
	height: 2rem;
}
label.CB {
	display: flex;
}
label.CB > input[type="checkbox"] {
	margin: 0.5rem 0.5rem 0.5rem 0;
	flex: 2.5rem 0 0;
}
label.CB > span {
    margin: auto 0;	
}
.field-validation-error {
	color: #e00;
	font-size: 120%;
}
.grey {
	color: #aaa;
}
div.LocationCombo {
	position: relative;
	width: 100%;
}

.LocationCombo > input {
	margin-bottom: 1px;
}

div.LocationList {
	border: 1px solid #ccc;
	position: absolute;
	max-height: 16em;
	overflow-y: auto;
	background: #fff;
}

.LocationList div:hover {
	background: #eee;
	cursor: pointer;
}

.LocationList div.Active {
	background: #ddd;
}

.LocationCombo > * {
	width: 600px;
	max-width: 100%;
}
.Error {
	font-weight: bold;
	color: #f00;
}
