html.login-pf { background: #eef2ef; }
.login-pf body {
 min-height:100vh;margin:0;padding:32px 20px;display:flex;align-items:center;justify-content:center;
 background:radial-gradient(circle at 50% 12%,rgba(47,139,82,.08),transparent 34%),linear-gradient(180deg,#f7f9f7,#eef2ef);
 color:#2c3330;font-family:Arial,Helvetica,sans-serif;
}
.login-pf-page {width:min(560px,100%);padding:0;}
#kc-header {display:none;}
.login-pf-page .card-pf {
 width:100%;max-width:none;margin:0;padding:42px 48px 38px;box-sizing:border-box;
 border:1px solid #d9dfdb;border-top:4px solid #2f8b52;border-radius:14px;
 background:rgba(255,255,255,.98);box-shadow:0 18px 52px rgba(42,54,48,.12);
}
.login-pf-page .login-pf-header {margin:0 0 30px;}
#kc-page-title {margin:0;text-align:center;color:#38413d;font-size:29px;font-weight:500;line-height:1.2;}
.mtm-logo {display:block;width:224px;max-width:82%;height:auto;margin:0 auto 26px;}
.mtm-title {display:block;}
.mtm-subtitle {display:block;margin:10px 0 0;color:#727f77;font-size:14px;font-weight:400;line-height:1.5;}
#kc-content,#kc-content-wrapper {margin:0;}
.form-group {margin-bottom:20px;}
.control-label {display:block;margin-bottom:7px;color:#4b5751;font-size:13px;font-weight:600;}
.form-control {
 width:100%;height:48px;padding:10px 12px;border:1px solid #c8d0cb;border-radius:7px;
 background:#fbfcfb;color:#28312c;font-size:15px;box-shadow:none;
}
.form-control:focus {outline:none;border-color:#2f8b52;background:#fff;box-shadow:0 0 0 3px rgba(47,139,82,.13);}
.pf-c-input-group {position:relative;display:flex;}
.pf-c-input-group .form-control {border-radius:7px;padding-right:48px;}
.pf-c-input-group .pf-c-button {position:absolute;right:5px;top:5px;height:38px;width:38px;border:0;background:transparent;color:#728078;z-index:2;}
.pf-c-input-group .pf-c-button:after {border:0;}
.pf-c-input-group .pf-c-button:hover {background:#eef4f0;border-radius:6px;color:#2f8b52;}
#kc-form-buttons {margin:26px 0 0;}
#kc-login,.btn-primary {
 width:100%;min-height:48px;padding:11px 16px;border:1px solid #267647;border-radius:7px;
 background:linear-gradient(180deg,#389a5d,#2f8b52 52%,#287b48);box-shadow:0 6px 16px rgba(47,139,82,.2);
 color:#fff;font-size:16px;font-weight:500;text-shadow:none;
}
#kc-login:hover,.btn-primary:hover {background:#287b48;}
a {color:#267647;}
.alert {border-radius:7px;font-size:14px;}
#kc-info-wrapper {background:transparent;padding:20px 0 0;}
#kc-locale {display:none;}
@media(max-width:600px) {
 .login-pf body {padding:20px 14px;}
 .login-pf-page .card-pf {padding:32px 24px;border-radius:11px;}
 #kc-page-title {font-size:26px;}
}
/* Keycloak 26.8 keycloak.v2 structure. Keep vendor behaviour and error states. */
.pf-v5-c-login {padding:0;background:transparent;min-height:0;width:100%;}
.pf-v5-c-login__container {display:block;width:min(560px,100%);margin:auto;padding:0;}
.pf-v5-c-login__header,.pf-v5-c-login__footer {display:none;}
.pf-v5-c-login__main {
 border:1px solid #d9dfdb;border-top:4px solid #2f8b52;border-radius:14px;
 background:#fff;box-shadow:0 18px 52px rgba(42,54,48,.12);overflow:hidden;
}
.pf-v5-c-login__main-header {padding:42px 48px 30px;display:block;}
.pf-v5-c-login__main-header-utilities {display:none;}
.pf-v5-c-login__main-body {padding:0 48px 38px;}
.pf-v5-c-form {gap:20px;}
.pf-v5-c-form__label {color:#4b5751;font-size:13px;font-weight:600;}
.pf-v5-c-form-control {border:1px solid #c8d0cb;border-radius:7px;background:#fbfcfb;}
.pf-v5-c-form-control:after {border:0;}
.pf-v5-c-form-control input {height:48px;padding:10px 12px;color:#28312c;font-size:15px;}
.pf-v5-c-form-control:focus-within {border-color:#2f8b52;box-shadow:0 0 0 3px rgba(47,139,82,.13);}
.pf-v5-c-input-group {gap:0;position:relative;}
.pf-v5-c-input-group__item.pf-m-fill {width:100%;}
.pf-v5-c-input-group input {padding-right:48px;}
.pf-v5-c-input-group__item:not(.pf-m-fill) {position:absolute;right:5px;top:5px;z-index:2;}
.pf-v5-c-input-group .pf-v5-c-button {width:38px;height:38px;padding:0;background:transparent;border:0;color:#728078;}
.pf-v5-c-input-group .pf-v5-c-button:after {border:0;}
.pf-v5-c-login__main-footer {padding:0 48px 24px;}
.pf-v5-c-login__main-footer:empty {display:none;}
@media(max-width:600px) {
 .pf-v5-c-login__main-header {padding:32px 24px 26px;}
 .pf-v5-c-login__main-body {padding:0 24px 30px;}
 .pf-v5-c-login__main-footer {padding:0 24px 24px;}
}

.pf-v5-c-login__main:before,.pf-v5-c-login__main:after {display:none;}
.pf-v5-c-login__main {--pf-v5-c-login__main--BorderTopColor:#2f8b52;--pf-v5-c-login__main--BorderTopWidth:0;}
