/* =========================================================
   V10.2 Final Primexa Branding Polish
   Original logo image, CSS-only, no JavaScript
   ========================================================= */

/* -----------------------------
   Navbar height and background
----------------------------- */

body:not(.page-login) .navbar,
body.page-login .navbar,
body[data-path="login"] .navbar,
.for-login .navbar {
  min-height: 86px !important;
  height: 86px !important;
  background:
    linear-gradient(135deg, #f8fdfe 0%, #b9eaed 52%, #93cfed 140%) !important;
  border-bottom: 1px solid rgba(95, 107, 159, 0.20) !important;
  box-shadow: 0 10px 28px rgba(31, 41, 55, 0.10) !important;
}

/* -----------------------------
   Replace navbar ERPNext branding with real image
----------------------------- */

body:not(.page-login) .navbar .navbar-home,
body:not(.page-login) .navbar .navbar-brand,
body.page-login .navbar .navbar-home,
body.page-login .navbar .navbar-brand,
body[data-path="login"] .navbar .navbar-home,
body[data-path="login"] .navbar .navbar-brand,
.for-login .navbar .navbar-home,
.for-login .navbar .navbar-brand {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;

  width: 390px !important;
  min-width: 390px !important;
  height: 76px !important;

  padding: 0 12px !important;
  margin: 0 !important;

  color: transparent !important;
  font-size: 0 !important;
  overflow: visible !important;
}

/* Hide old ERPNext content */
body:not(.page-login) .navbar .navbar-home *,
body:not(.page-login) .navbar .navbar-brand *,
body.page-login .navbar .navbar-home *,
body.page-login .navbar .navbar-brand *,
body[data-path="login"] .navbar .navbar-home *,
body[data-path="login"] .navbar .navbar-brand *,
.for-login .navbar .navbar-home *,
.for-login .navbar .navbar-brand * {
  display: none !important;
}

/* Remove generated icon if exists */
body:not(.page-login) .navbar .navbar-home::before,
body:not(.page-login) .navbar .navbar-brand::before,
body.page-login .navbar .navbar-home::before,
body.page-login .navbar .navbar-brand::before,
body[data-path="login"] .navbar .navbar-home::before,
body[data-path="login"] .navbar .navbar-brand::before,
.for-login .navbar .navbar-home::before,
.for-login .navbar .navbar-brand::before {
  content: none !important;
  display: none !important;
}

/* Real Primexa logo in navbar */
body:not(.page-login) .navbar .navbar-home::after,
body:not(.page-login) .navbar .navbar-brand::after,
body.page-login .navbar .navbar-home::after,
body.page-login .navbar .navbar-brand::after,
body[data-path="login"] .navbar .navbar-home::after,
body[data-path="login"] .navbar .navbar-brand::after,
.for-login .navbar .navbar-home::after,
.for-login .navbar .navbar-brand::after {
  content: "" !important;
  display: block !important;

  width: 360px !important;
  height: 72px !important;

  background-image: url("/assets/prime_contracting_theme/img/primexa-brand.jpeg") !important;
  background-repeat: no-repeat !important;
  background-position: left center !important;
  background-size: contain !important;

  border-radius: 8px !important;
}

/* -----------------------------
   Hide Help from navbar
----------------------------- */

body:not(.page-login) .navbar .dropdown-help,
body:not(.page-login) .navbar .help-dropdown,
body:not(.page-login) .navbar [data-label="Help"],
body:not(.page-login) .navbar [title="Help"],
body:not(.page-login) .navbar [aria-label="Help"],
body.page-login .navbar .dropdown-help,
body.page-login .navbar .help-dropdown,
body[data-path="login"] .navbar .dropdown-help,
body[data-path="login"] .navbar .help-dropdown {
  display: none !important;
}

/* -----------------------------
   Navbar text / icons
----------------------------- */

body:not(.page-login) .navbar *,
body:not(.page-login) .navbar a,
body:not(.page-login) .navbar .nav-link,
body:not(.page-login) .navbar .dropdown-toggle,
body:not(.page-login) .navbar button {
  color: #111827 !important;
  font-weight: 850 !important;
  text-shadow: none !important;
}

body:not(.page-login) .navbar svg,
body:not(.page-login) .navbar .icon,
body:not(.page-login) .navbar use {
  color: #46517f !important;
  stroke: #46517f !important;
  opacity: 1 !important;
}

/* Search box */
body:not(.page-login) .navbar .search-bar,
body:not(.page-login) .navbar .awesomplete {
  min-width: 320px !important;
}

body:not(.page-login) .navbar input,
body:not(.page-login) .navbar .form-control,
body:not(.page-login) .search-bar .form-control {
  height: 42px !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  border: 1px solid rgba(95, 107, 159, 0.22) !important;
  color: #111827 !important;
  font-weight: 800 !important;
  box-shadow: 0 6px 18px rgba(95, 107, 159, 0.10) !important;
}

/* =========================================================
   Login Page Final Polish
   ========================================================= */

body.page-login,
body[data-path="login"],
body .for-login {
  background:
    radial-gradient(circle at 15% 8%, rgba(237, 213, 135, 0.28), transparent 28%),
    radial-gradient(circle at 84% 14%, rgba(147, 207, 237, 0.34), transparent 30%),
    linear-gradient(135deg, #eef7fa 0%, #f8fafc 48%, #f6f0de 100%) !important;
}

/* Login container spacing */
.for-login {
  padding-top: 40px !important;
}

/* Hide default login app logo */
.for-login .page-card-head img,
.for-login .page-card-head .app-logo {
  display: none !important;
}

/* Big real logo above login card */
.for-login .page-card-head::before {
  content: "" !important;
  display: block !important;

  width: 560px !important;
  max-width: 100% !important;
  height: 235px !important;

  margin: 0 auto 26px !important;

  background-image: url("/assets/prime_contracting_theme/img/primexa-brand.jpeg") !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: contain !important;

  border-radius: 16px !important;
  box-shadow: 0 22px 55px rgba(31, 41, 55, 0.18) !important;
}

/* Login title */
.for-login .page-card-head h4,
.for-login .page-card-head .indicator {
  color: #111827 !important;
  font-size: 24px !important;
  font-weight: 950 !important;
  letter-spacing: -0.025em !important;
}

/* Login card */
.for-login .page-card {
  width: 500px !important;
  max-width: calc(100vw - 36px) !important;

  background: rgba(255, 255, 255, 0.96) !important;
  border: 1px solid rgba(95, 107, 159, 0.18) !important;
  border-radius: 20px !important;

  box-shadow:
    0 30px 80px rgba(31, 41, 55, 0.16),
    0 0 0 1px rgba(255, 255, 255, 0.65) inset !important;

  backdrop-filter: blur(14px);
  padding: 36px 42px !important;
}

/* Login inputs */
.for-login .form-control,
.for-login input,
.for-login .input-with-feedback {
  height: 46px !important;
  border-radius: 10px !important;

  background: #ffffff !important;
  border: 1px solid rgba(95, 107, 159, 0.24) !important;

  color: #111827 !important;
  font-weight: 800 !important;

  box-shadow: none !important;
}

.for-login .form-control:focus,
.for-login input:focus,
.for-login .input-with-feedback:focus {
  border-color: #5f6b9f !important;
  box-shadow: 0 0 0 3px rgba(147, 207, 237, 0.34) !important;
}

/* Login button */
.for-login .btn-login,
.for-login .btn-primary {
  height: 48px !important;
  border-radius: 10px !important;

  background: linear-gradient(135deg, #46517f, #5f6b9f) !important;
  border: 1px solid rgba(95, 107, 159, 0.78) !important;

  color: #ffffff !important;
  font-weight: 950 !important;

  box-shadow: 0 16px 38px rgba(95, 107, 159, 0.28) !important;
}

.for-login .btn-login:hover,
.for-login .btn-primary:hover {
  background: linear-gradient(135deg, #3e4872, #5f6b9f) !important;
}

/* Login links */
.for-login a {
  color: #46517f !important;
  font-weight: 800 !important;
}

/* =========================================================
   Sidebar Visibility Fix
   ========================================================= */

body:not(.page-login) .standard-sidebar,
body:not(.page-login) .desk-sidebar,
body:not(.page-login) .layout-side-section {
  background: linear-gradient(180deg, #333b63, #46517f 48%, #5f6b9f) !important;
  border-right: 1px solid rgba(185, 234, 237, 0.20) !important;
}

/* force all sidebar text visible */
body:not(.page-login) .standard-sidebar *,
body:not(.page-login) .desk-sidebar *,
body:not(.page-login) .layout-side-section * {
  opacity: 1 !important;
  text-shadow: none !important;
}

body:not(.page-login) .standard-sidebar .sidebar-label,
body:not(.page-login) .desk-sidebar .sidebar-label,
body:not(.page-login) .layout-side-section .sidebar-label,
body:not(.page-login) .standard-sidebar .text-muted,
body:not(.page-login) .desk-sidebar .text-muted,
body:not(.page-login) .layout-side-section .text-muted {
  color: #edd587 !important;
  font-weight: 950 !important;
}

body:not(.page-login) .standard-sidebar .sidebar-item,
body:not(.page-login) .desk-sidebar .sidebar-item,
body:not(.page-login) .layout-side-section .sidebar-item,
body:not(.page-login) .standard-sidebar a,
body:not(.page-login) .desk-sidebar a,
body:not(.page-login) .layout-side-section a,
body:not(.page-login) .standard-sidebar span,
body:not(.page-login) .desk-sidebar span,
body:not(.page-login) .layout-side-section span {
  color: #ffffff !important;
  font-weight: 850 !important;
}

/* =========================================================
   Mobile
   ========================================================= */

@media (max-width: 900px) {
  body:not(.page-login) .navbar,
  body.page-login .navbar,
  body[data-path="login"] .navbar,
  .for-login .navbar {
    min-height: 72px !important;
    height: 72px !important;
  }

  body:not(.page-login) .navbar .navbar-home,
  body:not(.page-login) .navbar .navbar-brand,
  body.page-login .navbar .navbar-home,
  body.page-login .navbar .navbar-brand,
  body[data-path="login"] .navbar .navbar-home,
  body[data-path="login"] .navbar .navbar-brand,
  .for-login .navbar .navbar-home,
  .for-login .navbar .navbar-brand {
    width: 245px !important;
    min-width: 245px !important;
    height: 62px !important;
  }

  body:not(.page-login) .navbar .navbar-home::after,
  body:not(.page-login) .navbar .navbar-brand::after,
  body.page-login .navbar .navbar-home::after,
  body.page-login .navbar .navbar-brand::after,
  body[data-path="login"] .navbar .navbar-home::after,
  body[data-path="login"] .navbar .navbar-brand::after,
  .for-login .navbar .navbar-home::after,
  .for-login .navbar .navbar-brand::after {
    width: 230px !important;
    height: 54px !important;
  }

  .for-login .page-card-head::before {
    width: 340px !important;
    height: 150px !important;
  }

  .for-login .page-card {
    width: auto !important;
    margin: 18px !important;
    padding: 28px 24px !important;
  }
}
