:root {
  --nx-midnight: #0F1B2E;
  --nx-midnight-2: #0A1423;
  --nx-soft-blue: #4D6E91;
  --nx-gold: #24B47E;
  --nx-gold-2: #188D68;
  --nx-beige: #F3E9DA;
  --nx-charcoal: #2A2F36;
  --nx-ivory: #FBF7F1;
  --nx-panel: #FFFDF8;
  --nx-line: rgba(15, 27, 46, .14);
  --nx-line-strong: rgba(15, 27, 46, .24);
  --nx-shadow: 0 18px 42px rgba(15, 27, 46, .12);

  --bg: var(--nx-ivory);
  --bg2: var(--nx-beige);
  --p: var(--nx-panel);
  --p2: var(--nx-beige);
  --sk: var(--nx-line);
  --sk2: rgba(42, 47, 54, .11);
  --mu: var(--nx-soft-blue);
  --so: var(--nx-charcoal);
  --tx: var(--nx-charcoal);
  --st: var(--nx-midnight);
  --bl: var(--nx-midnight);
  --cy: var(--nx-soft-blue);
  --gn: var(--nx-soft-blue);
  --am: var(--nx-gold);

  --ap-page: var(--nx-ivory);
  --ap-surface: var(--nx-panel);
  --ap-surface-2: var(--nx-beige);
  --ap-border: var(--nx-line);
  --ap-border-strong: var(--nx-line-strong);
  --ap-text: var(--nx-midnight);
  --ap-muted: var(--nx-soft-blue);
  --ap-faint: #7B8794;
  --ap-ink: var(--nx-midnight);
  --ap-olive: var(--nx-midnight);
  --ap-olive-dark: var(--nx-midnight-2);
  --ap-sage: var(--nx-soft-blue);
  --ap-honey: var(--nx-gold);
  --ap-honey-deep: var(--nx-gold-2);

  --rs-ink: var(--nx-midnight);
  --rs-olive-2: var(--nx-midnight);
  --rs-sage: var(--nx-soft-blue);
  --rs-gold: var(--nx-gold);
  --rs-cream: var(--nx-panel);
  --rs-ivory: var(--nx-ivory);
  --rs-parchment: var(--nx-beige);

  --gt-text: var(--nx-midnight);
  --gt-olive2: var(--nx-midnight);
  --gt-honey: var(--nx-gold);

  --docai-accent: var(--nx-gold);
  --docai-olive: var(--nx-midnight);
  --docai-ink: var(--nx-midnight);
}

html,
body {
  background: var(--nx-beige) !important;
  color: var(--nx-charcoal) !important;
}

