﻿:root {
  --rm-primary: #00f4fe;
  --rm-secondary: #05cae6;
  --rm-tertiary: #0c92c7;
  --rm-dark: #07141f;
  --rm-night: #02060a;
  --rm-blue-depth: #063a58;
  --rm-ink: #102232;
  --rm-muted: #5c6f7d;
  --rm-light: #f7fbfc;
  --rm-line: rgba(12, 146, 199, .18);
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [id^="CampaignEvent_"],
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [data-event-id],
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .draggable,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-node,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-event,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-source,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [id^="CampaignEvent_"],
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [data-event-id],
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .draggable,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-node,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-event,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-source {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  z-index: 50000 !important;
  color: #03131d !important;
  border: 2px solid #00f4fe !important;
  border-radius: 10px !important;
  background: #f6fbff !important;
  box-shadow:
    0 0 0 2px rgba(255, 255, 255, .24),
    0 16px 40px rgba(0, 0, 0, .72),
    0 0 34px rgba(0, 244, 254, .55) !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-content,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-content {
  color: #03131d !important;
  background: #f6fbff !important;
  box-shadow: none !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-content *,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-content * {
  color: #03131d !important;
  background-color: transparent !important;
  text-shadow: none !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-name,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-name {
  color: #03131d !important;
  font-weight: 900 !important;
  text-shadow: none !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-type,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-source-title,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-type,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-source-title {
  color: rgba(3, 19, 29, .82) !important;
  text-shadow: none !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-icon,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-icon {
  color: #001318 !important;
  background: #00f4fe !important;
}

body:not(.header-fixed) {
  min-height: 100vh;
  background:
    radial-gradient(circle at 12% 8%, rgba(0, 244, 254, .18), transparent 30rem),
    radial-gradient(circle at 88% 16%, rgba(12, 146, 199, .16), transparent 28rem),
    linear-gradient(180deg, #fff 0%, var(--rm-light) 100%) !important;
}

body:not(.header-fixed)::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(0, 244, 254, .08) 1px, transparent 1px) 0 0/74px 74px,
    linear-gradient(0deg, rgba(0, 244, 254, .06) 1px, transparent 1px) 0 0/74px 74px;
  mask-image: linear-gradient(#000, transparent 85%);
}

body:not(.header-fixed) #main .container {
  margin-top: clamp(52px, 8vh, 92px) !important;
  position: relative;
  z-index: 1;
}

body:not(.header-fixed) .panel[name="form-login"] {
  border: 1px solid rgba(12, 146, 199, .24);
  border-radius: 8px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 24px 70px rgba(15, 37, 55, .16);
  overflow: hidden;
}

body:not(.header-fixed) .panel[name="form-login"] .panel-body {
  padding: 30px 32px 32px;
}

.rm-login-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  width: auto !important;
  max-width: 100%;
  margin: 0 auto 30px !important;
  background: transparent !important;
  color: var(--rm-ink);
  font-weight: 900;
  text-align: left;
}

.rm-login-logo img {
  width: 92px;
  height: 92px;
  border-radius: 50%;
  box-shadow: 0 0 34px rgba(0, 244, 254, .34);
  flex: 0 0 auto;
}

.rm-login-logo span {
  max-width: 210px;
  color: var(--rm-ink);
  font-size: 24px;
  line-height: 1.02;
}

body:not(.header-fixed) .input-group-addon {
  color: var(--rm-tertiary);
  background: rgba(0, 244, 254, .08);
  border-color: rgba(12, 146, 199, .2);
}

body:not(.header-fixed) .form-control {
  border-color: rgba(7, 20, 31, .16);
  border-radius: 8px;
}

body:not(.header-fixed) .form-control:focus {
  border-color: var(--rm-secondary);
  box-shadow: 0 0 0 4px rgba(0, 244, 254, .14);
}

.btn-primary,
.btn-primary:focus {
  color: var(--rm-dark) !important;
  border-color: transparent !important;
  background: linear-gradient(135deg, var(--rm-primary), var(--rm-tertiary)) !important;
  box-shadow: 0 14px 38px rgba(0, 244, 254, .28);
  font-weight: 800;
}

.btn-primary:hover {
  color: var(--rm-dark) !important;
  transform: translateY(-1px);
  box-shadow: 0 18px 48px rgba(0, 244, 254, .4);
}

#app-header.navbar {
  background: rgba(7, 20, 31, .98) !important;
  border-bottom: 1px solid rgba(0, 244, 254, .16) !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .18);
  min-height: 84px;
  padding-left: 20px !important;
  padding-right: 20px !important;
  box-sizing: border-box;
}

#app-header .navbar-nocollapse,
#app-header .navbar-left,
#app-header .navbar-right {
  min-height: 84px;
}

#app-header .navbar-nocollapse {
  padding-left: 6px !important;
  padding-right: 6px !important;
}

#app-header .navbar-left {
  display: flex;
  align-items: center;
  gap: 8px;
  overflow: visible !important;
}

