/* Keep the original client's application styles isolated from its login shell. */
.client-entry-nav { display: none; }
body:has(#root > div > form) { margin: 0; background: #f3f6fb; }
body:has(#root > div > form) .client-entry-nav {
  position: absolute;
  inset: 0 0 auto;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 23px 28px;
  font: 14px/1.6 -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;
}
.client-entry-nav a { text-decoration: none; color: #356be4; }
.client-entry-nav a:first-child { font-size: 19px; font-weight: 700; color: #24334b; }
#root > div:has(> form) {
  min-height: 100vh;
  min-height: 100dvh;
  padding: 100px 20px 40px;
  background: #f3f6fb;
  color-scheme: light;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;
}
#root > div > form {
  width: min(410px, 100%);
  padding: 36px;
  border: 1px solid #e5ebf3;
  border-radius: 18px;
  background: white;
  color: #24334b;
  box-shadow: 0 12px 50px #2a4b7510;
}
#root > div > form h1 { font-size: 26px; color: #24334b; margin-bottom: 8px; }
#root > div > form > p { color: #6b788c; font-size: 13px; margin-bottom: 27px; }
#root > div > form label > span { font-size: 13px; color: #24334b; margin-bottom: 8px; }
#root > div > form input {
  height: 45px;
  font: inherit;
  font-size: 14px;
  color: #24334b;
  background: white;
  border: 1px solid #dbe3ee;
  border-radius: 8px;
}
#root > div > form input:focus { border-color: #356be4; outline: 3px solid #e0eaff; }
#root > div > form button[type="submit"] {
  min-height: 45px;
  border-radius: 8px;
  color: white;
  background: #356be4;
}
#root > div > form button[type="submit"]:hover { background: #2557c7; }
@media (max-width: 480px) {
  body:has(#root > div > form) .client-entry-nav { padding: 20px; font-size: 12px; }
  #root > div > form { padding: 28px; }
}