.app {
  background:
    radial-gradient(ellipse 58% 40% at 22% -5%, rgba(36, 180, 126, .16), transparent 64%),
    radial-gradient(ellipse 50% 38% at 86% 8%, rgba(77, 110, 145, .10), transparent 60%),
    linear-gradient(180deg, var(--nx-beige) 0%, #F7EFE3 48%, var(--nx-beige) 100%) !important;
}

.app::before {
  background:
    radial-gradient(circle at 96% 4%, rgba(36, 180, 126, .35) 1.4px, transparent 1.8px),
    linear-gradient(rgba(15, 27, 46, .025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(15, 27, 46, .025) 1px, transparent 1px) !important;
  background-size: 22px 22px, 46px 46px, 46px 46px !important;
  opacity: .28 !important;
}

.hdr {
  background: rgba(251, 247, 241, .88) !important;
  border-bottom: 1px solid rgba(15, 27, 46, .10) !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, .72) inset, 0 14px 36px rgba(15, 27, 46, .08) !important;
}

.hdr .logo-ico,
body.ap-vertical-shell .hdr .logo-ico,
body.ap-vertical-shell .hdr.ap-nav-collapsed:not(.ap-nav-peek) .logo-ico {
  width: 275px !important;
  height: 68px !important;
  flex: 0 0 275px !important;
  flex-basis: 275px !important;
  background-image: url('../../assets/nexora-ai-theme05-logo.png') !important;
  background-size: contain !important;
  background-position: left center !important;
  background-repeat: no-repeat !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body.ap-vertical-shell .hdr:not(.ap-nav-collapsed) .logo,
body.ap-vertical-shell .hdr.ap-nav-peek .logo,
body.ap-vertical-shell .hdr.ap-nav-collapsed:not(.ap-nav-peek) .logo {
  opacity: 1 !important;
  width: auto !important;
  min-width: 275px !important;
  max-width: 315px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  transform: none !important;
  filter: none !important;
  pointer-events: auto !important;
}

.hdr .logo>div:last-child,
body.ap-vertical-shell .hdr .logo>div:last-child {
  display: none !important;
}

.ai-pill,
.api-st {
  background: rgba(243, 233, 218, .68) !important;
  border-color: rgba(15, 27, 46, .12) !important;
  color: var(--nx-soft-blue) !important;
}

.ai-dot,
#apiDot {
  background: var(--nx-gold) !important;
  box-shadow: 0 0 0 4px rgba(36, 180, 126, .16), 0 0 12px rgba(36, 180, 126, .34) !important;
}

body.ap-vertical-shell .tabs {
  background:
    linear-gradient(180deg, #071222 0%, var(--nx-midnight) 45%, #091626 100%) !important;
  border-right: 1px solid rgba(36, 180, 126, .18) !important;
  box-shadow: 18px 0 48px rgba(15, 27, 46, .16) !important;
}

body.ap-vertical-shell .ap-sidebar-brand {
  min-height: 72px !important;
  padding: 6px 12px !important;
  border-bottom: 1px solid rgba(251, 247, 241, .08) !important;
  display: flex !important;
  align-items: center !important;
}

body.ap-vertical-shell .ap-sidebar-mark {
  width: 100% !important;
  height: 56px !important;
  flex: 1 1 auto !important;
  display: flex !important;
  align-items: center !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

body.ap-vertical-shell .ap-sidebar-logo {
  content: url('../../assets/logo.png') !important;
  width: 100% !important;
  height: 56px !important;
  object-fit: contain !important;
  object-position: left center !important;
}

body.ap-vertical-shell .ap-sidebar-copy {
  display: none !important;
}

body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-sidebar-mark {
  width: 46px !important;
  height: 46px !important;
  flex: 0 0 46px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 14px !important;
  background: linear-gradient(180deg, var(--nx-ivory), var(--nx-beige)) !important;
  border: 1px solid rgba(36, 180, 126, .54) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .74), 0 12px 24px rgba(0, 0, 0, .24) !important;
  overflow: hidden !important;
}

body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-sidebar-logo {
  content: url('../../assets/nexora-ai-sidebar-icon.png') !important;
  width: 38px !important;
  height: 38px !important;
  margin: 0 !important;
  object-fit: contain !important;
}

body.ap-vertical-shell .tab {
  color: rgba(251, 247, 241, .78) !important;
  border-color: rgba(251, 247, 241, .07) !important;
}

body.ap-vertical-shell .tab:hover {
  background: rgba(251, 247, 241, .07) !important;
  border-color: rgba(36, 180, 126, .24) !important;
  color: var(--nx-ivory) !important;
}

body.ap-vertical-shell .tab.active {
  background: linear-gradient(180deg, var(--nx-gold), #B99451) !important;
  border-color: rgba(255, 255, 255, .32) !important;
  color: var(--nx-midnight) !important;
  box-shadow: 0 12px 26px rgba(36, 180, 126, .28), inset 0 1px 0 rgba(255, 255, 255, .42) !important;
}

body.ap-vertical-shell .tab .ap-tab-icon {
  background: rgba(251, 247, 241, .08) !important;
  color: currentColor !important;
}

body.ap-vertical-shell .tab.active .ap-tab-icon {
  background: rgba(251, 247, 241, .70) !important;
  color: var(--nx-midnight) !important;
}

.home-hero {
  background:
    radial-gradient(ellipse 46% 52% at 96% 0%, rgba(36, 180, 126, .18), transparent 62%),
    linear-gradient(135deg, #091525 0%, var(--nx-midnight) 54%, #172A42 100%) !important;
  color: var(--nx-ivory) !important;
  box-shadow: 0 18px 42px rgba(15, 27, 46, .22) !important;
}

.home-hero-eyebrow,
.home-card-h,
.lgb-title {
  color: var(--nx-gold) !important;
}

.home-btn-primary,
.apr-btn.pri,
.hbtn.primary,
.home-active .home-btn-primary,
.home-getstarted .home-btn-primary {
  background: linear-gradient(180deg, #F6E7C8, var(--nx-gold)) !important;
  border-color: rgba(168, 135, 74, .62) !important;
  color: var(--nx-midnight) !important;
  box-shadow: 0 12px 22px rgba(36, 180, 126, .24) !important;
}

.hbtn,
.home-btn-ghost,
.home-active .home-btn-ghost,
.home-getstarted .home-btn-ghost {
  background: rgba(251, 247, 241, .10) !important;
  border-color: rgba(251, 247, 241, .24) !important;
  color: inherit !important;
}

.panel,
.home-card,
.card,
.modal,
.docai-card,
.dsett-card,
.home-quick,
.home-recent-row,
.zwiz-card,
.map-card,
.m2-card,
.nexus-card,
.maestro-card,
.forge-sbox,
.forge-cpm-card,
.forge-con,
.forge-board-wrap {
  background: rgba(255, 255, 255, .92) !important;
  border-color: rgba(232, 236, 239, .94) !important;
  color: var(--nx-charcoal) !important;
  box-shadow: 0 18px 36px rgba(15, 27, 46, .08) !important;
}

input,
textarea,
select,
.input,
.chat-input,
.docai-input,
.dsett-input {
  background: rgba(251, 247, 241, .88) !important;
  border-color: rgba(15, 27, 46, .16) !important;
  color: var(--nx-midnight) !important;
}

input:focus,
textarea:focus,
select:focus {
  border-color: rgba(36, 180, 126, .82) !important;
  box-shadow: 0 0 0 3px rgba(36, 180, 126, .18) !important;
}

.pill,
.chip,
.badge,
.home-plan-badge,
.tbadge,
.forge-chip {
  background: rgba(77, 110, 145, .10) !important;
  border-color: rgba(77, 110, 145, .22) !important;
  color: var(--nx-midnight) !important;
}

.home-step-n,
.home-quality,
.home-quick-ic,
.home-usage-bar i,
.progress-fill,
.bar-fill {
  background: linear-gradient(135deg, var(--nx-midnight), var(--nx-soft-blue)) !important;
  color: var(--nx-ivory) !important;
}

.home-dot,
.dot,
.forge-chip .dot {
  background: var(--nx-gold) !important;
  box-shadow: 0 0 0 4px rgba(36, 180, 126, .16) !important;
}

.forge-ov {
  background:
    radial-gradient(ellipse 46% 36% at 18% 12%, rgba(36, 180, 126, .18), transparent 62%),
    radial-gradient(ellipse 48% 38% at 82% 72%, rgba(77, 110, 145, .16), transparent 62%),
    linear-gradient(135deg, var(--nx-ivory) 0%, var(--nx-beige) 100%) !important;
  color: var(--nx-midnight) !important;
}

.forge-top,
.forge-footer {
  background: rgba(251, 247, 241, .94) !important;
  border-color: rgba(15, 27, 46, .12) !important;
}

.forge-logo-mark {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.forge-logo-mark img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

.forge-pipe-fill,
.forge-seg.act,
.forge-es-dot {
  background: linear-gradient(90deg, var(--nx-midnight), var(--nx-soft-blue), var(--nx-gold)) !important;
}

a,
.link,
.home-seeall,
.accent,
.txt-accent {
  color: var(--nx-soft-blue) !important;
}

::selection {
  background: rgba(36, 180, 126, .34);
  color: var(--nx-midnight);
}

/* Theme 05 final calibration: match the provided brand board color distribution. */
html,
body,
.app {
  background: var(--nx-beige) !important;
}

.app {
  background:
    radial-gradient(ellipse 58% 40% at 22% -5%, rgba(36, 180, 126, .16), transparent 64%),
    radial-gradient(ellipse 50% 38% at 86% 8%, rgba(77, 110, 145, .10), transparent 60%),
    linear-gradient(180deg, var(--nx-beige) 0%, #F7EFE3 48%, var(--nx-beige) 100%) !important;
}

body.ap-vertical-shell .tabs,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) {
  background: var(--nx-midnight) !important;
  border-right: 1px solid rgba(36, 180, 126, .22) !important;
  box-shadow: 14px 0 34px rgba(15, 27, 46, .18) !important;
}

body.ap-vertical-shell .ap-sidebar-mark,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-sidebar-mark {
  background: linear-gradient(180deg, #FFF8EC, var(--nx-beige)) !important;
  border: 1px solid rgba(36, 180, 126, .58) !important;
}

body.ap-vertical-shell .ap-sidebar-logo,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-sidebar-logo {
  content: url('../../assets/nexora-ai-sidebar-icon.png') !important;
  object-fit: contain !important;
}

body.ap-vertical-shell .tab,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .tab {
  background: rgba(251, 247, 241, .035) !important;
  border-color: rgba(251, 247, 241, .10) !important;
  color: rgba(251, 247, 241, .72) !important;
}

body.ap-vertical-shell .tab.active,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .tab.active {
  background: linear-gradient(180deg, #DAB96F, var(--nx-gold)) !important;
  border-color: rgba(255, 255, 255, .36) !important;
  color: var(--nx-midnight) !important;
}

body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .tab.active {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

body.ap-vertical-shell .tab .ap-tab-icon,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-tab-icon {
  background: rgba(251, 247, 241, .075) !important;
  color: currentColor !important;
}

body.ap-vertical-shell .tab.active .ap-tab-icon,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .tab.active .ap-tab-icon {
  background: rgba(251, 247, 241, .70) !important;
  color: var(--nx-midnight) !important;
}

body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .tab.active .ap-tab-icon {
  background: linear-gradient(180deg, #DAB96F, var(--nx-gold)) !important;
  border-color: rgba(255, 255, 255, .34) !important;
  box-shadow: 0 10px 20px rgba(36, 180, 126, .28), inset 0 1px 0 rgba(255, 255, 255, .40) !important;
}

.home-card,
.panel,
.card,
.home-quick,
.home-recent-row {
  background: rgba(255, 255, 255, .92) !important;
}

.home-step-n,
.home-quality {
  background: linear-gradient(135deg, var(--nx-midnight), #253D5A) !important;
  color: var(--nx-ivory) !important;
}

.home-quick-ic {
  background: linear-gradient(180deg, #FFF8EC, var(--nx-beige)) !important;
  border: 1px solid rgba(36, 180, 126, .28) !important;
  color: var(--nx-midnight) !important;
}

.home-quick-ic svg {
  stroke: var(--nx-midnight) !important;
}

.home-card-h,
.home-hero-eyebrow {
  color: var(--nx-gold) !important;
}

/* Theme 05 shell lock: exact palette, no olive, no Gantt/table body overrides. */
html,
body,
.app {
  background: var(--nx-beige) !important;
}

.app {
  background:
    radial-gradient(ellipse 50% 38% at 12% 0%, rgba(36, 180, 126, .14), transparent 64%),
    radial-gradient(ellipse 46% 32% at 96% 6%, rgba(77, 110, 145, .10), transparent 62%),
    linear-gradient(180deg, var(--nx-ivory) 0%, var(--nx-beige) 100%) !important;
}

.hdr,
body.ap-vertical-shell .hdr {
  background: var(--nx-ivory) !important;
  border-bottom: 1px solid rgba(15, 27, 46, .09) !important;
  box-shadow: 0 10px 28px rgba(15, 27, 46, .07) !important;
}

body.ap-vertical-shell .tabs,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) {
  background: var(--nx-midnight) !important;
  border-right: 1px solid rgba(36, 180, 126, .24) !important;
  box-shadow: 14px 0 34px rgba(15, 27, 46, .20) !important;
}

body.ap-vertical-shell .tabs::before,
body.ap-vertical-shell .tabs::after {
  background: transparent !important;
}

body.ap-vertical-shell .ap-sidebar-brand {
  min-height: 74px !important;
  padding: 12px 0 14px !important;
  border-bottom: 1px solid rgba(251, 247, 241, .10) !important;
}

body.ap-vertical-shell .ap-sidebar-mark,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-sidebar-mark {
  width: 56px !important;
  height: 56px !important;
  flex: 0 0 56px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 17px !important;
  overflow: hidden !important;
}

body.ap-vertical-shell .ap-sidebar-logo,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-sidebar-logo {
  content: url('../../assets/nexora-ai-sidebar-icon.png') !important;
  width: 56px !important;
  height: 56px !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: 17px !important;
}

body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-sidebar-brand {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-sidebar-mark,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-sidebar-logo {
  width: 48px !important;
  height: 48px !important;
  flex-basis: 48px !important;
  border-radius: 15px !important;
}

body.ap-vertical-shell .ap-sidebar-search {
  background: rgba(251, 247, 241, .07) !important;
  border: 1px solid rgba(251, 247, 241, .12) !important;
  box-shadow: none !important;
}

body.ap-vertical-shell .ap-sidebar-nav,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-sidebar-nav {
  gap: 8px !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
}

body.ap-vertical-shell .tab {
  margin: 0 !important;
  background: rgba(251, 247, 241, .055) !important;
  border: 1px solid rgba(251, 247, 241, .10) !important;
  color: rgba(251, 247, 241, .78) !important;
  box-shadow: none !important;
}

body.ap-vertical-shell .tab:hover {
  background: rgba(251, 247, 241, .09) !important;
  border-color: rgba(36, 180, 126, .32) !important;
  color: var(--nx-ivory) !important;
}

body.ap-vertical-shell .tab.active {
  background: linear-gradient(180deg, #DAB96F, var(--nx-gold)) !important;
  border-color: rgba(255, 255, 255, .32) !important;
  color: var(--nx-midnight) !important;
  box-shadow: 0 12px 22px rgba(36, 180, 126, .24), inset 0 1px 0 rgba(255, 255, 255, .42) !important;
}

body.ap-vertical-shell .tab .ap-tab-icon {
  background: rgba(251, 247, 241, .08) !important;
  border: 1px solid rgba(251, 247, 241, .10) !important;
  color: currentColor !important;
}

body.ap-vertical-shell .tab.active .ap-tab-icon {
  background: rgba(251, 247, 241, .78) !important;
  border-color: rgba(15, 27, 46, .08) !important;
  color: var(--nx-midnight) !important;
}

body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .tab {
  width: 44px !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 !important;
  justify-content: center !important;
  align-items: center !important;
  border-radius: 13px !important;
  background: transparent !important;
  border-color: transparent !important;
}

body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .tab .ap-tab-icon {
  width: 38px !important;
  height: 38px !important;
  border-radius: 12px !important;
  background: rgba(251, 247, 241, .08) !important;
  border: 1px solid rgba(251, 247, 241, .10) !important;
}

body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .tab.active .ap-tab-icon {
  background: linear-gradient(180deg, #DAB96F, var(--nx-gold)) !important;
  border-color: rgba(255, 255, 255, .34) !important;
  color: var(--nx-midnight) !important;
  box-shadow: 0 10px 20px rgba(36, 180, 126, .28), inset 0 1px 0 rgba(255, 255, 255, .42) !important;
}

body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-sidebar-search,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-sidebar-section-title,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-tab-label,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-tab-badge {
  display: none !important;
}

.home-hero,
.hero,
.welcome-card {
  background:
    radial-gradient(ellipse 44% 50% at 96% 0%, rgba(36, 180, 126, .16), transparent 64%),
    linear-gradient(135deg, #091525 0%, var(--nx-midnight) 58%, #172A42 100%) !important;
  color: var(--nx-ivory) !important;
}

.home-btn-primary,
.btn.primary,
.primary-btn,
.apr-btn.pri {
  background: linear-gradient(180deg, #F6E7C8, var(--nx-gold)) !important;
  border-color: rgba(168, 135, 74, .62) !important;
  color: var(--nx-midnight) !important;
}

.home-step-n,
.home-quality,
.home-quick-ic {
  background: linear-gradient(135deg, var(--nx-midnight), #253D5A) !important;
  color: var(--nx-ivory) !important;
}

.home-dot,
.dot,
.status-dot,
.ai-dot,
#apiDot {
  background: var(--nx-gold) !important;
  box-shadow: 0 0 0 4px rgba(36, 180, 126, .16) !important;
}

body #tp-gantt #ganttOut {
  --aipe-toolbar: #1A1E24;
  --aipe-toolbar-2: #2A2F36;
  --aipe-toolbar-border: rgba(36, 180, 126, .28);
}

body #tp-gantt #ganttOut .p6-toolbar,
body[data-gantt-theme] #tp-gantt #ganttOut .p6-toolbar,
body[data-gantt-theme="light"] #tp-gantt #ganttOut .p6-toolbar,
body[data-gantt-theme="dark"] #tp-gantt #ganttOut .p6-toolbar {
  background: linear-gradient(180deg, #2A2F36, #1A1E24) !important;
  border-color: rgba(36, 180, 126, .22) !important;
  box-shadow: 0 12px 24px rgba(15, 27, 46, .18) !important;
}

#ganttOut .p6-tb-btn,
#ganttOut .p6-exp-btn,
#ganttOut .v12-menu-trigger,
#ganttOut .v12-chip {
  background: rgba(251, 247, 241, .06) !important;
  border-color: rgba(251, 247, 241, .16) !important;
  color: var(--nx-ivory) !important;
}

#ganttOut .p6-tb-btn:hover,
#ganttOut .p6-exp-btn:hover,
#ganttOut .v12-menu-trigger:hover,
#ganttOut .v12-chip:hover {
  background: rgba(36, 180, 126, .16) !important;
  border-color: rgba(36, 180, 126, .38) !important;
}

#ganttOut .p6-toolbar input,
#ganttOut .p6-toolbar .search,
#ganttOut .p6-toolbar [type="search"] {
  background: rgba(15, 27, 46, .36) !important;
  border-color: rgba(251, 247, 241, .18) !important;
  color: var(--nx-ivory) !important;
}

#Z_FAI_BTN,
#Z_ICO,
#Z_SD,
#Z_AGENT,
.zai-fab,
.zai-launcher,
.zai-orb,
.agent-fab,
.floating-agent,
#floatingPlannerButton {
  background: linear-gradient(145deg, var(--nx-midnight), #172A42) !important;
  border-color: rgba(36, 180, 126, .34) !important;
  color: var(--nx-ivory) !important;
  box-shadow: 0 16px 34px rgba(15, 27, 46, .24), inset 0 1px 0 rgba(255, 255, 255, .18) !important;
}

#Z_FAI_BADGE,
#Z_AGENT_PROG_BAR,
.zr.za .zav {
  background: var(--nx-gold) !important;
  color: var(--nx-midnight) !important;
}

#Z_FAI_PNL,
#Z_APR_BOX,
.zmodal-box,
#Z_ACTION_FLASH {
  background: var(--nx-panel) !important;
  border-color: rgba(15, 27, 46, .14) !important;
  color: var(--nx-midnight) !important;
}

#Z_TP,
.zcp,
.zfq:hover,
.zr.zu .zb,
.zb code,
.apr-btn.all,
.zmsg-note,
.z-dl-btn {
  background: rgba(77, 110, 145, .10) !important;
  border-color: rgba(77, 110, 145, .24) !important;
  color: var(--nx-midnight) !important;
}

.zb b,
.zmsg-section,
.ag-step.active,
.res-bar-val {
  color: var(--nx-midnight) !important;
}

#perf-demo-bar.aipe-perf-demo-v2>div {
  background: var(--nx-ivory) !important;
  border-color: rgba(15, 27, 46, .10) !important;
  box-shadow: 0 10px 28px rgba(15, 27, 46, .08) !important;
}

#perf-demo-bar.aipe-perf-demo-v2 b {
  color: var(--nx-soft-blue) !important;
}

#perf-demo-bar.aipe-perf-demo-v2 b::before {
  background: rgba(36, 180, 126, .18) !important;
  color: var(--nx-midnight) !important;
}

#perf-demo-bar.aipe-perf-demo-v2 button,
#perf-demo-bar.aipe-perf-demo-v2 button:nth-of-type(1),
#perf-demo-bar.aipe-perf-demo-v2 button:nth-of-type(2),
#perf-demo-bar.aipe-perf-demo-v2 button:nth-of-type(3),
#perf-demo-bar.aipe-perf-demo-v2 button:nth-of-type(4),
#perf-demo-bar.aipe-perf-demo-v2 button:nth-of-type(5),
#perf-demo-bar.aipe-perf-demo-v2 button:nth-of-type(6) {
  background: rgba(77, 110, 145, .10) !important;
  border-color: rgba(77, 110, 145, .20) !important;
  color: var(--nx-midnight) !important;
  box-shadow: none !important;
}

#perf-demo-bar.aipe-perf-demo-v2 button:nth-of-type(1),
#perf-demo-bar.aipe-perf-demo-v2 button:nth-of-type(2),
#perf-demo-bar.aipe-perf-demo-v2 button:nth-of-type(5) {
  background: rgba(36, 180, 126, .20) !important;
  border-color: rgba(36, 180, 126, .36) !important;
}

#perf-demo-bar.aipe-perf-demo-v2 button:nth-of-type(3) {
  background: rgba(77, 110, 145, .16) !important;
  border-color: rgba(77, 110, 145, .30) !important;
}

#perf-demo-bar.aipe-perf-demo-v2 button:nth-of-type(6) {
  background: var(--nx-midnight) !important;
  border-color: var(--nx-midnight) !important;
  color: var(--nx-ivory) !important;
}

#perf-demo-bar.aipe-perf-demo-v2 button:hover {
  background: rgba(36, 180, 126, .22) !important;
  border-color: rgba(36, 180, 126, .44) !important;
}

/* Theme 05 reference correction - lock the UI to Soft Beige & Midnight Blue. */
:root {
  --nx-page-wash: #FBF7F1;
  --nx-muted-text: rgba(42, 47, 54, .72);
  --nx-soft-line: rgba(42, 47, 54, .12);
}

html,
body {
  background: var(--nx-page-wash) !important;
}

.app,
body.ap-vertical-shell .app {
  background:
    radial-gradient(ellipse 42% 28% at 100% 0%, rgba(36, 180, 126, .07), transparent 62%),
    linear-gradient(180deg, var(--nx-page-wash) 0%, var(--nx-page-wash) 62%, #F3E9DA 100%) !important;
}

.app::before,
body.ap-vertical-shell .app::before {
  opacity: .12 !important;
  background:
    radial-gradient(circle, rgba(36, 180, 126, .22) 1.2px, transparent 1.8px),
    linear-gradient(rgba(42, 47, 54, .014) 1px, transparent 1px),
    linear-gradient(90deg, rgba(42, 47, 54, .014) 1px, transparent 1px) !important;
  background-position: calc(100% - 72px) 26px, 0 0, 0 0 !important;
  background-size: 24px 24px, 48px 48px, 48px 48px !important;
}

.hdr,
.topbar,
.app-header {
  background: var(--nx-page-wash) !important;
  border-bottom-color: rgba(42, 47, 54, .08) !important;
}

body.ap-vertical-shell .tabs {
  background: var(--nx-midnight) !important;
  background-image: linear-gradient(180deg, #0A1626 0%, var(--nx-midnight) 100%) !important;
  border-color: rgba(251, 247, 241, .10) !important;
}

body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-brand,
body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-brand {
  display: flex !important;
}

body.ap-vertical-shell .hdr:not(.ap-nav-collapsed) .logo,
body.ap-vertical-shell .hdr.ap-nav-peek .logo {
  opacity: 0 !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

body.ap-vertical-shell .hdr.ap-nav-collapsed:not(.ap-nav-peek) .logo {
  opacity: 1 !important;
  width: auto !important;
  min-width: 275px !important;
  max-width: 315px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  overflow: visible !important;
  pointer-events: auto !important;
}

body.ap-vertical-shell .ap-cmd-trigger,
body.ap-vertical-shell .ap-sidebar-search,
body.ap-vertical-shell .ap-settings-shortcut,
body.ap-vertical-shell .ap-sidebar-toggle,
body.ap-vertical-shell .ap-sidebar-foot {
  background: rgba(251, 247, 241, .07) !important;
  border-color: rgba(251, 247, 241, .14) !important;
  color: var(--nx-ivory) !important;
  box-shadow: none !important;
}

body.ap-vertical-shell .ap-cmd-trigger:hover,
body.ap-vertical-shell .ap-settings-shortcut:hover,
body.ap-vertical-shell .ap-settings-shortcut.active,
body.ap-vertical-shell .ap-sidebar-toggle:hover,
body.ap-vertical-shell .ap-sidebar-foot:hover,
body.ap-vertical-shell .tab:hover {
  background: rgba(77, 110, 145, .22) !important;
  border-color: rgba(36, 180, 126, .30) !important;
  color: var(--nx-ivory) !important;
}

body.ap-vertical-shell .ap-sidebar-foot {
  background: rgba(15, 27, 46, .72) !important;
}

body.ap-vertical-shell .ap-account-avatar,
body.ap-vertical-shell .ap-sidebar-foot .ap-avatar {
  background: var(--nx-soft-blue) !important;
  color: var(--nx-ivory) !important;
  border-color: rgba(251, 247, 241, .18) !important;
}

body.ap-vertical-shell .tab.active {
  background: linear-gradient(180deg, #E7C67D 0%, var(--nx-gold) 100%) !important;
  border-color: rgba(255, 255, 255, .34) !important;
  color: var(--nx-midnight) !important;
  box-shadow: 0 12px 22px rgba(36, 180, 126, .24), inset 0 1px 0 rgba(255, 255, 255, .42) !important;
}

body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .tab:hover .ap-tab-icon,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-settings-shortcut:hover,
body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-sidebar-toggle:hover {
  background: rgba(77, 110, 145, .22) !important;
  border-color: rgba(36, 180, 126, .30) !important;
  color: var(--nx-ivory) !important;
}

body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .tab.active .ap-tab-icon {
  background: linear-gradient(180deg, #E7C67D 0%, var(--nx-gold) 100%) !important;
  color: var(--nx-midnight) !important;
}

.home-hero,
.hero,
.welcome-card {
  background: linear-gradient(135deg, #071222 0%, var(--nx-midnight) 62%, #172A42 100%) !important;
  color: var(--nx-ivory) !important;
  box-shadow: 0 18px 38px rgba(15, 27, 46, .18) !important;
}

.home-hero-glow,
.home-hero::before,
.home-hero::after,
.hero::before,
.welcome-card::before {
  background: none !important;
  opacity: 0 !important;
}

.home-hero-eyebrow,
.home-card-h {
  color: var(--nx-gold) !important;
}

.home-hero-sub {
  color: rgba(251, 247, 241, .90) !important;
}

.home-card,
.home-active,
.home-getstarted,
.home-usage,
.home-recent,
.home-quick-panel {
  background: rgba(255, 253, 248, .94) !important;
  border-color: rgba(42, 47, 54, .11) !important;
  box-shadow: 0 18px 36px rgba(15, 27, 46, .08) !important;
}

.home-step small,
.home-quick-txt small,
.home-card small,
.home-card p,
.home-muted,
.home-usage-note,
.home-active-meta,
.home-active-empty {
  color: var(--nx-muted-text) !important;
}

.home-quick-txt b,
.home-step b,
.home-card h2,
.home-card h3,
.home-card strong {
  color: var(--nx-midnight) !important;
}

.home-dot,
.dot,
.status-dot,
.ai-dot,
#apiDot {
  width: 10px !important;
  height: 10px !important;
  background: var(--nx-gold) !important;
  border: 1px solid rgba(36, 180, 126, .38) !important;
  box-shadow: inset 0 0 0 3px #F3E9DA !important;
}

.home-hero .home-btn-primary {
  background: linear-gradient(180deg, #F7E6C2 0%, var(--nx-gold) 100%) !important;
  border-color: rgba(168, 135, 74, .62) !important;
  color: var(--nx-midnight) !important;
  box-shadow: 0 12px 24px rgba(36, 180, 126, .22), inset 0 1px 0 rgba(255, 255, 255, .42) !important;
}

.home-getstarted .home-btn-primary,
.home-active .home-btn-primary,
.home-card:not(.home-hero) .home-btn-primary {
  background: var(--nx-midnight) !important;
  border-color: var(--nx-midnight) !important;
  color: var(--nx-ivory) !important;
  box-shadow: 0 10px 20px rgba(15, 27, 46, .18) !important;
}

.home-btn-ghost,
.home-hero .home-btn-ghost {
  background: rgba(251, 247, 241, .08) !important;
  border-color: rgba(251, 247, 241, .24) !important;
  color: var(--nx-ivory) !important;
}

.home-card .home-btn-ghost {
  background: rgba(15, 27, 46, .04) !important;
  border-color: var(--nx-soft-line) !important;
  color: var(--nx-midnight) !important;
}

.home-btn:hover {
  transform: translateY(-1px) !important;
  filter: brightness(1.02) !important;
}

.home-step-n,
.home-quality {
  background: var(--nx-midnight) !important;
  color: var(--nx-ivory) !important;
}

.home-quick {
  background: rgba(255, 253, 248, .96) !important;
  border-color: rgba(42, 47, 54, .13) !important;
  color: var(--nx-midnight) !important;
  box-shadow: 0 8px 18px rgba(15, 27, 46, .045) !important;
}

.home-quick:hover,
.home-quick:focus-visible {
  background: var(--nx-page-wash) !important;
  border-color: rgba(36, 180, 126, .44) !important;
  box-shadow: 0 12px 24px rgba(15, 27, 46, .08) !important;
}

.home-quick-ic {
  background: var(--nx-midnight) !important;
  border: 1px solid rgba(15, 27, 46, .18) !important;
  color: var(--nx-ivory) !important;
}

.home-quick-ic svg,
.home-quick:hover .home-quick-ic svg {
  color: var(--nx-ivory) !important;
  stroke: var(--nx-ivory) !important;
}

body #tp-gantt #ganttOut .p6-toolbar,
body #tp-gantt #ganttOut .p6-toolbar.aipe-gantt-tools-v2,
body[data-gantt-theme] #tp-gantt #ganttOut .p6-toolbar,
body[data-gantt-theme="light"] #tp-gantt #ganttOut .p6-toolbar,
body[data-gantt-theme="light"] #tp-gantt #ganttOut .p6-toolbar.aipe-gantt-tools-v2,
body[data-gantt-theme="dark"] #tp-gantt #ganttOut .p6-toolbar,
body[data-gantt-theme="dark"] #tp-gantt #ganttOut .p6-toolbar.aipe-gantt-tools-v2 {
  background: rgb(18 58 83 / 54%) !important;
  border-color: rgba(251, 247, 241, .18) !important;
  color: #FFF !important;
  box-shadow: 0 12px 24px rgba(15, 27, 46, .18) !important;
}

body #tp-gantt #ganttOut .p6-toolbar.aipe-gantt-tools-v2 {
  border-color: rgba(36, 180, 126, .22) !important;
}

body #tp-gantt #ganttOut .p6-toolbar>.v12-toolgroup,
body #tp-gantt #ganttOut .p6-toolbar .v12-toolgroup,
body #tp-gantt #ganttOut .p6-toolbar .aipe-tool-block,
body #tp-gantt #ganttOut .p6-toolbar .p6-levels,
body[data-gantt-theme="light"] #tp-gantt #ganttOut .p6-toolbar .v12-toolgroup,
body[data-gantt-theme="light"] #tp-gantt #ganttOut .p6-toolbar .aipe-tool-block {
  background: transparent !important;
  background-image: none !important;
  border-color: rgba(251, 247, 241, .18) !important;
}

body #tp-gantt #ganttOut .p6-toolbar button,
body #tp-gantt #ganttOut .p6-toolbar .p6-tb-btn,
body #tp-gantt #ganttOut .p6-toolbar .p6-exp-btn,
body #tp-gantt #ganttOut .p6-toolbar .v12-menu-trigger,
body #tp-gantt #ganttOut .p6-toolbar .v12-switch-btn,
body #tp-gantt #ganttOut .p6-toolbar #ganttLinkHandlesToggle,
body #tp-gantt #ganttOut .p6-toolbar .v12-chip {
  background: rgba(255, 255, 255, .10) !important;
  background-image: none !important;
  border-color: rgba(255, 255, 255, .18) !important;
  color: #FFFFFF !important;
}

body #tp-gantt #ganttOut .p6-toolbar button:hover,
body #tp-gantt #ganttOut .p6-toolbar .p6-tb-btn:hover,
body #tp-gantt #ganttOut .p6-toolbar .p6-exp-btn:hover,
body #tp-gantt #ganttOut .p6-toolbar .v12-menu-trigger:hover,
body #tp-gantt #ganttOut .p6-toolbar .v12-switch-btn:hover,
body #tp-gantt #ganttOut .p6-toolbar #ganttLinkHandlesToggle:hover,
body #tp-gantt #ganttOut .p6-toolbar .v12-chip:hover {
  background: rgba(36, 180, 126, .18) !important;
  border-color: rgba(36, 180, 126, .38) !important;
  color: #FFFFFF !important;
}

body #tp-gantt #ganttOut .p6-toolbar .p6-tb-btn.on,
body #tp-gantt #ganttOut .p6-toolbar .p6-tb-btn.active,
body #tp-gantt #ganttOut .p6-toolbar .p6-tb-btn[aria-pressed="true"],
body #tp-gantt #ganttOut .p6-toolbar #ganttLinkHandlesToggle.on {
  background: var(--nx-gold) !important;
  border-color: rgba(251, 247, 241, .32) !important;
  color: var(--nx-midnight) !important;
}

body #tp-gantt #ganttOut .p6-toolbar input,
body #tp-gantt #ganttOut .p6-toolbar .search,
body #tp-gantt #ganttOut .p6-toolbar [type="search"] {
  background: rgba(0, 0, 0, .30) !important;
  border-color: rgba(255, 255, 255, .18) !important;
  color: #FFFFFF !important;
}

.aipe-cpm-modal {
  background: rgba(15, 27, 46, .46) !important;
}

.aipe-cpm-card {
  background: var(--nx-page-wash) !important;
  border-color: rgba(36, 180, 126, .34) !important;
  color: var(--nx-midnight) !important;
  box-shadow: 0 26px 80px rgba(15, 27, 46, .24) !important;
}

.aipe-cpm-head {
  background: linear-gradient(135deg, #071222 0%, var(--nx-midnight) 66%, #172A42 100%) !important;
  color: var(--nx-ivory) !important;
}

.aipe-cpm-k {
  color: var(--nx-gold) !important;
}

.aipe-cpm-sub {
  color: rgba(251, 247, 241, .76) !important;
}

.aipe-cpm-field {
  background: rgba(255, 253, 248, .96) !important;
  border-color: rgba(36, 180, 126, .30) !important;
}

.aipe-cpm-field label {
  color: rgba(42, 47, 54, .64) !important;
}

.aipe-cpm-field input,
.aipe-cpm-field select {
  color: var(--nx-midnight) !important;
}

.aipe-cpm-note {
  background: rgba(243, 233, 218, .54) !important;
  border-color: rgba(36, 180, 126, .32) !important;
  color: var(--nx-charcoal) !important;
}

.aipe-cpm-btn {
  background: rgba(255, 253, 248, .92) !important;
  border-color: rgba(36, 180, 126, .34) !important;
  color: var(--nx-midnight) !important;
}

.aipe-cpm-btn.primary {
  background: linear-gradient(180deg, #F7E6C2 0%, var(--nx-gold) 100%) !important;
  border-color: rgba(168, 135, 74, .62) !important;
  color: var(--nx-midnight) !important;
}

.aipe-cpm-btn.green {
  background: var(--nx-midnight) !important;
  border-color: var(--nx-midnight) !important;
  color: var(--nx-ivory) !important;
}

.aipe-cpm-btn.ghost {
  background: rgba(251, 247, 241, .08) !important;
  border-color: rgba(251, 247, 241, .24) !important;
  color: var(--nx-ivory) !important;
}

.aipe-cpm-toolbar-btn,
#aipe-cpm-demo-fallback-btn {
  background: linear-gradient(180deg, #F7E6C2 0%, var(--nx-gold) 100%) !important;
  border-color: rgba(168, 135, 74, .62) !important;
  color: var(--nx-midnight) !important;
}

body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-brand,
body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-brand {
  position: relative !important;
  min-height: 94px !important;
  padding: 0 !important;
  justify-content: flex-start !important;
  align-items: center !important;
}

body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-mark,
body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-mark {
  position: absolute !important;
  left: 18px !important;
  right: 128px !important;
  top: 34px !important;
  width: auto !important;
  height: 52px !important;
  flex: 0 1 auto !important;
  display: grid !important;
  place-items: center start !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: hidden !important;
}

body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-logo,
body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-logo {
  content: url('../../assets/logo.png') !important;
  display: block !important;
  width: 100% !important;
  max-width: 166px !important;
  height: 52px !important;
  object-fit: contain !important;
  object-position: left center !important;
  border-radius: 0 !important;
}

body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-settings-shortcut,
body.ap-vertical-shell .tabs.ap-nav-peek .ap-settings-shortcut,
body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-toggle,
body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-toggle {
  top: 35px !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  max-width: 34px !important;
  max-height: 34px !important;
  border-radius: 12px !important;
}

body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-settings-shortcut,
body.ap-vertical-shell .tabs.ap-nav-peek .ap-settings-shortcut {
  right: 58px !important;
}

body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-toggle,
body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-toggle {
  right: 18px !important;
}

body.ap-vertical-shell .tabs.ap-nav-collapsed:not(.ap-nav-peek) .ap-sidebar-logo {
  content: url('../../assets/nexora-ai-sidebar-icon.png') !important;
}

/* Final sidebar brand alignment lock. Keep the logo and top actions in one clean row. */
html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-brand,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-brand {
  position: relative !important;
  min-height: 100px !important;
  padding: 0 !important;
  display: block !important;
  border-bottom-color: rgba(251, 247, 241, .10) !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-mark,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-mark {
  position: absolute !important;
  left: 22px !important;
  top: 34px !important;
  right: 116px !important;
  width: auto !important;
  height: 50px !important;
  display: block !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-logo,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-logo {
  content: url('../../assets/logo.png') !important;
  display: block !important;
  width: 158px !important;
  max-width: 100% !important;
  height: 50px !important;
  object-fit: contain !important;
  object-position: left center !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-settings-shortcut,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-settings-shortcut,
html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-toggle,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-toggle {
  top: 35px !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  max-width: 34px !important;
  max-height: 34px !important;
  border-radius: 12px !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-settings-shortcut,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-settings-shortcut {
  right: 60px !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-toggle,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-toggle {
  right: 18px !important;
}

/* Precise sidebar header alignment: logo and action buttons share one visual line. */
html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-brand,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-brand {
  min-height: 78px !important;
  margin-bottom: 4px !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-mark,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-mark {
  left: 18px !important;
  right: 94px !important;
  top: 21px !important;
  height: 42px !important;
  display: flex !important;
  align-items: center !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-logo,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-logo {
  width: 184px !important;
  height: 42px !important;
  max-width: 100% !important;
  object-fit: contain !important;
  object-position: left center !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-settings-shortcut,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-settings-shortcut,
html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-toggle,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-toggle {
  top: 37px !important;
}

/* Theme 05 final app-wide lock: Soft Beige, Midnight Blue, Muted Gold. */
:root {
  --nx-midnight: #0F1B2E;
  --nx-midnight-2: #0A1423;
  --nx-soft-blue: #4D6E91;
  --nx-gold: #24B47E;
  --nx-gold-2: #188D68;
  --nx-beige: #F3E9DA;
  --nx-charcoal: #2A2F36;
  --nx-ivory: #FBF7F1;
  --nx-panel: #FFFDF8;
  --nx-muted-text: rgba(42, 47, 54, .72);
  --nx-soft-line: rgba(42, 47, 54, .12);

  --bg: var(--nx-ivory);
  --bg2: var(--nx-beige);
  --p: var(--nx-panel);
  --p2: var(--nx-beige);
  --sk: rgba(15, 27, 46, .14);
  --sk2: rgba(42, 47, 54, .11);
  --mu: var(--nx-soft-blue);
  --so: var(--nx-charcoal);
  --tx: var(--nx-charcoal);
  --st: var(--nx-midnight);
  --bl: var(--nx-midnight);
  --cy: var(--nx-soft-blue);
  --gn: var(--nx-soft-blue);
  --am: var(--nx-gold);

  --ap-page: var(--nx-ivory);
  --ap-surface: var(--nx-panel);
  --ap-surface-2: var(--nx-beige);
  --ap-border: rgba(15, 27, 46, .14);
  --ap-border-strong: rgba(15, 27, 46, .24);
  --ap-text: var(--nx-midnight);
  --ap-muted: var(--nx-soft-blue);
  --ap-faint: #7B8794;
  --ap-ink: var(--nx-midnight);
  --ap-olive: var(--nx-midnight);
  --ap-olive-deep: var(--nx-midnight);
  --ap-olive-dark: var(--nx-midnight-2);
  --ap-sage: var(--nx-soft-blue);
  --ap-honey: var(--nx-gold);
  --ap-honey-deep: var(--nx-gold-2);

  --rs-ink: var(--nx-midnight);
  --rs-olive: var(--nx-midnight);
  --rs-olive-2: var(--nx-midnight);
  --rs-sage: var(--nx-soft-blue);
  --rs-gold: var(--nx-gold);
  --docai-accent: var(--nx-gold);
  --docai-olive: var(--nx-midnight);
  --docai-ink: var(--nx-midnight);
}

/* Home: match the reference board exactly. */
.home-hero {
  background: linear-gradient(135deg, #071222 0%, var(--nx-midnight) 62%, #172A42 100%) !important;
  color: var(--nx-ivory) !important;
  border: 1px solid rgba(251, 247, 241, .08) !important;
  box-shadow: 0 18px 38px rgba(15, 27, 46, .18) !important;
}

.home-hero-eyebrow {
  color: var(--nx-gold) !important;
}

.home-card-h,
.home-getstarted .home-card-h,
.home-plan .home-card-h,
.home-card .home-card-h {
  color: var(--nx-charcoal) !important;
}

.home-card-h .home-dot,
.home-dot {
  background: var(--nx-gold) !important;
  border-color: rgba(36, 180, 126, .38) !important;
  box-shadow: 0 0 0 4px rgba(36, 180, 126, .12) !important;
}

.home-btn,
.home-btn-primary,
.home-btn-ghost {
  border-radius: 8px !important;
}

.home-hero .home-btn-primary,
.home-hero-actions .home-btn-primary,
#tp-home .home-hero .home-btn-primary {
  background: linear-gradient(180deg, #e8f5e9 0%, var(--nx-gold) 100%) !important;
  border-color: rgba(168, 135, 74, .62) !important;
  color: var(--nx-midnight) !important;
  box-shadow: 0 12px 24px rgba(36, 180, 126, .22), inset 0 1px 0 rgba(255, 255, 255, .50) !important;
}

.home-hero .home-btn-primary:hover,
.home-hero-actions .home-btn-primary:hover {
  background: linear-gradient(180deg, #FFF1D2 0%, #D6B36E 100%) !important;
  border-color: rgba(168, 135, 74, .74) !important;
  color: var(--nx-midnight) !important;
}

.home-getstarted .home-btn-primary,
.home-active .home-btn-primary,
.home-card:not(.home-hero) .home-btn-primary {
  background: var(--nx-midnight) !important;
  border-color: var(--nx-midnight) !important;
  color: var(--nx-ivory) !important;
  box-shadow: 0 10px 20px rgba(15, 27, 46, .18) !important;
}

.home-getstarted .home-btn-primary:hover,
.home-active .home-btn-primary:hover,
.home-card:not(.home-hero) .home-btn-primary:hover {
  background: #172A42 !important;
  border-color: #172A42 !important;
  color: var(--nx-ivory) !important;
}

.home-quick-ic,
.home-step-n {
  background: var(--nx-midnight) !important;
  border-color: rgba(15, 27, 46, .18) !important;
  color: var(--nx-ivory) !important;
}

.home-plan-badge,
.chip,
.badge,
.pill,
.tbadge {
  background: rgba(77, 110, 145, .10) !important;
  border-color: rgba(77, 110, 145, .22) !important;
  color: var(--nx-midnight) !important;
}

.home-usage-bar i,
.progress-fill,
.bar-fill {
  background: linear-gradient(90deg, var(--nx-midnight), var(--nx-soft-blue), var(--nx-gold)) !important;
}

/* Settings and usage tabs. */
#tp-settings .dsett-card,
#tp-settings .appr-block,
#tp-settings .usage-panel,
#tp-settings .usage-plan-card,
#tp-settings .usage-hero-meter,
#tp-settings .usage-suggestion,
#tp-settings .usage-user-quota,
#tp-settings .usage-current-model,
#tp-settings .usage-kpis div,
#tp-settings .usage-model-table,
#tp-settings .appr-card,
#tp-settings .appr-custom-row {
  background: rgba(255, 253, 248, .94) !important;
  border-color: rgba(42, 47, 54, .12) !important;
  color: var(--nx-midnight) !important;
  box-shadow: 0 14px 30px rgba(15, 27, 46, .07) !important;
}

#tp-settings .dsett-title,
#tp-settings .dsett-card h2,
#tp-settings .dsett-card h3,
#tp-settings .appr-block-title,
#tp-settings .appr-card-name,
#tp-settings .usage-panel-hdr h3,
#tp-settings .usage-plan-card strong,
#tp-settings .usage-meter-head b,
#tp-settings .usage-user-quota-head b,
#tp-settings .usage-current-model b,
#tp-settings .usage-row>span,
#tp-settings .usage-kpis b {
  color: var(--nx-midnight) !important;
}

#tp-settings .dsett-sub,
#tp-settings .appr-block-sub,
#tp-settings .usage-panel-hdr p,
#tp-settings .usage-plan-card small,
#tp-settings .usage-row small,
#tp-settings .usage-kpis small,
#tp-settings .usage-meter-head span,
#tp-settings .usage-form-grid label>span,
#tp-settings .usage-user-picker label>span,
#tp-settings .usage-user-quota-head span,
#tp-settings .usage-user-quota-foot span {
  color: var(--nx-muted-text) !important;
}

#tp-settings .usage-meter-track span,
#tp-settings .usage-user-quota-track span,
#tp-settings .usage-audience-switch button.is-active {
  background: linear-gradient(90deg, var(--nx-midnight), var(--nx-soft-blue), var(--nx-gold)) !important;
  border-color: rgba(36, 180, 126, .38) !important;
  color: var(--nx-ivory) !important;
}

#tp-settings .usage-ico,
#tp-settings .usage-suggestion-icon,
#tp-settings .usage-tag--user {
  background: rgba(77, 110, 145, .12) !important;
  border-color: rgba(77, 110, 145, .22) !important;
  color: var(--nx-midnight) !important;
}

#tp-settings .usage-tag,
#tp-settings .usage-tier,
#tp-settings .usage-plan-kicker,
#tp-settings .usage-suggestion-main b,
#tp-settings .usage-suggestion-meta small {
  background: rgba(36, 180, 126, .16) !important;
  color: var(--nx-gold-2) !important;
}

#tp-settings .usage-row--head {
  background: var(--nx-midnight) !important;
}

#tp-settings .usage-row--head span {
  color: var(--nx-ivory) !important;
}

#tp-settings .usage-reco {
  background: rgba(77, 110, 145, .08) !important;
  border-color: rgba(77, 110, 145, .20) !important;
}

#tp-settings .usage-reco b,
#tp-settings .usage-reco span {
  color: var(--nx-midnight) !important;
}

#tp-settings .appr-card.is-active,
#tp-settings .usage-plan-card.is-active,
#tp-settings .usage-suggestion.is-active {
  border-color: var(--nx-gold) !important;
  box-shadow: 0 0 0 2px rgba(36, 180, 126, .18) !important;
}

/* Common tab surfaces and action controls. */
.panel,
.card,
.box,
.modal,
.sheet-picker-modal,
.map-outer,
.map-stats,
.mapping-v2-workspace,
.m2-card,
.m2-stage-card,
.docai-workspace,
.docai-control-hero,
.nexus-card,
.maestro-card,
.forge-board,
.forge-sbox,
.forge-cbox,
.forge-cpm-card {
  background: rgba(255, 255, 255, .92) !important;
  border-color: rgba(232, 236, 239, .94) !important;
  color: var(--nx-charcoal) !important;
}

.ptitle,
.map-stat .ms-val,
.m2-title,
.docai-card-title,
.nexus-title,
.maestro-title,
.forge-app-name,
.forge-step-title,
.forge-sval,
.forge-rtxt {
  color: var(--nx-midnight) !important;
}

.muted,
.subtle,
.logo-sub,
.forge-app-sub,
.forge-step-detail,
.forge-board-meta,
.forge-cpm-sub,
.forge-cline.dim {
  color: var(--nx-muted-text) !important;
}

.hbtn.primary,
.btn.primary,
.primary-btn,
.gen-btn,
.send-btn,
.apr-btn.pri,
.apr-btn.all,
.aipe-cpm-btn.green,
.zs-btn--primary,
.aipe-v29-action.primary {
  background: var(--nx-midnight) !important;
  border-color: var(--nx-midnight) !important;
  color: var(--nx-ivory) !important;
  box-shadow: 0 12px 24px rgba(15, 27, 46, .18) !important;
}

.aipe-cpm-btn.primary,
.tour-arrow-primary,
.aipe-cpm-toolbar-btn,
#aipe-cpm-demo-fallback-btn {
  background: linear-gradient(180deg, #e8f5e9 0%, var(--nx-gold) 100%) !important;
  border-color: rgba(168, 135, 74, .62) !important;
  color: var(--nx-midnight) !important;
  box-shadow: 0 12px 24px rgba(36, 180, 126, .22) !important;
}

.hbtn:hover,
.btn:hover,
.primary-btn:hover,
.gen-btn:hover,
.send-btn:hover,
.apr-btn:hover {
  border-color: rgba(36, 180, 126, .42) !important;
  filter: brightness(1.02) !important;
}

input:focus,
textarea:focus,
select:focus,
.inp:focus,
.chat-inp:focus {
  border-color: rgba(36, 180, 126, .82) !important;
  box-shadow: 0 0 0 3px rgba(36, 180, 126, .18) !important;
}

/* Forge/live builder remnants from the older olive theme. */
.forge-ov {
  background:
    radial-gradient(ellipse 46% 36% at 18% 12%, rgba(36, 180, 126, .12), transparent 62%),
    radial-gradient(ellipse 48% 38% at 82% 72%, rgba(77, 110, 145, .10), transparent 62%),
    linear-gradient(135deg, var(--nx-ivory) 0%, var(--nx-beige) 100%) !important;
  color: var(--nx-midnight) !important;
}

.forge-top,
.forge-footer,
.forge-pipeline,
.forge-right {
  background: rgba(255, 253, 248, .94) !important;
  border-color: rgba(42, 47, 54, .12) !important;
}

.forge-chip,
.forge-step-tag,
.forge-cpm-icon {
  background: rgba(77, 110, 145, .10) !important;
  border-color: rgba(77, 110, 145, .22) !important;
  color: var(--nx-midnight) !important;
}

.forge-chip b,
.forge-board-meta.active,
.forge-es-label b,
.forge-fmsg,
.forge-fstep,
.forge-badge,
.forge-pipe-pct,
.forge-cpm-top,
.forge-cline.cmd,
.forge-cline.ok,
.forge-row.forge-wbs-r .forge-rid,
.forge-row.forge-wbs-r .forge-rtxt {
  color: var(--nx-midnight) !important;
}

.forge-chip .dot,
.forge-badge-dot,
.forge-es-dot {
  background: var(--nx-gold) !important;
  box-shadow: 0 0 0 4px rgba(36, 180, 126, .14) !important;
}

.forge-pipe-fill,
.forge-seg.done,
.forge-seg.active,
.forge-bar,
.forge-bar.forge-go,
.forge-bar.forge-wb {
  background: linear-gradient(90deg, var(--nx-midnight), var(--nx-soft-blue), var(--nx-gold)) !important;
}

.forge-step.done .forge-step-node,
.forge-step.active .forge-step-node {
  background: var(--nx-gold) !important;
  border-color: var(--nx-gold-2) !important;
  color: var(--nx-midnight) !important;
}

.forge-links .forge-lnk,
.forge-lnk {
  stroke: var(--nx-soft-blue) !important;
}

/* Mapping, results, helper overlays and late-loaded local tab styles. */
.m2-pill,
.type-pill,
.v9-badge,
.zai-chip,
.aipe-v29-badge,
.zs-chip--on,
.zs-chip--ai {
  background: rgba(77, 110, 145, .10) !important;
  border-color: rgba(77, 110, 145, .22) !important;
  color: var(--nx-midnight) !important;
}

.map-pill.active,
.m2-tab.active,
.zs-btn--primary,
.zs-row-ord,
.aipe-v29-action.primary,
.aipe-v29-sheet.active {
  background: var(--nx-midnight) !important;
  border-color: var(--nx-midnight) !important;
  color: var(--nx-ivory) !important;
}

.zs-conn,
.zs-leg-dot {
  stroke: var(--nx-gold) !important;
  border-top-color: var(--nx-gold) !important;
}

/* Data Input tab lock: override the older cream/olive/red input theme. */
#tp-input {
  color: var(--nx-charcoal) !important;
}

#tp-input .dinput-card {
  background: #F5F5F5 !important;
  border-color: rgba(42, 47, 54, .12) !important;
  border-radius: 8px !important;
  box-shadow: 0 18px 36px rgba(15, 27, 46, .08) !important;
  color: var(--nx-charcoal) !important;
}

#tp-input .dinput-card-title,
#tp-input .dinput-check-title,
#tp-input .dinput-dz-title,
#tp-input .dinput-files-title,
#tp-input .dinput-fname-text,
#tp-input .dinput-setup-val,
#tp-input .dinput-ring-pct {
  color: var(--nx-midnight) !important;
}

