:root {
    --black: #000000;
    --bright-gray: #37424a;
    --green-haze: #01a544;
    --font-size-l: 14px;
    --font-size-m: 12px;
    --font-family-noto_sans: "Noto Sans", Helvetica;
}

@font-face {
  font-family: 'Noto Sans';
  font-style: normal;
  font-weight: 400;
  src: local('Noto Sans'), local('Noto-Sans'), url("/uaa/fonts/NotoSans-VariableFont_wdth-b72e420edb95cdf06e6e0a27bc0d964d.ttf");
}

* {
    box-sizing: border-box;
}

.screen div {
    -webkit-text-size-adjust: none;
}
.screen * {
    -webkit-font-smoothing: antialiased;
    box-sizing: border-box;
}

body {
   margin: 0px;
   background: rgb(247, 246, 246);
   overflow-x: hidden;
   padding: 0;
   border: 0;
   vertical-align: baseline;
   box-sizing: border-box;
   font-family: var(--font-family-noto_sans);
	    min-height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.container-center-horizontal {
    display: flex;
    flex-direction: row;
    justify-content: center;
    pointer-events: none;
    width: 100%;
}

.login-screen {
    background-color: #f7f6f6;
    left: 0px;
    overflow: hidden;
    position: relative;
    top: 0px;
}

form {
	align-items: stretch;
    background-color: transparent;
    display: inline-flex;
    flex: 0 0 auto;
    flex-direction: column;
}

.container-center-horizontal > * {
    flex-shrink: 0;
    pointer-events: auto;
}

.login-screen .frame-26085763-Kb6M9W {
    align-items: stretch;
    background-color: #ffffff;
    border-radius: 22px;
    display: inline-flex;
    flex-direction: column;
    gap: 48px;
    padding: 40px 30px;
	width: 372px;
    margin-top: 194px;
}


.login-screen .frame-26085757-uRUuRm {
    align-items: center;
    background-color: transparent;
    display: inline-flex;
    flex: 0 0 auto;
    flex-direction: column;
    gap: 12px;
    position: relative;
}

.login-screen .frame-94-sKSfcx {
    background-color: transparent;
    flex: 0 0 auto;
    position: relative;
}

.login-screen .frame-26085762-uRUuRm {
    align-items: stretch;
    background-color: transparent;
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    gap: 40px;
    position: relative;
}

.app {
    font-size: 11px;
	color: #7b7b7b;
}

.login-screen .frame-26085772-zgGx4e {
    align-items: stretch;
    background-color: transparent;
    display: inline-flex;
    flex: 0 0 auto;
    flex-direction: column;
    gap: 16px;
    position: relative;
}

.login-screen .text-field-outlined {
    align-items: stretch;
    background-color: transparent;
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    gap: 3px;
    position: relative;
}

.login-screen .frame-26085761-zgGx4e {
    align-items: stretch;
    background-color: transparent;
    display: inline-flex;
    flex: 0 0 auto;
    flex-direction: column;
    gap: 40px;
    position: relative;
}

.login-screen .frame-26085764-9BxbqH {
    align-items: flex-start;
    background-color: transparent;
    display: inline-flex;
    flex: 0 0 auto;
    flex-direction: column;
    gap: 16px;
    position: relative;
}

.login-screen .button-ae-custom-MrUqIg {
    align-items: center;
    align-self: stretch;
    background-color: var(--green-haze);
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    height: 42px;
    justify-content: center;
    overflow: hidden;
    position: relative;
	color: #ffffff;
	border: 0;
	cursor: pointer;
}

.login-screen .forgot-passwort-MrUqIg {
    background-color: transparent;
    color: var(--green-haze);
    font-family: var(--font-family-noto_sans);
    font-size: var(--font-size-m);
    font-style: normal;
    font-weight: 500;
    letter-spacing: 0.50px;
    line-height: 16px;
    position: relative;
    text-align: center;
}

.login-screen .input {
    align-items: stretch;
    align-self: stretch;
    background-color: transparent;
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    position: relative;
}

.login-screen input {
    border: 1px solid;
    border-color: #d5d5d5;
    border-radius: 8px;
	padding: 16px 12px;
}

.login-screen input:hover {
	border-color: #4a5963;
}
.login-screen input:focus {
	border-color: #01a544;
	outline: 0;
}

.login-screen input.password-reset-input-invalid,
.login-screen input.password-reset-input-invalid:focus {
    border-color: #ea3641;
}

.login-screen .text-danger {
    color: #ea3641;
    font-weight: normal;
    font-size: 20px;
	margin-top: 2em;
	text-align: center;
}
.login-screen .text-success {
    color: var(--green-haze);
    font-size: 16px;
	margin-top: 2em;
	text-align: center;
}



.login-screen .login-forgot-password-link {
    align-self: flex-end;
    text-align: right;
}

.login-screen .forgot-passwort-MrUqIg:hover,
.login-screen .forgot-passwort-MrUqIg:focus {
    color: #018a39;
    text-decoration: underline;
    outline: 0;
}

.login-screen .button-ae-custom-MrUqIg:disabled {
    cursor: default;
    opacity: 0.55;
}

.login-screen .button-ae-custom-MrUqIg:not(:disabled):hover,
.login-screen .button-ae-custom-MrUqIg:not(:disabled):focus {
    background-color: #018a39;
    outline: 0;
}

.login-screen select {
    border: 1px solid #d5d5d5;
    border-radius: 8px;
    padding: 0 12px;
    min-height: 51px;
    background-color: #ffffff;
    color: var(--bright-gray);
    font-family: var(--font-family-noto_sans);
    font-size: var(--font-size-m);
    outline: 0;
}

.login-screen select:hover {
    border-color: #4a5963;
}

.login-screen select:focus {
    border-color: #01a544;
    outline: 0;
}

.login-screen input:disabled,
.login-screen select:disabled {
    background-color: #f4f4f4;
    color: #777777;
    cursor: default;
}

.login-screen .password-reset-card {
    gap: 32px;
    width: 430px;
}

.login-screen .password-reset-content {
    gap: 28px;
}

.password-reset-header {
    color: var(--bright-gray);
    text-align: center;
}

.password-reset-header h1 {
    color: var(--green-haze);
    font-size: 24px;
    font-weight: 600;
    line-height: 1.25;
    margin: 0 0 12px 0;
}

.password-reset-header p {
    font-size: var(--font-size-l);
    line-height: 1.55;
    margin: 0;
}

.password-reset-email-field {
    width: 100%;
}

.page-language-corner,
.password-reset-language-corner {
    position: fixed;
    right: 24px;
    top: 24px;
    z-index: 20;
}

.page-language-corner .language-select,
.password-reset-language-corner .language-select {
    height: 42px;
    width: 168px;
    position: relative;
}

.language-native-select {
    border: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

.language-select-toggle {
    align-items: center;
    background-color: #ffffff;
    border: 1px solid #d5d5d5;
    border-radius: 8px;
    color: var(--bright-gray);
    cursor: pointer;
    display: flex;
    font-family: var(--font-family-noto_sans);
    font-size: var(--font-size-m);
    gap: 8px;
    height: 100%;
    inset: 0;
    justify-content: flex-start;
    line-height: 1.35;
    min-height: 42px;
    padding: 0 36px 0 12px;
    position: absolute;
    text-align: left;
    width: 100%;
    z-index: 1;
}

.language-select::after {
    border-color: #4a5963 transparent transparent transparent;
    border-style: solid;
    border-width: 5px 4px 0 4px;
    content: "";
    height: 0;
    pointer-events: none;
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-35%);
    transition: transform 0.12s linear;
    width: 0;
    z-index: 3;
}

.language-select.is-open::after {
    transform: translateY(-35%) rotate(180deg);
}

.language-select:hover .language-select-toggle,
.language-select-toggle:hover {
    border-color: #4a5963;
}

.language-select-toggle:focus,
.language-select.is-open .language-select-toggle {
    border-color: #01a544;
    outline: 0;
}

.language-select-toggle:disabled {
    background-color: #f4f4f4;
    color: #777777;
    cursor: default;
}

.language-select-toggle:disabled .language-flag {
    opacity: 0.55;
}

.language-select-options {
    background-color: #ffffff;
    border: 1px solid #777777;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.10);
    display: none;
    left: 0;
    list-style: none;
    margin: 4px 0 0 0;
    max-height: 240px;
    overflow-y: auto;
    padding: 4px 0;
    position: absolute;
    top: 100%;
    width: 100%;
    z-index: 2;
}

.language-select.is-open .language-select-options {
    display: block;
}

.language-select-option {
    align-items: center;
    color: var(--bright-gray);
    cursor: pointer;
    display: flex;
    font-family: var(--font-family-noto_sans);
    font-size: var(--font-size-m);
    gap: 8px;
    line-height: 1.35;
    min-height: 29px;
    padding: 6px 12px;
    width: 100%;
}

.language-select-option:hover,
.language-select-option:focus {
    background-color: #eef3f5;
    outline: 0;
}

.language-select-option[aria-selected="true"] {
    background-color: #777777;
    color: #ffffff;
}

.language-select-label {
    line-height: 1.35;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.language-flag {
    border: 0;
    border-radius: 1px;
    flex: 0 0 auto;
    height: 14px;
    overflow: hidden;
    position: relative;
    width: 22px;
}

.language-flag-cs {
    background: linear-gradient(to bottom, #ffffff 0 50%, #d7141a 50% 100%);
}

.language-flag-cs::before {
    background-color: #11457e;
    clip-path: polygon(0 0, 58% 50%, 0 100%);
    content: "";
    inset: 0;
    position: absolute;
}

.language-flag-en {
    background:
        linear-gradient(33deg, transparent 40%, #ffffff 40% 46%, #c8102e 46% 51%, #ffffff 51% 57%, transparent 57%),
        linear-gradient(-33deg, transparent 40%, #ffffff 40% 46%, #c8102e 46% 51%, #ffffff 51% 57%, transparent 57%),
        linear-gradient(90deg, transparent 42%, #ffffff 42% 58%, transparent 58%),
        linear-gradient(0deg, transparent 35%, #ffffff 35% 65%, transparent 65%),
        linear-gradient(90deg, transparent 46%, #c8102e 46% 54%, transparent 54%),
        linear-gradient(0deg, transparent 42%, #c8102e 42% 58%, transparent 58%),
        #012169;
}

.language-flag-de {
    background: linear-gradient(to bottom, #000000 0 33.333%, #dd0000 33.333% 66.666%, #ffce00 66.666% 100%);
}

.language-flag-fr {
    background: linear-gradient(to right, #0055a4 0 33.333%, #ffffff 33.333% 66.666%, #ef4135 66.666% 100%);
}

.language-flag-sk {
    background: linear-gradient(to bottom, #ffffff 0 33.333%, #0b4ea2 33.333% 66.666%, #ee1c25 66.666% 100%);
}

.language-flag-sk::before {
    background: linear-gradient(to bottom, #ffffff 0 28%, #0b4ea2 28% 44%, #ee1c25 44% 100%);
    border: 1px solid #ffffff;
    border-radius: 1px 1px 4px 4px;
    content: "";
    height: 8px;
    left: 4px;
    position: absolute;
    top: 3px;
    width: 6px;
}

.language-flag-ua {
    background: linear-gradient(to bottom, #0057b7 0 50%, #ffd700 50% 100%);
}

.password-reset-message {
    border-radius: 8px;
    display: none;
    font-size: var(--font-size-m);
    line-height: 1.45;
    padding: 10px 12px;
}

.password-reset-message[aria-hidden="false"] {
    display: block;
}

.password-reset-message-success {
    background-color: #e8f7ee;
    border: 1px solid #9fdcb8;
    color: #047736;
}

.password-reset-message-error {
    background-color: #fdecef;
    border: 1px solid #f2a6ad;
    color: #b6202b;
}

.password-reset-message-detail {
    border-top: 1px solid rgba(182, 32, 43, 0.22);
    margin-top: 7px;
    padding-top: 7px;
    white-space: pre-line;
}

.login-screen .password-reset-actions {
    gap: 20px;
}

.password-change-message {
    align-self: center;
    max-width: 360px;
    width: 100%;
}

@media(max-width: 520px) {
    .login-screen .frame-26085763-Kb6M9W,
    .login-screen .password-reset-card {
        border-radius: 0;
        margin-top: 0;
        min-height: 100vh;
        padding: 36px 24px;
        width: 100vw;
    }

    .page-language-corner,
    .password-reset-language-corner {
        right: 16px;
        top: 16px;
    }

    .page-language-corner .language-select,
    .password-reset-language-corner .language-select {
        height: 38px;
        width: 148px;
    }

    .language-select-toggle {
        min-height: 38px;
    }
}



/*

.login_form {
    text-align: center;
    top: 0px;
    left: 0;
    right: 0;
	bottom: 0;
    position: absolute;
    background-color: #001020 ;
}
.login_form .hidden {
	visibility: hidden;
}
.login_form .login_form_body {
	padding: 50px 20px;
}
.login_form .login_form_body .logo {
	display: none;
}

@media(min-width: 1120px) {
    body {
        background-size: 96%;
    }
}
@media(min-width: 768px) {
	body {
		background-image: url("/uaa/images/bg-71f952ac1549ca3fea2b6f586da022dd.jpg");	
	}
    .login_form {
        width: 480px;
		bottom: 0;
        left: 0;
        top: 0;
		right: initial;
    }    
}
@media(min-width: 1120px) {
    body {
        background-size: 96%;
    }
}
@media(min-width: 330px) {
    body {
        background-size: 96%;
    }
	.login_form .login_form_body {
		padding: 50px 80px;
	}
	.login_form .login_form_body .logo {
		display: inline;
	}
}

.login_form .login_form_body {
	vertical-align: middle;
	margin: 0px auto 20px auto;
	width: inherit;
    background-color: #001020b8;
    position: absolute;
    width: 100%;
}

.login_form .login_form_body h2 {
    font-size: 16px;
    color: #868686;
}

.login_form form {
    color: #444;
    border-radius: 4px;
    width: 100%;
}

.login_form form .form-row+.form-row {
    margin-top: 15px;
}

.login_form form .form-row-submit {
	text-align: center;	
}

.login_form .text-danger {
    color: #ff896f !important;
    font-weight: normal;
    font-size: 20px;
	margin-top: 4em;
	text-align: center;
}
.login_form .text-success {
    color: #659f13 !important;
    font-size: 16px;
	margin-top: 4em;
	text-align: center;
}

.login_form form input[type="text"],
.login_form form input[type="password"]{
    height: 25px;
    padding: 0px 6px;
    font-size: 13px;
    border-radius: 3px;
    width: 100%;
	border: 1px solid #d8d8d8;
	outline: 0;
}

.login_form form button.submit {
    cursor: pointer;
    width: 61%;
    padding: 0 15px;
    line-height: 24px;
    min-height: 37px;
    font-size: 17px;
    border-radius: 10px;
    background-color: white;
    color: #40464d;
    background-image: none;
	border: none;
    opacity: 1;
	transition: opacity 0.2s linear;
	outline: 0;
}

@media(max-width: 500px) {
	.login_form form button.submit {
        width: 100%;
	}
	
}

.login_form form button.submit:hover, .login_form form button.submit:focus {
    opacity: 1;
    transition: 0.2s linear;
    color: #001020;
}

.login_form .logo_ae {
	bottom: 45px;
    text-align: center;
    position: absolute;
    width: 100%;
}

.form-row {
    width: inherit;
}

.app {
	margin-top: 12px;
    font-weight: normal;
    font-size: 0.8em;
    border-bottom: 1px solid #4e4e4e;
}

.app_name {
	margin-left: 5px;
    font-weight: bold;
}

*/
.login-screen .password-change-card {
    width: 430px;
}

.login-screen .password-field-stack {
    align-self: center;
    gap: 16px;
    max-width: 360px;
    width: 100%;
}

.login-screen .password-visibility-field {
    position: relative;
}

.login-screen .password-visibility-field input {
    padding-right: 52px;
    width: 100%;
}

.password-toggle-button {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 8px;
    color: var(--bright-gray);
    cursor: pointer;
    display: flex;
    font-size: 16px;
    height: 38px;
    justify-content: center;
    line-height: 1;
    padding: 0;
    position: absolute;
    right: 7px;
    top: 50%;
    transform: translateY(-50%);
    width: 38px;
}

.password-toggle-button:hover,
.password-toggle-button:focus {
    background-color: #f2f4f5;
    outline: 0;
}

.password-toggle-icon {
    align-items: center;
    display: inline-flex;
    height: 20px;
    justify-content: center;
    width: 20px;
}

.password-toggle-icon svg {
    display: block;
    fill: none;
    height: 20px;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
    width: 20px;
}

.password-toggle-icon circle {
    fill: currentColor;
    stroke: currentColor;
}
