/* Thunder web tokens are generated from brand/tokens.json. Keycloak owns forms. */
:root{color-scheme:dark}
#kc-header{display:none}
html,.login-pf,.login-pf body{min-height:100%;background:var(--th-background);color:var(--th-text)}
.login-pf body{background-image:none;font-family:var(--th-font);font-size:16px;line-height:1.65}
.login-pf-page{padding:36px 20px}#kc-header{margin-bottom:24px;color:var(--th-text)}
#kc-header-wrapper{max-width:520px;margin:auto;padding:0;display:flex;align-items:center;justify-content:center;gap:12px;font-size:19px;font-weight:600;letter-spacing:1px;line-height:1.4;color:var(--th-text)}
#kc-header-wrapper::before{content:"";display:block;flex:0 0 48px;width:48px;height:48px;background:url('../img/storm-emblem.png') center/contain no-repeat}
.login-pf-page .card-pf{max-width:520px;padding:28px;border:1px solid var(--th-border);border-top:2px solid var(--th-steel);border-radius:var(--th-radius);background:var(--th-surface);box-shadow:none}
#kc-page-title{margin:0 0 20px;font-size:26px;line-height:1.3;font-weight:600;color:var(--th-text)}.login-pf-page .login-pf-header{margin-bottom:20px}
.pf-c-form__label,label,.control-label{color:var(--th-text);font-size:14px}
.pf-c-form-control,input[type=text],input[type=email],input[type=password]{min-height:44px;border:1px solid #415360;border-radius:5px;background:var(--th-background);color:var(--th-text);font:inherit;box-shadow:none}
.pf-c-button.pf-m-primary,input[type=submit],button[type=submit],.btn-primary{min-height:44px;border:1px solid var(--th-accent);border-radius:5px;background:var(--th-accent);background-image:none;color:#111a20;font:600 14px/1.4 var(--th-font);box-shadow:none}
.pf-c-button.pf-m-primary:hover,input[type=submit]:hover,button[type=submit]:hover,.btn-primary:hover{background:#92df66;border-color:#92df66;color:#111a20}
.pf-c-button.pf-m-control{background:var(--th-raised);border:1px solid #415360;border-radius:5px;color:var(--th-text)}
a,a:visited{color:var(--th-accent);text-underline-offset:3px}a:hover{color:#92df66}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--th-blue);outline-offset:4px}
#kc-info{margin:20px 0 0}#kc-info-wrapper{padding:16px;background:var(--th-raised);border-radius:5px;color:var(--th-muted)}
#kc-form-options span,#kc-form-options .checkbox,.instruction{color:var(--th-muted)}
.pf-c-alert{border-radius:var(--th-radius);background:#202d37;color:var(--th-text)}.pf-c-alert.pf-m-warning{background:#382f1a;color:#f3db9c}.pf-c-alert.pf-m-danger{background:#3b222a;color:#ffb9bd}.pf-c-alert.pf-m-success{background:#173329;color:#b7efd2}#input-error{color:#ffb9bd}
.pf-c-input-group{border:1px solid #415360;border-radius:5px;background:var(--th-background)}.pf-c-input-group::before,.pf-c-input-group::after,.pf-c-form-control::after,.pf-c-button.pf-m-control::after{border:0}
.pf-c-input-group .pf-c-form-control{border:0;border-radius:5px 0 0 5px}.pf-c-input-group .pf-c-button{border:0;border-radius:0 5px 5px 0}.pf-c-input-group:focus-within{outline:2px solid var(--th-blue);outline-offset:4px}.pf-c-input-group input:focus-visible{outline:none}
#kc-social-providers a{min-height:44px;border:1px solid #415360;border-radius:5px;background:var(--th-raised);color:var(--th-text);display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 16px;font:600 14px/1.4 var(--th-font)}
#kc-social-providers a:hover{background:#253742;border-color:#647985}#kc-social-providers .kc-social-provider-logo,#kc-social-providers .kc-social-provider-name{position:static;margin:0;transform:none}
@media(max-width:560px){.login-pf-page{padding:24px 16px}.login-pf-page .card-pf{padding:20px}#kc-header-wrapper{font-size:17px}}
