@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap');

:root {
  --theme-header-bg: #001880;
  --theme-header-opacity: 1;
  --theme-sidebar-bg: #f7f9fc;
  --theme-background: linear-gradient(180deg, #f2f5f9 0%, #eef4f9 45%, #f8fbff 100%) fixed;
  --theme-page-bg: #f8fbff;
  --theme-surface: #ffffff;
  --theme-border: rgba(148, 163, 184, 0.14);
  --theme-border-soft: rgba(148, 163, 184, 0.08);
  --theme-text: #222f3c;
  --theme-muted: #5f6f86;
  --theme-heading: #0f172a;
  --theme-accent: #335073;
  --theme-accent-soft: rgba(51, 80, 115, 0.08);
}

body:not(.login) .page-header.navbar,
body:not(.login) .page-header.navbar .navbar-inner,
body:not(.login) .page-header.navbar .page-logo,
body:not(.login) .page-header.navbar .top-menu {
  background-color: var(--theme-header-bg) !important;
}
body:not(.login) .page-sidebar,
body:not(.login) .page-sidebar-menu,
body:not(.login) .page-sidebar .page-sidebar-menu {
  background-color: var(--theme-sidebar-bg) !important;
}
body:not(.login) .page-container,
body:not(.login) .page-container-bg-solid,
body:not(.login) .page-wrapper {
  background: var(--theme-page-bg) !important;
}

html,
body {
  min-height: 100%;
}

body:not(.login) {
  min-height: 100vh;
  background: var(--theme-background);
  color: var(--theme-text);
}

body {
  font-family: 'Inter', 'Plus Jakarta Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-weight: 400;
  letter-spacing: 0.01em;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body:not(.login) a {
  color: inherit;
  transition: color 0.2s ease;
}

body:not(.login) a:hover {
  color: var(--theme-accent);
}

button,
.btn,
.btn-default,
.btn-primary,
.btn-success,
.btn-info,
.btn-warning,
.btn-danger {
  border-radius: 999px !important;
  transition: all 0.2s ease;
}

.btn-primary,
.btn-success,
.btn-info,
.btn-warning,
.btn-danger {
  box-shadow: 0 10px 20px rgba(15, 23, 42, 0.06) !important;
}

.form-control,
.select2-container .select2-selection--single,
.input-group .form-control {
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 14px;
  box-shadow: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  background: #ffffff;
}

.form-control:focus,
.select2-container--open .select2-selection,
.input-group .form-control:focus {
  border-color: var(--theme-accent);
  box-shadow: 0 0 0 0.15rem rgba(31, 75, 207, 0.10);
}

.page-wrapper {
  min-height: 100vh;
}

/* global login theme layout fix for Metronic login variants */
.user-login-5 {
  min-height: 100vh;
  display: flex;
  align-items: stretch;
}
.user-login-5 .row {
  min-height: 100vh;
  margin: 0;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}
.user-login-5 .col-md-6,
.user-login-5 .bs-reset,
.user-login-5 .login-container {
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.user-login-5 .login-container {
  padding: 2rem 1rem;
}
.user-login-5 .login-container > .login-content {
  margin-top: 0 !important;
  width: 100%;
}
.user-login-5 .login-bg {
  min-height: 100vh !important;
  display: flex;
  align-items: center;
  justify-content: center;
}
.user-login-5 .login-bg video,
.user-login-5 .login-bg.scale {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.user-login-5 .login-footer,
.user-login-5 .login-container > .login-footer {
  position: relative;
  margin-top: 2rem;
  width: 100%;
}

body:not(.login) {
  min-height: 100vh;
  background: var(--theme-background);
  color: var(--theme-text);
}

.btn.green,
.btn.success,
.btn.btn-success {
  background: var(--theme-accent) !important;
  border-color: var(--theme-accent) !important;
  color: #ffffff !important;
}

.btn.green:hover,
.btn.success:hover,
.btn.btn-success:hover {
  background: #1a42a8 !important;
  border-color: #1a42a8 !important;
}