#tp-input .dinput-card-desc,
#tp-input .dinput-lbl,
#tp-input .dinput-check-sub,
#tp-input .dinput-dz-sub,
#tp-input .dinput-fsize,
#tp-input .dinput-fdate,
#tp-input .dinput-setup-key,
#tp-input .dinput-char-count {
  color: var(--nx-muted-text) !important;
}

#tp-input .dinput-card-num {
  background: rgba(36, 180, 126, .18) !important;
  border: 1px solid rgba(36, 180, 126, .34) !important;
  color: var(--nx-midnight) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .62) !important;
}

#tp-input .dinput-inp,
#tp-input .dinput-textarea,
#tp-input .dinput-files-table,
#tp-input .dinput-dropzone,
#tp-input .dinput-check-item,
#tp-input .dinput-settings-btn,
#tp-input .dinput-browse-btn {
  background: rgba(251, 247, 241, .72) !important;
  border-color: rgba(42, 47, 54, .13) !important;
  color: var(--nx-midnight) !important;
  box-shadow: none !important;
}

#tp-input .dinput-inp:focus,
#tp-input .dinput-textarea:focus {
  background: var(--nx-panel) !important;
  border-color: rgba(36, 180, 126, .82) !important;
  box-shadow: 0 0 0 3px rgba(36, 180, 126, .18) !important;
}

