html {
	background-color: rgb(234 246 234);
	color: #808080;
	font-size: 16px;
}

html,
body,
header,
h1,
h2,
h3 {
	margin: 0;
	padding: 0;
}

h1,
h2,
h3 {
	font-weight: 400;
	line-height: 1;
}

body {
	display: flex;
	flex-direction: column;
	justify-content: center;
	background: radial-gradient(circle at 50% 50%, #ffffff, #f8fcf8, #f2faf2, #ebf7eb, #e5f4e4, #def1dd, #d8efd7, #d1ecd0);
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Ubuntu', sans-serif;
	-webkit-font-smoothing: antialiased;
	margin: 0 auto;
	padding: 0 2vw;
	min-height: 100vh;
}

header,
footer {
	text-align: center;
}

footer {
	display: table;
	background: transparent;
	margin: 1rem auto;
}

.login-container {
	position: relative;
	display: table;
	background-color: #fff;
	color: #808080;
	text-align: center;
	margin: 0 auto;
	padding: 1.5rem 2rem 1.4rem;
	border: 1px solid #808080;
	border-radius: 0.5rem;
	box-shadow: rgb(0 0 0 / 25%) 0px 0.0625em 0.0625em, rgb(0 0 0 / 25%) 0px 0.125em 0.5em,
		rgb(255 255 255 / 10%) 0px 0px 0px 1px;
	max-width: 300px;
}

#ftr-heading {
	color: #0d0d0d;
	font-size: 3.5rem;
}

#ftr-subheading {
	color: #262626;
	font-size: 3rem;
}

#ftr-greeting {
	font-size: 1.75rem;
}

.divider {
	padding: 0.75rem;
}

.logo,
.powered-by {
	display: block;
	margin: 0 auto;
	color: #0079ff;
}

.powered-by {
	font-size: 1.5rem;
	margin-bottom: 0.35rem;
}

.logo {
	width: 16.25rem;
	padding: 0.5rem;
	border: 0;
}

.screen-reader-only {
	position: absolute;
	height: 1px;
	width: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
}

/* AZURE STYLES */

.api-container {
	margin: 0.5rem auto 0;
}

.intro {
	display: block;
	font-size: 1rem;
	margin: 0 auto 1.5rem;
}

input[type='text'],
input[type='password'],
label {
	display: block;
	margin: 0.5rem auto 0.25rem;
}

label {
	font-size: 1.25rem;
	margin-top: 1rem;
}

input[type='text'],
input[type='password'] {
	font-size: 1rem;
	padding: 0.5rem 1rem;
	width: 80%;
	max-width: 240px;
}

a#forgotPassword,
.rememberMe,
.intro {
	display: none;
}

/* Legacy version - START of UI */
/* basically any 1.x version */

.divider,
.create {
	display: none;
}

/* Legacy version - END */

button#next {
	color: #eaf6e9;
	color: oklch(0.96 0.021 144);
	background-color: #002100;
	background-color: oklch(0.215 0.075 144);
	font-size: 1rem;
	box-shadow: 0 0 1.5rem oklch(0.6 0 0 / 0.25);
	border: 0;
	border-radius: 0.75rem;
	outline: 0;
	text-decoration: none;
	text-transform: uppercase;
    letter-spacing: 0.075rem;
	padding: 1.5ch 3.5ch;
	margin: 1.25rem auto 0.25rem;
	cursor: pointer;
	opacity: 0.9;
	transition: opacity 750ms, box-shadow 300ms;
}

button#next:hover,
button#next:focus {
	box-shadow: 0 0 1rem oklch(0.6 0 0 / 0.5);
	opacity: 1;
}

.error_container {
	background-color: #ffd8d4;
	border-radius: 0.75rem;
	margin: 2rem auto;
	padding: 1rem 1.5rem;
	width: 75%;
	max-width: 320px;
}

.error p {
	color: #ec152c;
	font-size: 1rem;
	font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Ubuntu', sans-serif;
	margin: 1rem auto;
}

.error.itemLevel p {
	margin: 0.25rem auto 0.15rem;
}

.error.pageLevel p {
	margin: 0.25rem auto 1rem;
}

/* SCREEN READER ONLY */

#ftr-greeting,
label {
	position: absolute;
	height: 1px;
	width: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
}