/* 2.9.39 - Final cleanup: remove public profile section and redesign registration page/warnings. */

/* Remove the former "Profil Sistem / Tentang Portal Persuratan" block from the public landing page. */
.sps-company-front #sps-profil-sistem,
.sps-company-front .sps-company-profile.sps-company-section-5{
    display:none!important;
}
.sps-company-front .sps-company-desktop-links a[href="#sps-profil-sistem"],
body > .sps-public-drawer--portal a[href="#sps-profil-sistem"],
.sps-company-front .sps-mobile-drawer a[href="#sps-profil-sistem"]{
    display:none!important;
}
.sps-company-front #sps-laporan-persuratan{
    margin-top:clamp(28px,4vw,46px)!important;
}

/* Registration page: calm institutional layout, compact desktop, distinct mobile. */
.sps-portal-register .sps-auth-wrap{
    min-height:100svh!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:clamp(18px,3.8vw,48px)!important;
    overflow:auto!important;
    background:
        radial-gradient(circle at 11% 12%,rgba(15,122,85,.30),transparent 0 280px),
        radial-gradient(circle at 92% 12%,rgba(56,189,248,.18),transparent 0 300px),
        linear-gradient(135deg,#053126 0 28%,#eefaf8 28% 100%)!important;
}
.sps-portal-register .sps-register-card-1{
    width:min(1040px,100%)!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    padding:0!important;
    overflow:hidden!important;
    border:1px solid rgba(15,122,85,.18)!important;
    border-radius:30px!important;
    background:#fff!important;
    box-shadow:0 34px 95px rgba(2,44,34,.20)!important;
}
.sps-portal-register .sps-register-section-1{
    grid-column:1!important;
    grid-row:auto!important;
    position:relative!important;
    display:grid!important;
    grid-template-columns:72px minmax(0,1fr) auto!important;
    grid-template-areas:
        "logo kicker home"
        "logo title home"
        "logo desc home"!important;
    align-items:center!important;
    gap:6px 18px!important;
    min-height:0!important;
    padding:26px 30px!important;
    border:0!important;
    border-bottom:1px solid rgba(15,122,85,.14)!important;
    background:
        linear-gradient(90deg,rgba(255,255,255,.06) 0 1px,transparent 1px) 0 0/24px 24px,
        linear-gradient(135deg,#052f26 0%,#074f3c 56%,#0f7a55 100%)!important;
    color:#fff!important;
}
.sps-portal-register .sps-register-section-1:before{
    content:""!important;
    grid-area:logo!important;
    position:static!important;
    display:block!important;
    width:64px!important;
    height:64px!important;
    border-radius:20px!important;
    border:1px solid rgba(255,255,255,.24)!important;
    background:rgba(255,255,255,.12) url("https://yayasan.tunasharapanummat.or.id/wp-content/uploads/2026/05/cropped-INTERNASIONAL-LOGO2-1.png") center/48px auto no-repeat!important;
    box-shadow:0 16px 35px rgba(0,0,0,.18)!important;
    pointer-events:none!important;
}
.sps-portal-register .sps-register-section-1:after{
    content:""!important;
    position:absolute!important;
    right:-96px!important;
    top:-96px!important;
    width:220px!important;
    height:220px!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.10)!important;
    pointer-events:none!important;
}
.sps-portal-register .sps-register-kicker-1{
    grid-area:kicker!important;
    margin:0!important;
    color:#f8d77b!important;
    font-size:11px!important;
    font-weight:900!important;
    letter-spacing:.16em!important;
    text-transform:uppercase!important;
}
.sps-portal-register .sps-register-title-1{
    grid-area:title!important;
    max-width:none!important;
    margin:0!important;
    color:#fff!important;
    font-size:clamp(30px,3.4vw,42px)!important;
    line-height:1.02!important;
    letter-spacing:-.045em!important;
    font-weight:900!important;
}
.sps-portal-register .sps-register-description-1{
    grid-area:desc!important;
    max-width:680px!important;
    margin:0!important;
    color:rgba(255,255,255,.84)!important;
    font-size:14px!important;
    line-height:1.65!important;
}
.sps-portal-register .sps-register-home-link{
    grid-area:home!important;
    position:relative!important;
    left:auto!important;
    top:auto!important;
    right:auto!important;
    z-index:2!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    justify-self:end!important;
    width:max-content!important;
    max-width:220px!important;
    min-height:40px!important;
    margin:0!important;
    padding:9px 14px!important;
    border:1px solid rgba(255,255,255,.24)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.10)!important;
    color:#fff!important;
    font-size:13px!important;
    font-weight:800!important;
    text-decoration:none!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
}
.sps-portal-register .sps-register-home-link:hover{
    background:rgba(255,255,255,.16)!important;
    transform:none!important;
}
.sps-portal-register .sps-register-section-2{
    grid-column:1!important;
    position:relative!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:0!important;
    padding:22px 34px 8px!important;
    border:0!important;
    background:#fff!important;
}
.sps-portal-register .sps-register-section-2:before{
    content:""!important;
    position:absolute!important;
    left:60px!important;
    right:60px!important;
    top:39px!important;
    height:1px!important;
    background:linear-gradient(90deg,rgba(15,122,85,.55),rgba(15,122,85,.08))!important;
}
.sps-portal-register .sps-register-step{
    position:relative!important;
    z-index:1!important;
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
}
.sps-portal-register .sps-register-step strong{
    display:grid!important;
    place-items:center!important;
    flex:0 0 34px!important;
    width:34px!important;
    height:34px!important;
    border-radius:999px!important;
    background:#064632!important;
    color:#fff!important;
    font-size:13px!important;
    font-weight:900!important;
    box-shadow:0 0 0 10px #fff!important;
}
.sps-portal-register .sps-register-step span{
    color:#0b1724!important;
    font-size:13px!important;
    line-height:1.25!important;
    font-weight:850!important;
}
.sps-portal-register .sps-register-form-1{
    grid-column:1!important;
    padding:22px 34px 24px!important;
    background:#fff!important;
}
.sps-portal-register .sps-register-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:18px 18px!important;
}
.sps-portal-register .sps-register-field,
.sps-portal-register .sps-human-check label{
    display:grid!important;
    gap:8px!important;
    color:#102033!important;
    font-size:13px!important;
    font-weight:850!important;
    line-height:1.25!important;
}
.sps-portal-register .sps-register-field input,
.sps-portal-register .sps-register-field select,
.sps-portal-register .sps-human-check input[type=number]{
    width:100%!important;
    min-height:48px!important;
    padding:11px 14px!important;
    border:1px solid rgba(100,116,139,.40)!important;
    border-radius:14px!important;
    background:#fbfdfc!important;
    color:#0b1724!important;
    font-size:14px!important;
    box-shadow:none!important;
    transition:border-color .16s ease,box-shadow .16s ease,background .16s ease!important;
}
.sps-portal-register .sps-register-field input:focus,
.sps-portal-register .sps-register-field select:focus,
.sps-portal-register .sps-human-check input[type=number]:focus{
    border-color:#0f7a55!important;
    background:#fff!important;
    box-shadow:0 0 0 4px rgba(15,122,85,.12)!important;
    outline:0!important;
}
.sps-portal-register .sps-register-field.is-error input,
.sps-portal-register .sps-register-field.is-error select,
.sps-portal-register .sps-human-check.is-error input[type=number]{
    border-color:#ef8f84!important;
    background:#fff8f7!important;
    box-shadow:0 0 0 4px rgba(239,68,68,.08)!important;
}
.sps-portal-register .sps-register-form-1 .sps-error-message{
    display:none!important;
}
.sps-portal-register .sps-required-mark{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:max-content!important;
    min-height:20px!important;
    margin:0 0 -3px!important;
    padding:2px 8px!important;
    border:1px solid #fecaca!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#9f1d1d!important;
    font-size:10px!important;
    line-height:1!important;
    font-weight:850!important;
    letter-spacing:.01em!important;
}
.sps-portal-register .sps-human-check{
    margin:22px 0 0!important;
    padding:18px!important;
    border:1px solid rgba(15,122,85,.16)!important;
    border-radius:18px!important;
    background:linear-gradient(135deg,#f8fafc,#f5fffa)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9)!important;
}
.sps-portal-register .sps-human-check label{
    grid-template-columns:minmax(200px,1fr) minmax(160px,220px)!important;
    align-items:center!important;
    color:#0f3025!important;
}
.sps-portal-register .sps-honeypot{display:none!important}
.sps-portal-register .sps-register-submit-button{
    width:100%!important;
    min-height:50px!important;
    margin-top:20px!important;
    border:0!important;
    border-radius:999px!important;
    background:linear-gradient(135deg,#053126 0%,#0f7a55 100%)!important;
    color:#fff!important;
    font-size:14.5px!important;
    font-weight:900!important;
    box-shadow:0 18px 38px rgba(15,122,85,.22)!important;
}
.sps-portal-register .sps-register-submit-button:hover{
    filter:brightness(1.04)!important;
    transform:translateY(-1px)!important;
}
.sps-portal-register .sps-register-switch{
    grid-column:1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:12px!important;
    margin:0!important;
    padding:0 34px 30px!important;
    border:0!important;
    background:#fff!important;
    color:#475569!important;
    font-size:13px!important;
    font-weight:600!important;
}
.sps-portal-register .sps-register-login-link{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:40px!important;
    padding:9px 16px!important;
    border:1px solid rgba(15,122,85,.24)!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#064632!important;
    font-weight:850!important;
    text-decoration:none!important;
}
.sps-portal-register .sps-register-login-link:hover{
    background:#eaf9f2!important;
    box-shadow:none!important;
}

/* Warning popup: crisp, tidy, no heavy blur. */
body.sps-register-alert-open{
    overflow:auto!important;
}
.sps-register-error-backdrop{
    position:fixed!important;
    inset:0!important;
    z-index:2147482500!important;
    background:rgba(2,44,34,.24)!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
}
.sps-register-error-modal{
    position:fixed!important;
    top:50%!important;
    left:50%!important;
    right:auto!important;
    transform:translate(-50%,-50%)!important;
    z-index:2147482600!important;
    width:min(430px,calc(100vw - 32px))!important;
    max-height:calc(100svh - 36px)!important;
    overflow:auto!important;
    margin:0!important;
    padding:20px!important;
    border:1px solid #ffd0cc!important;
    border-top:5px solid #c03327!important;
    border-left:1px solid #ffd0cc!important;
    border-radius:22px!important;
    background:#fff!important;
    box-shadow:0 26px 76px rgba(15,23,42,.28)!important;
    color:#7f1d1d!important;
}
.sps-register-error-modal:focus{
    outline:0!important;
    box-shadow:0 0 0 4px rgba(192,51,39,.12),0 26px 76px rgba(15,23,42,.28)!important;
}
.sps-register-error-modal .sps-register-error-kicker{
    display:inline-flex!important;
    align-items:center!important;
    min-height:24px!important;
    padding:4px 9px!important;
    border-radius:999px!important;
    background:#fff1f0!important;
    color:#a32018!important;
    font-size:10.5px!important;
    font-weight:900!important;
    letter-spacing:.12em!important;
    text-transform:uppercase!important;
}
.sps-register-error-modal strong{
    display:block!important;
    margin:12px 42px 6px 0!important;
    color:#7f1d1d!important;
    font-size:22px!important;
    line-height:1.1!important;
    font-weight:900!important;
    letter-spacing:-.035em!important;
}
.sps-register-error-modal p{
    margin:0 0 14px!important;
    color:#7f1d1d!important;
    font-size:13.5px!important;
    line-height:1.55!important;
}
.sps-register-error-modal ul{
    display:grid!important;
    gap:8px!important;
    margin:0!important;
    padding:0!important;
    list-style:none!important;
}
.sps-register-error-modal li{
    margin:0!important;
    padding:0!important;
}
.sps-register-error-modal a{
    display:flex!important;
    align-items:flex-start!important;
    gap:9px!important;
    min-height:38px!important;
    padding:9px 10px!important;
    border:1px solid #fee2e2!important;
    border-radius:12px!important;
    background:#fffafa!important;
    color:#8f1d17!important;
    font-size:13px!important;
    line-height:1.35!important;
    font-weight:750!important;
    text-decoration:none!important;
}
.sps-register-error-modal a:before{
    content:""!important;
    flex:0 0 7px!important;
    width:7px!important;
    height:7px!important;
    margin-top:.43em!important;
    border-radius:999px!important;
    background:#c03327!important;
    box-shadow:0 0 0 4px #fee2e2!important;
}
.sps-register-error-modal a:hover{
    background:#fff5f4!important;
    border-color:#fecaca!important;
}
.sps-register-error-close{
    position:absolute!important;
    top:14px!important;
    right:14px!important;
    display:grid!important;
    place-items:center!important;
    width:34px!important;
    height:34px!important;
    padding:0!important;
    border:1px solid #fee2e2!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#7f1d1d!important;
    font-size:20px!important;
    line-height:1!important;
    font-weight:800!important;
    cursor:pointer!important;
}
.sps-register-error-close:hover{
    background:#fff1f0!important;
    box-shadow:none!important;
}

@media(max-width:860px){
    .sps-portal-register .sps-auth-wrap{
        display:block!important;
        padding:0!important;
        background:#f6fbfa!important;
    }
    .sps-portal-register .sps-register-card-1{
        min-height:100svh!important;
        width:100%!important;
        border:0!important;
        border-radius:0!important;
        box-shadow:none!important;
    }
    .sps-portal-register .sps-register-section-1{
        grid-template-columns:52px minmax(0,1fr) auto!important;
        grid-template-areas:
            "logo kicker home"
            "logo title home"!important;
        gap:4px 12px!important;
        padding:18px 16px!important;
        border-radius:0 0 22px 22px!important;
    }
    .sps-portal-register .sps-register-section-1:before{
        width:48px!important;
        height:48px!important;
        border-radius:15px!important;
        background-size:36px auto!important;
    }
    .sps-portal-register .sps-register-description-1{
        display:none!important;
    }
    .sps-portal-register .sps-register-title-1{
        font-size:24px!important;
        letter-spacing:-.035em!important;
    }
    .sps-portal-register .sps-register-kicker-1{
        font-size:9.5px!important;
        letter-spacing:.10em!important;
    }
    .sps-portal-register .sps-register-home-link{
        min-height:36px!important;
        padding:8px 10px!important;
        font-size:0!important;
        max-width:42px!important;
        border-radius:999px!important;
    }
    .sps-portal-register .sps-register-home-link:before{
        content:"←"!important;
        font-size:17px!important;
        color:#fff!important;
    }
    .sps-portal-register .sps-register-section-2{
        grid-template-columns:repeat(3,1fr)!important;
        padding:18px 16px 4px!important;
    }
    .sps-portal-register .sps-register-section-2:before{
        left:32px!important;
        right:32px!important;
        top:35px!important;
    }
    .sps-portal-register .sps-register-step{
        justify-content:center!important;
    }
    .sps-portal-register .sps-register-step strong{
        flex-basis:32px!important;
        width:32px!important;
        height:32px!important;
        box-shadow:0 0 0 8px #fff!important;
    }
    .sps-portal-register .sps-register-step span{
        display:none!important;
    }
    .sps-portal-register .sps-register-form-1{
        padding:18px 16px 18px!important;
    }
    .sps-portal-register .sps-register-grid{
        grid-template-columns:1fr!important;
        gap:14px!important;
    }
    .sps-portal-register .sps-human-check{
        padding:14px!important;
        border-radius:16px!important;
    }
    .sps-portal-register .sps-human-check label{
        grid-template-columns:1fr!important;
        gap:10px!important;
    }
    .sps-portal-register .sps-register-switch{
        justify-content:space-between!important;
        padding:0 16px 22px!important;
    }
    .sps-register-error-backdrop{
        background:rgba(2,44,34,.22)!important;
    }
    .sps-register-error-modal{
        top:auto!important;
        left:12px!important;
        right:12px!important;
        bottom:12px!important;
        width:auto!important;
        max-height:70svh!important;
        transform:none!important;
        padding:18px 16px 16px!important;
        border-radius:20px!important;
    }
    .sps-register-error-modal strong{
        font-size:20px!important;
    }
    .sps-register-error-modal p{
        font-size:13px!important;
        margin-bottom:10px!important;
    }
    .sps-register-error-modal a{
        min-height:34px!important;
        padding:8px 9px!important;
        font-size:12.5px!important;
    }
}

@media(max-width:430px){
    .sps-portal-register .sps-register-title-1{
        font-size:21px!important;
    }
    .sps-portal-register .sps-register-field input,
    .sps-portal-register .sps-register-field select,
    .sps-portal-register .sps-human-check input[type=number]{
        min-height:46px!important;
    }
    .sps-portal-register .sps-register-switch{
        align-items:stretch!important;
        flex-direction:column!important;
        gap:10px!important;
    }
    .sps-portal-register .sps-register-login-link{
        width:100%!important;
    }
}