#tp-input .dinput-inp::placeholder,
#tp-input .dinput-textarea::placeholder {
  color: rgba(42, 47, 54, .42) !important;
}

#tp-input .dinput-input-icon,
#tp-input .dinput-dz-icon,
#tp-input .dinput-setup-key svg,
#tp-input .dinput-settings-btn svg,
#tp-input .dinput-browse-btn svg {
  color: var(--nx-soft-blue) !important;
  stroke: currentColor !important;
}

#tp-input .dinput-dropzone:hover,
#tp-input .dinput-dropzone.drag,
#tp-input .dinput-check-item:hover,
#tp-input .dinput-settings-btn:hover,
#tp-input .dinput-browse-btn:hover {
  background: var(--nx-panel) !important;
  border-color: rgba(36, 180, 126, .44) !important;
}

#tp-input .dinput-files-row--head {
  background: rgba(243, 233, 218, .78) !important;
  color: var(--nx-soft-blue) !important;
}

#tp-input .dinput-fname-ico,
#tp-input .dinput-ftype-pill,
#tp-input .dinput-fstatus {
  background: rgba(77, 110, 145, .10) !important;
  border-color: rgba(77, 110, 145, .22) !important;
  color: var(--nx-midnight) !important;
}

#tp-input .dinput-status-dot {
  background: var(--nx-soft-blue) !important;
  box-shadow: 0 0 0 3px rgba(77, 110, 145, .16) !important;
}