#app-header .brand-logo--desktop {
  display: inline-flex !important;
  align-items: center;
  width: auto !important;
  min-width: 240px !important;
  height: 84px !important;
  padding-left: 0 !important;
  padding-right: 28px !important;
  overflow: visible !important;
}

#app-header.navbar .navbar-nocollapse .navbar-nav > li > a.pa-0 {
  display: flex !important;
  align-items: center !important;
  min-width: 260px !important;
  height: 84px !important;
  overflow: visible !important;
}

#app-header.navbar .navbar-nocollapse .navbar-left .search-button {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  margin-left: 4px !important;
  color: rgba(255, 255, 255, .88) !important;
  background: rgba(255, 255, 255, .08) !important;
  border: 1px solid rgba(0, 244, 254, .32) !important;
  border-radius: 999px !important;
  position: relative !important;
  z-index: 30 !important;
}

#app-header.navbar .navbar-nocollapse .navbar-left .search-button:hover,
#app-header.navbar .navbar-nocollapse .navbar-left .search-button:focus {
  color: var(--rm-primary) !important;
  background: rgba(0, 244, 254, .12) !important;
  border-color: rgba(0, 244, 254, .7) !important;
}

#app-header.navbar .navbar-nocollapse .navbar-left .search-button i {
  display: block !important;
  color: currentColor !important;
  font-size: 22px !important;
  line-height: 1 !important;
}

#app-header .brand-logo--desktop.hidden-xs {
  display: inline-flex !important;
}

.app-sidebar.sidebar-left,
.sidebar-left-dark {
  background: #02080d !important;
}

.app-sidebar.sidebar-left .nav-sidebar > .nav > li > a,
.app-sidebar.sidebar-left .nav-sidebar > .nav > li > .nav-submenu > li > a {
  color: rgba(255, 255, 255, .92) !important;
  font-size: 15px !important;
  font-weight: 420 !important;
  line-height: 1.32 !important;
  letter-spacing: 0 !important;
}

.app-sidebar.sidebar-left .nav-sidebar > .nav > li > a .icon,
.app-sidebar.sidebar-left .nav-sidebar > .nav > li > a .text,
.app-sidebar.sidebar-left .nav-sidebar > .nav > li > a .arrow {
  color: rgba(255, 255, 255, .92) !important;
}

.app-sidebar.sidebar-left .nav-sidebar > .nav > li > a:hover,
.app-sidebar.sidebar-left .nav-sidebar > .nav > li > a:focus,
.app-sidebar.sidebar-left .nav-sidebar > .nav > li.active > a,
.app-sidebar.sidebar-left .nav-sidebar > .nav > li.open > a {
  color: #fff !important;
  background: rgba(0, 244, 254, .08) !important;
}

.app-sidebar.sidebar-left .nav-sidebar > .nav > li > a:hover .icon,
.app-sidebar.sidebar-left .nav-sidebar > .nav > li > a:focus .icon,
.app-sidebar.sidebar-left .nav-sidebar > .nav > li.active > a .icon,
.app-sidebar.sidebar-left .nav-sidebar > .nav > li.open > a .icon {
  color: var(--rm-primary) !important;
}

.rosenboom-admin-brand {
  width: auto !important;
  min-width: 226px !important;
  max-width: none !important;
  min-height: 84px;
  display: inline-flex;
  align-items: center;
  gap: 13px;
  color: #fff !important;
  font-weight: 900;
  font-size: 16px;
  letter-spacing: 0;
}

.rosenboom-admin-brand:hover,
.rosenboom-admin-brand:focus {
  color: var(--rm-primary) !important;
  text-decoration: none;
}

.rosenboom-admin-brand img {
  display: block !important;
  width: 56px;
  height: 56px;
  min-width: 56px !important;
  max-width: 56px !important;
  min-height: 56px !important;
  max-height: 56px !important;
  object-fit: contain !important;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  box-shadow: 0 0 28px rgba(0, 244, 254, .28);
  flex: 0 0 auto;
}

.rosenboom-admin-brand span {
  display: inline-block !important;
  min-width: 152px !important;
  max-width: none;
  color: inherit;
  font-size: 16px;
  line-height: 1;
  letter-spacing: -0.01em;
  white-space: nowrap;
}

.rosenboom-admin-brand--mobile img {
  width: 40px;
  height: 40px;
}

.navbar .nav > li > a,
.navbar .navbar-toolbar .btn {
  color: rgba(255, 255, 255, .82) !important;
}

.navbar .nav > li > a:hover,
.navbar .navbar-toolbar .btn:hover {
  color: var(--rm-primary) !important;
}

#app-footer {
  border-top: 1px solid rgba(12, 146, 199, .16);
}

a {
  color: var(--rm-tertiary);
}

