@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

:root {
    --theme-color: #CC0000;
    --font-familly: "Inter";
}

body{
  background: url(/_customers/images/ui/TargetCorp/logo-big.svg) var(--theme-color);
  background-repeat: no-repeat;    
  background-position: right top;
  background-size: 500px;
  min-width: 400px;
}

body::before {  display: none;  }

.logoOpen, .logoClose {
    width: fit-content;
    height: fit-content;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}
.logoOpen svg {
    animation: .5s Opacity-out ease-in 5.5s both;
}

@keyframes Opacity-out {
    0%      {   opacity: 1;     }
    100%    {   opacity: 0;     }
}
@keyframes Opacity-in {
    0%      {   opacity: 0;     }
    100%    {   opacity: 1;     }
}


/* LOGIN FORM */

form {
	display: grid;
	padding: 100px 25px 30px 25px;	
	position: fixed;
	right: 0;
  left: 0;
	bottom: 30%;
	margin: auto;
	min-height: 240px;
	max-height: 360px;
	height: min-content;
	min-width: 400px;
	width: fit-content;
	color: #000;
  font-family: var(--font-familly);
  background-image: url(/_customers/images/ui/TargetCorp/logo.svg);
  background-repeat: no-repeat;    
  background-position: center top 15px;
  background-size: 67px;
	background-color: #FFFFFF;
	border-radius: 5px;
  border: 2px solid #fff;	
	z-index: 3;
	animation: formAni 0.4s cubic-bezier(0.390, 0.575, 0.565, 1.000) 6.3s both;
}

@keyframes formAni {
	0% {	opacity: 0; 	}
	100% {	opacity: 1; 	}
}

form div {
	font-size: 12px;
	text-align: left;
	grid-area: 6 / 1 / 9 / 2;
	margin-top: 70px;
	color: #fff;
	font-style: var(--font-familly);
	padding: 20px;
	letter-spacing: 1px;
}

input {
	padding: 10px 20px;
	color: #333;
	background: #fff;
    border: none;
	border-bottom: 1px solid #adadad;	
	outline: none;
	margin-top: 10px;
	width: 400px;
	height: 40px;
	border-radius: 0px;
}

input[name="email"] {
	grid-area: 2 / 1 / 3 / 2;
}

input[name="password"] {
	grid-area: 3 / 1 / 4 / 2;	
}

input[name="code"] {
	grid-area: 4 / 1 / 5 / 2;
}

input[name="code"]::placeholder {
	color: #ccc;
}

::placeholder {
	color: #888888;
	font-family: var(--form-font);
	font-size: 14px;
	font-weight: 400;
}

button
{
	border: none;
	color: #fff;
	cursor:pointer;
	font-style: var(--font-familly);
	font-weight: 600;
	font-size: 15px;
	letter-spacing: .5px;
	text-transform: uppercase;
	outline: none;
	display: block;
	margin-top: 10px;
	height: 40px;
	width: 195px;
    border-radius: 30px;
}

button.login-only.login {
	background: var(--theme-color);
	cursor: pointer;
    display: block;
	grid-area: 4 / 1 / 6 / 2;
}

button.login-only.login:hover {
	background: #AD0000;
	transition: 0.3s;
}

button.login-only.register {
	background: transparent;
	margin-left: 205px;
    border: 2px solid var(--theme-color);
    color: var(--theme-color);
	cursor: pointer;
	display: block;
	grid-area: 4 / 1 / 6 / 2;
}

button.login-only.register:hover {
	background: #AD0000;
    color: #fff;
	transition: 0.3s;
}

button.forgot::after {
	content:"";
	position: absolute;
	display: block;
	background: #ddd;
	width: 55%;
	height: .8px;
	right: 20px;
	bottom: 40px;
}

button.login-only.forgot {
	background: none;
	color: #999;
	width: 50%;
	text-align: left;
	font-weight: 500;
	line-height: 20px;
	cursor: pointer;
	font-size: 12px;
	grid-area: 5 / 1 / 8 / 2;
	margin-top: 40px;
	height: 20px;
  text-transform: uppercase;
  padding: 0;
}

button.login-only.forgot:hover {
	color: var(--theme-color);
	transition: 0.3s;
}

button.register-only.register {
	background: var(--theme-color);
	color: #fff;
	grid-area: 5 / 1 / 7 / 2;
}

button.register-only.register:hover {
	background: #AD0000;
	color: #fff;
	transition: 0.3s;
}

button.register-only.cancel {
	background: transparent;
    border: 2px solid var(--theme-color);
    color: var(--theme-color);
	margin-left: 205px;
	grid-area: 5 / 1 / 7 / 2;
}

button.register-only.cancel:hover {
    background: var(--theme-color);
	color: #fff;
	transition: 0.3s;
}
/* LOGIN FORM -------------------------------------------------------------- */ 