#tp-input .dinput-ring-bg {
  stroke: rgba(15, 27, 46, .12) !important;
}

#tp-input .dinput-ring-fg {
  stroke: var(--nx-soft-blue) !important;
}

#tp-input .dinput-check-item.is-pending .dinput-check-icon {
  background: var(--nx-gold) !important;
  box-shadow: 0 0 0 4px rgba(36, 180, 126, .14) !important;
  color: var(--nx-ivory) !important;
}

#tp-input .dinput-check-item.is-ok .dinput-check-icon {
  background: var(--nx-soft-blue) !important;
  box-shadow: 0 0 0 4px rgba(77, 110, 145, .16) !important;
  color: var(--nx-ivory) !important;
}

#tp-input .dinput-check-chev {
  color: rgba(77, 110, 145, .42) !important;
}

#tp-input .dinput-ready-cta--pending {
  background: rgba(36, 180, 126, .14) !important;
  border-color: rgba(36, 180, 126, .34) !important;
  color: var(--nx-gold-2) !important;
}

#tp-input .dinput-ready-cta--ok {
  background: rgba(77, 110, 145, .10) !important;
  border-color: rgba(77, 110, 145, .24) !important;
  color: var(--nx-midnight) !important;
}

#tp-input .dinput-ready-cta svg {
  color: currentColor !important;
  stroke: currentColor !important;
}