@media (min-width: 768px) {
  body.header-fixed #app-wrapper > #app-content,
            body.header-fixed section#app-wrapper > section#app-content {
                padding-top: 36px !important;
            }

            #app-header.navbar {
                padding-left: 20px !important;
                padding-right: 20px !important;
                box-sizing: border-box !important;
            }

            #app-header .navbar-nocollapse {
                padding-left: 6px !important;
                padding-right: 6px !important;
            }

            .app-sidebar.sidebar-left .nav-sidebar > .nav > li > a,
            .app-sidebar.sidebar-left .nav-sidebar > .nav > li > .nav-submenu > li > a {
                color: rgba(255, 255, 255, .92) !important;
                font-size: 15px !important;
                font-weight: 420 !important;
                line-height: 1.32 !important;
                letter-spacing: 0 !important;
            }

            .app-sidebar.sidebar-left .nav-sidebar > .nav > li > a .icon,
            .app-sidebar.sidebar-left .nav-sidebar > .nav > li > a .text,
            .app-sidebar.sidebar-left .nav-sidebar > .nav > li > a .arrow {
                color: rgba(255, 255, 255, .92) !important;
            }

  body.header-fixed #app-wrapper #app-header.navbar ~ #app-content > div.content-body,
  body.header-fixed section#app-wrapper section#app-content > div.content-body,
  body #app-wrapper #app-content > div.content-body.container-fluid {
    padding-top: 96px !important;
    padding-left: 42px !important;
    padding-right: 32px !important;
  }

  body.header-fixed #app-wrapper #app-header.navbar ~ #app-content > div.content-body > .page-header,
  body.header-fixed section#app-wrapper section#app-content > div.content-body > .page-header {
    margin-top: 28px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .app-sidebar.sidebar-left .sidebar-content {
    padding-top: 104px !important;
  }

  .app-sidebar.sidebar-left .scroll-content {
    padding-top: 8px !important;
  }
}

@media (max-width: 767px) {
  body.header-fixed #app-header.navbar {
    min-height: 56px !important;
    height: 56px !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  body.header-fixed #app-header .navbar-nocollapse,
  body.header-fixed #app-header .navbar-left,
  body.header-fixed #app-header .navbar-right {
    min-height: 56px !important;
    height: 56px !important;
  }

  body.header-fixed #app-header .navbar-nocollapse {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 6px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.header-fixed #app-header .navbar-left,
  body.header-fixed #app-header .navbar-right {
    display: inline-flex !important;
    align-items: center !important;
    flex: 0 1 auto !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  body.header-fixed #app-header .brand-logo--desktop,
  body.header-fixed #app-header .brand-logo--desktop.hidden-xs,
  body.header-fixed #app-header .rosenboom-admin-brand:not(.rosenboom-admin-brand--mobile) {
    display: none !important;
  }

  body.header-fixed #app-header .rosenboom-admin-brand--mobile,
  body.header-fixed #app-header .brand-logo--mobile,
  body.header-fixed #app-header .brand-logo--mobile.visible-xs {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    min-width: 44px !important;
    height: 56px !important;
    min-height: 56px !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  body.header-fixed #app-header .rosenboom-admin-brand--mobile img {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
    max-width: 38px !important;
    max-height: 38px !important;
  }

  body.header-fixed #app-header .rosenboom-admin-brand--mobile span,
  body.header-fixed #app-header .brand-logo--mobile span {
    display: none !important;
  }

  body.header-fixed #app-header.navbar .navbar-nocollapse .navbar-nav > li > a.pa-0 {
    min-width: 44px !important;
    width: 44px !important;
    height: 56px !important;
    padding: 0 !important;
  }

  body.header-fixed #app-header.navbar .navbar-nocollapse .navbar-left .search-button {
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
    margin-left: 0 !important;
  }

  body.header-fixed #app-wrapper > #app-content,
  body.header-fixed section#app-wrapper > section#app-content {
    padding-top: 56px !important;
  }

  body:not(.header-fixed) .panel[name="form-login"] .panel-body {
    padding: 24px;
  }

  .rm-login-logo {
    gap: 14px;
  }

  .rm-login-logo img {
    width: 72px;
    height: 72px;
  }

  .rm-login-logo span {
    font-size: 19px;
    max-width: 180px;
  }
}