/* Open Logo --------------------------------------- */

 @keyframes animate-svg-stroke-1 {
    0% {
      stroke-dashoffset: 326.92779541015625px;
      stroke-dasharray: 326.92779541015625px;
    }
  
    100% {
      stroke-dashoffset: 0;
      stroke-dasharray: 326.92779541015625px;
    }
  }
  
  @keyframes animate-svg-fill-1 {
    0% {
      fill: transparent;
    }
  
    100% {
      fill: rgb(255, 255, 255);
    }
  }
  
  .logo-open-1 {
    animation: animate-svg-stroke-1 1s cubic-bezier(0.47, 0, 0.745, 0.715) 2.8s both,
                 animate-svg-fill-1 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 3.6s both;
  }
  
  @keyframes animate-svg-stroke-2 {
    0% {
      stroke-dashoffset: 1597.6788330078125px;
      stroke-dasharray: 1597.6788330078125px;
    }
  
    100% {
      stroke-dashoffset: 0;
      stroke-dasharray: 1597.6788330078125px;
    }
  }
  
  @keyframes animate-svg-fill-2 {
    0% {
      fill: transparent;
    }
  
    100% {
      fill: rgb(255, 255, 255);
    }
  }
  
  .logo-open-2 {
    animation: animate-svg-stroke-2 1s cubic-bezier(0.47, 0, 0.745, 0.715) 2.92s both,
                 animate-svg-fill-2 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 3.7s both;
  }
  
  @keyframes animate-svg-stroke-3 {
    0% {
      stroke-dashoffset: 248.60464477539062px;
      stroke-dasharray: 248.60464477539062px;
    }
  
    100% {
      stroke-dashoffset: 0;
      stroke-dasharray: 248.60464477539062px;
    }
  }
  
  @keyframes animate-svg-fill-3 {
    0% {
      fill: transparent;
    }
  
    100% {
      fill: rgb(255, 255, 255);
    }
  }
  
  .logo-open-3 {
    animation: animate-svg-stroke-3 1s cubic-bezier(0.47, 0, 0.745, 0.715) 3.04s both,
                 animate-svg-fill-3 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 3.8000000000000003s both;
  }
  
  @keyframes animate-svg-stroke-4 {
    0% {
      stroke-dashoffset: 375.46826171875px;
      stroke-dasharray: 375.46826171875px;
    }
  
    100% {
      stroke-dashoffset: 0;
      stroke-dasharray: 375.46826171875px;
    }
  }
  
  @keyframes animate-svg-fill-4 {
    0% {
      fill: transparent;
    }
  
    100% {
      fill: rgb(255, 255, 255);
    }
  }
  
  .logo-open-4 {
    animation: animate-svg-stroke-4 1s cubic-bezier(0.47, 0, 0.745, 0.715) 3.1599999999999997s both,
                 animate-svg-fill-4 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 3.9000000000000004s both;
  }
  
  @keyframes animate-svg-stroke-5 {
    0% {
      stroke-dashoffset: 204.19866943359375px;
      stroke-dasharray: 204.19866943359375px;
    }
  
    100% {
      stroke-dashoffset: 0;
      stroke-dasharray: 204.19866943359375px;
    }
  }
  
  @keyframes animate-svg-fill-5 {
    0% {
      fill: transparent;
    }
  
    100% {
      fill: rgb(255, 255, 255);
    }
  }
  
  .logo-open-5 {
    animation: animate-svg-stroke-5 1s cubic-bezier(0.47, 0, 0.745, 0.715) 3.28s both,
                 animate-svg-fill-5 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 4s both;
  }
  
  @keyframes animate-svg-stroke-6 {
    0% {
      stroke-dashoffset: 458.7432861328125px;
      stroke-dasharray: 458.7432861328125px;
    }
  
    100% {
      stroke-dashoffset: 0;
      stroke-dasharray: 458.7432861328125px;
    }
  }
  
  @keyframes animate-svg-fill-6 {
    0% {
      fill: transparent;
    }
  
    100% {
      fill: rgb(255, 255, 255);
    }
  }
  
  .logo-open-6 {
    animation: animate-svg-stroke-6 1s cubic-bezier(0.47, 0, 0.745, 0.715) 3.4s both,
                 animate-svg-fill-6 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 4.1s both;
  }
  
  @keyframes animate-svg-stroke-7 {
    0% {
      stroke-dashoffset: 357.0648498535156px;
      stroke-dasharray: 357.0648498535156px;
    }
  
    100% {
      stroke-dashoffset: 0;
      stroke-dasharray: 357.0648498535156px;
    }
  }
  
  @keyframes animate-svg-fill-7 {
    0% {
      fill: transparent;
    }
  
    100% {
      fill: rgb(255, 255, 255);
    }
  }
  
  .logo-open-7 {
    animation: animate-svg-stroke-7 1s cubic-bezier(0.47, 0, 0.745, 0.715) 3.5199999999999996s both,
                 animate-svg-fill-7 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 4.2s both;
  }
  
  @keyframes animate-svg-stroke-8 {
    0% {
      stroke-dashoffset: 248.6041717529297px;
      stroke-dasharray: 248.6041717529297px;
    }
  
    100% {
      stroke-dashoffset: 0;
      stroke-dasharray: 248.6041717529297px;
    }
  }
  
  @keyframes animate-svg-fill-8 {
    0% {
      fill: transparent;
    }
  
    100% {
      fill: rgb(255, 255, 255);
    }
  }
  
  .logo-open-8 {
    animation: animate-svg-stroke-8 1s cubic-bezier(0.47, 0, 0.745, 0.715) 3.6399999999999997s both,
                 animate-svg-fill-8 0.7s cubic-bezier(0.47, 0, 0.745, 0.715) 4.3s both;
  }
  
  
/* Open Logo --------------------------------------- */