/* NYV login screen (wp-login.php: log in, lost password, reset password, messages).
   Same brand rules as the dashboard (nyv-sync.css): teal #3F7D76, near-black #0B1416, light mint
   surface, IBM Plex Sans / Sora, flat — no gradients, shadows or glows. Scoped to body.login. */
body.login{
  --nyv-bg:#eef4f2; --nyv-surface:#ffffff; --nyv-line:#d7e5e0; --nyv-ink:#0b1416; --nyv-muted:#576965;
  --nyv-teal:#3f7d76; --nyv-teal-dark:#33665f; --nyv-teal-soft:#e4eeec; --nyv-fail:#b8443e;
  background:var(--nyv-bg); color:var(--nyv-ink);
  font-family:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif; font-size:14px;
}

/* logo */
body.login h1 a{
  background-image:url('../img/nyv-logo.png') !important;
  background-size:contain !important; background-repeat:no-repeat !important; background-position:center !important;
  width:100% !important; max-width:300px; height:122px !important; margin:0 auto 22px !important;
}

/* card */
body.login #login{width:340px; max-width:calc(100% - 32px); padding-top:6vh}
body.login form{
  background:var(--nyv-surface); border:1px solid var(--nyv-line); border-top:3px solid var(--nyv-teal);
  border-radius:14px; box-shadow:none; padding:26px 24px 28px; margin-top:16px;
}
body.login label{color:var(--nyv-ink); font-weight:500; font-size:14px}

/* fields */
body.login form .input,
body.login input[type="text"],
body.login input[type="email"],
body.login input[type="password"]{
  background:#fff; border:1px solid var(--nyv-line); border-radius:10px; box-shadow:none;
  color:var(--nyv-ink); font-size:16px; padding:6px 12px; min-height:44px;
}
body.login form .input:focus,
body.login input[type="text"]:focus,
body.login input[type="email"]:focus,
body.login input[type="password"]:focus{
  border-color:var(--nyv-teal); box-shadow:none; outline:2px solid var(--nyv-teal); outline-offset:0;
}
body.login .wp-pwd .button.wp-hide-pw{height:44px; min-height:44px}
body.login .button.wp-hide-pw .dashicons,
body.login .button.wp-hide-pw:hover .dashicons{color:var(--nyv-teal)}
body.login .button.wp-hide-pw:focus{border-color:var(--nyv-teal); box-shadow:none; outline:2px solid var(--nyv-teal)}
body.login input[type="checkbox"]{border-color:var(--nyv-line); border-radius:4px; box-shadow:none}
body.login input[type="checkbox"]:checked::before{content:url("data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2020%2020%27%3E%3Cpath%20d%3D%27M14.83%204.89l1.34.94-5.81%208.38H9.02L5.78%209.67l1.34-1.25%202.57%202.4z%27%20fill%3D%27%233f7d76%27%2F%3E%3C%2Fsvg%3E")}
body.login input[type="checkbox"]:focus{border-color:var(--nyv-teal); box-shadow:none; outline:2px solid var(--nyv-teal)}

/* primary button */
body.login .button-primary,
body.login #wp-submit{
  background:var(--nyv-teal); border:1px solid var(--nyv-teal); border-radius:10px; box-shadow:none; text-shadow:none;
  color:#fff; font-family:"Sora","IBM Plex Sans",system-ui,sans-serif; font-weight:600; font-size:14px;
  min-height:40px; padding:0 20px;
}
body.login .button-primary:hover,
body.login #wp-submit:hover{background:var(--nyv-teal-dark); border-color:var(--nyv-teal-dark); color:#fff}
body.login .button-primary:focus,
body.login #wp-submit:focus{background:var(--nyv-teal-dark); border-color:var(--nyv-teal-dark); box-shadow:none; outline:2px solid var(--nyv-ink); outline-offset:2px}

/* secondary buttons (language "Change", generate password…) */
body.login .button:not(.button-primary):not(.wp-hide-pw){
  background:#fff; color:var(--nyv-teal); border:1px solid var(--nyv-teal); border-radius:10px; box-shadow:none; min-height:40px;
}
body.login .button:not(.button-primary):not(.wp-hide-pw):hover{background:var(--nyv-teal-soft); color:var(--nyv-teal-dark); border-color:var(--nyv-teal-dark)}
body.login .button:not(.button-primary):not(.wp-hide-pw):focus{box-shadow:none; outline:2px solid var(--nyv-teal); outline-offset:1px}

/* messages: "You are now logged out", errors */
body.login .message,
body.login .notice,
body.login .success,
body.login #login_error{
  background:var(--nyv-surface); border:1px solid var(--nyv-line); border-left:4px solid var(--nyv-teal);
  border-radius:10px; box-shadow:none; color:var(--nyv-ink); padding:12px 14px;
}
body.login #login_error,
body.login .notice-error{border-left-color:var(--nyv-fail)}

/* links under the card */
body.login #nav,
body.login #backtoblog{padding:0 4px; margin-top:16px}
body.login #nav a,
body.login #backtoblog a,
body.login .privacy-policy-page-link a,
body.login a{color:var(--nyv-teal); text-decoration-color:rgba(63,125,118,.45)}
body.login #nav a:hover,
body.login #backtoblog a:hover,
body.login .privacy-policy-page-link a:hover,
body.login a:hover{color:var(--nyv-teal-dark)}
body.login a:focus{color:var(--nyv-teal-dark); box-shadow:none; outline:2px solid var(--nyv-teal); outline-offset:2px; border-radius:2px}
body.login .privacy-policy-page-link{margin:28px 0 0}

/* language switcher */
body.login .language-switcher{margin-top:18px}
body.login .language-switcher label .dashicons{color:var(--nyv-muted)}
body.login .language-switcher select{
  border:1px solid var(--nyv-line); border-radius:10px; box-shadow:none; color:var(--nyv-ink); min-height:40px;
}
body.login .language-switcher select:focus{border-color:var(--nyv-teal); box-shadow:none; outline:2px solid var(--nyv-teal)}

/* password strength meter (reset password) */
body.login #pass-strength-result{border-radius:8px; box-shadow:none}
body.login #pass-strength-result.strong{background:var(--nyv-teal-soft); border-color:var(--nyv-teal)}
