@import url(general.css);
@import url(color.css);

body {
  background-color: var(--bg-menu);
  display: grid;
  height: 100vh;
}

.login-card {
  background-color: var(--bg-body);
  max-width: 350px;
  width: 90%;
  place-self: center;
  border-radius: 0.75rem;
  box-shadow: 20px 20px 40px rgba(0, 0, 0, 0.5);
  border: 1px solid var(--border-card);
  font-family: "Inter", sans-serif;
  display: grid;
  padding: 2.5rem 3rem;
}

.logo {
  display: grid;
  grid-template-columns: auto 1fr;
  width: max-content;
  place-self: center;
}
.logo p {
  grid-column: 1 / -1;
  text-transform: uppercase;
  font-size: 0.675rem;
  color: var(--text2);
  text-align: center;
}
.logo img {
  place-self: center;
}
.logo h1 {
  font-size: 2.25rem;
  color: var(--logo1);
  font-weight: 700;
}
.logo h1 span {
  color: var(--logo2);
}

.login-card > h1 {
  text-align: center;
  margin: 1rem;
  font-family: "Montserrat", sans-serif;
  color: var(--logo1);
}

.login-form {
  display: grid;
}

.login-form label,
.login-form input {
  font-family: "Montserrat";
  margin-bottom: 0.25rem;
  border-radius: 0.25rem;
  font-size: 1rem;
  background-color: var(--bg-body);
}
.login-form label {
  color: var(--text-card);
  font-weight: 500;
  margin-top: 0.5rem;
}
.login-form input {
  /* 16px (herdado acima) evita o zoom automatico do iOS/Safari ao focar */
  padding: 0.5rem 0.25rem;
  color: var(--text-secondary);
  border: 1px solid var(--border-card);
  box-shadow: none;
  font-weight: 600;
}
.login-form input:focus {
  outline: none;
  border: 1px solid var(--border-button);
}

.login-form button {
  background-color: var(--bg-button);
  border: 2px solid var(--border-button);
  color: var(--text1);
  padding: 0.5rem 2rem;
  border-radius: 0.375rem;
  font-family: "Montserrat";
  font-size: 1rem;
  cursor: pointer;
  margin-top: 2rem;
}

.login-form button:hover {
  background-color: var(--border-button);
  color: var(--text1);
}

.login-lembrar-flex {
  margin-top: 0.5rem;
  display: flex;
  justify-content: space-between;
  font-size: 0.75rem;
  align-content: center;
  align-items: end;
}
.login-lembrar-flex a {
  text-decoration: underline;
  color: var(--bg-button);
}
.login-lembrar-flex a:hover {
  color: var(--logo1);
}

.login-lembrar-flex label {
  font-size: 0.875rem;
}
.cadastrar {
  margin: 1rem 0;
  display: flex;
  gap: 0.25rem;
  font-size: 0.875rem;
}
.cadastrar a {
  text-decoration: underline;
  color: var(--bg-button);
}
.cadastrar a:hover {
  color: var(--logo1);
}

h2 {
  text-align: center;
  font-family: "Montserrat";
  color: var(--bg-menu);
  font-size: 1.125rem;
  margin-bottom: 1rem;
}

.signIn-google img {
  width: 16px;
  height: 16px;
  place-self: center;
}

.signIn-google {
  display: flex;
  gap: 0.5rem;
  padding: 0.5rem;
  border: 1px solid var(--border-card);
  border-radius: 0.5rem;
  justify-content: center;
  font-size: 0.875rem;
  color: var(--text-card) !important;
  font-weight: 600;
}

.signIn-google:hover {
  background-color: var(--border-card);
}

@media (max-width: 460px) {
  .login-card {
    padding: 2.5rem 1.25rem;
  }
}