/* Campaign editor: Rosenboom strategy canvas */
body.header-fixed:has(#campaign-builder.builder-active),
body.header-fixed:has(#campaign-builder.builder-active),
body.header-fixed:has(#campaign-builder.builder-active),
body.header-fixed:has(#campaign-builder.builder-active) {
  min-height: 100vh !important;
  color: #fff !important;
  background:
    radial-gradient(circle at 12% 36%, rgba(0, 244, 254, .12), transparent 22rem),
    radial-gradient(circle at 88% 62%, rgba(12, 146, 199, .22), transparent 30rem),
    linear-gradient(130deg, var(--rm-night) 0%, var(--rm-dark) 43%, var(--rm-blue-depth) 100%) !important;
}

body.header-fixed:has(#campaign-builder.builder-active)::before,
body.header-fixed:has(#campaign-builder.builder-active)::before,
body.header-fixed:has(#campaign-builder.builder-active)::before,
body.header-fixed:has(#campaign-builder.builder-active)::before {
  content: "";
  position: fixed;
  inset: 84px 0 0;
  z-index: 1028;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(0, 244, 254, .11) 1px, transparent 1px) 0 0 / 74px 74px,
    linear-gradient(0deg, rgba(0, 244, 254, .075) 1px, transparent 1px) 0 0 / 74px 74px,
    radial-gradient(circle at 4% 38%, transparent 0 17.5rem, rgba(0, 244, 254, .17) 17.6rem, transparent 17.72rem),
    radial-gradient(circle at 89% 58%, transparent 0 15.2rem, rgba(0, 244, 254, .16) 15.32rem, transparent 15.45rem),
    radial-gradient(circle at 76% 34%, rgba(0, 244, 254, .16), transparent 12rem),
    linear-gradient(130deg, rgba(2, 6, 10, .98) 0%, rgba(7, 20, 31, .96) 43%, rgba(6, 58, 88, .96) 100%);
}

body.header-fixed:has(#campaign-builder.builder-active)::after,
body.header-fixed:has(#campaign-builder.builder-active)::after,
body.header-fixed:has(#campaign-builder.builder-active)::after,
body.header-fixed:has(#campaign-builder.builder-active)::after {
  content: "";
  position: fixed;
  right: -9vw;
  bottom: -17vh;
  z-index: 1028;
  width: min(62vw, 900px);
  aspect-ratio: 1;
  pointer-events: none;
  border: 1px solid rgba(0, 244, 254, .15);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 244, 254, .08), transparent 64%);
}

body.header-fixed:has(#campaign-builder.builder-active) #app-wrapper,
body.header-fixed:has(#campaign-builder.builder-active) #app-content,
body.header-fixed:has(#campaign-builder.builder-active) .content-body,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder,
body.header-fixed:has(#campaign-builder.builder-active) .campaign-builder,
body.header-fixed:has(#campaign-builder.builder-active) .builder,
body.header-fixed:has(#campaign-builder.builder-active) .builder-content,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas,
body.header-fixed:has(#campaign-builder.builder-active) #app-wrapper,
body.header-fixed:has(#campaign-builder.builder-active) #app-content,
body.header-fixed:has(#campaign-builder.builder-active) .content-body,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder,
body.header-fixed:has(#campaign-builder.builder-active) .campaign-builder,
body.header-fixed:has(#campaign-builder.builder-active) .builder,
body.header-fixed:has(#campaign-builder.builder-active) .builder-content,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas {
  background: transparent !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder {
  inset: 0 !important;
  color: #fff !important;
  background:
    linear-gradient(90deg, rgba(0, 244, 254, .11) 1px, transparent 1px) 0 0 / 74px 74px,
    linear-gradient(0deg, rgba(0, 244, 254, .075) 1px, transparent 1px) 0 0 / 74px 74px,
    radial-gradient(circle at 6% 39%, transparent 0 18rem, rgba(0, 244, 254, .18) 18.08rem, transparent 18.22rem),
    radial-gradient(circle at 90% 60%, transparent 0 15.5rem, rgba(0, 244, 254, .16) 15.58rem, transparent 15.72rem),
    radial-gradient(circle at 76% 34%, rgba(0, 244, 254, .15), transparent 12rem),
    linear-gradient(130deg, var(--rm-night) 0%, var(--rm-dark) 43%, var(--rm-blue-depth) 100%) !important;
  overflow: auto !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .builder-content,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .builder-content {
  background: transparent !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .builder-header,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .builder-header {
  color: #fff !important;
  background: rgba(2, 7, 12, .94) !important;
  border-bottom: 1px solid rgba(0, 244, 254, .18) !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .22);
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder h1,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder h2,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder h3,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder h4,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder h5,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-source-title,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder h1,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder h2,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder h3,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder h4,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder h5,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-source-title {
  color: #fff !important;
  letter-spacing: 0 !important;
  text-shadow: 0 2px 18px rgba(0, 0, 0, .32);
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas {
  min-height: calc(100vh - 84px) !important;
  background: transparent !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder svg path,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder svg path {
  stroke: rgba(0, 244, 254, .8) !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .jtk-connector path,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .jtk-connector path {
  stroke: var(--rm-primary) !important;
  stroke-width: 3px !important;
  filter: drop-shadow(0 0 10px rgba(0, 244, 254, .42));
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .jtk-endpoint,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .jtk-endpoint {
  z-index: 1012 !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .jtk-endpoint circle,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .jtk-endpoint circle {
  fill: var(--rm-primary) !important;
  stroke: rgba(255, 255, 255, .44) !important;
  filter: drop-shadow(0 0 12px rgba(0, 244, 254, .62));
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .draggable,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-source,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-event,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .draggable,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-source,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-event {
  color: #fff !important;
  overflow: hidden;
  border: 1px solid rgba(0, 244, 254, .34) !important;
  border-radius: 8px !important;
  background: rgba(3, 14, 23, .88) !important;
  box-shadow: 0 20px 54px rgba(0, 0, 0, .36), 0 0 36px rgba(0, 244, 254, .12) !important;
  backdrop-filter: blur(14px);
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-event,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-event {
  min-width: 392px;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-source .campaign-event-content,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-source .campaign-event-content {
  background: rgba(3, 14, 23, .9) !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-event .campaign-event-content,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-event .campaign-event-content {
  color: #fff !important;
  background:
    linear-gradient(135deg, rgba(0, 244, 254, .2), rgba(12, 146, 199, .12)),
    rgba(7, 20, 31, .9) !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-icon,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-icon {
  color: var(--rm-dark) !important;
  background: linear-gradient(135deg, var(--rm-primary), var(--rm-secondary)) !important;
  border-color: rgba(0, 244, 254, .7) !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-name,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-type,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-content,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-name,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-type,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-content {
  color: #fff !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-name,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-name {
  font-weight: 800 !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-group-container,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-group-container {
  color: rgba(255, 255, 255, .86) !important;
  border-color: rgba(0, 244, 254, .18) !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-selector,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-selector {
  color: #fff !important;
  background: rgba(255, 255, 255, .1) !important;
  border: 1px solid rgba(0, 244, 254, .3) !important;
  border-radius: 8px !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-selector option,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-selector option {
  color: var(--rm-ink) !important;
  background: #fff !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #app-header,
body.header-fixed:has(#campaign-builder.builder-active) .app-sidebar,
body.header-fixed:has(#campaign-builder.builder-active) #app-content,
body.header-fixed:has(#campaign-builder.builder-active) #app-footer,
body.header-fixed:has(#campaign-builder.builder-active) .campaign-event,
body.header-fixed:has(#campaign-builder.builder-active) .campaign-source,
body.header-fixed:has(#campaign-builder.builder-active) .campaign-action,
body.header-fixed:has(#campaign-builder.builder-active) .campaign-decision,
body.header-fixed:has(#campaign-builder.builder-active) .modal,
body.header-fixed:has(#campaign-builder.builder-active) #app-header,
body.header-fixed:has(#campaign-builder.builder-active) .app-sidebar,
body.header-fixed:has(#campaign-builder.builder-active) #app-content,
body.header-fixed:has(#campaign-builder.builder-active) #app-footer,
body.header-fixed:has(#campaign-builder.builder-active) .campaign-event,
body.header-fixed:has(#campaign-builder.builder-active) .campaign-source,
body.header-fixed:has(#campaign-builder.builder-active) .campaign-action,
body.header-fixed:has(#campaign-builder.builder-active) .campaign-decision,
body.header-fixed:has(#campaign-builder.builder-active) .modal {
  position: relative;
  z-index: 1;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder::before,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder::after,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas::before,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas::after,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder::before,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder::after,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas::before,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas::after {
  background: none !important;
  box-shadow: none !important;
}

@media (max-width: 767px) {
  body.header-fixed:has(#campaign-builder.builder-active),
  body.header-fixed:has(#campaign-builder.builder-active) {
    overflow: hidden !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder {
    position: fixed !important;
    inset: 56px 0 0 !important;
    z-index: 1029 !important;
    overflow: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .builder-header,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .builder-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 1040 !important;
    min-height: 56px !important;
    padding: 8px 10px !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .builder-content,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .builder-content {
    min-width: 760px !important;
    min-height: calc(100vh - 112px) !important;
    overflow: visible !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas {
    min-width: 760px !important;
    min-height: calc(100vh - 112px) !important;
    padding: 18px 18px 120px !important;
    touch-action: pan-x pan-y !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-event,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-event {
    min-width: 240px !important;
    max-width: 280px !important;
    overflow: visible !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-source,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-source {
    min-width: 210px !important;
    max-width: 260px !important;
    overflow: visible !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-content,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-content {
    min-height: 54px !important;
    padding-right: 8px !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-buttons,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-buttons.hide,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-buttons,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-buttons.hide {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: absolute !important;
    left: 8px !important;
    right: 8px !important;
    bottom: -48px !important;
    z-index: 1045 !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    min-height: 42px !important;
    padding: 6px !important;
    border: 1px solid rgba(0, 244, 254, .34) !important;
    border-radius: 8px !important;
    background: rgba(2, 7, 12, .94) !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, .34) !important;
    pointer-events: auto !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-buttons .btn,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-buttons a,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-buttons button,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-buttons .btn,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-buttons a,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-buttons button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    min-width: 36px !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 !important;
    color: #fff !important;
    border-color: rgba(0, 244, 254, .36) !important;
    background: rgba(255, 255, 255, .12) !important;
    pointer-events: auto !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanelGroups,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanelGroups {
    max-width: none !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel:not(.hide),
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel:not(.hide) {
    display: block !important;
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    z-index: 1060 !important;
    width: 100vw !important;
    max-height: 72vh !important;
    overflow: auto !important;
    -webkit-overflow-scrolling: touch;
    padding: 12px !important;
    color: #fff !important;
    border-top: 1px solid rgba(0, 244, 254, .34) !important;
    background: rgba(3, 14, 23, .98) !important;
    box-shadow: 0 -18px 48px rgba(0, 0, 0, .42) !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel .campaign-group-container,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel .campaign-group-container {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel .campaign-event-selector,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel .campaign-event-selector,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel a,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel a,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel button,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel button {
    min-height: 44px !important;
    touch-action: manipulation !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel .campaign-event-selector,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel .campaign-event-selector {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    height: 46px !important;
    opacity: 1 !important;
    visibility: visible !important;
    padding: 0 12px !important;
    color: #fff !important;
    border: 1px solid rgba(0, 244, 254, .35) !important;
    border-radius: 8px !important;
    background: rgba(255, 255, 255, .08) !important;
    appearance: auto !important;
    -webkit-appearance: menulist !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel .chosen-container,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel .chosen-container {
    display: none !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-endpoint,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-endpoint {
    min-width: 44px !important;
    min-height: 44px !important;
    margin: -12px 0 0 -12px !important;
    z-index: 1120 !important;
    cursor: pointer !important;
    pointer-events: auto !important;
    touch-action: manipulation !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-endpoint::after,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-endpoint::after {
    content: "+" !important;
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 26px !important;
    height: 26px !important;
    margin: -13px 0 0 -13px !important;
    color: #001318 !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    border: 2px solid rgba(255, 255, 255, .88) !important;
    border-radius: 50% !important;
    background: #00f4fe !important;
    box-shadow: 0 6px 18px rgba(0, 244, 254, .35), 0 0 0 8px rgba(0, 244, 254, .12) !important;
    pointer-events: none !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-endpoint svg text,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-endpoint svg text {
    display: block !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .draggable,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-managed,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-event,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-source,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .draggable,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-managed,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-event,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-source {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 1110 !important;
    color: #fff !important;
    border: 2px solid rgba(0, 244, 254, .92) !important;
    background: rgba(1, 13, 22, .98) !important;
    box-shadow:
      0 0 0 2px rgba(255, 255, 255, .12),
      0 12px 32px rgba(0, 0, 0, .72),
      0 0 28px rgba(0, 244, 254, .34) !important;
    filter: none !important;
    mix-blend-mode: normal !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-content,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-name,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-type,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-source-title,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-content,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-name,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-type,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-source-title {
    visibility: visible !important;
    opacity: 1 !important;
    color: #fff !important;
    text-shadow: 0 1px 3px rgba(0, 0, 0, .88) !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-name,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-name {
    font-size: 13px !important;
    font-weight: 800 !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-type,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-type {
    color: rgba(255, 255, 255, .82) !important;
    font-size: 11px !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-connector,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-endpoint,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-connector,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-endpoint {
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 1125 !important;
    filter: none !important;
    mix-blend-mode: normal !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-connector path,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-connector path {
    stroke: #00f4fe !important;
    stroke-width: 4px !important;
    opacity: 1 !important;
    filter: drop-shadow(0 0 8px rgba(0, 244, 254, .8)) !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) .modal-dialog,
  body.header-fixed:has(#campaign-builder.builder-active) .modal-dialog {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    margin: 10px auto !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) .modal-content,
  body.header-fixed:has(#campaign-builder.builder-active) .modal-content {
    max-height: calc(100vh - 20px) !important;
    overflow: auto !important;
    -webkit-overflow-scrolling: touch;
  }
}

@media (max-width: 767px) {
  body.header-fixed:has(#campaign-builder.builder-active)::before,
  body.header-fixed:has(#campaign-builder.builder-active)::before,
  body.header-fixed:has(#campaign-builder.builder-active)::after,
  body.header-fixed:has(#campaign-builder.builder-active)::after {
    z-index: 0 !important;
    opacity: .64 !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas {
    isolation: isolate !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas > svg,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas > svg,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-surface-canvas,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-surface-canvas,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-connector,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-connector {
    z-index: 900 !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [id^="CampaignEvent_"],
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [data-event-id],
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .draggable,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-node,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-event,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-source,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [id^="CampaignEvent_"],
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [data-event-id],
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .draggable,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-node,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-event,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-source {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    z-index: 50000 !important;
    min-width: 260px !important;
    color: #fff !important;
    border: 2px solid #00f4fe !important;
    border-radius: 10px !important;
    background: #02111d !important;
    box-shadow:
      0 0 0 2px rgba(255, 255, 255, .18),
      0 14px 36px rgba(0, 0, 0, .86),
      0 0 34px rgba(0, 244, 254, .55) !important;
    filter: none !important;
    transform-style: flat !important;
    mix-blend-mode: normal !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [id^="CampaignEvent_"] *,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [data-event-id] *,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .draggable *,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-event *,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-source *,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [id^="CampaignEvent_"] *,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [data-event-id] *,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .draggable *,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-event *,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-source * {
    visibility: visible !important;
    opacity: 1 !important;
    color: #fff !important;
    filter: none !important;
    mix-blend-mode: normal !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-content,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-content {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 60px !important;
    padding: 10px 12px !important;
    border-radius: 8px !important;
    background: #041b2a !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-name,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-name {
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    text-shadow: 0 2px 5px #000 !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-type,
  body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-type {
    color: rgba(255, 255, 255, .9) !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
  }
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [id^="CampaignEvent_"],
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [data-event-id],
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .draggable,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-node,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-event,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-source,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [id^="CampaignEvent_"],
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [data-event-id],
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .draggable,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-node,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-event,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-source {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  z-index: 50000 !important;
  color: #03131d !important;
  border: 2px solid #00f4fe !important;
  border-radius: 10px !important;
  background: #f6fbff !important;
  box-shadow:
    0 0 0 2px rgba(255, 255, 255, .24),
    0 16px 40px rgba(0, 0, 0, .72),
    0 0 34px rgba(0, 244, 254, .55) !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [id^="CampaignEvent_"] *,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [data-event-id] *,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .draggable *,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-event *,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-source *,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [id^="CampaignEvent_"] *,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [data-event-id] *,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .draggable *,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-event *,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-source * {
  visibility: visible !important;
  opacity: 1 !important;
  color: #03131d !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-content,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-content {
  color: #03131d !important;
  background: #f6fbff !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-name,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-name {
  color: #03131d !important;
  font-weight: 900 !important;
  text-shadow: none !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-type,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-source-title,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-type,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-source-title {
  color: rgba(3, 19, 29, .82) !important;
  text-shadow: none !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-icon,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-icon {
  color: #001318 !important;
  background: #00f4fe !important;
}

/* Campaign detail/read-only pages: keep the Rosenboom backdrop out of normal views. */
body.header-fixed:not(:has(#campaign-builder.builder-active)) {
  background: #f4f7fb !important;
}

body.header-fixed:not(:has(#campaign-builder.builder-active))::before,
body.header-fixed:not(:has(#campaign-builder.builder-active))::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

body.header-fixed:not(:has(#campaign-builder.builder-active)) #app-wrapper,
body.header-fixed:not(:has(#campaign-builder.builder-active)) #app-content,
body.header-fixed:not(:has(#campaign-builder.builder-active)) .content-body {
  background: #f4f7fb !important;
}

/* Keep the Rosenboom decoration behind the editable campaign nodes. */
body.header-fixed:has(#campaign-builder.builder-active)::before,
body.header-fixed:has(#campaign-builder.builder-active)::after,
body.header-fixed:has(#campaign-builder.builder-active)::after {
  z-index: 0 !important;
  opacity: 1 !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #app-wrapper,
body.header-fixed:has(#campaign-builder.builder-active) #app-content,
body.header-fixed:has(#campaign-builder.builder-active) .content-body,
body.header-fixed:has(#campaign-builder.builder-active) .content-body {
  position: relative !important;
  z-index: 1030 !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder {
  z-index: 1030 !important;
}

@media (max-width: 767px) {
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-event,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-source {
    padding-bottom: 48px !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-content {
    position: relative !important;
    z-index: 2 !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-buttons,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-buttons.hide {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: absolute !important;
    left: 8px !important;
    right: auto !important;
    top: calc(100% - 42px) !important;
    bottom: auto !important;
    z-index: 50020 !important;
    width: auto !important;
    min-width: 0 !important;
    height: 38px !important;
    min-height: 38px !important;
    padding: 0 !important;
    gap: 8px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    pointer-events: auto !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-buttons .btn,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-buttons a,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-buttons button {
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
    min-height: 38px !important;
    color: #fff !important;
    border: 1px solid rgba(0, 244, 254, .78) !important;
    border-radius: 7px !important;
    background: #102232 !important;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .42) !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-source {
    width: 220px !important;
    min-width: 220px !important;
    max-width: 220px !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .list-campaign-event {
    width: 240px !important;
    min-width: 240px !important;
    max-width: 240px !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-content {
    min-height: 72px !important;
    overflow: hidden !important;
  }

  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-name,
  body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-source-title {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
}

/* Rosenboom builder UX polish: calmer contrast, clearer actions, stronger German admin feel. */
body.header-fixed:has(#campaign-builder.builder-active) {
  --rm-builder-ink: #07141f;
  --rm-builder-muted: #526879;
  --rm-builder-panel: #f7fbfc;
  --rm-builder-card: #ffffff;
  --rm-builder-line: rgba(0, 244, 254, .34);
}

body.header-fixed:has(#campaign-builder.builder-active)::before {
  background:
    linear-gradient(90deg, rgba(0, 244, 254, .075) 1px, transparent 1px) 0 0 / 74px 74px,
    linear-gradient(0deg, rgba(0, 244, 254, .048) 1px, transparent 1px) 0 0 / 74px 74px,
    radial-gradient(circle at 7% 42%, transparent 0 17rem, rgba(0, 244, 254, .13) 17.08rem, transparent 17.2rem),
    radial-gradient(circle at 88% 61%, transparent 0 15.2rem, rgba(0, 244, 254, .12) 15.3rem, transparent 15.44rem),
    radial-gradient(circle at 70% 35%, rgba(0, 244, 254, .1), transparent 15rem),
    linear-gradient(130deg, rgba(2, 6, 10, .985) 0%, rgba(7, 20, 31, .97) 45%, rgba(6, 58, 88, .94) 100%) !important;
}

body.header-fixed:has(#campaign-builder.builder-active)::after {
  border-color: rgba(0, 244, 254, .11) !important;
  background: radial-gradient(circle, rgba(0, 244, 254, .055), transparent 66%) !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .builder-header {
  min-height: 48px !important;
  color: var(--rm-builder-ink) !important;
  background: rgba(251, 254, 255, .98) !important;
  border-bottom: 1px solid rgba(12, 146, 199, .18) !important;
  box-shadow: 0 12px 34px rgba(2, 6, 10, .18) !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .builder-header h1,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .builder-header h2,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .builder-header h3,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .builder-header h4,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .builder-header .text {
  color: var(--rm-builder-ink) !important;
  text-shadow: none !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .jtk-connector path,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-connector path {
  stroke: #05dff1 !important;
  stroke-width: 2.75px !important;
  opacity: .92 !important;
  filter: drop-shadow(0 0 7px rgba(0, 244, 254, .44)) !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .jtk-endpoint circle {
  fill: #05dff1 !important;
  stroke: rgba(255, 255, 255, .68) !important;
  filter: drop-shadow(0 0 8px rgba(0, 244, 254, .46)) !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-source,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-event,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [id^="CampaignEvent_"],
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [data-event-id],
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .draggable,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .jtk-node {
  color: var(--rm-builder-ink) !important;
  border: 1px solid rgba(0, 244, 254, .72) !important;
  border-left: 7px solid #00f4fe !important;
  border-radius: 8px !important;
  background: linear-gradient(180deg, #fbfeff 0%, #eef8fb 100%) !important;
  box-shadow:
    0 14px 34px rgba(0, 0, 0, .48),
    0 0 24px rgba(0, 244, 254, .24) !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-source:hover,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .list-campaign-event:hover,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas [id^="CampaignEvent_"]:hover {
  border-color: rgba(5, 202, 230, .95) !important;
  box-shadow:
    0 16px 38px rgba(0, 0, 0, .52),
    0 0 28px rgba(0, 244, 254, .32) !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-content {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  min-height: 52px !important;
  padding: 12px 16px !important;
  color: var(--rm-builder-ink) !important;
  background: transparent !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-name {
  color: var(--rm-builder-ink) !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
  text-shadow: none !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-type,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-source-title {
  color: var(--rm-builder-muted) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  text-shadow: none !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignCanvas .campaign-event-icon,
body.header-fixed:has(#campaign-builder.builder-active) #campaign-builder .campaign-event-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #02131d !important;
  background: linear-gradient(135deg, #00f4fe 0%, #05cae6 56%, #0c92c7 100%) !important;
  border-color: rgba(0, 244, 254, .75) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .42), 0 8px 20px rgba(0, 244, 254, .22) !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel {
  padding: 10px 12px !important;
  color: var(--rm-builder-ink) !important;
  border: 1px solid rgba(0, 244, 254, .28) !important;
  border-radius: 8px !important;
  background: rgba(247, 251, 252, .97) !important;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .36), 0 0 34px rgba(0, 244, 254, .12) !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel .campaign-group-container {
  padding: 4px !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel .tile.tile--clickable {
  width: 100% !important;
  min-height: 172px !important;
  padding: 22px 20px !important;
  text-align: left !important;
  color: var(--rm-builder-ink) !important;
  border: 1px solid rgba(16, 34, 50, .12) !important;
  border-radius: 8px !important;
  background: linear-gradient(180deg, #ffffff 0%, #eff8fb 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .8), 0 10px 28px rgba(7, 20, 31, .1) !important;
  transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel .tile.tile--clickable:hover,
body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel .tile.tile--clickable:focus {
  transform: translateY(-2px) !important;
  border-color: rgba(0, 244, 254, .76) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9), 0 16px 34px rgba(7, 20, 31, .16), 0 0 22px rgba(0, 244, 254, .16) !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel .type-heading-02 {
  margin-bottom: 12px !important;
  color: var(--rm-builder-ink) !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel .type-helper-text-01 {
  color: var(--rm-builder-muted) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
}

body.header-fixed:has(#campaign-builder.builder-active) #CampaignEventPanel .tile-icon {
  color: #0c92c7 !important;
  background: rgba(0, 244, 254, .1) !important;
  border: 1px solid rgba(0, 244, 254, .22) !important;
  border-radius: 8px !important;
}
