.ribbon{
  background: rgba(200,200,200,.5);
  width: 50px;
  height: 70px;
  margin: 0 auto;
  position: relative;
  top: 19px;
  border: 1px solid rgba(255,255,255,.3);
  border-top: 2px solid rgba(255,255,255,.5);
  border-bottom: 0;
  border-radius: 5px 5px 0 0;
  box-shadow: 0 0 3px rgba(0,0,0,.7);
  /* outline: 1px solid red; */
}
.ribbon:before{
  content:"";
  display: block;
  width: 15px;
  height: 15px;
  background: #4E535B;
  border: 4px solid #cfd0d1;
  margin: 18px auto;
  box-shadow: inset 0 0 5px #000, 0 0 2px #000, 0 1px 1px 1px #A7A8AB;
  border-radius: 100%;
}
.login{
  background: rgba(114, 212, 202, 0.35);
  border-bottom: 2px solid #C5C5C8;
  border-radius: 5px;
  text-align: center;
  color: #36383C;
  text-shadow: 0 1px 0 #FFF;
  max-width: 300px;
  margin: 0 auto;
  padding: 15px 3% 20px 3%;
  box-shadow: 0 0 3px #000;
}
.login:before{
  content:"";
  display: block;
  width: 70px;
  height: 4px;
  background: #4E535B;
  border-radius: 5px;
  border-bottom: 1px solid #FFFFFF;
  border-top: 2px solid #CBCBCD;
  margin: 0 auto;
}
h1{
  font-size: 1.2em;
  margin-top: 30px;
  margin-bottom: 10px;
}

.input{
  width:100%;
  text-align: right;
  background: #E5E7E9;
  border-radius: 5px;
  overflow: hidden;
  box-shadow: inset 0 0 3px #65686E;
  border-bottom: 1px solid #FFF;
}

input:-webkit-autofill {
	margin:1px;
	padding:1px 10px;
	margin-right:5px;
}

input{
  width: 100%;
  background: transparent;
  border: 0;
  height: 30px;
  padding-right:10px;
  color: #71747A;
  font-size: 20px;
  text-shadow: 0 1px 0 #FFF;
}
input:focus{
  outline: none;
}
.blockinput{
  border-bottom: 1px solid #BDBFC2;
  border-top: 1px solid #FFFFFF;
  height: 30px;
  text-align: left;
  padding: 5px;
  display: flex;
}
.blockinput:first-child{
  border-top: 0;
}
.blockinput:last-child{
  border-bottom: 0;
}
.blockinput i{
  margin: 6px;
  color: #B1B3B7;
  text-shadow: 0 1px 0 #FFF;
  margin: 10px 0px 0px 10px;
}
::-webkit-input-placeholder {
  color: #71747A;
  font-family:'bNazanin, 'B Nazanin', 'tahoma';
  text-shadow: 0 1px 0 #FFF;
}
button{
  margin-top: 20px;
  display: block;
  width: 100%;
  line-height: 2em;
  background: rgba(114,212,202,1);
  border-radius: 5px;
  border:0;
  border-top: 1px solid #B2ECE6;
  box-shadow: 0 0 0 1px #46A294, 0 2px 2px #808389;
  color: #FFFFFF;
  font-size: 1.5em;
  text-shadow: 0 1px 2px #21756A;
}
button:hover{
 background: linear-gradient(to bottom, rgba(107,198,186,1) 0%,rgba(57,175,154,1) 100%);  
}
button:active{
  box-shadow: inset 0 0 5px #000;
  background: linear-gradient(to bottom, rgba(57,175,154,1) 0%,rgba(107,198,186,1) 100%); 
}

/* ### TEST PASS GOOGLE IO ### */

hr{
  border-top: 1px solid rgba(0,0,0,.5);
  border-bottom: 1px solid rgba(255,255,255,.5);
  border-left: 0;
  border-right: 0;
  margin-top: 30px;
}

.io{
  padding: 0;
  padding-bottom: 10px;
}
.press{
  background: #D73D32;
  height: 40px;
  margin-top: -7px;
  border-radius: 5px 5px 0 0;
  text-align: left;
  line-height: 40px;
  padding: 0 10px;
  color: #FFF;
  text-shadow: none;
}
.press span{
  float: right;
  font-family:'bNazanin, 'B Nazanin', 'tahoma';
}
.io:before{
  position: relative;
  top: 15px;
  border-top: 2px solid #E78B84;
  border-bottom: 1px solid #6C1E19;
}
.ior{
  position:relative;
  z-index: 1;
}
.io img{
  width: 150px;
  border-radius: 100%;
  border: 4px solid 
  margin-top: 10px;
  border: 4px solid #FFF;
  margin: 18px auto 0;
  box-shadow: 0 1px 1px 1px #A7A8AB;
}
.io h2{
  margin-top: 0;
}
.io p{
  font-size: 1.5em;
  margin-bottom: 5px;
}
.msg{
	color:red;
	padding:4px;
	margin:3px;
	font-size: 14px;
}

.required{
	color:darkred;
	font-weight:bold;
	border:1px solid red;
	background-color:pink;
}

::-webkit-input-placeholder { /* Chrome/Opera/Safari */
  color: #bbbbbb;
}
::-moz-placeholder { /* Firefox 19+ */
  color: #bbbbbb;
}
:-ms-input-placeholder { /* IE 10+ */
  color: #bbbbbb;
}
:-moz-placeholder { /* Firefox 18- */
  color: #bbbbbb;
}

.footer{
  position: fixed;
  bottom: 0px;
  font-size:12px;
  text-align: center;
  border:1px solid gray;
  background-color: #B2ECE6;
  box-shadow: #fff 3px 3px 3px 0px;
  width:100%;
}
.footer a {
  text-decoration: none;
  margin:3px 50px;
}
.dialog-body a{
  text-decoration: none;
  font-size:14px;
}
.dialog-body .right img{
  float: right;
}
.dialog-body .left img{
  float: left;
}
.dialog-body img{
  width:100px;
  vertical-align: top;
  margin:0px 4px;
}
.dialog-body .detail{
  margin:5px;
  padding:10px;
}

.dialog-body .row{
  height:150px;
  margin:10px;
  vertical-align: top;
}
.dialog-body .role{
  display: inline-block;
}
.dialog-body .role::after{
  clear: both;
}

.dialog-body .right{
  text-align: right;
}
.dialog-body .left{
  text-align: left;
}

