html {
  font-size: 14px;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, "Noto Sans", "Helvetica Neue", Arial, sans-serif;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
  color: #111827;
}

/* Complii-inspired theme */
.theme-complii {
  background: #f8fafc;
}
.theme-complii .navbar {
  border-bottom: 1px solid #e5e7eb;
  background: #ffffff;
}
.theme-complii .navbar-brand {
  letter-spacing: .2px;
}
.theme-complii h1, .theme-complii h2, .theme-complii h3, .theme-complii h4 {
  color: #0f172a;
}
.theme-complii .card {
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  box-shadow: 0 1px 2px rgba(0,0,0,.03);
}
.theme-complii .card-header {
  background: #ffffff;
  border-bottom: 1px solid #e5e7eb;
  font-weight: 600;
}
.theme-complii footer {
  background: #ffffff;
}

/* Brand accents */
.btn-primary {
  background-color: #1A73E8;
  border-color: #1A73E8;
}
.btn-primary:hover {
  background-color: #1765cb;
  border-color: #1765cb;
}

/* Nav links */
.navbar .nav-link {
  color: #111827 !important;
}
.navbar .nav-link:hover {
  color: #1A73E8 !important;
}

/* Allow dropdowns to overflow responsive table container */
.dropdown-safe {
  overflow: visible !important;
}

/* Ensure collapsed navbar overlays content on mobile and stays visible */
@media (max-width: 575.98px) {
  /* Keep collapsed menu in normal flow and ensure it stays visible */
  .navbar {
    position: relative;
    z-index: 1050;
  }
  #mainNav {
    background: #fff;
    border-bottom: 1px solid #e5e7eb;
  }
}

/* Fix Tailwind vs Bootstrap class name collision: ensure Bootstrap collapse shows */
.collapse.show { visibility: visible !important; }
.navbar .collapse { visibility: visible; }

/* (reverted) custom admin button variants removed */