#tp-input .dinput-setup-row {
  border-bottom-color: rgba(42, 47, 54, .10) !important;
}

/* Header AI status and Generate button states, including "Configure AI First". */
#apiSt,
.hdr .hbtns #apiSt,
.hdr>#apiSt {
  background: rgba(243, 233, 218, .72) !important;
  border-color: rgba(36, 180, 126, .34) !important;
  color: var(--nx-midnight) !important;
  box-shadow: none !important;
}

#apiSt #apiTxt {
  color: var(--nx-midnight) !important;
}

#apiSt #apiDot {
  background: var(--nx-gold) !important;
  box-shadow: 0 0 0 4px rgba(36, 180, 126, .14) !important;
}

#hGenBtn.gbtn,
.gbtn {
  border-radius: 8px !important;
}

#hGenBtn.gbtn--unconfigured,
.gbtn--unconfigured,
#hGenBtn.gbtn--ready,
.gbtn--ready {
  background: linear-gradient(180deg, #e8f5e9 0%, var(--nx-gold) 100%) !important;
  border-color: rgba(168, 135, 74, .62) !important;
  color: var(--nx-midnight) !important;
  box-shadow: 0 12px 24px rgba(36, 180, 126, .22), inset 0 1px 0 rgba(255, 255, 255, .48) !important;
}

#hGenBtn.gbtn--unconfigured:hover:not(:disabled),
.gbtn--unconfigured:hover:not(:disabled),
#hGenBtn.gbtn--ready:hover:not(:disabled),
.gbtn--ready:hover:not(:disabled) {
  background: linear-gradient(180deg, #FFF1D2 0%, #D6B36E 100%) !important;
  border-color: rgba(168, 135, 74, .74) !important;
  color: var(--nx-midnight) !important;
}

#hGenBtn.gbtn--missing,
.gbtn--missing {
  background: rgba(243, 233, 218, .74) !important;
  border-color: rgba(42, 47, 54, .12) !important;
  color: rgba(42, 47, 54, .60) !important;
  box-shadow: none !important;
}

#hGenBtn.gbtn--generating,
.gbtn--generating,
#hGenBtn.gbtn--generated,
.gbtn--generated {
  background: var(--nx-midnight) !important;
  border-color: var(--nx-midnight) !important;
  color: var(--nx-ivory) !important;
  box-shadow: 0 12px 24px rgba(15, 27, 46, .22) !important;
}

#hGenBtn.gbtn--failed,
.gbtn--failed {
  background: var(--nx-charcoal) !important;
  border-color: var(--nx-charcoal) !important;
  color: var(--nx-ivory) !important;
  box-shadow: 0 12px 24px rgba(42, 47, 54, .22) !important;
}

.gbtn--open-secondary {
  background: var(--nx-panel) !important;
  border-color: rgba(77, 110, 145, .28) !important;
  color: var(--nx-midnight) !important;
  box-shadow: none !important;
}

/* Result tabs: remove the old near-black/olive inheritance from visible panels. */
.tp,
.aipe-result-out,
.aipe-result-copy,
.wbs-view-switch,
.wbs-view-tabs,
.acts-page-hdr,
.lk-page-hdr,
.empty,
.empty-t,
.empty-v5 {
  color: var(--nx-charcoal) !important;
}

.aipe-result-title,
.aipe-result-title-wrap,
.acts-page-title,
.wbs-title,
.wbs-view-switch b,
.empty-t,
.ptitle,
.panel h1,
.panel h2,
.panel h3 {
  color: var(--nx-midnight) !important;
}

.aipe-result-kicker,
.aipe-result-sub,
.acts-page-sub,
.empty p,
.empty-v5,
.subtle,
.muted {
  color: var(--nx-muted-text) !important;
}

#tp-links .lk-page-hdr {
  background: rgba(255, 255, 255, .92) !important;
  border-color: rgba(232, 236, 239, .94) !important;
  color: #1B1A17 !important;
  box-shadow: 0 18px 36px rgba(15, 27, 46, .08) !important;
}

#tp-calendar,
#tp-links {
  --cal-navy: var(--nx-midnight);
  --cal-navy-2: #172A42;
  --cal-gold: var(--nx-gold);
  --cal-gold-2: var(--nx-gold-2);
  --cal-ink: var(--nx-midnight);
  --cal-muted: var(--nx-soft-blue);
  --cal-line: rgba(42, 47, 54, .12);
  --rel-navy: var(--nx-midnight);
  --rel-navy-2: #172A42;
  --rel-ink: var(--nx-midnight);
  --rel-muted: var(--nx-soft-blue);
  --rel-line: rgba(42, 47, 54, .12);
  --rel-gold: var(--nx-gold);
}

