#payment-container {
    transition: 0 !important;
    z-index: 999999;
    position: fixed;
}

.has-error input {
    border-color: #F00 !important;
    box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.05) inset, 0px 0px 8px rgba(135, 0, 0, 0.5);
    -webkit-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.05) inset, 0px 0px 8px rgba(135, 0, 0, 0.5);
}

.validation.text-danger:after {
	content: 'Validation failed';
}

.validation.text-success:after {
	content: 'Validation passed';
}

#payment-dialog {
	width: 100%;
	max-width: 350px;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	z-index: 2;
	background: #FFF;
	border-radius: 10px;
	border: 1px solid #eee;
    -webkit-box-shadow: 0 49.5px 70px -24.5px rgba(0,0,0,.3);
    -moz-box-shadow: 0 49.5px 70px -24.5px rgba(0,0,0,.3);
  	box-shadow: 0 49.5px 70px -24.5px rgba(0,0,0,.3);
}

.title {
	text-align: center;
}


#drea-payment-form {
	width: 90%;
	padding: 20px 25px;
	margin: auto;
  box-sizing: border-box;
}

.form-group {
	width: 100%;
	position: relative;
}

.form-group.top {
	margin-bottom: 3px;
}

.form-group.bottom-left,
.form-group.bottom-right {
	width: 50%;
	float: left;
	margin-bottom: 3px;
}

.form-group.bottom-right {
	width: calc( 50% - 3px);
	margin-left: 3px;
	float: left;
}

.form-group.top input {
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
	/*border-bottom: none;*/
}
.form-group.bottom-left input {
	border-top-left-radius: 0;
	border-bottom-right-radius: 0;
	border-top-right-radius: 0;
	/*border-right: none;*/
}

.form-group.bottom-right input {
	border-top-right-radius: 0;
	border-bottom-left-radius: 0;
	border-top-left-radius: 0;
}
#payment-dialog  button {
	outline: none
}
#payment-dialog input {
	width: 100%;
	padding: 10px 10px 10px 40px;
	box-sizing: border-box;
	border-radius: 3px;
	border: 1px solid #999;
	font-size: 12px;
	outline: none
}
/*
#payment-dialog input:focus {
border: 1px solid #2489ce;
}
*/

#payment-container .icon {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

span#cc-brand {
	display: block;
	height: 25px;
	width: 40px;
	position: absolute;
	right: 6px;
	top: 50%;
	transform: translateY(-50%);
	background-size: cover;
}

#payment-overlay {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(255,255,255,0.8);
	position: fixed;
}

span#payment-close {
    position: absolute;
    color: #2489CE;
    width: 25px;
    height: 25px;
    left: 15px;
    top: 15px;
    pointer: cursor;
}

span#payment-close>.glyphicon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
}

#payment-dialog .btn {
	background: #2489CE;
  width: 100%;
  padding: 10px;
  border-radius: 3px;
  border: 0px;
  color: white;
  margin-top: 10px;
  font-size: 16px;
  line-height: 28px;
}

.transaction-complete-animation {
  font-family: sans-serif;
  text-align: center;
  position: relative;
  left: 0;
  /* height: 0; */
  width: 100%;
  /* height: 100vh; */
  display: block;
  top: 0;
}

.transaction-complete-animation .complete-icon {
  position: relative;
  top: 50%;
  left: 50%;
  height: 100px;
  width: 100px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-transform-origin: top left;
  transform-origin: top left;
}

.transaction-complete-animation .complete-icon svg{
  width:100px;
}
.transaction-complete-animation .complete-icon svg path {
  fill: none;
  stroke: #0091EA;
  stroke-width: 40;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.transaction-complete-animation .complete-icon svg polyline {
  fill: none;
  stroke: #0091EA;
  stroke-width: 40;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.transaction-complete-animation .complete-icon svg path.circle {
  stroke-dasharray: 1300;
  -webkit-animation: circle-draw 1s ease-out;
  animation: circle-draw 1s ease-out;
}
.transaction-complete-animation .complete-icon svg polyline.circle {
  stroke-dasharray: 1300;
  animation: circle-draw 1s ease-out;
}
.transaction-complete-animation .complete-icon svg path.check {
  stroke-dasharray: 430;
  animation: check 1s ease-in;
}
.transaction-complete-animation .complete-icon svg polyline.check {
  stroke-dasharray: 430;
  -webkit-animation: check 1s ease-in;
  animation: check 1s ease-in;
}


#cc-brand.mastercard {
	background-image: url(images/master.png);
}
#cc-brand.visa {
	background-image: url(images/visa.png);
}
#cc-brand.amex {
	background-image: url(images/amex.png);
}
#cc-brand.discover {
	background-image: url(images/discover.png);
}
#cc-brand.jcb {
	background-image: url(images/jcb.png);
}


span.drea-button-loader {
    width: 24px;
    height: 24px;
    display: block;
    background: rgba(36,137,206,0.5);
    border-radius: 100%;
    position: relative;
    margin: auto;
    border: 2px solid transparent;
    animation: drea-loader-rotate 0.5s infinite linear;
}

.credit-notification.active {
    padding: 3px;
    opacity: 1;
    max-height: 100px;
}

.credit-notification {
    display: block;
    padding: 0;
    border: 1px solid #ebccd1;
    border-radius: 3px;
    margin-top: 3px;
    color: #a94442;
    background: #f2dede;
    text-align: center;
    max-height: 0px;
    overflow: hidden;
    box-sizing: border-box;
    transition: 0.2s;
    opacity: 0;
}

@-webkit-keyframes drea-loader-rotate {
  0%   { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@-moz-keyframes drea-loader-rotate {
  0%   { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@-o-keyframes drea-loader-rotate {
  0%   { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
@keyframes drea-loader-rotate {
  0%   { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

@-webkit-keyframes drea-loader-rotate-center-x {
  0%   { transform: translateX(-50%) rotate(0deg); }
  100% { transform: translateX(-50%) rotate(360deg); }
}
@-moz-keyframes drea-loader-rotate-center {
  0%   { transform: translateX(-50%) rotate(0deg); }
  100% { transform: translateX(-50%) rotate(360deg); }
}
@-o-keyframes drea-loader-rotate-center {
  0%   { transform: translateX(-50%) rotate(0deg); }
  100% { transform: translateX(-50%) rotate(360deg); }
}
@keyframes drea-loader-rotate-center {
  0%   { transform: translateX(-50%) rotate(0deg); }
  100% { transform: translateX(-50%) rotate(360deg); }
}


@keyframes "circle-draw" {
  0%,40% {
    stroke-dashoffset: 1300;
  }
  100% {
    stroke-dashoffset: 2600;
  }
}
@-webkit-keyframes "circle-draw" {
  0%,40% {
    stroke-dashoffset: 1300;
  }
  100% {
    stroke-dashoffset: 2600;
  }
}
@keyframes "check" {
  0% {
    stroke-dashoffset: 430;
  }
  40% {
    stroke-dashoffset: 0;
  }
}
@-webkit-keyframes "check" {
  0% {
    stroke-dashoffset: 430;
  }
  40% {
    stroke-dashoffset: 0;
  }
}
@-webkit-keyframes "iconanimation" {
  0% {
    transform: scale(1) translate(-50%, -50%);
  }
  100% {
    transform: scale(1) translate(-50%, -100px);
  }
}
@keyframes "iconanimation" {
  0% {
    transform: scale(1) translate(-50%, -50%);
  }
  100% {
    transform: scale(1) translate(-50%, -100px);
  }
}
