body{

    font-family:
    "Plus Jakarta Sans",
    sans-serif;

}
.login-pf-page {
    min-height: 100vh !important;
    padding: 52px 18px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
}

.login-pf-page::before,
.login-pf-page::after,
body::before,
body::after {
    display: none !important;
    content: none !important;
    background: none !important;
}

#kc-header {
    margin-bottom: 28px !important;
}

#kc-header-wrapper {
    color: #114b3d !important;
    font-size: 30px !important;
    font-weight: 800 !important;
    letter-spacing: -.04em !important;
    text-align: center !important;
    text-transform: none !important;
}

#kc-header-wrapper::before {
    display: none !important;
}

#kc-header-wrapper::after {
    content: "Satu Ekosistem Digital, Satu Data, Satu Identitas";
    display: block;
    margin-top: 10px;
    color: #68786f;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: .01em;
}

.login-pf-page .card-pf {
    width: 430px !important;
    max-width: 430px !important;
    padding: 38px 38px 34px !important;
    border-radius: 24px !important;
    background: rgba(255,255,255,.96) !important;
    border: 1px solid rgba(17,75,61,.12) !important;
    box-shadow:0 15px 45px rgba(0,0,0,.08);
}

#kc-page-title {
    font-size: 0 !important;
    margin-bottom: 30px !important;
    text-align: center !important;
}

#kc-page-title::after {
    content: "Masuk ke SATUNUSA";
    font-size: 24px;
    font-weight: 760;
    color: #26352f;
    letter-spacing: -.03em;
}

.control-label {
    color: #44554e !important;
    font-size: 13px !important;
    font-weight: 650 !important;
    margin-bottom: 7px !important;
}

label[for="username"] {
    font-size: 0 !important;
}

label[for="username"]::after {
    content: "Username (NIM / NPP)";
    font-size: 13px;
}

label[for="password"] {
    font-size: 0 !important;
}

label[for="password"]::after {
    content: "Kata Sandi";
    font-size: 13px;
}

.form-control {
    height: 46px !important;
    border-radius: 13px !important;
    border: 1px solid #d9dde5 !important;
    background: #fbfcfb !important;
    box-shadow: none !important;
}

.form-control:focus {
    border-color: #105742 !important;
    box-shadow: 0 0 0 4px rgba(16,87,66,.12) !important;
}

.input-group .form-control {
    border-radius: 13px 0 0 13px !important;
}

.input-group-btn .btn {
    height: 46px !important;
    border-radius: 0 13px 13px 0 !important;
    border-color: #d7e2dc !important;
    background: #fbfcfb !important;
}


@media (max-width: 520px) {
    .login-pf-page .card-pf {
        width: calc(100vw - 32px) !important;
        max-width: calc(100vw - 32px) !important;
        padding: 30px 23px !important;
    }

    #kc-header-wrapper {
        font-size: 25px !important;
    }
}
/* ===== Login Button SATUNUSA ===== */

#kc-login,
.pf-c-button.pf-m-primary {

    background: #006633 !important;
    background-image: none !important;

    border: 1px solid #006633 !important;

    color: #ffffff !important;

    border-radius: 12px !important;

    font-weight: 700 !important;

    transition: .2s;
}

#kc-login:hover,
.pf-c-button.pf-m-primary:hover {

    background: #00552B !important;
    border-color: #00552B !important;
}

#kc-login:focus,
.pf-c-button.pf-m-primary:focus {

    box-shadow: 0 0 0 .25rem rgba(0,102,51,.25) !important;
}
html.login-pf,
html.login-pf body,
html.login-pf .login-pf-page {

    background:
        url("../img/background.png")
        center center
        / cover
        no-repeat !important;
}
.login-pf-page::after{

content:"© 2026 Direktorat Transformasi Digital • Universitas Nahdlatul Ulama Surabaya";

display:block;

margin-top:24px;

font-size:12px;

color:#8A97A5;

}
body::after {

    content: "© 2026 Direktorat Transformasi Digital • Universitas Nahdlatul Ulama Surabaya";

    position: fixed;

    left: 0;
    right: 0;
    bottom: 20px;

    text-align: center;

    font-size: 12px;

    color: #7d8792;

    z-index: 9999;

    pointer-events: none;
}