html body .tp.active .empty-t,
html body .tp.active .empty-v5 .t,
html body .tp.active .empty .empty-t,
html body #tp-wbs.tp.active .wbs-view-tabs button,
html body #tp-wbs.tp.active .wbs-view-switch button,
html body #tp-calendar.tp.active .pcal-editor-hdr,
html body #tp-calendar.tp.active .pcal-title-wrap,
html body #tp-calendar.tp.active .pcal-title-line,
html body #tp-calendar.tp.active .pcal-header-actions,
html body #tp-calendar.tp.active .pcal-prem-data,
html body #tp-calendar.tp.active .pcal-prem-head,
html body #tp-calendar.tp.active .pcal-section {
  color: var(--nx-midnight) !important;
}

html body .tp.active .empty,
html body .tp.active .empty-v5,
html body #tp-calendar.tp.active {
  color: var(--nx-charcoal) !important;
}

html body #tp-wbs.tp.active .wbs-view-tabs button.active,
html body #tp-wbs.tp.active .wbs-view-switch button.active {
  background: linear-gradient(180deg, #e8f5e9 0%, var(--nx-gold) 100%) !important;
  border-color: rgba(168, 135, 74, .62) !important;
  color: var(--nx-midnight) !important;
}

/* Generated result headers are intentionally dark: blue surface, light copy. */
html body #wbsOut .aipe-result-head,
html body #actsOut .aipe-result-head,
html body #linksOut .aipe-result-head,
html body #cpOut .aipe-result-head,
html body #msOut .aipe-result-head,
html body #labourOut .aipe-result-head,
html body #histOut .aipe-result-head {
  background: radial-gradient(ellipse 46% 62% at 88% 28%, rgba(127, 216, 197, .28), transparent 62%),
    linear-gradient(135deg, #EAF7F4 0%, #F8FCFB 58%, #FFFFFF 100%);
  border-color: rgba(36, 180, 126, .34) !important;
  color: var(--nx-ivory) !important;
  box-shadow:
    inset 0 1px 0 rgba(251, 247, 241, .08),
    0 16px 36px rgba(15, 27, 46, .18) !important;
}

html body #wbsOut .aipe-result-head .aipe-result-title,
html body #actsOut .aipe-result-head .aipe-result-title,
html body #linksOut .aipe-result-head .aipe-result-title,
html body #cpOut .aipe-result-head .aipe-result-title,
html body #msOut .aipe-result-head .aipe-result-title,
html body #labourOut .aipe-result-head .aipe-result-title,
html body #histOut .aipe-result-head .aipe-result-title {
  color: var(--nx-midnight-2) !important;
}

html body #wbsOut .aipe-result-head .aipe-result-kicker,
html body #actsOut .aipe-result-head .aipe-result-kicker,
html body #linksOut .aipe-result-head .aipe-result-kicker,
html body #cpOut .aipe-result-head .aipe-result-kicker,
html body #msOut .aipe-result-head .aipe-result-kicker,
html body #labourOut .aipe-result-head .aipe-result-kicker,
html body #histOut .aipe-result-head .aipe-result-kicker {
  color: var(--nx-gold) !important;
}

html body #wbsOut .aipe-result-head .aipe-result-sub,
html body #actsOut .aipe-result-head .aipe-result-sub,
html body #linksOut .aipe-result-head .aipe-result-sub,
html body #cpOut .aipe-result-head .aipe-result-sub,
html body #msOut .aipe-result-head .aipe-result-sub,
html body #labourOut .aipe-result-head .aipe-result-sub,
html body #histOut .aipe-result-head .aipe-result-sub {
  color: var(--nx-midnight) !important;
}

html body #wbsOut .aipe-result-head .aipe-result-icon,
html body #actsOut .aipe-result-head .aipe-result-icon,
html body #linksOut .aipe-result-head .aipe-result-icon,
html body #cpOut .aipe-result-head .aipe-result-icon,
html body #msOut .aipe-result-head .aipe-result-icon,
html body #labourOut .aipe-result-head .aipe-result-icon,
html body #histOut .aipe-result-head .aipe-result-icon {
  background: linear-gradient(180deg, #e8f5e9 0%, var(--nx-gold) 100%) !important;
  border-color: rgba(251, 247, 241, .32) !important;
  color: var(--nx-midnight) !important;
}

html body #wbsOut .aipe-result-head .aipe-result-pill,
html body #actsOut .aipe-result-head .aipe-result-pill,
html body #linksOut .aipe-result-head .aipe-result-pill,
html body #cpOut .aipe-result-head .aipe-result-pill,
html body #msOut .aipe-result-head .aipe-result-pill,
html body #labourOut .aipe-result-head .aipe-result-pill,
html body #histOut .aipe-result-head .aipe-result-pill {
  background: rgba(251, 247, 241, .08) !important;
  border-color: rgba(36, 180, 126, .42) !important;
  color: var(--nx-midnight) !important;
}

html body #wbsOut .aipe-result-head .aipe-result-pill::before,
html body #actsOut .aipe-result-head .aipe-result-pill::before,
html body #linksOut .aipe-result-head .aipe-result-pill::before,
html body #cpOut .aipe-result-head .aipe-result-pill::before,
html body #msOut .aipe-result-head .aipe-result-pill::before,
html body #labourOut .aipe-result-head .aipe-result-pill::before,
html body #histOut .aipe-result-head .aipe-result-pill::before {
  background: var(--nx-gold) !important;
  box-shadow: 0 0 0 3px rgba(36, 180, 126, .16) !important;
}

html body .aipe-result-out table thead th,
html body .aipe-result-out .tree-table thead th,
html body .aipe-result-out .acts-tbl thead th,
html body .aipe-result-out .lk-tbl thead th,
html body .aipe-result-out .lb-tbl thead th,
html body .aipe-result-out .h-tbl thead th,
html body .aipe-result-out .h-mtbl thead th {
  background: linear-gradient(180deg, #172A42 0%, var(--nx-midnight) 100%) !important;
  border-bottom-color: rgba(36, 180, 126, .44) !important;
  color: var(--nx-ivory) !important;
}

/* Settings page: Theme 05, consistent with the rest of Nexora AI. */
html body #tp-settings.tp.active,
html body #tp-settings .dsett-shell {
  color: var(--nx-charcoal) !important;
}

html body #tp-settings .dsett-aside,
html body #tp-settings .dsett-main,
html body #tp-settings .dsett-right-card,
html body #tp-settings .dsett-history,
html body #tp-settings .dsett-history-table,
html body #tp-settings .dsett-empty-state,
html body #tp-settings .usage-hero-meter,
html body #tp-settings .usage-panel,
html body #tp-settings .usage-plan-card,
html body #tp-settings .usage-current-model,
html body #tp-settings .usage-user-quota,
html body #tp-settings .usage-suggestion,
html body #tp-settings .usage-user-strip,
html body #tp-settings .usage-kpis div,
html body #tp-settings .usage-reco,
html body #tp-settings .usage-model-table,
html body #tp-settings .appr-block,
html body #tp-settings .appr-card,
html body #tp-settings .appr-custom-row,
html body #tp-settings .appr-mock {
  background: rgba(255, 255, 255, .92) !important;
  border-color: rgba(232, 236, 239, .94) !important;
  box-shadow: 0 18px 36px rgba(15, 27, 46, .08) !important;
}

html body #tp-settings .dsett-aside-title,
html body #tp-settings .dsett-history-thead,
html body #tp-settings .usage-plan-kicker,
html body #tp-settings .usage-tag,
html body #tp-settings .usage-meter-head span,
html body #tp-settings .usage-form-grid label>span,
html body #tp-settings .usage-kpis span,
html body #tp-settings .usage-user-picker label>span {
  color: var(--nx-gold) !important;
}

html body #tp-settings .dsett-sect-title,
html body #tp-settings .dsett-nav-title,
html body #tp-settings .dsett-lbl,
html body #tp-settings .dsett-banner b,
html body #tp-settings .dsett-toggle b,
html body #tp-settings .dsett-history-hdr h3,
html body #tp-settings .dsett-history-empty b,
html body #tp-settings .dsett-right-card-hdr,
html body #tp-settings .dsett-right-card-title,
html body #tp-settings .dsett-right-card-body b,
html body #tp-settings .dsett-related b,
html body #tp-settings .usage-meter-head b,
html body #tp-settings .usage-panel-hdr h3,
html body #tp-settings .usage-current-model b,
html body #tp-settings .usage-user-quota-head b,
html body #tp-settings .usage-suggestion-main b,
html body #tp-settings .usage-suggestion-main strong,
html body #tp-settings .usage-suggestion-meta b,
html body #tp-settings .usage-user-strip b,
html body #tp-settings .usage-kpis b,
html body #tp-settings .usage-reco b,
html body #tp-settings .usage-row>span,
html body #tp-settings .usage-plan-card strong,
html body #tp-settings .appr-block-title,
html body #tp-settings .appr-card-name,
html body #tp-settings .appr-custom-lbl,
html body #tp-settings .appr-mock-act {
  color: var(--nx-midnight) !important;
}

html body #tp-settings .dsett-sect-desc,
html body #tp-settings .dsett-nav-sub,
html body #tp-settings .dsett-optional,
html body #tp-settings .dsett-hint,
html body #tp-settings .dsett-banner span,
html body #tp-settings .dsett-toggle small,
html body #tp-settings .dsett-history-sub,
html body #tp-settings .dsett-history-empty span,
html body #tp-settings .dsett-right-card p,
html body #tp-settings .dsett-right-card-body span,
html body #tp-settings .dsett-related small,
html body #tp-settings .usage-panel-hdr p,
html body #tp-settings .usage-plan-card small,
html body #tp-settings .usage-row small,
html body #tp-settings .usage-kpis small,
html body #tp-settings .usage-meter-foot,
html body #tp-settings .usage-current-model span,
html body #tp-settings .usage-user-quota-foot span,
html body #tp-settings .usage-suggestion-main small,
html body #tp-settings .usage-reco span,
html body #tp-settings .appr-block-sub,
html body #tp-settings .appr-sw-hex {
  color: var(--nx-muted-text) !important;
}

