/* Branded WordPress login and registration screen for Roam Vietnam. */
:root{--ink:#142e3a;--muted:#536c75;--teal:#007c78;--deep:#063e49}
body.login{position:relative;min-height:100vh;background:linear-gradient(155deg,#e7f3f1 0%,#f8fbfa 48%,#fff8e9 100%);font-family:var(--font-body);overflow-x:hidden}
body.login::before,body.login::after{content:'';position:fixed;z-index:0;pointer-events:none;border-radius:50%;background:rgba(255,255,255,.72);filter:blur(1px)}
body.login::before{width:280px;height:150px;left:-75px;top:10%;box-shadow:105px 18px 0 -14px rgba(255,255,255,.68),210px 5px 0 -28px rgba(255,255,255,.62)}
body.login::after{width:330px;height:175px;right:-120px;bottom:7%;box-shadow:-115px 16px 0 -20px rgba(255,255,255,.68),-225px 3px 0 -35px rgba(255,255,255,.6)}
#login{position:relative;z-index:1;width:min(440px,calc(100% - 32px));padding:8vh 0 36px}
#login h1{margin:0 0 26px;text-align:center;font-family:var(--font-display);font-weight:800}
#login h1 a{display:flex;width:auto;height:auto;min-height:0;align-items:center;justify-content:center;gap:10px;background:none!important;color:var(--deep);font-size:2rem;line-height:1.1;text-indent:0;text-decoration:none;box-shadow:none}
#login h1 a::before{content:'R';display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--teal);color:#fff;font-size:1.35rem;line-height:1}
#login h1 a::after{content:none}
.login form{margin-top:0;padding:28px;border:1px solid rgba(221,230,232,.95);border-radius:20px;background:rgba(255,255,255,.94);box-shadow:0 18px 45px rgba(6,62,73,.12)}
.login label{font-family:var(--font-display);font-size:.98rem;font-weight:700;color:var(--ink)}
.login form .input,.login input[type=text],.login input[type=email],.login input[type=password],.login input[type=tel]{width:100%;margin:7px 0 18px;padding:12px 14px;border:1px solid #b9cdd2;border-radius:11px;background:#fff;color:var(--ink);font-family:var(--font-body);font-size:1rem;box-shadow:none}
.login form .input:focus,.login input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(0,124,120,.13);outline:0}
.login .button.wp-hide-pw{margin-top:5px;border:0;background:transparent;color:var(--teal);box-shadow:none}
.login .button-primary{min-height:48px;padding:10px 24px;border:1px solid var(--teal);border-radius:11px;background:var(--teal);color:#fff;font-family:var(--font-display);font-size:1rem;font-weight:700;box-shadow:none;text-shadow:none}
.login .button-primary:hover,.login .button-primary:focus{background:var(--deep);border-color:var(--deep);color:#fff}
.login form p.submit{margin:8px 0 0}
.login .forgetmenot{font-family:var(--font-body);font-size:.9rem;color:var(--muted)}
.login .forgetmenot input{accent-color:var(--teal)}
.login #nav,.login #backtoblog{margin:18px 0 0;text-align:center;font-family:var(--font-body);font-size:.92rem}
.login #backtoblog{margin-top:9px}
.login #nav a,.login #backtoblog a,.login .privacy-policy-page-link a{color:var(--teal);text-decoration:none}
.login #nav a:hover,.login #backtoblog a:hover,.login .privacy-policy-page-link a:hover{color:var(--deep);text-decoration:underline}
.login .message,.login .success,.login #login_error{margin:0 0 18px;border:1px solid #c5e1dc;border-left:4px solid var(--teal);border-radius:12px;background:#f4fbf9;color:var(--deep);box-shadow:none}
.login #login_error{border-color:#f0c5b9;border-left-color:#c45d43;background:#fff5f1;color:#7c2d20}
.login .privacy-policy-page-link{font-size:.82rem;text-align:center;color:var(--muted)}
.login .dv-register-extra{margin-top:4px}
.login .dv-register-extra .description{font-family:var(--font-body);font-size:.78rem;font-weight:400;color:var(--muted)}
.login .dv-register-extra select{width:100%;margin:7px 0 18px;padding:12px 14px;border:1px solid #b9cdd2;border-radius:11px;background:#fff;color:var(--ink);font-family:var(--font-body);font-size:1rem}
@media(max-width:480px){#login{padding-top:38px}.login form{padding:22px}.login h1 a{font-size:1.8rem}}
