body.jet-login-lite main {

  position: relative;

}



.jet-login-bg {

  position: absolute;

  inset: 0;

  z-index: 0;

}



.jet-login-bg-image {

  position: absolute;

  inset: 0;

  background: url('../img/auth-hero.jpg') center center / cover no-repeat;

}



.jet-login-bg-overlay {

  position: absolute;

  inset: 0;

  background:

    linear-gradient(180deg, rgb(15 23 42 / 0.4) 0%, rgb(15 23 42 / 0.55) 45%, rgb(15 23 42 / 0.88) 100%),

    linear-gradient(140deg, rgb(16 185 129 / 0.28) 0%, transparent 55%);

}



.jet-login-panel-shade {

  background: linear-gradient(

    to right,

    rgb(15 23 42 / 0.15) 0%,

    rgb(15 23 42 / 0.35) 55%,

    rgb(15 23 42 / 0.72) 100%

  );

}



.story-link { text-underline-offset: 4px; text-decoration: none; }

.story-link:hover { text-decoration: underline; }



.alert-validation-msg { border-radius: 12px; font-size: 13px; line-height: 1.4; }

.alert .alert-body { display: flex; align-items: flex-start; gap: 0.5rem; }

.alert-success { color: #0f5132; background-color: #d1e7dd; border: 1px solid #badbcc; }

.alert-warning { color: #664d03; background-color: #fff3cd; border: 1px solid #ffecb5; }

.alert-danger, .alert-error { color: #b45309; background-color: #fffbeb; border: 1px solid #fde68a; }



body.jet-login-lite main .animate-shift,

body.jet-login-lite main .animate-float-slow,

body.jet-login-lite main .animate-streak,

body.jet-login-lite main .animate-particle,

body.jet-login-lite main .animate-scan-line,

body.jet-login-lite main .animate-drift,

body.jet-login-lite main .animate-pulse-ring,

body.jet-login-lite main .animate-glow-pulse,

body.jet-login-lite main .animate-rise {

    animation: none !important;

}



body.jet-login-lite main .tilt-on-hover,

body.jet-login-lite main .tilt-on-hover:hover {

    transform: none !important;

    transition: none !important;

}



body.jet-login-lite #jet-login-form,

body.jet-login-lite #jet-register-form {

    transform: none !important;

}



body.jet-login-lite #jet-login-form > div.pointer-events-none,

body.jet-login-lite #jet-register-form > div.pointer-events-none {

    opacity: 0 !important;

}



.jet-login-logo {

    width: 5.5rem;

    height: 5.5rem;

    border-radius: 1.25rem;

    background: linear-gradient(135deg, #10b981, #059669);

    color: #fff;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    font-size: 2.5rem;

    font-weight: 700;

    box-shadow: var(--shadow-glow);

}



.jet-login-brand-logo {

    width: 100%;

    max-width: 13.125rem;

    height: auto;

    object-fit: contain;

    background: transparent;

    filter: drop-shadow(0 4px 16px rgb(0 0 0 / 0.45));

}



body.jet-login-lite {

    --gradient-spectra: linear-gradient(135deg, #6ee7b7 0%, #10b981 45%, #059669 100%);

    --shadow-glow: 0 20px 60px -10px rgb(16 185 129 / 0.4), 0 10px 40px -10px rgb(5 150 105 / 0.3);

    --primary: #10b981;

    --ring: #10b981;

    --accent: #34d399;

    --border: rgb(16 185 129 / 0.45);

}



body.jet-login-lite .input-glow {

    border-color: rgb(16 185 129 / 0.55) !important;

}



body.jet-login-lite .input-glow:focus {

    border-color: #10b981 !important;

    box-shadow:

        0 0 0 2px rgb(16 185 129 / 0.45),

        0 0 20px rgb(16 185 129 / 0.28) !important;

}



.jet-login-error {

    margin: 0;

    padding-top: 0.25rem;

    text-align: center;

    font-size: 0.875rem;

    font-weight: 500;

    line-height: 1.45;

    color: #fff;

    text-shadow: 0 1px 10px rgb(0 0 0 / 0.45);

}



body.jet-login-lite .shimmer-text {

    color: transparent;

    background: linear-gradient(

        90deg,

        #ecfdf5,

        #a7f3d0 12%,

        #6ee7b7 25%,

        #34d399 37%,

        #10b981 50%,

        #059669 62%,

        #047857 75%,

        #059669 87%,

        #ecfdf5

    ) 0 0 / 200% 100%;

    -webkit-background-clip: text;

    background-clip: text;

}



body.jet-login-lite .auth-password-rules {

    margin-top: 0.65rem;

}



body.jet-login-lite .auth-password-rules-title {

    margin: 0 0 0.5rem;

    font-size: 0.6875rem;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 0.04em;

    color: rgb(255 255 255 / 0.78);

}



body.jet-login-lite .auth-password-rules-list {

    margin: 0;

    padding: 0;

    list-style: none;

    display: flex;

    flex-direction: column;

    gap: 0.4rem;

}



body.jet-login-lite .auth-password-rules-list li {

    display: flex;

    align-items: flex-start;

    gap: 0.5rem;

    font-size: 0.75rem;

    line-height: 1.35;

    color: rgb(255 255 255 / 0.72);

}



body.jet-login-lite .auth-rule-icon {

    width: 1rem;

    height: 1rem;

    margin-top: 0.05rem;

    border-radius: 999px;

    border: 1.5px solid rgb(255 255 255 / 0.45);

    flex-shrink: 0;

    position: relative;

}



body.jet-login-lite .auth-password-rules-list li.is-met {

    color: #fff;

    font-weight: 500;

}



body.jet-login-lite .auth-password-rules-list li.is-met .auth-rule-icon {

    border-color: #10b981;

    background: #10b981;

}



body.jet-login-lite .auth-password-rules-list li.is-met .auth-rule-icon::after {

    content: '';

    position: absolute;

    left: 0.28rem;

    top: 0.12rem;

    width: 0.28rem;

    height: 0.5rem;

    border: solid #fff;

    border-width: 0 2px 2px 0;

    transform: rotate(45deg);

}



body.jet-login-lite .auth-password-match {

    margin: 0.5rem 0 0;

    font-size: 0.75rem;

    color: rgb(255 255 255 / 0.78);

}



body.jet-login-lite .auth-password-match.is-met {

    color: #a7f3d0;

    font-weight: 600;

}



body.jet-login-lite .auth-password-match.is-error {

    color: #fde68a;

    font-weight: 600;

}


