/* Page-specific styles for login.html */

body { display: flex; align-items: center; justify-content: center; padding: var(--space-lg); }

.card {
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-xl);
  padding: var(--space-2xl);
  width: 100%;
  max-width: 360px;
}

.card h1 { font-size: var(--font-size-3xl); margin: 0 0 var(--space-xl) 0; }
.card label { margin-bottom: 0.35rem; }
.card input { padding: 0.6rem 0.75rem; margin-bottom: var(--space-lg); }

.card button {
  width: 100%;
  padding: 0.65rem;
  background: var(--color-accent);
  border: none;
  border-radius: var(--radius-md);
  color: var(--color-text-inverse);
  font-weight: var(--font-weight-semi);
  font-size: 1rem;
  cursor: pointer;
}
.card button:hover { filter: brightness(1.1); }
.card button:disabled { opacity: 0.6; cursor: not-allowed; }

.login-ms-wrap { margin-bottom: var(--space-lg); }

.login-divider {
  display: flex;
  align-items: center;
  gap: var(--space-md);
  margin-top: var(--space-lg);
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
}
.login-divider::before,
.login-divider::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--color-border);
}

.btn-microsoft {
  background: transparent !important;
  border: 1px solid var(--color-border) !important;
  color: var(--color-text) !important;
}
.btn-microsoft:hover {
  filter: none;
  border-color: var(--color-accent) !important;
  color: var(--color-accent) !important;
}

.back {
  display: inline-block;
  margin-top: var(--space-lg);
  color: var(--color-text-muted);
  text-decoration: none;
  font-size: var(--font-size-md);
}
.back:hover { color: var(--color-accent); text-decoration: none; }
