html {
  font-size: 14px;
  font-family: 'Roboto', sans-serif;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

*, *::before, *::after {
  font-family: 'Roboto', sans-serif;
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: none;
  outline: none;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 0;
}

.logo {
    width: 48px;
    height: 48px;
}

/* Logout button */
.btn-logout {
  background-color: #1a1a1a;
  color: #ffffff;
  border: none;
  outline: none;
  border-radius: 6px;
  padding: 7px 18px;
  font-size: 14px;
  font-weight: 500;
  font-family: 'Roboto', sans-serif;
  cursor: pointer;
  letter-spacing: 0.02em;
  transition: background-color 0.15s ease;
  box-shadow: none;
}

.btn-logout:hover {
  background-color: #404040;
  color: #ffffff;
}

.btn-logout:focus,
.btn-logout:active,
.btn-logout:active:focus {
  outline: none;
  box-shadow: none;
  background-color: #1a1a1a;
  color: #ffffff;
}

/* Nav user email link */
.navbar-nav .nav-link {
  font-family: 'Roboto', sans-serif;
  font-size: 14px;
}

/* =====================
   Account / Manage pages — Roboto + black theme
   ===================== */

/* Font everywhere on identity pages */
body, h1, h2, h3, h4, h5, h6, p, label, input, button, a, li, span, div {
  font-family: 'Roboto', sans-serif;
}

/* btn-primary — black */
.btn-primary {
  background-color: #1a1a1a !important;
  border-color: #1a1a1a !important;
  color: #ffffff !important;
  font-family: 'Roboto', sans-serif;
  font-weight: 500;
  border-radius: 6px;
  letter-spacing: 0.02em;
}

.btn-primary:hover {
  background-color: #404040 !important;
  border-color: #404040 !important;
  color: #ffffff !important;
}

.btn-primary:focus,
.btn-primary:active,
.btn-primary:active:focus {
  background-color: #1a1a1a !important;
  border-color: #1a1a1a !important;
  color: #ffffff !important;
  box-shadow: none !important;
  outline: none !important;
}

/* nav-pills sidebar — active item black */
.nav-pills .nav-link {
  color: #1a1a1a;
  font-family: 'Roboto', sans-serif;
  font-weight: 500;
  border-radius: 6px;
}

.nav-pills .nav-link:hover {
  color: #1a1a1a;
  background-color: #f0f0f0;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  background-color: #1a1a1a !important;
  color: #ffffff !important;
}

/* form-control focus ring — black instead of blue */
.form-control:focus {
  border-color: #1a1a1a !important;
  box-shadow: 0 0 0 0.2rem rgba(26, 26, 26, 0.15) !important;
}

/* Links on identity pages — black */
.login-card a,
#account a,
#profile-form a,
.manage-page a {
  color: #1a1a1a;
}

.login-card a:hover,
#account a:hover,
#profile-form a:hover,
.manage-page a:hover {
  color: #404040;
}

/* Login page centering */
.login-page-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: calc(100vh - 80px);
  padding: 24px 16px;
}

.login-card {
  width: 100%;
  max-width: 440px;
  background-color: #ffffff;
  border: 1px solid #e0e3e8;
  border-radius: 8px;
  padding: 32px;
  font-family: 'Roboto', sans-serif;
}

.login-card h1,
.login-card h2,
.login-card p,
.login-card label {
  font-family: 'Roboto', sans-serif;
  color: #1a1a1a;
}

.login-card a {
  color: #1a1a1a;
  font-family: 'Roboto', sans-serif;
}

.login-card a:hover {
  color: #404040;
}

/* Login button */
.btn-login {
  background-color: #1a1a1a;
  color: #ffffff;
  border: none;
  border-radius: 6px;
  font-size: 16px;
  font-weight: 500;
  font-family: 'Roboto', sans-serif;
  cursor: pointer;
  letter-spacing: 0.02em;
  transition: background-color 0.15s ease;
}

.btn-login:hover {
  background-color: #404040;
  color: #ffffff;
}

.btn-login:focus,
.btn-login:active,
.btn-login:active:focus {
  outline: none;
  box-shadow: none;
  background-color: #1a1a1a;
  color: #ffffff;
}