:root {
  --nexora-navy: #071b4d;
  --nexora-blue: #0d4f9f;
  --nexora-teal: #069a9a;
  --nexora-teal-soft: #e7f7f7;
  --nexora-ink: #071332;
  --nexora-muted: #60708f;
  --nexora-line: #d8e2ef;
  --nexora-panel: rgba(255, 255, 255, 0.9);
  --nexora-bg: #f7fbff;
  --nexora-sidebar-width: 286px;
  --primary: var(--nexora-teal);
  --btn-primary: var(--nexora-teal);
  --text-color: var(--nexora-ink);
  --heading-color: var(--nexora-ink);
  --border-color: var(--nexora-line);
}

body,
.desk-page,
.layout-main,
.layout-main-section,
.page-container,
.workspace-body {
  background:
    radial-gradient(circle at 76% 10%, rgba(6, 154, 154, 0.1), transparent 32rem),
    radial-gradient(circle at 22% 4%, rgba(13, 79, 159, 0.07), transparent 28rem),
    linear-gradient(135deg, #ffffff 0%, var(--nexora-bg) 100%) !important;
  color: var(--nexora-ink);
}

body.nexora-erp::before {
  content: "";
  position: fixed;
  top: 96px;
  right: -4vw;
  width: 58vw;
  height: 230px;
  pointer-events: none;
  opacity: 0.5;
  background: repeating-radial-gradient(ellipse at center, rgba(6, 154, 154, 0.18) 0 1px, transparent 1px 8px);
  mask-image: linear-gradient(105deg, transparent 0%, #000 20%, #000 84%, transparent 100%);
  transform: rotate(-8deg) skewX(-18deg);
  z-index: 0;
}

.navbar,
.navbar.navbar-expand {
  min-height: 88px;
  background: rgba(255, 255, 255, 0.92) !important;
  border-bottom: 1px solid var(--nexora-line);
  box-shadow: 0 10px 34px rgba(7, 27, 77, 0.05);
  backdrop-filter: blur(18px);
}

.navbar .container,
.navbar .container-fluid {
  min-height: 88px;
}

.navbar,
.page-head,
.layout-main-section,
.layout-side-section,
.standard-sidebar,
.desk-sidebar,
.form-layout,
.report-wrapper,
.frappe-list,
.widget,
.shortcut-widget-box {
  position: relative;
  z-index: 1;
}

.nexora-brand {
  display: inline-flex;
  width: 220px;
  height: 54px;
  max-width: 220px;
  background: url("/assets/nexora_theme/images/nexora-erp-logo.svg") left center / contain no-repeat;
}

.navbar-brand,
.app-logo,
.brand-logo,
.navbar .home-icon {
  display: inline-flex !important;
  align-items: center;
  width: 230px;
  min-width: 230px;
  height: 64px;
  overflow: hidden;
}

.navbar-brand > :not(.nexora-brand),
.app-logo > :not(.nexora-brand),
.brand-logo > :not(.nexora-brand),
.navbar .home-icon > :not(.nexora-brand) {
  display: none !important;
}

.navbar .form-control,
.navbar input[type="text"],
.search-bar input,
.awesomplete input,
.form-control {
  border: 1px solid var(--nexora-line) !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 22px rgba(7, 27, 77, 0.06);
}

.navbar .search-bar,
.navbar .awesomplete,
.navbar .search-bar .awesomplete {
  width: min(640px, 44vw) !important;
}

.navbar .search-bar input,
.navbar input[type="text"] {
  min-height: 52px;
  padding-inline: 48px 92px !important;
  font-size: 16px;
  background: rgba(248, 251, 255, 0.92) !important;
}

.layout-side-section,
.desk-sidebar,
.standard-sidebar {
  background: rgba(255, 255, 255, 0.78);
  border-right: 1px solid var(--nexora-line);
  box-shadow: 10px 0 30px rgba(7, 27, 77, 0.035);
  backdrop-filter: blur(16px);
}

body.nexora-workspace-home .layout-side-section,
body.nexora-workspace-home .standard-sidebar,
body.nexora-workspace-home .desk-sidebar,
body.nexora-desk-home .layout-side-section,
body.nexora-desk-home .standard-sidebar,
body.nexora-desk-home .desk-sidebar,
body:has(.editor-js-container) .layout-side-section,
body:has(.editor-js-container) .standard-sidebar,
body:has(.editor-js-container) .desk-sidebar {
  width: var(--nexora-sidebar-width) !important;
  flex: 0 0 var(--nexora-sidebar-width) !important;
  padding: 112px 18px 24px !important;
  background: rgba(255, 255, 255, 0.88) !important;
  border-right: 1px solid #dbe4f2;
  box-shadow: 12px 0 34px rgba(7, 27, 77, 0.045);
}

.standard-sidebar .standard-sidebar-item,
.desk-sidebar .sidebar-item,
.layout-side-section .sidebar-item {
  min-height: 48px;
  border-radius: 10px;
  color: var(--nexora-ink);
  font-weight: 650;
  transition: background-color 140ms ease, color 140ms ease, box-shadow 140ms ease;
}

.standard-sidebar .standard-sidebar-item.selected,
.standard-sidebar .standard-sidebar-item.active,
.desk-sidebar .sidebar-item.selected,
.desk-sidebar .sidebar-item.active,
.layout-side-section .sidebar-item.selected,
.layout-side-section .sidebar-item.active {
  background: linear-gradient(90deg, rgba(6, 154, 154, 0.14), rgba(6, 154, 154, 0.04));
  color: var(--nexora-teal);
  box-shadow: inset -3px 0 0 var(--nexora-teal);
}

body.nexora-workspace-home .standard-sidebar .standard-sidebar-item.selected,
body.nexora-workspace-home .standard-sidebar .standard-sidebar-item.active,
body.nexora-workspace-home .desk-sidebar .sidebar-item.selected,
body.nexora-workspace-home .desk-sidebar .sidebar-item.active,
body.nexora-workspace-home .layout-side-section .sidebar-item.selected,
body.nexora-workspace-home .layout-side-section .sidebar-item.active {
  background: linear-gradient(90deg, rgba(6, 154, 154, 0.12), rgba(6, 154, 154, 0.05)) !important;
  color: var(--nexora-teal) !important;
  box-shadow: inset -3px 0 0 var(--nexora-teal);
}

.page-title .title-text,
.workspace-title,
h1,
h2,
h3,
h4 {
  color: var(--nexora-ink);
  letter-spacing: 0;
}

.page-head {
  background: transparent !important;
  border-bottom: 0;
}

.layout-main-section,
.form-layout,
.report-wrapper,
.frappe-list,
.workspace-body {
  background: rgba(255, 255, 255, 0.62);
}

body.nexora-workspace-home .layout-main,
body.nexora-desk-home .layout-main,
body:has(.editor-js-container) .layout-main {
  min-height: calc(100vh - 88px);
}

body.nexora-workspace-home .layout-main-section-wrapper,
body.nexora-desk-home .layout-main-section-wrapper,
body:has(.editor-js-container) .layout-main-section-wrapper {
  padding: 0 !important;
}

body.nexora-workspace-home .layout-main-section,
body.nexora-desk-home .layout-main-section,
body:has(.editor-js-container) .layout-main-section {
  padding: 42px 44px 28px !important;
  background:
    radial-gradient(circle at 80% 7%, rgba(6, 154, 154, 0.08), transparent 32rem),
    linear-gradient(135deg, #ffffff 0%, #f7fbff 100%) !important;
}

body.nexora-workspace-home .editor-js-container,
body.nexora-desk-home .editor-js-container,
body.nexora-desk-home .workspace-body,
body.nexora-desk-home .layout-main-section,
body:has(.editor-js-container) .editor-js-container {
  max-width: 1320px;
  margin: 0 auto !important;
}

.widget,
.shortcut-widget-box,
.workspace-section .shortcut-widget-box,
.number-card-widget-box,
.number-widget-box,
.dashboard-widget-box,
.frappe-card,
.form-dashboard-section,
.list-row,
.list-row-container {
  border: 1px solid rgba(216, 226, 239, 0.95) !important;
  border-radius: 14px !important;
  background: var(--nexora-panel) !important;
  box-shadow: 0 14px 35px rgba(7, 27, 77, 0.08) !important;
}

body.nexora-workspace-home .codex-editor__redactor,
body.nexora-desk-home .codex-editor__redactor,
body:has(.editor-js-container) .codex-editor__redactor {
  padding-bottom: 0 !important;
}

body.nexora-workspace-home .ce-block,
body.nexora-workspace-home .ce-block__content,
body.nexora-workspace-home .ce-toolbar__content,
body.nexora-desk-home .ce-block,
body.nexora-desk-home .ce-block__content,
body.nexora-desk-home .ce-toolbar__content,
body:has(.editor-js-container) .ce-block,
body:has(.editor-js-container) .ce-block__content,
body:has(.editor-js-container) .ce-toolbar__content {
  max-width: none !important;
}

body.nexora-workspace-home .workspace-section,
body.nexora-desk-home .workspace-section,
body:has(.editor-js-container) .workspace-section {
  margin-bottom: 26px !important;
}

body.nexora-workspace-home .workspace-section .section-head,
body.nexora-workspace-home .workspace-section .section-title,
body.nexora-workspace-home .ce-header,
body.nexora-desk-home .workspace-section .section-head,
body.nexora-desk-home .workspace-section .section-title,
body.nexora-desk-home .ce-header {
  margin-bottom: 22px !important;
  font-size: 18px !important;
  font-weight: 850 !important;
  color: var(--nexora-ink) !important;
}

body.nexora-workspace-home .workspace-section .widget-group,
body.nexora-workspace-home .workspace-section .shortcut-group,
body.nexora-workspace-home .widget-group,
body.nexora-workspace-home .shortcuts,
body.nexora-workspace-home .ce-block .row,
body.nexora-desk-home .workspace-section .widget-group,
body.nexora-desk-home .workspace-section .shortcut-group,
body.nexora-desk-home .widget-group,
body.nexora-desk-home .shortcuts,
body.nexora-desk-home .ce-block .row {
  gap: 24px !important;
}

body.nexora-workspace-home .shortcut-widget-box,
body.nexora-workspace-home .workspace-section .shortcut-widget-box,
body.nexora-workspace-home .widget,
body.nexora-desk-home .shortcut-widget-box,
body.nexora-desk-home .workspace-section .shortcut-widget-box,
body.nexora-desk-home .widget,
body:has(.editor-js-container) .shortcut-widget-box,
body:has(.editor-js-container) .workspace-section .shortcut-widget-box,
body:has(.editor-js-container) .widget {
  min-height: 190px !important;
  padding: 28px !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  border: 1px solid rgba(216, 226, 239, 0.95) !important;
  box-shadow: 0 14px 34px rgba(7, 27, 77, 0.08) !important;
}

body.nexora-workspace-home .shortcut-widget-box .icon,
body.nexora-workspace-home .widget .icon,
body.nexora-desk-home .shortcut-widget-box .icon,
body.nexora-desk-home .widget .icon {
  width: 64px !important;
  height: 64px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
  border-radius: 16px !important;
  background: #eef6ff !important;
}

body.nexora-workspace-home .shortcut-title,
body.nexora-workspace-home .widget-title,
body.nexora-desk-home .shortcut-title,
body.nexora-desk-home .widget-title {
  font-size: 17px !important;
}

body.nexora-workspace-home .widget-subtitle,
body.nexora-workspace-home .shortcut-widget-box .text-muted,
body.nexora-desk-home .widget-subtitle,
body.nexora-desk-home .shortcut-widget-box .text-muted {
  font-size: 14px !important;
}

.shortcut-widget-box,
.workspace-section .shortcut-widget-box,
.widget,
.list-row {
  transition: transform 150ms ease, box-shadow 150ms ease, border-color 150ms ease;
}

.shortcut-widget-box:hover,
.workspace-section .shortcut-widget-box:hover,
.widget:hover,
.list-row:hover {
  transform: translateY(-2px);
  border-color: rgba(6, 154, 154, 0.35) !important;
  box-shadow: 0 18px 42px rgba(7, 27, 77, 0.12) !important;
}

.shortcut-widget-box .icon,
.widget .icon,
.number-card-widget-box .widget-head .widget-title .indicator-pill,
.dashboard-widget-box .widget-head .widget-title .indicator-pill {
  background: #eef6ff !important;
  border-radius: 16px !important;
  color: #0b85e8 !important;
  box-shadow: 0 12px 26px rgba(8, 119, 217, 0.18);
}

.widget-title,
.shortcut-title,
.link-content,
.sidebar-label,
.list-subject {
  color: var(--nexora-ink) !important;
  font-weight: 800 !important;
  letter-spacing: 0;
}

.widget-subtitle,
.ellipsis.text-muted,
.text-muted {
  color: var(--nexora-muted) !important;
}

.btn-primary,
.primary-action,
.btn.btn-primary {
  border-color: var(--nexora-teal) !important;
  background: linear-gradient(135deg, var(--nexora-teal), #0c7fb1) !important;
  color: #fff !important;
  box-shadow: 0 10px 22px rgba(6, 154, 154, 0.22);
}

.indicator-pill,
.badge-primary,
.badge-info {
  background-color: var(--nexora-teal-soft) !important;
  color: var(--nexora-teal) !important;
}

.avatar-frame,
.user-avatar {
  background: #f4d9fb !important;
  color: #9b2db2 !important;
}

.modal-content,
.dropdown-menu,
.awesomplete > ul {
  border: 1px solid var(--nexora-line) !important;
  border-radius: 14px !important;
  box-shadow: 0 18px 55px rgba(7, 27, 77, 0.14) !important;
}

body[data-path="login"],
body[data-path="login"] .web-container,
body[data-path="login"] .for-login,
body[data-path="login"] .for-forgot,
body[data-path="login"] .for-signup,
body[data-path="login"] .for-email-login,
body[data-path="login"] .for-login-with-email-link {
  background:
    radial-gradient(circle at 74% 14%, rgba(6, 154, 154, 0.16), transparent 32rem),
    radial-gradient(circle at 18% 0%, rgba(13, 79, 159, 0.1), transparent 30rem),
    linear-gradient(135deg, #ffffff 0%, var(--nexora-bg) 100%) !important;
}

body[data-path="login"] .page-card {
  border: 1px solid rgba(216, 226, 239, 0.95) !important;
  border-radius: 18px !important;
  background: var(--nexora-panel) !important;
  box-shadow: 0 24px 70px rgba(7, 27, 77, 0.13) !important;
  backdrop-filter: blur(18px);
}

body[data-path="login"] .page-card-head .app-logo {
  display: block !important;
  width: 230px !important;
  max-width: 230px !important;
  height: 64px !important;
  object-fit: contain !important;
  content: url("/assets/nexora_theme/images/nexora-erp-logo.svg");
}

body[data-path="login"] .page-card-head h4 {
  color: var(--nexora-ink) !important;
  font-weight: 800;
}

@media (max-width: 768px) {
  :root {
    --nexora-sidebar-width: 0px;
  }

  .nexora-brand {
    width: 52px;
    min-width: 52px;
    background-image: url("/assets/nexora_theme/images/nexora-erp-mark.svg");
  }

  .navbar-brand,
  .app-logo,
  .brand-logo,
  .navbar .home-icon {
    width: 64px;
    min-width: 64px;
  }

  .navbar,
  .navbar.navbar-expand {
    min-height: 60px;
  }

  .shortcut-widget-box,
  .workspace-section .shortcut-widget-box {
    min-height: 118px;
  }

  body.nexora-workspace-home .layout-side-section,
  body.nexora-workspace-home .standard-sidebar,
  body.nexora-workspace-home .desk-sidebar,
  body.nexora-desk-home .layout-side-section,
  body.nexora-desk-home .standard-sidebar,
  body.nexora-desk-home .desk-sidebar {
    width: auto !important;
    flex: initial !important;
    padding: 12px !important;
  }

  body.nexora-workspace-home .layout-main-section,
  body.nexora-desk-home .layout-main-section {
    padding: 24px 16px !important;
  }

}
