body.page-template-page-login{background:#f1f7f3}
.snu-login-page{min-height:calc(100vh - 70px);padding:34px 18px 92px;background:linear-gradient(145deg,#eff8f2 0%,#fff 54%,#fff8df 100%);display:flex;justify-content:center;align-items:flex-start}
.snu-login-shell{width:100%;max-width:480px;margin:10px auto 0}
.snu-login-brand{display:flex;align-items:center;justify-content:center;gap:13px;margin:0 auto 26px;color:#064c2c;text-decoration:none}
.snu-login-brand img{width:72px;height:72px;object-fit:contain;border-radius:50%;background:#fff;box-shadow:0 3px 14px #003e1b18}
.snu-login-brand span{display:flex;flex-direction:column;gap:4px}
.snu-login-brand strong{font-size:18px;font-weight:850;letter-spacing:.1px}
.snu-login-brand small{font-size:12px;color:#587164}
.snu-login-card{background:#fff;border:1px solid #e1ebe4;border-radius:22px;padding:30px 28px;box-shadow:0 14px 40px #063d1c12}
.snu-login-icon{width:58px;height:58px;border-radius:18px;display:grid;place-items:center;margin:0 auto 15px;background:linear-gradient(145deg,#e5f5e9,#fff1bf);color:#08763b}
.snu-login-icon svg{width:29px;height:29px}
.snu-login-card h1{text-align:center;color:#123e29;font-size:25px;line-height:1.2;margin:0 0 8px}
.snu-login-intro{text-align:center;color:#728078;font-size:14px;margin:0 0 24px}
#snu-loginform{margin:0}
#snu-loginform label{display:block;color:#294c39;font-size:13px;font-weight:700;margin:0 0 8px}
#snu-loginform input[type=text],#snu-loginform input[type=password]{width:100%;height:49px;border:1px solid #d5e2d9;border-radius:11px;background:#fbfdfb;padding:0 14px;font-size:16px;color:#173b29;outline:none;box-shadow:none}
#snu-loginform input:focus{border-color:#078344;box-shadow:0 0 0 3px #0783441c}
#snu-loginform p{margin:0 0 17px}
#snu-loginform p.login-remember{display:flex;align-items:center;margin:2px 0 20px}
#snu-loginform p.login-remember label{display:flex;align-items:center;gap:8px;margin:0;font-weight:500}
#snu-loginform input[type=checkbox]{width:18px;height:18px;accent-color:#078344}
#snu-loginform p.login-submit{margin:0}
#snu-loginform input[type=submit]{width:100%;height:49px;border:0;border-radius:12px;background:linear-gradient(90deg,#078344,#006032);color:#fff;font-size:15px;font-weight:800;cursor:pointer;box-shadow:0 7px 16px #00603225}
#snu-loginform input[type=submit]:hover{filter:brightness(1.06)}
.snu-login-alert{padding:12px 14px;border-radius:10px;background:#fff0ed;color:#a33525;border:1px solid #f3c8bf;font-size:13px;margin:0 0 18px}
.snu-login-links{text-align:center;margin-top:18px}
.snu-login-links a{font-size:13px;color:#08763b;font-weight:700;text-decoration:none}
.snu-login-back{display:block;text-align:center;color:#086438;text-decoration:none;font-size:14px;font-weight:700;margin:23px 0 13px}
.snu-login-security{text-align:center;color:#87948c;font-size:11px;margin:0}
@media(max-width:480px){.snu-login-page{padding:24px 15px 90px;min-height:calc(100vh - 55px)}.snu-login-brand{margin-bottom:21px}.snu-login-brand img{width:62px;height:62px}.snu-login-brand strong{font-size:16px}.snu-login-card{padding:25px 20px;border-radius:19px}.snu-login-card h1{font-size:22px}}
