/** CAI World FLEX color scheme */
:root body.cai-flex {
  /* base color */
  --color-accent-base: 151, 33, 50 !important; /* dark red */
  /*--color-accent-base: 229,25,55 !important;*/
  /* CAI red */
  /*--color-accent-base: 16, 108, 181 !important; */
  /* blue */
  /*
  -------------------------------------------------------------------
  Copy/paste: overwrite variables in :root from variables_colors.scss
  -------------------------------------------------------------------
   */
  --color-accent-main: rgb(var(--color-accent-base)) !important;
  --color-accent-medium: rgba(var(--color-accent-base), 0.5) !important;
  --color-accent-transparent: rgba(var(--color-accent-base), 0.2) !important;
  --color-accent-transparent-medium: rgba(var(--color-accent-base), 0.1) !important;
  --color-accent-transparent-light: rgba(var(--color-accent-base), 0.05) !important;
  --btn-primary-color: var(--color-accent-contrast) !important;
  --btn-primary-background-color: var(--color-accent-main) !important;
  --btn-primary-hover-color: var(--color-accent-contrast) !important;
  --btn-primary-border-color: var(--color-accent-main) !important;
  --btn-secondary-color: var(--color-accent-main) !important;
  --btn-secondary-hover-color: var(--color-accent-main) !important;
  --btn-secondary-hover-background-color: var(--color-accent-transparent) !important;
  --btn-outline-primary-color: var(--color-accent-main) !important;
  --btn-outline-primary-hover-color: var(--color-accent-main) !important;
  --btn-outline-primary-border-color: var(--color-accent-main) !important;
  --btn-outline-primary-hover-border-color: var(--color-accent-main) !important;
  --btn-outline-primary-hover-background-color: var(--color-accent-transparent) !important;
  --cc-btn-primary-bg: var(--color-accent-main) !important;
  --cc-btn-primary-hover-bg: var(--color-accent-main) !important;
  --portlet-topper-bg: var(--color-accent-main);
  --color-footer: var(--color-accent-contrast);
  /*
  -------------------------------------------------------------------
  Copy/paste: end
  -------------------------------------------------------------------
   */
  --color-dark-gray: #182232;
  --color-footer-background: var(--color-dark-gray) !important;
  --color-workbench-sidebar-background: #F8FAFC;
  --color-sitemenu-dropdown-background: white !important;
  --color-sitemenu-dropdown-background-active: #F1F5F9;
  --color-sitemenu-dropdown: var(--body-color) !important;
  --color-sitemenu-dropdown-active: var(--body-color) !important;
  --color-sitemenu-dropdown-border-active: #A61C30 !important;
  --color-background-light: rgb(246, 244, 241);
  --border-radius: 0.5rem;
  --border-radius-sm: 0.25rem;
  /* buttons */
  --btn-border-radius: 4rem;
  --btn-border-width: 2px;
  --btn-primary-hover-base-color: #e51937;
  --btn-primary-hover-background-color: var(--btn-primary-hover-base-color) !important;
  --btn-primary-hover-border-color: var(--btn-primary-hover-base-color) !important;
  /* banner */
  --color-banner: var(--gray-600);
  --color-banner-login: var(--gray-600);
  --color-banner-selected-menu: var(--gray-900);
  /* ==========================================================================
       CAI World FLEX - Split Card Component
       Adapt start page (with class "cai-split-grid" to new FLEX layout
     ========================================================================== */
  /* 1. card container */
  /* workbench */
}
:root body.cai-flex .btn-primary {
  box-shadow: rgba(0, 0, 0, 0.2) 0 3px 1px -2px, rgba(0, 0, 0, 0.14) 0 2px 2px 0, rgba(0, 0, 0, 0.12) 0 1px 5px 0;
}
:root body.cai-flex .btn-primary:hover {
  box-shadow: rgba(0, 0, 0, 0.2) 0 2px 4px -1px, rgba(0, 0, 0, 0.14) 0 4px 5px 0, rgba(0, 0, 0, 0.12) 0 1px 10px 0;
}
:root body.cai-flex #banner .navbar-site .nav-link {
  padding-left: 0;
}
@media screen and (max-width: 976px) {
  :root body.cai-flex #content {
    background: transparent !important;
  }
}
@media screen and (min-width: 977px) {
  :root body.cai-flex {
    /* page background colored */
  }
  :root body.cai-flex html, :root body.cai-flex body, :root body.cai-flex #wrapper, :root body.cai-flex #content, :root body.cai-flex #main-content, :root body.cai-flex .lfr-layout-structure-page {
    background-color: #F1F5F9 !important;
  }
}
:root body.cai-flex .form-control {
  background-color: #F8FAFC !important;
}
:root body.cai-flex #banner {
  box-shadow: 1px 1px 2px 0 var(--color-accent-transparent);
}
:root body.cai-flex #footer {
  border-top: 3px solid var(--color-accent-main);
}
@media screen and (min-width: 768px) {
  :root body.cai-flex #banner + #content {
    margin-top: 215px !important;
  }
}
@media screen and (min-width: 1280px) {
  :root body.cai-flex #banner + #content {
    margin-top: 180px !important;
  }
}
:root body.cai-flex #question-message-overlay-tool {
  color: white;
  text-decoration: underline;
  font-size: 0.9em;
}
:root body.cai-flex .sheet {
  background-color: white;
  margin-bottom: 0.5rem;
}
:root body.cai-flex .tou-article-sites {
  display: none;
}
:root body.cai-flex .cai-split-grid {
  max-width: 920px !important;
  width: 95% !important;
  margin: 40px auto !important;
  background: #FFFFFF !important;
  border-radius: 16px !important;
  box-shadow: 0 20px 45px rgba(15, 23, 42, 0.08) !important;
  overflow: hidden !important;
  border: 1px solid #E2E8F0 !important;
  padding: 0 !important;
  /* Grid/Row zurücksetzen */
  /* desktop (2 columns) */
  /* left column (dark blue) */
  /* right column (login) */
}
:root body.cai-flex .cai-split-grid .portlet-site-map .portlet-body > ul {
  background-color: transparent;
}
:root body.cai-flex .cai-split-grid .portlet-site-map .portlet-body > ul li > a {
  font-size: 1.1em !important;
}
:root body.cai-flex .cai-split-grid .portlet {
  margin-bottom: 1em !important;
}
:root body.cai-flex .cai-split-grid strong {
  font-weight: 800;
}
:root body.cai-flex .cai-split-grid > .row,
:root body.cai-flex .cai-split-grid .container-fluid {
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
}
@media (min-width: 768px) {
  :root body.cai-flex .cai-split-grid > .row,
  :root body.cai-flex .cai-split-grid .container-fluid {
    display: flex !important;
    align-items: stretch !important;
  }
  :root body.cai-flex .cai-split-grid .row > div,
  :root body.cai-flex .cai-split-grid [class*=col-] {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    display: flex !important;
    flex-direction: column !important;
  }
}
:root body.cai-flex .cai-split-grid .row > div:first-child,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child {
  background-color: #182232 !important;
  color: #FFFFFF !important;
  padding: 44px 36px !important;
  box-sizing: border-box !important;
  height: 100% !important;
  /* hero text above language selection */
  /* compact */
}
:root body.cai-flex .cai-split-grid .row > div:first-child .portlet-header,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child .portlet-header {
  display: none;
}
:root body.cai-flex .cai-split-grid .row > div:first-child > div,
:root body.cai-flex .cai-split-grid .row > div:first-child .lfr-layout-structure-item-container,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child > div,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child .lfr-layout-structure-item-container {
  background-color: transparent !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
}
:root body.cai-flex .cai-split-grid .row > div:first-child .fragment-entry,
:root body.cai-flex .cai-split-grid .row > div:first-child [class*=lfr-layout-structure-item-basic],
:root body.cai-flex .cai-split-grid [class*=col-]:first-child .fragment-entry,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child [class*=lfr-layout-structure-item-basic] {
  background-color: transparent !important;
  height: auto !important;
  display: block !important;
  justify-content: flex-start !important;
}
:root body.cai-flex .cai-split-grid .row > div:first-child h2,
:root body.cai-flex .cai-split-grid .row > div:first-child h3,
:root body.cai-flex .cai-split-grid .row > div:first-child .lfr-layout-structure-item-basic-component-heading,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child h2,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child h3,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child .lfr-layout-structure-item-basic-component-heading {
  margin-bottom: 6px !important;
  margin-top: 0 !important;
}
:root body.cai-flex .cai-split-grid .row > div:first-child *,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child * {
  background-color: transparent !important;
}
:root body.cai-flex .cai-split-grid .row > div:first-child h1,
:root body.cai-flex .cai-split-grid .row > div:first-child h2,
:root body.cai-flex .cai-split-grid .row > div:first-child h3,
:root body.cai-flex .cai-split-grid .row > div:first-child p,
:root body.cai-flex .cai-split-grid .row > div:first-child span,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child h1,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child h2,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child h3,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child p,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child span {
  color: #FFFFFF !important;
}
:root body.cai-flex .cai-split-grid .row > div:first-child p,
:root body.cai-flex .cai-split-grid .row > div:first-child li,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child p,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child li {
  color: #CBD5E1 !important;
  font-size: 0.92rem !important;
}
:root body.cai-flex .cai-split-grid .row > div:first-child a,
:root body.cai-flex .cai-split-grid [class*=col-]:first-child a {
  color: white !important;
  text-decoration: underline;
}
:root body.cai-flex .cai-split-grid .row > div:last-child,
:root body.cai-flex .cai-split-grid [class*=col-]:last-child {
  background-color: #FFFFFF !important;
  padding: 44px 40px !important;
  box-sizing: border-box !important;
}
:root body.cai-flex .cai-split-grid .row > div:last-child h1,
:root body.cai-flex .cai-split-grid .row > div:last-child h2,
:root body.cai-flex .cai-split-grid .row > div:last-child h3,
:root body.cai-flex .cai-split-grid .row > div:last-child .portlet-title-text,
:root body.cai-flex .cai-split-grid [class*=col-]:last-child h1,
:root body.cai-flex .cai-split-grid [class*=col-]:last-child h2,
:root body.cai-flex .cai-split-grid [class*=col-]:last-child h3,
:root body.cai-flex .cai-split-grid [class*=col-]:last-child .portlet-title-text {
  margin-top: 0;
}
:root body.cai-flex .cai-split-grid .row > div:last-child button[type=submit],
:root body.cai-flex .cai-split-grid .row > div:last-child .btn-primary,
:root body.cai-flex .cai-split-grid [class*=col-]:last-child button[type=submit],
:root body.cai-flex .cai-split-grid [class*=col-]:last-child .btn-primary {
  width: 100% !important;
}
:root body.cai-flex #participants-view {
  background-color: #F8FAFC;
}
:root body.cai-flex #participants-view.participants-hidden .participants-visibility-switch {
  color: var(--color-accent-main);
}
:root body.cai-flex #participants-view .participants-button-bar {
  background-color: white;
  box-shadow: 0.3rem 0 1rem rgba(0, 0, 0, 0.05);
}
:root body.cai-flex #participants-view .participants-button-bar .borderless-button {
  color: #475569;
}
:root body.cai-flex #participants-view .participants-button-bar .borderless-button:hover {
  background-color: var(--color-accent-transparent);
}
:root body.cai-flex #participants-view .participants-button-bar #participants-button-exit {
  background-color: #E2E8F0;
}
:root body.cai-flex .wb-top-buttons button {
  color: #475569;
}
:root body.cai-flex #session-sidebar-toggle button {
  color: var(--color-accent-main);
}
:root body.cai-flex #session-sidebar-toggle button:hover {
  color: var(--color-accent-main);
  padding: 1px 0 0 1px;
  margin-top: 4px;
}
:root body.cai-flex #session-sidebar {
  border-left-color: transparent;
  color: #182232;
  scrollbar-color: auto;
  box-shadow: var(--box-shadow-float);
}
:root body.cai-flex #session-sidebar .tools-process-label select {
  color: #1E293B;
  border-color: #E2E8F0 !important;
}
:root body.cai-flex #session-sidebar .tools-toggler-header, :root body.cai-flex #session-sidebar .sidebar-video-toggler-header {
  color: #1E293B !important;
  border-bottom-color: #E2E8F0;
}
:root body.cai-flex #session-sidebar .tools-toggler-header:hover, :root body.cai-flex #session-sidebar .sidebar-video-toggler-header:hover {
  border-left: 3px solid var(--color-sitemenu-dropdown-border-active);
}
:root body.cai-flex #session-sidebar .tools-toggler-content-buttons {
  margin-top: 3px;
  gap: 9px 3px;
}
:root body.cai-flex #session-sidebar .tools-toggler-content-buttons img {
  filter: brightness(0) saturate(100%) invert(14%) sepia(28%) saturate(1022%) hue-rotate(183deg) brightness(93%) contrast(93%);
}
:root body.cai-flex #session-sidebar .tools-toggler-content-buttons div {
  line-height: 10px !important;
  font-size: 10px !important;
  color: #1E293B;
}
:root body.cai-flex #session-sidebar .borderless-button-tool-add {
  padding: 9px 2px 5px 2px;
  height: 70px;
  background-color: white;
  border: 1px solid #E5E7EB;
  border-radius: 6px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  transition: all 0.2s ease-in-out;
}
:root body.cai-flex #session-sidebar .borderless-button-tool-add:hover {
  border-color: #8B0000;
  background-color: #FAFAFA;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  transform: translateY(-1px);
}
:root body.cai-flex #session-sidebar .tools-toggler-content-buttons:first-of-type .borderless-button-tool-add {
  border-top: 2px solid #94A3B8;
  background-color: #F0F7FF;
}
:root body.cai-flex #session-sidebar .tools-toggler-content-buttons:first-of-type .borderless-button-tool-add:after {
  content: "★";
  position: absolute;
  top: 6px;
  right: 6px;
  font-size: 10px;
  color: #94A3B8;
}
:root body.cai-flex #session-sidebar .tools-toggler-content .dividing-line {
  margin-top: 7px;
  margin-bottom: -13px;
  border-bottom: solid 1px #F1F5F9;
}