* {
  margin: 0;
  padding: 0;
}

body, html {
  height: 100%;
}

body {
  font: 14px/16px "Helvetica Neue", sans-serif;
  color: #687178;
  letter-spacing: 0.03em;
  text-shadow: 0 1px 0 rgba(255,255,255,.25);
  
  text-rendering:auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;

  background-color: #d3dee7;
  background-image: -webkit-gradient(radial, 50% 50%,200,50% 50%,20, from(#b8c9d6), to(#eef4f8));
  background-image: -webkit-radial-gradient(50% 50%, #eef4f8, #b8c9d6);
  background-image: -moz-radial-gradient(50% 50%, #eef4f8, #b8c9d6);
  background-image: -o-radial-gradient(50% 50%, #eef4f8, #b8c9d6);
  background-image: -ms-radial-gradient(50% 50%, #eef4f8, #b8c9d6);
  background-image: radial-gradient(50% 50%, #eef4f8, #b8c9d6);
}

a img{
  border: none;
}

div.login, div.resetpassword, div.forgotPassword, div.errorPage {
  background: #ECF1F5;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,.88)), to(rgba(255,255,255,.5)));
  background: -webkit-linear-gradient(top, rgba(255,255,255,.88), rgba(255,255,255,.5));
  background: -moz-linear-gradient(top, rgba(255,255,255,.88), rgba(255,255,255,.5));
  background: -o-linear-gradient(top, rgba(255,255,255,.88), rgba(255,255,255,.5));
  background: -ms-linear-gradient(top, rgba(255,255,255,.88), rgba(255,255,255,.5));
  background: linear-gradient(top, rgba(255,255,255,.88), rgba(255,255,255,.5));

  padding-bottom: 15px;

  box-shadow: 0 11px 22px rgba(0,0,0,0.3);
  border-radius: 3px;
  
  border: 1px solid #A7B0B5\9;
  *border: 1px solid #A7B0B5;
}

.login, div.resetpassword, div.forgotPassword, div.errorPage {
  margin-top: -170px;
}

div.resetpassword {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 400px;
  height: 250px;
  margin-left: -200px;
}

div.forgotPassword {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 450px;
  height: 250px;
  margin-left: -225px;
}

div.errorPage {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 520px;
  height: 280px;
  margin-left: -260px;
}

.article-title {
	font-size: 18px;
	line-height:24px;
	color: #333333;
	font-weight:bold;
	margin-top:0px;
	font-family: 'Helvetica Neue', sans-serif;
}

.article-content {
	font-size: 16px;
	line-height: 18px;
	color: #444444;
	margin-top: 12px;
	margin-bottom: 18px;
	font-family: 'Helvetica Neue', sans-serif;
}

.article-content a {
	font-size: 14px;
	color: #00707b;
	font-weight:bold;
	text-decoration:none;
}

.login, .protips {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 280px;
  margin-left: -140px;
}

.protips {
  text-align: center;
  margin-top: 120px;
  font-size: 12px;
}

.protips a {
  color: #547892;
  text-decoration: none;

  -webkit-transition: color .25s;
  -moz-transition: color .25s;
  -ms-transition: color .25s;
  -o-transition: color .25s;
  transition: color .25s;
}

.protips a:hover {
  color: #19252d;
}

.protips a + a {
  float: right;
  font-weight: bold;
}

.image {
  position: relative;
  width: 180px;
  height: 55px;
  margin: 40px auto;

  border-radius: 11px;
}

.image a {
  border: none;
}

.image .logo {
  position: absolute;
}

a.submit, a.submit:link, a.submit:visited, a.submit:active {
  
  padding: 8px 10px;

  font: 14px "Helvetica Neue", sans-serif;
  text-decoration: none;
  text-align: center;
  
  color: #52646e;

  border: none; /* handled by `form p` */

  background-color: #d3dee7;

  position: relative;
  z-index: 10;

  display: block;

  border-radius: 2px;
  margin-bottom: 0;
  cursor:pointer;
}

a.submit:hover {
  text-decoration: none;
  background-color: #dfeaf3;
}

input[type="text"], input[type="password"] {
  padding: 8px 12px;

  font: 14px "Helvetica Neue", sans-serif;
  color: #52646e;

  border: none; /* handled by `form p` */

  box-shadow: inset 0 1px 1px rgba(0,0,0,.1);

  background: #fff;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,.8)), to(#fff));
  background: -webkit-linear-gradient(top, rgba(255,255,255,.8), #fff);
  background: -moz-linear-gradient(top, rgba(255,255,255,.8), #fff);
  background: -o-linear-gradient(top, rgba(255,255,255,.8), #fff);
  background: -ms-linear-gradient(top, rgba(255,255,255,.8), #fff);
  background: linear-gradient(top, rgba(255,255,255,.8), #fff);

  position: relative;
  z-index: 10;

  display: block;
  width: 186px;

  border-radius: 2px;
  margin-bottom: 0;
}

p.forgotPassword-input input[type="text"], p.forgotPassword-input input[type="password"] {
	width: 251px;
}

input[type="text"]:focus, input[type="password"]:focus {
  outline: none;
  background: #f7fafc;
}

::-webkit-input-placeholder {
  color: #adb8be;
}

form label {
  position: absolute;
  z-index: 11;
  left: 12px;
  right: 4px;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: block;
  width: auto;
  height: 20px;
  line-height: 20px;
  margin-top: 6px;
  color: #999;

}

div#studylist {
	width: 100%;
	height: 258px;
	margin: 0px 0px 20px;
	border: 1px solid #A7B0B5;
	background: #FFFFFF;
	border-radius: 3px;
	overflow-x: hidden;
	overflow-y: auto;
}

div#sessionlist {
	width: 100%;
	height: 175px;
	margin: 0px 0px 20px;
	border: 1px solid #A7B0B5;
	overflow: auto;
	background: #FFFFFF;
	border-radius: 3px;
}

p.submit, p.forgotPassword-submit {
  position: relative;
  padding: 1px;

  width: 150px;
  margin: 0 auto 20px;

  background: #fff;
  background: -webkit-gradient(linear, left top, left bottom, from(#9aa3a9), to(#bac2c7));
  background: -webkit-linear-gradient(top, #9aa3a9, #bac2c7);
  background: -moz-linear-gradient(top, #9aa3a9, #bac2c7);
  background: -o-linear-gradient(top, #9aa3a9, #bac2c7);
  background: -ms-linear-gradient(top, #9aa3a9, #bac2c7);
  background: linear-gradient(top, #9aa3a9, #bac2c7);

  box-shadow: 0 1px 0 rgba(255,255,255,.3);

  border-radius: 3px;
  cursor:pointer;
  
  border: 1px solid #A7B0B5\9;
  *border: 1px solid #A7B0B5;
}

p.forgotPassword-submit {
	width: 200px;
}

div.option {
  border-bottom: 1px solid #A7B0B5;
  line-height: 20px;
  
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  
  /*Gradient*/
  background: #F7F7F7; /* Old browsers */
  background: -moz-linear-gradient(top, #F7F7F7 0%, #EEEEEE 100%); /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#F7F7F7), color-stop(100%,#EEEEEE)); /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #F7F7F7 0%, #EEEEEE 100%); /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #F7F7F7 0%, #EEEEEE 100%); /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #F7F7F7 0%, #EEEEEE 100%); /* IE10+ */
  background: linear-gradient(top, #F7F7F7 0%, #EEEEEE 100%); /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#F7F7F7', endColorstr='#EEEEEE',GradientType=0 ); /* IE6-9 */
}

div.option label.check {
  cursor: pointer;
  display: table;
  padding: 5px;
  width: 100%;
  background: none;
  
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

div.option:hover, label.check:hover {
  text-decoration: none;
  background: #dfeaf3;
}

p.input, p.forgotPassword-input {
  position: relative;
  padding: 1px;

  width: 210px;
  margin: 0 auto 20px;

  background: #fff;
  background: -webkit-gradient(linear, left top, left bottom, from(#9aa3a9), to(#bac2c7));
  background: -webkit-linear-gradient(top, #9aa3a9, #bac2c7);
  background: -moz-linear-gradient(top, #9aa3a9, #bac2c7);
  background: -o-linear-gradient(top, #9aa3a9, #bac2c7);
  background: -ms-linear-gradient(top, #9aa3a9, #bac2c7);
  background: linear-gradient(top, #9aa3a9, #bac2c7);

  box-shadow: 0 1px 0 rgba(255,255,255,.3);

  border-radius: 3px;
  
  border:none\10;
  border: 1px solid #A7B0B5\9;
  *border: 1px solid #A7B0B5;
}

p.forgotPassword-input {
	width: 275px;
}

p.input:after, p.forgotPassword-input:after, p.submit:after, p.forgotPassword-submit:after {
  content: '';
  position: absolute;
  left: 1px;
  bottom: 1px;
  right: 1px;
  top: 1px;

  background: #fff;
  border-radius: 2px;
  border: none;
  border: 1px solid #A7B0B5\9;
  *border: 1px solid #A7B0B5;
}

div#passCreation {
  top: 50%;
  left: 50%;
  z-index: 99;
  margin-left: 85px;
  margin-top: -40px;
  position: absolute;
}

#error {
  background: #c35e5c;
  opacity: 0.95;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 99;
  width: 212px;
  height: 107px;
  margin-top: -46px;
  margin-left: -116px;
  text-shadow: rgba(0, 0, 0, .4) 1px 1px 2px;
  color: white;
  font-size: 15px;
  line-height: 20px;
  padding: 35px 10px;
  text-align: center;
  border-radius: 4px;
  box-shadow: 0 11px 22px rgba(0,0,0,0.3);
}

#warning {
  background: #F2D900;
  opacity: 0.9;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 99;
  width: 212px;
  height: 107px;
  margin-top: -46px;
  margin-left: -116px;
  text-shadow: none;
  color: black;
  padding: 35px 10px;
  text-align: center;
  border-radius: 4px;
  box-shadow: 0 11px 22px rgba(0,0,0,0.3);
}

#error2, #errorSession  {
  background: #c35e5c;
  opacity: 0.95;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 99;
  width: 320px;
  height: 140px;
  margin-top: -127px;
  margin-left: -169px;
  text-shadow: rgba(0, 0, 0, .4) 1px 1px 2px;
  color: white;
  font-size: 15px;
  padding: 35px 10px;
  text-align: center;
  border-radius: 4px;
  box-shadow: 0 11px 22px rgba(0,0,0,0.3);
}

#error-resetpassword {
  background: #c35e5c;
  opacity: 0.95;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 99;
  width: 335px;
  height: 102px;
  margin-top: -60px;
  margin-left: -177px;
  text-shadow: rgba(0, 0, 0, .4) 1px 1px 2px;
  color: white;
  font-size: 15px;
  padding: 35px 10px;
  text-align: center;
  border-radius: 4px;
  box-shadow: 0 11px 22px rgba(0,0,0,0.3);
}

#error-forgotPassword {
  background: #c35e5c;
  opacity: 0.95;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 99;
  width: 385px;
  height: 102px;
  margin-top: -60px;
  margin-left: -202px;
  text-shadow: rgba(0, 0, 0, .4) 1px 1px 2px;
  color: white;
  font-size: 15px;
  padding: 35px 10px;
  text-align: center;
  border-radius: 4px;
  box-shadow: 0 11px 22px rgba(0,0,0,0.3);
}

#loading {
	position: absolute;
	top: 50%;
  	left: 50%;
  	margin-top: -50px;
    margin-left: -8px;
    z-index: 99;
}

#loading-resetpassword {
	position: absolute;
	text-align: center;
	top: 50%;
  	left: 50%;
  	width: 400px;
    height: 200px;
  	margin-top: -71px;
    margin-left: -200px;
    z-index: 99;
}

#loading-forgotPassword {
	position: absolute;
	text-align: center;
	top: 50%;
  	left: 50%;
  	width: 450px;
    height: 200px;
  	margin-top: -71px;
    margin-left: -225px;
    z-index: 99;
}

#error::after {
  content: '';
  position: absolute;
  left: 50%;
  margin-left: -7px;
  top: -6px;
  display: block;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid #c35e5c;
  opacity: 0.95;
}

#warning::after {
  content: '';
  position: absolute;
  left: 50%;
  margin-left: -7px;
  top: -6px;
  display: block;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid #F2D900;
  opacity: 0.9;
}

#error2::after, #errorSession::after {
  content: '';
  position: absolute;
  left: 50%;
  margin-left: -7px;
  top: 210px;
  display: block;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: 7px solid #c35e5c;
  opacity: 0.95;
}

p.reset {
  background: #306cb9;
}

p.reset.disabled {
  background: #868686;
}

/*match placeholder/watermark padding to border+padding for input element*/
label.placeholder {
cursor: text;
padding: 0px 10px;
color: #999999;
}
/* html5 placeholder support */
input::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
color:#999999;
}
input:placeholder, textarea:placeholder {
color:#999999;
}