html body #tp-settings .dsett-nav-btn,
html body #tp-settings .dsett-toggle,
html body #tp-settings .dsett-related,
html body #tp-settings .usage-audience-switch,
html body #tp-settings .usage-current-model,
html body #tp-settings .appr-custom-hex {
  background: rgba(255, 255, 255, .92) !important;
  border-color: rgba(232, 236, 239, .94) !important;
  color: var(--nx-midnight) !important;
}

html body #tp-settings .dsett-nav-btn:hover,
html body #tp-settings .dsett-toggle:hover,
html body #tp-settings .dsett-related:hover,
html body #tp-settings .appr-card:hover,
html body #tp-settings .usage-suggestion:hover {
  background: rgba(232, 236, 239, .70) !important;
  border-color: rgba(36, 180, 126, .38) !important;
}

html body #tp-settings .dsett-nav-btn.is-active,
html body #tp-settings .usage-audience-switch button.is-active,
html body #tp-settings .usage-plan-card.is-active,
html body #tp-settings .usage-suggestion.is-active,
html body #tp-settings .appr-card.is-active {
  background: rgba(36, 180, 126, .10) !important;
  border-color: rgba(36, 180, 126, .32) !important;
  box-shadow: 0 8px 20px rgba(36, 180, 126, .12) !important;
}

html body #tp-settings .dsett-nav-btn.is-active .dsett-nav-title,
html body #tp-settings .usage-audience-switch button.is-active,
html body #tp-settings .usage-plan-card.is-active *,
html body #tp-settings .usage-suggestion.is-active *,
html body #tp-settings .appr-card.is-active * {
  color: var(--nx-midnight) !important;
}

html body #tp-settings .dsett-nav-ico,
html body #tp-settings .dsett-sect-icon,
html body #tp-settings .dsett-empty-icon,
html body #tp-settings .usage-suggestion-icon,
html body #tp-settings .usage-ico {
  background: rgba(36, 180, 126, .10) !important;
  border-color: rgba(36, 180, 126, .24) !important;
  color: #188D68 !important;
}

html body #tp-settings .dsett-nav-btn.is-active .dsett-nav-ico,
html body #tp-settings .dsett-banner-icon {
  background: #24B47E !important;
  border-color: #24B47E !important;
  color: #FFFDF8 !important;
}

html body #tp-settings .dsett-aside-foot,
html body #tp-settings .dsett-banner {
  background: rgba(36, 180, 126, .06) !important;
  border-color: rgba(36, 180, 126, .22) !important;
}

html body #tp-settings .dsett-aside-foot svg,
html body #tp-settings .dsett-history-hdr h3 svg,
html body #tp-settings .dsett-ekg,
html body #tp-settings .dsett-link,
html body #tp-settings .dsett-related-chev {
  color: var(--nx-soft-blue) !important;
}

html body #tp-settings .dsett-link:hover {
  color: var(--nx-midnight) !important;
}

html body #tp-settings .dsett-inp,
html body #tp-settings .dsett-textarea,
html body #tp-settings .appr-custom-hex {
  background: rgba(245, 247, 250, .92) !important;
  border-color: rgba(232, 236, 239, .94) !important;
  color: var(--nx-midnight) !important;
}

html body #tp-settings .dsett-inp:focus,
html body #tp-settings .dsett-textarea:focus,
html body #tp-settings .appr-custom-hex:focus {
  background: #ffffff !important;
  border-color: rgba(36, 180, 126, .55) !important;
  box-shadow: 0 0 0 4px rgba(36, 180, 126, .10) !important;
}

html body #tp-settings .dsett-inp::placeholder,
html body #tp-settings .dsett-textarea::placeholder {
  color: rgba(27, 26, 23, .42) !important;
}

html body #tp-settings .dsett-eye-btn {
  color: rgba(27, 26, 23, .50) !important;
}

html body #tp-settings .dsett-eye-btn:hover,
html body #tp-settings .dsett-eye-btn.is-on {
  background: rgba(36, 180, 126, .08) !important;
  color: #188D68 !important;
}

html body #tp-settings .dsett-btn {
  background: rgba(255, 255, 255, .92) !important;
  border-color: rgba(232, 236, 239, .94) !important;
  color: var(--nx-midnight) !important;
}

html body #tp-settings .dsett-btn:hover {
  background: rgba(232, 236, 239, .70) !important;
  border-color: rgba(36, 180, 126, .42) !important;
}

html body #tp-settings .dsett-btn--primary {
  background: #188D68 !important;
  border-color: #188D68 !important;
  color: #ffffff !important;
  box-shadow: 0 10px 24px rgba(36, 180, 126, .24) !important;
}

html body #tp-settings .dsett-btn--primary:hover {
  background: #24B47E !important;
  border-color: #24B47E !important;
}

html body #tp-settings .dsett-btn--danger {
  background: rgba(184, 105, 62, .10) !important;
  border-color: rgba(184, 105, 62, .32) !important;
  color: #8B3A1F !important;
}

html body #tp-settings .dsett-btn--ghost {
  background: transparent !important;
  color: rgba(27, 26, 23, .72) !important;
}

html body #tp-settings .dsett-toggle-slider {
  background: rgba(200, 200, 200, .60) !important;
}

html body #tp-settings .dsett-toggle-slider::after {
  background: #ffffff !important;
}

html body #tp-settings .dsett-toggle input:checked+.dsett-toggle-slider {
  background: #24B47E !important;
}

html body #tp-settings .dsett-status-dot.is-off,
html body #tp-settings .dsett-status-dot.is-err {
  background: #8B3A1F !important;
  box-shadow: 0 0 0 3px rgba(139, 58, 31, .14) !important;
}

html body #tp-settings .dsett-status-dot.is-ok {
  background: #24B47E !important;
  box-shadow: 0 0 0 3px rgba(36, 180, 126, .16) !important;
}

html body #tp-settings .dsett-status-dot.is-pend,
html body #tp-settings .dsett-status-dot.is-idle {
  background: #188D68 !important;
  box-shadow: 0 0 0 3px rgba(36, 180, 126, .16) !important;
}

html body #tp-settings .usage-meter-track,
html body #tp-settings .usage-user-quota-track {
  background: rgba(42, 47, 54, .12) !important;
}

html body #tp-settings .usage-meter-track span,
html body #tp-settings .usage-user-quota-track span {
  background: linear-gradient(90deg, var(--nx-midnight), #24B47E) !important;
}

html body #tp-settings .usage-row--head,
html body #tp-settings .dsett-history-thead {
  background: rgba(15, 27, 46, .06) !important;
}

html body #tp-settings .appr-mock-chart {
  background: rgba(36, 180, 126, .06) !important;
}

html body #tp-settings .appr-mock-sum {
  background: var(--nx-midnight) !important;
}

html body #tp-settings .appr-mock-green {
  background: linear-gradient(90deg, #24B47E, rgba(36, 180, 126, .58)) !important;
}

html body #tp-settings .appr-mock-crit {
  background: linear-gradient(90deg, #8B3A1F, rgba(139, 58, 31, .54)) !important;
}

/* Settings sidebar should stay flat: no card borders around each item/icon. */
html body #tp-settings .dsett-nav-btn,
html body #tp-settings .dsett-nav-btn.is-active {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body #tp-settings .dsett-nav-btn:hover {
  background: rgba(232, 236, 239, .45) !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body #tp-settings .dsett-nav-btn.is-active .dsett-nav-title {
  color: #188D68 !important;
}

html body #tp-settings .dsett-nav-btn.is-active .dsett-nav-sub {
  color: var(--nx-muted-text) !important;
}

html body #tp-settings .dsett-nav-ico,
html body #tp-settings .dsett-nav-btn.is-active .dsett-nav-ico {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: rgba(27, 26, 23, .50) !important;
}

html body #tp-settings .dsett-nav-btn.is-active .dsett-nav-ico {
  color: #188D68 !important;
}

/* Sidebar header compacting: trim only the red-marked empty bands in the rail. */
html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-brand,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-brand {
  min-height: 70px !important;
  height: 70px !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  border-bottom-color: rgba(251, 247, 241, .08) !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-mark,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-mark {
  top: 7px !important;
  left: 14px !important;
  right: 106px !important;
  height: 56px !important;
  display: flex !important;
  align-items: center !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-logo,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-logo {
  width: 100% !important;
  max-width: 180px !important;
  height: 56px !important;
  object-fit: contain !important;
  object-position: left center !important;
  border-radius: 0 !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-settings-shortcut,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-settings-shortcut,
html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-toggle,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-toggle {
  top: 18px !important;
  background: rgba(255, 255, 255, .92) !important;
  border: 1px solid rgba(0, 0, 0, .10) !important;
  color: #1a1a1a !important;
}

html body.ap-vertical-shell .ap-cmd-trigger {
  margin-top: 8px !important;
}

html body.ap-vertical-shell .ap-settings-shortcut,
html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-settings-shortcut,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-settings-shortcut {
  background: rgba(255, 255, 255, .92) !important;
  border: 1px solid rgba(0, 0, 0, .10) !important;
  color: #1a1a1a !important;
  box-shadow: none !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-toggle .ap-toggle-line,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-toggle .ap-toggle-line {
  display: none !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-toggle::before,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-toggle::before {
  content: "" !important;
  display: block !important;
  width: 16px !important;
  height: 16px !important;
  background: currentColor !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 6h16M4 12h16M4 18h16' stroke='%23000' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 6h16M4 12h16M4 18h16' stroke='%23000' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-toggle::after,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-toggle::after {
  display: none !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-toggle,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-toggle {
  top: 30px !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-settings-shortcut,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-settings-shortcut,
html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-toggle,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-toggle {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

html body.ap-vertical-shell .ap-settings-shortcut > svg {
  display: block !important;
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
}

html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-settings-shortcut:hover,
html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-settings-shortcut:focus-visible,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-settings-shortcut:hover,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-settings-shortcut:focus-visible,
html body.ap-vertical-shell .tabs:not(.ap-nav-collapsed) .ap-sidebar-toggle:hover,
html body.ap-vertical-shell .tabs.ap-nav-peek .ap-sidebar-toggle:hover,
html body.ap-vertical-shell .ap-settings-shortcut:hover,
html body.ap-vertical-shell .ap-settings-shortcut.active,
html body.ap-vertical-shell .ap-sidebar-toggle:hover {
  background: #6EDBA0 !important;
  border-color: #6EDBA0 !important;
  color: #1B1A17 !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.22), 0 0 0 3px rgba(110,219,160,.20) !important;
  transform: translateY(-1px) scale(1.04) !important;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease !important;
}