/* Patternfly CSS places a "bg-login.jpg" as the background on this ".login-pf" class. This clashes with the "keycloak-bg.png' background defined on the body below. Therefore the Patternfly background must be set to none. */ .login-pf { background: none; } .login-pf body { background: linear-gradient(#000000f0, #00000070), url('../img/keycloak-bg.jpg') no-repeat center center fixed; background-size: cover; height: 100%; } /*IE compatibility*/ .pf-c-form-control { font-size: 14px; font-size: var(--pf-global--FontSize--sm); border-width: 1px; border-width: var(--pf-global--BorderWidth--sm); border-color: #ededed #ededed #8a8d90 #ededed; border-color: var(--pf-global--BorderColor--300) var(--pf-global--BorderColor--300) var(--pf-global--BorderColor--200) var(--pf-global--BorderColor--300); background-color: #ffffff; background-color: var(--pf-global--BackgroundColor--100); height: 36px; height: calc( var(--pf-c-form-control--FontSize) * var(--pf-c-form-control--LineHeight) + var(--pf-c-form-control--BorderWidth) * 2 + var(--pf-c-form-control--PaddingTop) + var(--pf-c-form-control--PaddingBottom) ); padding: 5px 0.5rem; padding: var(--pf-c-form-control--PaddingTop) var(--pf-c-form-control--PaddingRight) var(--pf-c-form-control--PaddingBottom) var(--pf-c-form-control--PaddingLeft); } textarea.pf-c-form-control { height: auto; } .pf-c-form-control:hover, .pf-c-form-control:focus { border-bottom-color: #0066cc; border-bottom-color: var(--pf-global--primary-color--100); border-bottom-width: 2px; border-bottom-width: var(--pf-global--BorderWidth--md); } .pf-c-form-control[aria-invalid='true'] { border-bottom-color: #c9190b; border-bottom-color: var(--pf-global--danger-color--100); border-bottom-width: 2px; border-bottom-width: var(--pf-global--BorderWidth--md); } .pf-c-check__label, .pf-c-radio__label { font-size: 14px; font-size: var(--pf-global--FontSize--sm); } .pf-c-alert.pf-m-inline { margin-bottom: 0.5rem; /* default - IE compatibility */ margin-bottom: var(--pf-global--spacer--sm); padding: 0.25rem; padding: var(--pf-global--spacer--xs); border: solid #ededed; border: solid var(--pf-global--BorderColor--300); border-width: 1px; border-width: var(--pf-c-alert--m-inline--BorderTopWidth) var(--pf-c-alert--m-inline--BorderRightWidth) var(--pf-c-alert--m-inline--BorderBottomWidth) var(--pf-c-alert--m-inline--BorderLeftWidth); display: -ms-flexbox; display: grid; -ms-grid-columns: max-content 1fr max-content; grid-template-columns: max-content 1fr max-content; grid-template-columns: var(--pf-c-alert--grid-template-columns); grid-template-rows: 1fr auto; grid-template-rows: var(--pf-c-alert--grid-template-rows); } .pf-c-alert.pf-m-inline::before { position: absolute; top: -1px; top: var(--pf-c-alert--m-inline--before--Top); bottom: -1px; bottom: var(--pf-c-alert--m-inline--before--Bottom); left: 0; width: 3px; width: var(--pf-c-alert--m-inline--before--Width); content: ''; background-color: #ffffff; background-color: var(--pf-global--BackgroundColor--100); } .pf-c-alert.pf-m-inline.pf-m-success::before { background-color: #92d400; background-color: var(--pf-global--success-color--100); } .pf-c-alert.pf-m-inline.pf-m-danger::before { background-color: #c9190b; background-color: var(--pf-global--danger-color--100); } .pf-c-alert.pf-m-inline.pf-m-warning::before { background-color: #f0ab00; background-color: var(--pf-global--warning-color--100); } .pf-c-alert.pf-m-inline .pf-c-alert__icon { padding: 1rem 0.5rem 1rem 1rem; padding: var(--pf-c-alert--m-inline__icon--PaddingTop) var(--pf-c-alert--m-inline__icon--PaddingRight) var(--pf-c-alert--m-inline__icon--PaddingBottom) var(--pf-c-alert--m-inline__icon--PaddingLeft); font-size: 16px; font-size: var(--pf-c-alert--m-inline__icon--FontSize); } .pf-c-alert.pf-m-success .pf-c-alert__icon { color: #92d400; color: var(--pf-global--success-color--100); } .pf-c-alert.pf-m-success .pf-c-alert__title { color: #486b00; color: var(--pf-global--success-color--200); } .pf-c-alert.pf-m-danger .pf-c-alert__icon { color: #c9190b; color: var(--pf-global--danger-color--100); } .pf-c-alert.pf-m-danger .pf-c-alert__title { color: #a30000; color: var(--pf-global--danger-color--200); } .pf-c-alert.pf-m-warning .pf-c-alert__icon { color: #f0ab00; color: var(--pf-global--warning-color--100); } .pf-c-alert.pf-m-warning .pf-c-alert__title { color: #795600; color: var(--pf-global--warning-color--200); } .pf-c-alert__title { font-size: 14px; /* default - IE compatibility */ font-size: var(--pf-global--FontSize--sm); padding: 5px 8px; padding: var(--pf-c-alert__title--PaddingTop) var(--pf-c-alert__title--PaddingRight) var(--pf-c-alert__title--PaddingBottom) var(--pf-c-alert__title--PaddingLeft); } .pf-c-button { padding: 0.375rem 1rem; padding: var(--pf-global--spacer--form-element) var(--pf-global--spacer--md); } /* default - IE compatibility */ .pf-m-primary { color: #ffffff; background-color: #0066cc; background-color: var(--pf-global--primary-color--100); } /* default - IE compatibility */ .pf-m-primary:hover { background-color: #004080; background-color: var(--pf-global--primary-color--200); } /* default - IE compatibility */ .pf-c-button.pf-m-control { border: solid 1px; border: solid var(--pf-global--BorderWidth--sm); border-color: rgba(230, 230, 230, 0.5); } /*End of IE compatibility*/ h1#kc-page-title { margin-top: 10px; } #kc-locale ul { background-color: #fff; background-color: var(--pf-global--BackgroundColor--100); display: none; top: 20px; min-width: 100px; padding: 0; } #kc-locale-dropdown { display: inline-block; } #kc-locale-dropdown:hover ul { display: block; } /* IE compatibility */ #kc-locale-dropdown a { color: #6a6e73; color: var(--pf-global--Color--200); text-align: right; font-size: 14px; font-size: var(--pf-global--FontSize--sm); } /* IE compatibility */ a#kc-current-locale-link::after { content: '\2c5'; margin-left: 4px; margin-left: var(--pf-global--spacer--xs); } .login-pf .container { padding-top: 40px; } .login-pf a:hover { color: #0099d3; } #kc-logo { width: 100%; } div.kc-logo-text { background-image: url(../img/keycloak-logo-text.png); background-size: contain; height: 63px; width: 300px; margin: 0 auto; } div.kc-logo-text span { display: none; } #kc-header { color: #ededed; overflow: visible; white-space: nowrap; } #kc-header-wrapper { font-size: 29px; text-transform: uppercase; letter-spacing: 3px; line-height: 1.2em; padding: 62px 10px 20px; white-space: normal; } #kc-content { width: 100%; } #kc-attempted-username { font-size: 20px; font-family: inherit; font-weight: normal; padding-right: 10px; } #kc-username { text-align: center; margin-bottom: -10px; } #kc-webauthn-settings-form { padding-top: 8px; } #kc-form-webauthn .select-auth-box-parent { pointer-events: none; } #kc-form-webauthn .select-auth-box-desc { color: var(--pf-global--palette--black-600); } #kc-form-webauthn .select-auth-box-headline { color: var(--pf-global--Color--300); } #kc-form-webauthn .select-auth-box-icon { flex: 0 0 3em; } #kc-form-webauthn .select-auth-box-icon-properties { margin-top: 10px; font-size: 1.8em; } #kc-form-webauthn .pf-l-stack__item { margin: -1px 0; } #kc-content-wrapper { margin-top: 20px; } #kc-form-wrapper { margin-top: 10px; } #kc-info { margin: 20px -40px -30px; } #kc-info-wrapper { font-size: 13px; padding: 15px 35px; background-color: #f0f0f0; } #kc-form-options span { display: block; } #kc-form-options .checkbox { margin-top: 0; color: #72767b; } #kc-terms-text { margin-bottom: 20px; } #kc-registration { margin-bottom: 0; } /* TOTP */ .subtitle { text-align: right; margin-top: 30px; color: #909090; } .required { color: #a30000; /* default - IE compatibility */ color: var(--pf-global--danger-color--200); } ol#kc-totp-settings { margin: 0; padding-left: 20px; } ul#kc-totp-supported-apps { margin-bottom: 10px; } #kc-totp-secret-qr-code { max-width: 150px; max-height: 150px; } #kc-totp-secret-key { background-color: #fff; color: #333333; font-size: 16px; padding: 10px 0; } /* OAuth */ #kc-oauth h3 { margin-top: 0; } #kc-oauth ul { list-style: none; padding: 0; margin: 0; } #kc-oauth ul li { border-top: 1px solid rgba(255, 255, 255, 0.1); font-size: 12px; padding: 10px 0; } #kc-oauth ul li:first-of-type { border-top: 0; } #kc-oauth .kc-role { display: inline-block; width: 50%; } /* Code */ #kc-code textarea { width: 100%; height: 8em; } /* Social */ .kc-social-links { margin-top: 20px; } .kc-social-provider-logo { font-size: 23px; width: 30px; height: 25px; float: left; } .kc-social-gray { color: #737679; /* default - IE compatibility */ color: var(--pf-global--Color--200); } .kc-social-item { margin-bottom: 0.5rem; /* default - IE compatibility */ margin-bottom: var(--pf-global--spacer--sm); font-size: 15px; text-align: center; } .kc-social-provider-name { position: relative; top: 3px; } .kc-social-icon-text { left: -15px; } .kc-social-grid { display: grid; grid-column-gap: 10px; grid-row-gap: 5px; grid-column-end: span 6; --pf-l-grid__item--GridColumnEnd: span 6; } .kc-social-grid .kc-social-icon-text { left: -10px; } .kc-login-tooltip { position: relative; display: inline-block; } .kc-social-section { text-align: center; } .kc-social-section hr { margin-bottom: 10px; } .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; } @media (min-width: 768px) { #kc-container-wrapper { position: absolute; width: 100%; } .login-pf .container { padding-right: 80px; } #kc-locale { position: relative; text-align: right; z-index: 9999; } } @media (max-width: 767px) { .login-pf body { background: white; } #kc-header { padding-left: 15px; padding-right: 15px; float: none; text-align: left; } #kc-header-wrapper { font-size: 16px; font-weight: bold; padding: 20px 60px 0 0; color: #72767b; letter-spacing: 0; } div.kc-logo-text { margin: 0; width: 150px; height: 32px; background-size: 100%; } #kc-form { float: none; } #kc-info-wrapper { border-top: 1px solid rgba(255, 255, 255, 0.1); background-color: transparent; } .login-pf .container { padding-top: 15px; padding-bottom: 15px; } #kc-locale { position: absolute; width: 200px; top: 20px; right: 20px; text-align: right; z-index: 9999; } } @media (min-height: 646px) { #kc-container-wrapper { bottom: 12%; } } @media (max-height: 645px) { #kc-container-wrapper { padding-top: 50px; top: 20%; } } .card-pf form.form-actions .btn { float: right; margin-left: 10px; } #kc-form-buttons { margin-top: 20px; } .login-pf-page .login-pf-brand { margin-top: 20px; max-width: 360px; width: 40%; } /* Internet Explorer 11 compatibility workaround for select-authenticator screen */ @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) { .select-auth-box-parent { border-top: 1px solid #f0f0f0; padding-top: 1rem; padding-bottom: 1rem; cursor: pointer; } .select-auth-box-headline { font-size: 16px; color: #06c; font-weight: bold; } .select-auth-box-desc { font-size: 14px; } .pf-l-stack { flex-basis: 100%; } } /* End of IE11 workaround for select-authenticator screen */ .select-auth-box-arrow { display: flex; align-items: center; margin-right: 2rem; } .select-auth-box-icon { display: flex; flex: 0 0 2em; justify-content: center; margin-right: 1rem; margin-left: 3rem; } .select-auth-box-parent { border-top: 1px solid var(--pf-global--palette--black-200); padding-top: 1rem; padding-bottom: 1rem; cursor: pointer; } .select-auth-box-parent:hover { background-color: #f7f8f8; } .select-auth-container { padding-bottom: 0px !important; } .select-auth-box-headline { font-size: var(--pf-global--FontSize--md); color: var(--pf-global--primary-color--100); font-weight: bold; } .select-auth-box-desc { font-size: var(--pf-global--FontSize--sm); } .select-auth-box-paragraph { text-align: center; font-size: var(--pf-global--FontSize--md); margin-bottom: 5px; } .card-pf { margin: 0 auto; box-shadow: var(--pf-global--BoxShadow--lg); padding: 0 20px; max-width: 500px; border-top: 4px solid; border-color: #0066cc; /* default - IE compatibility */ border-color: var(--pf-global--primary-color--100); } /*phone*/ @media (max-width: 767px) { .login-pf-page .card-pf { max-width: none; margin-left: 0; margin-right: 0; padding-top: 0; border-top: 0; box-shadow: 0 0; } .kc-social-grid { grid-column-end: 12; --pf-l-grid__item--GridColumnEnd: span 12; } .kc-social-grid .kc-social-icon-text { left: -15px; } } .login-pf-page .login-pf-signup { font-size: 15px; color: #72767b; } #kc-content-wrapper .row { margin-left: 0; margin-right: 0; } .login-pf-page.login-pf-page-accounts { margin-left: auto; margin-right: auto; } .login-pf-page .btn-primary { margin-top: 0; } .login-pf-page .list-view-pf .list-group-item { border-bottom: 1px solid #ededed; } .login-pf-page .list-view-pf-description { width: 100%; } #kc-form-login div.form-group:last-of-type, #kc-register-form div.form-group:last-of-type, #kc-update-profile-form div.form-group:last-of-type { margin-bottom: 0px; } .no-bottom-margin { margin-bottom: 0; } #kc-back { margin-top: 5px; } .fa-discord::before { font-style: normal; position: relative; content: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20640%20512%22%3E%3C%21--%21%20Font%20Awesome%20Pro%206.2.0%20by%20%40fontawesome%20-%20https%3A%2F%2Ffontawesome.com%20License%20-%20https%3A%2F%2Ffontawesome.com%2Flicense%20%28Commercial%20License%29%20Copyright%202022%20Fonticons%2C%20Inc.%20--%3E%3Cpath%20d%3D%22M524.531%2C69.836a1.5%2C1.5%2C0%2C0%2C0-.764-.7A485.065%2C485.065%2C0%2C0%2C0%2C404.081%2C32.03a1.816%2C1.816%2C0%2C0%2C0-1.923.91%2C337.461%2C337.461%2C0%2C0%2C0-14.9%2C30.6%2C447.848%2C447.848%2C0%2C0%2C0-134.426%2C0%2C309.541%2C309.541%2C0%2C0%2C0-15.135-30.6%2C1.89%2C1.89%2C0%2C0%2C0-1.924-.91A483.689%2C483.689%2C0%2C0%2C0%2C116.085%2C69.137a1.712%2C1.712%2C0%2C0%2C0-.788.676C39.068%2C183.651%2C18.186%2C294.69%2C28.43%2C404.354a2.016%2C2.016%2C0%2C0%2C0%2C.765%2C1.375A487.666%2C487.666%2C0%2C0%2C0%2C176.02%2C479.918a1.9%2C1.9%2C0%2C0%2C0%2C2.063-.676A348.2%2C348.2%2C0%2C0%2C0%2C208.12%2C430.4a1.86%2C1.86%2C0%2C0%2C0-1.019-2.588%2C321.173%2C321.173%2C0%2C0%2C1-45.868-21.853%2C1.885%2C1.885%2C0%2C0%2C1-.185-3.126c3.082-2.309%2C6.166-4.711%2C9.109-7.137a1.819%2C1.819%2C0%2C0%2C1%2C1.9-.256c96.229%2C43.917%2C200.41%2C43.917%2C295.5%2C0a1.812%2C1.812%2C0%2C0%2C1%2C1.924.233c2.944%2C2.426%2C6.027%2C4.851%2C9.132%2C7.16a1.884%2C1.884%2C0%2C0%2C1-.162%2C3.126%2C301.407%2C301.407%2C0%2C0%2C1-45.89%2C21.83%2C1.875%2C1.875%2C0%2C0%2C0-1%2C2.611%2C391.055%2C391.055%2C0%2C0%2C0%2C30.014%2C48.815%2C1.864%2C1.864%2C0%2C0%2C0%2C2.063.7A486.048%2C486.048%2C0%2C0%2C0%2C610.7%2C405.729a1.882%2C1.882%2C0%2C0%2C0%2C.765-1.352C623.729%2C277.594%2C590.933%2C167.465%2C524.531%2C69.836ZM222.491%2C337.58c-28.972%2C0-52.844-26.587-52.844-59.239S193.056%2C219.1%2C222.491%2C219.1c29.665%2C0%2C53.306%2C26.82%2C52.843%2C59.239C275.334%2C310.993%2C251.924%2C337.58%2C222.491%2C337.58Zm195.38%2C0c-28.971%2C0-52.843-26.587-52.843-59.239S388.437%2C219.1%2C417.871%2C219.1c29.667%2C0%2C53.307%2C26.82%2C52.844%2C59.239C470.715%2C310.993%2C447.538%2C337.58%2C417.871%2C337.58Z%22%2F%3E%3C%2Fsvg%3E"); width: 1em; filter: invert(47%) sepia(7%) saturate(333%) hue-rotate(174deg) brightness(88%) contrast(89%); display: inline-block; top: -4px; } .fa-tv::before { font-style: normal; position: relative; content: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20576%20512%22%3E%3C%21--%21%20Font%20Awesome%20Pro%206.2.0%20by%20%40fontawesome%20-%20https%3A%2F%2Ffontawesome.com%20License%20-%20https%3A%2F%2Ffontawesome.com%2Flicense%20%28Commercial%20License%29%20Copyright%202022%20Fonticons%2C%20Inc.%20--%3E%3Cpath%20d%3D%22M192%2096c26.5%200%2048-21.5%2048-48s-21.5-48-48-48s-48%2021.5-48%2048s21.5%2048%2048%2048zM59.4%20304.5L88%20256.9V480c0%2017.7%2014.3%2032%2032%2032s32-14.3%2032-32V352h16V480c0%2017.7%2014.3%2032%2032%2032s32-14.3%2032-32V235.3l47.4%2057.1c11.3%2013.6%2031.5%2015.5%2045.1%204.2s15.5-31.5%204.2-45.1l-73.7-88.9c-18.2-22-45.3-34.7-73.9-34.7H145.1c-33.7%200-64.9%2017.7-82.3%2046.6l-58.3%2097c-9.1%2015.1-4.2%2034.8%2010.9%2043.9s34.8%204.2%2043.9-10.9zM480%20240c0-26.5-21.5-48-48-48s-48%2021.5-48%2048s21.5%2048%2048%2048s48-21.5%2048-48zM464%20344v58.7l-41.4-41.4c-7.3-7.3-17.6-10.6-27.8-9s-18.9%208.1-23.5%2017.3l-48%2096c-7.9%2015.8-1.5%2035%2014.3%2042.9s35%201.5%2042.9-14.3L408.8%20438l54.7%2054.7c12.4%2012.4%2029.1%2019.3%2046.6%2019.3c36.4%200%2065.9-29.5%2065.9-65.9V344c0-30.9-25.1-56-56-56s-56%2025.1-56%2056zM288%2048c0%208.8%207.2%2016%2016%2016h56c8.8%200%2016-7.2%2016-16s-7.2-16-16-16H304c-8.8%200-16%207.2-16%2016zm-.8%2049.7c-7.9-4-17.5-.7-21.5%207.2s-.7%2017.5%207.2%2021.5l48%2024c7.9%204%2017.5%20.7%2021.5-7.2s.7-17.5-7.2-21.5l-48-24z%22%2F%3E%3C%2Fsvg%3E"); width: 1em; filter: invert(47%) sepia(7%) saturate(333%) hue-rotate(174deg) brightness(88%) contrast(89%); display: inline-block; top: -4px; }