:root{
    --jcm-ink:#0b2c1a;
    --jcm-accent:#65a30d;
    --jcm-lime:#a3e635;
    --jcm-muted:#64748b;
}
body.login{
    min-height:100vh;
    background:
        radial-gradient(circle at 18% 16%,rgba(163,230,53,.17),transparent 30%),
        radial-gradient(circle at 82% 84%,rgba(101,163,13,.12),transparent 32%),
        linear-gradient(135deg,#06140e 0%,#0b2c1a 48%,#f4f7f6 48%,#f4f7f6 100%);
    color:#172033;
}
body.login::before{
    content:"JC ERP";
    position:fixed;
    left:7vw;
    top:50%;
    transform:translateY(-50%);
    color:#fff;
    font-size:clamp(48px,7vw,96px);
    font-weight:900;
    letter-spacing:-.06em;
}
body.login::after{
    content:"CONTROL EN TIEMPO REAL";
    position:fixed;
    left:7.3vw;
    top:calc(50% + 68px);
    color:var(--jcm-lime);
    font-size:13px;
    font-weight:800;
    letter-spacing:.18em;
}
#login{
    width:420px;
    box-sizing:border-box;
    margin:0 9vw 0 auto;
    padding:7vh 0 40px;
}
.login h1 a{
    width:290px;
    height:80px;
    margin:0 auto 18px;
    background-image:url("jcerp-logo.svg");
    background-size:contain;
    background-position:center;
}
.jcm-login-intro{
    margin-bottom:0;
    padding:24px 28px 6px;
    border-radius:18px 18px 0 0;
    background:#fff;
    box-shadow:0 20px 60px rgba(15,23,42,.14);
}
.jcm-login-intro span{
    display:block;
    color:var(--jcm-accent);
    font-size:11px;
    font-weight:850;
    letter-spacing:.1em;
    text-transform:uppercase;
}
.jcm-login-intro strong{
    display:block;
    margin-top:5px;
    color:var(--jcm-ink);
    font-size:25px;
    letter-spacing:-.025em;
}
.jcm-login-intro p{
    margin:6px 0 0;
    color:var(--jcm-muted);
}
.login form{
    margin-top:0;
    padding:20px 28px 28px;
    border:0;
    border-radius:0 0 18px 18px;
    background:#fff;
    box-shadow:0 22px 60px rgba(15,23,42,.14);
}
.login label{
    color:#334155;
    font-weight:700;
}
.login form .input,
.login input[type=text]{
    min-height:48px;
    margin-top:6px;
    border:1px solid #cbd5e1;
    border-radius:9px;
    background:#f8fafc;
    box-shadow:none;
    font-size:16px;
}
.login form .input:focus,
.login input[type=text]:focus{
    border-color:var(--jcm-accent);
    background:#fff;
    box-shadow:0 0 0 3px rgba(101,163,13,.14);
}
.wp-core-ui .button-primary{
    min-height:43px;
    padding:0 20px;
    border-color:var(--jcm-ink);
    border-radius:9px;
    background:var(--jcm-ink);
    font-weight:750;
}
.wp-core-ui .button-primary:hover,
.wp-core-ui .button-primary:focus{
    border-color:#164e2e;
    background:#164e2e;
}
.login #nav,.login #backtoblog{padding:0 10px;text-align:center}
.login #nav a,.login #backtoblog a{color:#334155}
.login .language-switcher{margin-top:16px}
.login .message,.login .notice,.login #login_error{
    margin:14px 0;
    border-radius:9px;
}
@media(max-width:900px){
    body.login{
        background:
            radial-gradient(circle at 50% 0,rgba(163,230,53,.18),transparent 34%),
            #f4f7f6;
    }
    body.login::before,
    body.login::after{display:none}
    #login{width:min(420px,calc(100% - 32px));margin:0 auto;padding-top:24px}
    .login h1 a{width:250px;height:70px;margin-bottom:12px}
}
