:root { color-scheme: dark; --pf-global--primary-color--100:#ff6728; }
html,body,.login-pf body { min-height:100%; background:#101010 !important; color:#f3f1ed; font-family:Arial,Helvetica,sans-serif; }
.login-pf-page { padding:76px 20px 40px; }
#kc-header { margin:0 0 36px; color:#f3f1ed; }
#kc-header-wrapper { padding:0; font-size:21px; font-weight:700; letter-spacing:3px; }
#kc-header-wrapper::before { content:'+'; display:inline-grid; place-items:center; margin-right:12px; width:29px; height:29px; background:#ff6728; color:#121212; font-size:29px; line-height:1; }
.card-pf { max-width:520px; padding:38px 40px 30px; background:#181818; border:1px solid #363636; border-radius:2px; box-shadow:none; }
.login-pf-page .card-pf { margin-top:0; }
.login-pf-page .login-pf-header { margin:0 0 30px; }
#kc-page-title { color:#f3f1ed; font-size:31px; font-weight:500; line-height:1.15; letter-spacing:-1px; }
.form-group { margin-bottom:24px; }
.control-label { color:#aeaaa4; font-size:13px; font-weight:400; padding-bottom:9px; }
.form-control { height:45px; color:#f3f1ed; background:#101010; border:1px solid #484848; box-shadow:none; border-radius:2px; padding:10px 12px; }
.form-control:hover { border-color:#777; }
.form-control:focus { border-color:#ff6728; outline:2px solid #ff672844; box-shadow:none; }
.btn-primary,.pf-c-button.pf-m-primary { color:#141414; background:#ff6728; border:1px solid #ff6728; border-radius:2px; box-shadow:none; text-shadow:none; height:44px; font-size:14px; font-weight:600; }
.btn-primary:hover,.btn-primary:focus { background:#ff7d46; border-color:#ff7d46; color:#141414; }
.pf-c-button.pf-m-control { color:#aaa; background:#202020; border-color:#484848; }
a,.login-pf a:hover { color:#ff8753; }
#kc-locale { top:0; right:0; }
#kc-locale button { background:#181818; color:#aaa; border-color:#363636; font-size:12px; }
#kc-locale ul { background:#202020; border-color:#484848; }
#kc-locale ul li a { color:#ddd; }
#kc-locale ul li a:hover { background:#353535; }
#kc-info-wrapper { background:#181818; padding:16px 0 0; color:#aaa; }
.alert { background:#25201c; color:#ffbc96; border:1px solid #805139; }
.alert-error { background:#2b1919; color:#f4aaaa; }
.pf-c-form__helper-text.pf-m-error { color:#f4aaaa; }
#kc-totp-settings { padding-left:18px; color:#ccc; font-size:14px; line-height:1.6; }
#kc-totp-secret-qr-code { background:white; padding:10px; max-width:100%; }
.required { color:#ff8753; }
@media(max-width:600px) { .login-pf-page{padding:35px 16px}.card-pf{padding:28px 23px}#kc-page-title{font-size:26px}#kc-header{margin-bottom:27px} }
