:root {
    --keycloak-logo-url: url('../img/logo.svg');
    --keycloak-logo-height: 48px; 
    --keycloak-logo-width: clamp(3rem, 2.5rem + 2.2222vw, 4.5rem);
    --pf-v5-c-button--m-primary--BackgroundColor: #FF0000;
}

.pf-v5-c-login__container {
    grid-template-columns: 34rem;
    grid-template-areas: "header"
                         "main"
}

.login-pf body {
    background: var(--keycloak-bg-logo-url) no-repeat center center fixed;
    background-size: cover;
    font-family: TT Norms Pro !important;
    height: 100%;
    font-size: var(--font-size-s);
    text-align: center;
}

div.menu__logo {
    background-image: var(--keycloak-logo-url);
    height: var(--keycloak-logo-height);
    width: var(--keycloak-logo-width);
    background-repeat: no-repeat;
    background-size: contain;
    margin: 0 auto;
}

.pf-v5-c-login__header .pf-v5-c-brand {
    margin-block-end: 1.5em;
}

.pf-v5-c-login__main-body {
    padding-block-start: 3em;
}

div.kc-logo-text span {
    display: inline;
}

.kc-login-tooltip {
    position: relative;
    display: inline-block;
}

.kc-login-tooltip .kc-tooltip-text{
    top:-3px;
    left:160%;
    background-color: black;
    visibility: hidden;
    color: #fff;

    min-width:130px;
    text-align: center;
    border-radius: 2px;
    box-shadow:0 1px 8px rgba(0,0,0,0.6);
    padding: 5px;

    position: absolute;
    opacity:0;
    transition:opacity 0.5s;
}

/* Show tooltip */
.kc-login-tooltip:hover .kc-tooltip-text {
    visibility: visible;
    opacity:0.7;
}

/* Arrow for tooltip */
.kc-login-tooltip .kc-tooltip-text::after {
    content: " ";
    position: absolute;
    top: 15px;
    right: 100%;
    margin-top: -5px;
    border-width: 5px;
    border-style: solid;
    border-color: transparent black transparent transparent;
}

#kc-recovery-codes-list {
    columns: 2;
}

#certificate_subjectDN {
    overflow-wrap: break-word
}

hr {
    margin-top: var(--pf-v5-global--spacer--sm);
    margin-bottom: var(--pf-v5-global--spacer--md);
}

.pf-v5-c-button.pf-m-primary {
	display: flex;
	min-width: 112px;
	padding: var(--spacing-3, 12px) var(--spacing-6, 24px);
	justify-content: center;
	align-items: center;
	gap: var(--spacing-2, 8px);
	align-self: stretch;
	border-radius: var(--border-radius-s, 10px);
	border: 1px solid var(--surface-primary-block, #8F1B5A);
	background: var(--surface-primary-block, #8F1B5A);
	--pf-v5-c-button--after--BorderWidth: None;
	color: #fff;
}

.pf-v5-c-button.pf-m-secondary {
	color: var(--text-colored);
	font-weight: var(--pf-v5-global--link--FontWeight);
	text-decoration: var(--pf-v5-global--link--TextDecoration);
	font-family: var(--font-serif);
	font-size: var(--font-size-s);
	background: none;
	border: none;
	justify-content: center;
	--pf-v5-c-button--after--BorderWidth: None;
}

input{
  margin:0;
padding:0
}
input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0
}
input[type=number]{
  -moz-appearance:textfield
}
input[type=search]::-ms-clear{
  display:none;
width:0;
height:0
}
input[type=search]::-ms-reveal{
  display:none;
width:0;
height:0
}
input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-results-button,input[type="search"]::-webkit-search-results-decoration{
  display:none
}

.menu {
	display: flex;
	align-self: stretch;
	flex-direction: column;
	align-items: center;
	border-bottom: 1px solid var(--border-neutral-light);
	background: var(--surface-default);
}
.menu__container {
	width: 100%;
	max-width: var(--container-wide);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: var(--spacing-3);
}
.menu__row {
	padding: 0.125rem 0rem 0.125rem 1rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
	align-self: stretch;
}

.pf-v5-c-login__main{
    box-shadow: None;
}

#kc-header {
	margin-top: 0px;
}


/* locale dropdown */
.pf-v5-c-login__main-header-utilities .pf-v5-c-form-control {
    border: 0px none;
    width: 9rem;
    height: 30px;
}

.pf-v5-c-login__main-header-utilities .pf-v5-c-form-control>:is(input,select) {
    font-size: var(--font-size-s);
    line-height: var(--text-s);
    padding: 5px 0 5px 20px;
}
.pf-v5-c-login__main-header {
    display: inherit;
    padding-block-end: 0em;
    padding-block-start: 1em;
}


#kc-page-title, .kc-logo-text {
	color: var(--text-default-display);
	text-align: center;
	font-family: var(--font-serif);
	font-variant-numeric: oldstyle-nums proportional-nums;
	font-size: var(--font-size-l);
	font-feature-settings: 'ss04' on, 'ss02' on, 'ss06' on, 'ss01' on, 'salt' on;
	font-weight: 600;
	line-height: var(--text-s);
	letter-spacing: -0.045rem;
}

.kc-logo-text {
    font-weight: 900;
    font-size: var(--font-size-xl);
	line-height: var(--text-xl);
}

.pf-v5-c-form__label {
    text-align: left;
}

.pf-v5-c-form__label-text {
	font-weight: 500;
	color: var(--text-neutral-accent);
	line-height: var(--text-s);
	font-size: var(--font-size-s);
	padding-left: var(--spacing-1);
	font-family: var(--font-serif);
}

.pf-v5-c-form-control {
	display: flex;
	align-items: flex-start;
	align-self: stretch;
	border-radius: var(--border-radii-s);
	border: 1px solid var(--border-neutral);
	background: var(--surface-default);
	box-shadow: var(--shadow-xs);
	height: 58px;
	transition: all var(--duration-xs) var(--easing-1);
}

.pf-v5-c-form-control>:is(input,select) {
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	width: 100%;
	border: 0;
	font-family: var(--font-serif);
	font-variant-numeric: oldstyle-nums proportional-nums;
	font-feature-settings: 'ss04' on, 'ss02' on, 'ss06' on, 'ss01' on, 'salt' on;
	color: var(--text-default);
	font-size: var(--font-size-m);
	line-height: 56px;
	margin: 0;
	padding: 0 0 0 20px;
}

.pf-v5-c-button.pf-m-control::after {
	display: flex;
	align-items: flex-start;
	align-self: stretch;
	border-radius: var(--border-radii-s);
	border: 1px solid var(--border-neutral);
	box-shadow: var(--shadow-xs);
	height: 58px;
	transition: all var(--duration-xs) var(--easing-1);
}

.pf-v5-c-form-control::before, .pf-v5-c-form-control::after {
	border: 0px none;
}

.pf-v5-c-helper-text__item-text {
	color: var(--text-colored);
}

.pf-v5-c-helper-text__item-text {
	text-decoration-line: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}

.pf-v5-c-helper-text__item-text {
	padding: 30px 0 0 0;
}

:where(a) {
    color: var(--text-colored);
    font-weight: var(--pf-v5-global--link--FontWeight);
    text-decoration: var(--pf-v5-global--link--TextDecoration);
    font-family: var(--font-serif);
    font-size: var(--font-size-s);
}

.service_name {
    text-align: center;
    line-height: 1.9em;
}