/* source-sans-pro-300 - vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic */
/* source-sans-pro-300 - vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 300;
  src: url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-300.eot');
  /* IE9 Compat Modes */
  src: local(''),
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-300.eot?#iefix') format('embedded-opentype'),
    /* IE6-IE8 */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-300.woff2') format('woff2'),
    /* Super Modern Browsers */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-300.woff') format('woff'),
    /* Modern Browsers */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-300.ttf') format('truetype'),
    /* Safari, Android, iOS */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-300.svg#SourceSansPro') format('svg');
  /* Legacy iOS */
}

/* source-sans-pro-italic - vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: italic;
  font-weight: 400;
  src: url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-italic.eot');
  /* IE9 Compat Modes */
  src: local(''),
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-italic.eot?#iefix') format('embedded-opentype'),
    /* IE6-IE8 */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-italic.woff2') format('woff2'),
    /* Super Modern Browsers */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-italic.woff') format('woff'),
    /* Modern Browsers */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-italic.ttf') format('truetype'),
    /* Safari, Android, iOS */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-italic.svg#SourceSansPro') format('svg');
  /* Legacy iOS */
}

/* source-sans-pro-regular - vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 400;
  src: url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-regular.eot');
  /* IE9 Compat Modes */
  src: local(''),
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-regular.eot?#iefix') format('embedded-opentype'),
    /* IE6-IE8 */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-regular.woff2') format('woff2'),
    /* Super Modern Browsers */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-regular.woff') format('woff'),
    /* Modern Browsers */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-regular.ttf') format('truetype'),
    /* Safari, Android, iOS */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-regular.svg#SourceSansPro') format('svg');
  /* Legacy iOS */
}

/* source-sans-pro-700 - vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 700;
  src: url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-700.eot');
  /* IE9 Compat Modes */
  src: local(''),
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-700.eot?#iefix') format('embedded-opentype'),
    /* IE6-IE8 */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-700.woff2') format('woff2'),
    /* Super Modern Browsers */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-700.woff') format('woff'),
    /* Modern Browsers */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-700.ttf') format('truetype'),
    /* Safari, Android, iOS */
    url('/fonts/source-sans-pro-v14-vietnamese_latin-ext_latin_greek-ext_greek_cyrillic-ext_cyrillic-700.svg#SourceSansPro') format('svg');
  /* Legacy iOS */
}

@font-face {
  font-family: 'RiskflagFont';
  src: url('/fonts/riskflag-Regular.woff2') format('woff2');
  font-weight: bold;
  font-style: bold;
}

@font-face {
  font-family: "Font Awesome 5 Free";
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url('/fonts/FontAwesome5FreeSolid-Solid.woff2') format('woff2');
}

/* Menu Fonts */
@font-face {
  font-family: 'menu_icons';
  src: url('/fonts/menu_icons.eot?cb5mwr');
  src: url('/fonts/menu_icons.eot?cb5mwr#iefix') format('embedded-opentype'),
    url('/fonts/menu_icons.ttf?cb5mwr') format('truetype'),
    url('/fonts/menu_icons.woff?cb5mwr') format('woff'),
    url('/fonts/menu_icons.svg?cb5mwr#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="custom-icon-"],
[class*="custom-icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'menu_icons' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  /* line-height: 1; */
  vertical-align: bottom;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.custom-icon-matrix:before {
  content: "\10fdf1";
}

.custom-icon-wheel:before {
  content: "\10fdf2";
}

.custom-icon-bowtie:before {
  content: "\10fdf3";
}

.icon-matrix-new:before {}


.semi-bold {
  font-weight: 500;
}

.title-grey {
  color: var(--gray);
  font-weight: 700;
}

.title-brand {
  color: #242849 !important;
  font-weight: 700;
}

.card-brand:not(.card-outline)>.card-header {
  background-color: #242849;
  color: #ffffff;
}

.fa-bowtie:before {
  content: "\f1ca"
}

a.force-style {
  color: #007bff !important;
  text-decoration: none !important;
  background-color: transparent !important;
  cursor: pointer !important;
}

/* Hide navbar when body has hide-navbar class */
body.hide-navbar .main-header {
  display: none !important;
}

body.hide-navbar .content-wrapper,
body.hide-navbar .main-footer {
  margin-left: 0 !important;
}


.layout-navbar-fixed .wrapper .sidebar-dark-primary .brand-link:not([class*=navbar]) {
  background-color: #242849;
  color: #ffffff;
  border-bottom: 0;
}

.brand-link {
  font-size: 25px;
  font-family: 'RiskflagFont';
  font-stretch: condensed;
  font-weight: 200;
  display: block;
  color: rgb(255 255 255);
  padding: 0.55rem 0.5rem;

}

.brand-link .brand-image {
  margin-top: unset;
}

.brand-text sup {
  font-size: 60%;
}

#map {
  top: 0;
  left: 0;
  height: 100vh;
  width: 100%;
  position: unset;
}

.sc-map-table {
  height: 100vh;
  overflow: scroll;
}

#compass {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 40px;
  height: 40px;
  background-image: url('/compass.png');
  background-size: cover;
}

#osmmapcontainer {
  height: 60vh;
  max-height: 70vh;
  overflow: hidden;
}

#osmmap {
  height: 100%;
  width: 100%;
}

.geotag-search-wrapper {
  position: relative;
  display: inline-block;
  width: 100%;
}

/* Spinner inside the input */
.geotag-spinner {
  position: absolute;
  top: 30%;
  right: 10px;
  transform: translateY(-50%);
  display: none;
  /* initially hidden */
  pointer-events: none;
  color: #aaa;
}


[class*=sidebar-dark] .brand-link {
  color: rgba(255, 255, 255);
}

#safetycase_map_table a.button {
  display: unset;
}

.nav.nav-pills.nav-sidebar.flex-column .nav-treeview {
  padding-left: 10px;
}

.nav-link i {
  padding-right: 0.3em;
}

.nav-sidebar .nav-link>.right,
.nav-sidebar .nav-link>p>.right {
  position: absolute;
  right: 0.6rem;
  top: 0.7rem;
}

.site-logo a {
  font-family: 'RiskflagFont';
  display: block;
  font-size: 60px;
  text-shadow: 0 1px 0 #fff;
  background-size: 309px 42px;
  height: 42px;
  transition: all 0.3s linear;
  -o-transition: all 0.3s linear;
  -moz-transition: all 0.3s linear;
  -webkit-transition: all 0.3s linear;
}

.brand-image {
  width: 32px;
  height: 32px;
}

.site-logo a:hover {
  text-decoration: none;
}

pre {
  white-space: pre-wrap !important;
  /* Since CSS 2.1 */
  white-space: -moz-pre-wrap !important;
  /* Mozilla, since 1999 */
  white-space: -pre-wrap !important;
  /* Opera 4-6 */
  white-space: -o-pre-wrap !important;
  /* Opera 7 */
  word-wrap: break-word !important;
  /* Internet Explorer 5.5+ */
}

/* insets right pane */
.controlSidebarContainer {
  margin-left: 10px;
  margin-right: 10px;
  margin-top: 10px;
  height: 100%;
  overflow: auto;
}

.sideBarEntity {
  padding-top: 0.5em;
  padding-right: 0.5em;
  padding-bottom: 0.5em;
  padding-left: 0.5em;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  border-radius: 0.3em;
  overflow: hidden;
}

.containerFlex {
  margin-left: 10px;
  margin-right: 10px;
  /* padding-bottom: 10px; */
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-around;
  align-content: center
}

.rowFlexLayout {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: auto;
  border-radius: 5px;
  width: 100%;
  -webkit-print-color-adjust: exact;
  color: #e8f6fa !important;
  -webkit-print-color-adjust: exact;
  height: auto;
  padding: 10px;
  text-align: center;
  justify-content: center;
  align-content: center;
}

.rowCatFlexLayout {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: auto;
  border-radius: 5px;
  width: 100%;
  -webkit-print-color-adjust: exact;
  color: #e8f6fa !important;
  -webkit-print-color-adjust: exact;
  height: auto;
  text-align: center;
  justify-content: center;
  align-content: center;
  margin: 10px;
}


.containerFlexSCitem {
  margin-left: 10px;
  margin-right: 10px;
  /* padding-bottom: 10px; */
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: space-around;
  align-content: center
}

.containerFlexSC {
  margin-left: 10px;
  margin-right: 10px;
  /* padding-bottom: 10px; */
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: center;
  align-content: center
}

.rowFlexLayoutSC {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: auto;
  border-radius: 5px;
  width: 100%;
  -webkit-print-color-adjust: exact;
  color: #e8f6fa !important;
  -webkit-print-color-adjust: exact;
  height: auto;
  padding: 10px;
  text-align: center;
  justify-content: center;
  align-content: center;
}

.VertAlignerIconsSC {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: auto;
  width: 300px;
  max-width: 300px;
  background: #3d91ab !important;
  -webkit-print-color-adjust: exact;
  margin: 0px;
  margin-top: 0px;
  margin-bottom: 0px;
  color: #e8f6fa !important;
  -webkit-print-color-adjust: exact;
  height: auto;

  /* border-radius: 5px; */
  border-top-right-radius: 0px;
  border-top-left-radius: 0px;
}

.VertAlignerTitleSC {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: auto;
  border-radius: 0px;
  width: 300px;
  font-size: 1.1em;
  max-width: 300px;
  text-align: center;
  background: #242849 !important;
  -webkit-print-color-adjust: exact;
  margin: 0px;
  margin-top: 0px;
  margin-bottom: 0px;
  color: #e8f6fa !important;
  -webkit-print-color-adjust: exact;
  padding-right: 10px;
  height: auto;
  position: relative;
  padding-left: 10px;
  min-height: 100px;
}

.DescriptionSC {
  font-size: 24px;
}

.small-box .icon {
  position: absolute;
  top: auto;
  top: 5px;
  right: 15px;
  z-index: 0;
  font-size: 50px;
  color: rgba(0, 0, 0, .15);
}

.clr-picker {
  /* Colority colour picker */
  z-index: 9999 !important;
}

.SC-colour {
  background: #242849 !important;
  color: #FFFFFF !important;

}

.SCL1-colour {
  /* A3BAC3 */
  background: #242849 !important;
  color: #FFFFFF !important;
}

.SCL1-colour-opacity {
  /* e1e8ec */
  background: #3d91ab !important;
  color: #000000 !important;
}

.SCL2-colour {
  background: #EAEBED !important;
  color: #000000 !important;
}

.SCL2-colour-opacity {
  background: #cfd1d7;
  color: #000000 !important;
}

.SCL2Argument-colour {
  background: #b7d0e5 !important;
  color: #000000 !important;
}

.RowL1 {
  border-radius: 5px;
  font-size: 2.4em;
  background: #242849;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
  margin: 10px;
  padding: 10px;
  color: #e8f6fa !important;
  line-height: 1em;
}

.RowL1Sm {
  font-size: .6em;
  line-height: 1em;
  padding-top: 1em;
  font-style: italic;
}

.RowL2 {
  border-radius: 5px;
  font-size: 1.2em;
  background: #242849;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
  margin: 10px;
  padding: 10px;
  color: #e8f6fa !important;
  line-height: 1em;
}

.RowL2.rowFlexLayout {
  font-style: italic;
}


.RowL3 {
  border-radius: 5px;
  font-size: 1.6em;
  background: #242849;
  /* #  A3BAC3 */

  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
  margin: 10px;
  padding: 10px;
  color: #FFFFFF !important;
  line-height: 1em;
}

.RowL3 small {
  font-style: italic;
}

.RowL4 {
  border-radius: 5px;
  font-size: 1.2em;
  background: #EAEBED;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
  padding: 10px;
  color: #000000 !important;
  line-height: 1em;
}

.containerFlexTLC2 {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: center;
  align-content: center
}

.itemIconPair {
  flex-basis: auto;
  border-radius: 5px;
  /* width:40px; */
  -webkit-print-color-adjust: exact;
  margin: 10px;
  color: #e8f6fa !important;
  -webkit-print-color-adjust: exact;
  min-height: 10px;
  height: auto;
  text-align: center;
}

.itemIconPairLinear {
  padding: 4px;
}

.LeftIconText {
  float: left;
  padding-right: 10px;
}


.SCTitle {
  text-align: center;
  font-size: 20px;
  padding: 10px;
  padding-top: 0px;
}

.iconDivEA {
  width: 20px;
  float: left;
  height: 20px;
  display: flex;
  justify-content: center;
  border-style: solid;
  margin: auto;
  flex-direction: column;
  align-content: center;
  border-width: 1px;
  border-color: #242849;
  border-right-width: 0;
}

.iconDivAA {
  width: 20px;
  float: left;
  height: 20px;
  display: flex;
  justify-content: center;
  border-style: solid;
  margin: auto;
  flex-direction: column;
  align-content: center;
  border-width: 1px;
  border-color: #242849;
  /* border-left-width: 0.5px; */
}

.iconDivEAVert {
  width: 20px;
  float: left;
  height: 20px;
  border-style: solid;
  border-width: 1px;
  border-color: #242849;
}

.iconDivAAVert {
  width: 20px;
  float: left;
  height: 20px;
  border-style: solid;
  border-width: 1px;
  border-color: #242849;
}

.Aligner {
  display: flex;
  align-items: center;
  min-height: 24em;
  justify-content: center;
}

.vertAlignerIcons {
  /* background: #3d91ab; */
  color: #000000 !important;
  padding: 0px;
  border-bottom-right-radius: 5px !important;
  border-bottom-left-radius: 5px !important;
}

.VertAligner {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: space-between;
  align-content: center;
  /* box-shadow: 5px 5px 5px 5px #888888; */
  -webkit-box-shadow: -3px 3px 15px 5px #ccccccbc;
  -moz-box-shadow: -3px 3px 15px 5px #ccccccbc;
  box-shadow: -3px 3px 15px 5px #ccccccbc;
  /* box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px; */
  border-top-right-radius: 5px !important;
  border-top-left-radius: 5px !important;
  border-bottom-right-radius: 5px !important;
  border-bottom-left-radius: 5px !important;
}

.VertAlignerShadowless {
  -webkit-box-shadow: none !important;
  -moz-box-shadow: none !important;
  box-shadow: none !important;
}

.VertAlignerCode {
  -webkit-print-color-adjust: exact;
  margin-bottom: 0px;
  -webkit-print-color-adjust: exact;
  height: auto;
  border-radius: 5px;
  border-bottom-right-radius: 0px;
  border-bottom-left-radius: 0px;
  margin-top: 0px;
  background: #e3c9af !important;
  color: black !important;

}

.VertAlignerTitle {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: auto;
  border-radius: 0px;
  width: 200px;
  /* font-size: 1.1em; */
  max-width: 200px;
  text-align: center;
  background: #242849;
  -webkit-print-color-adjust: exact;
  margin: 0px;
  margin-top: 0px;
  margin-bottom: 0px;
  color: #e8f6fa;
  -webkit-print-color-adjust: exact;
  padding-right: 10px;
  padding-top: 2px;
  height: auto;
  position: relative;
  padding-left: 10px;
  min-height: 100px;


  display: flex;
  /*  justify-content: flex-end; */
  flex-direction: column;
}

.RespPersBox {
  /* position: absolute; */
  bottom: 0;
  font-size: .85em;
  margin: 0 auto;
  width: 100%;
  /* margin-left: -10px; */
  padding-left: 5px;
  padding-right: 5px;
}

.dashboard-box1 {
  background: #86d1dd !important;
}

.dashboard-box2 {
  background: #f495db !important;
}

.dashboard-box3 {
  background: #7ac1ff !important;
}

.dashboard-box4 {
  background: #d298ed !important;
}

.dashboard-box {
  color: #505050;
}

.small-box>.small-box-footer {
  color: #3a3a3a;
}

.dashboard-box1 {
  background: #86d1dd !important;
}

.dashboard-box2 {
  background: #f495db !important;
}

.dashboard-box3 {
  background: #7ac1ff !important;
}

.dashboard-box4 {
  background: #d298ed !important;
}

.dashboard-box {
  color: #505050;
}

.small-box>.small-box-footer {
  color: #3a3a3a;
}

.PDPRow {
  border-style: ridge;
}


.VertAlignerIcons {
  flex-grow: 1;
  flex-shrink: 0;
  flex-basis: auto;
  width: 200px;
  max-width: 200px;

  background: #3d91ab;
  -webkit-print-color-adjust: exact;
  margin: 0px;
  margin-top: 0px;
  margin-bottom: 0px;
  color: #e8f6fa !important;
  -webkit-print-color-adjust: exact;
  height: auto;
  /* border-radius: 5px; */
  border-top-right-radius: 0px;
  border-top-left-radius: 0px;

}

.card-header-bold .card-header .card-title {
  font-weight: bold !important;
}

.card-header-bold .card-body {
  padding: 1rem;
}

.card-header.SafetyCaseDisplay {
  padding: 0;
}

/* SCL2Form */

.SCL2form.card {
  box-shadow: none;
}

.AccountablePerson {
  font-size: 15px;
}

.nopad {
  margin: 0px;
}


.alignRightNumber {
  text-align: right;
}

.SCL2form.row {
  /* padding: 10px;
  margin: 10px; */
}

.SCL2Section {
  /* box-shadow: 0px 0px 5px 0px #888888;
  border-radius: 1.1rem; */
  padding: 0.2rem;
}

.SCL2FormSectionHeader {
  font-size: 1.2em;
  /* padding-top: 10px; */
  /* padding-bottom: 10px; */
}


span.SCL2FormSectionHeaderTools {
  font-size: small;
}

.childSubClaimBox {
  padding: 0px;
  background: #95c4e8;
  font-size: 18px;
  border-style: solid;
  border-color: cornflowerblue;
}

.childSubClaimBox>.card-header {
  padding: 10px;
}

.OwnerLine {
  font-size: .8em;
  border-bottom: none;
  font-size: 15px
}

.SCL2ClaimText {
  font-size: 16px;
}

.select2Wide {
  width: 100%;
  max-width: 400px;
}

.select2rowHeight {
  height: calc(2.25rem + 2px);
}

.ContextAdd {
  border-radius: 0px !important;
}

.contextPair {
  border-style: solid;
  border-width: thin;
  border-radius: 10px;
  padding: 10px;
  margin: 5px;
  background-color: aliceblue;
  border-color: #152be229;
}

.contextPairEcoEvidence {
  border-style: solid;
  border-width: thin;
  border-radius: 10px;
  padding: 10px;
  margin: 5px;
  background-color: antiquewhite;
  border-color: #152be229;
}

.contextPairArg {
  border-style: solid;
  border-width: thin;
  padding: 10px;
  margin-top: 5px;
  background-color: ghostwhite;
  border-radius: 10px;
  border-color: #f39c12;
}

.opacityHidden {
  opacity: 0;
}

.opacityMedium {
  opacity: 0.65;
}

.opacityLow {
  opacity: 0.3;
}

.box.box-solid.SCL2form {
  padding: 10px;
  border-style: solid;
  border-width: thin;
  background-color: #E8F6FA;
}

.ContextEntry * a {
  color: blue !important;
}

.ContextEntry>.col-sm-12>p {
  margin-bottom: 0;
}

.ContextEntry * a:hover {
  color: blue !important;
  text-decoration: underline;
}

span.ContextTitle {
  font-size: 0.8em;
  background-color: #ffffff;
  box-shadow: 0 0 2px 0px #888888;
  border-radius: 4px;
  padding-left: 5px;
  padding-right: 5px;
  padding-top: 2px;
  padding-bottom: 2px;
  margin-left: -4px;
}

span.EvidenceLinked {
  border-color: #ddd;
  padding-left: 5px;
  padding-right: 5px;
  margin-right: 5px;
  border-style: solid;
  border-width: thin;
  margin-left: -4px;
  border-radius: 2.4px;
  background-color: #3680be;
  color: whitesmoke;

}

.linkedEvWarningContent {
  margin: 10px;
  background-color: aquamarine;
  padding: 5px;
  border-radius: 10px;
}

span.EvidenceValidity {
  border-color: #ddd;
  padding-left: 5px;
  padding-right: 5px;
  margin-right: 5px;
  border-style: solid;
  border-width: thin;
  margin-left: -4px;
  border-radius: 2.4px;
}

span.OrgEvidenceValidity {
  border-color: #ddd;
  padding-right: 0px;
  border-style: solid;
  border-width: thin;
  padding: 0 0.3rem 0 0.3rem;
}

span.EvidenceValidTo {
  background-color: #c9fdd5;
}

span.EvidenceAmber {
  background-color: #ffce3c;
  color: #5050bc;
}

span.EvidenceNotValid {
  background-color: #ff4e4e;
  color: whitesmoke;
}

.evidenceSearchResults {
  height: 15em;
  overflow: auto;
}

.mainSearchResults {
  top: 0;
  right: 0;
  opacity: 90%;
  overflow: hidden;
  overflow-y: scroll
}

div#searchResults {
  top: 57px;
}

.searchResult {
  border-style: double;
  background: aliceblue;
  border-radius: 10px;
  margin: 1rem;
  padding: 1rem;
}

.editThing {
  position: relative;
  font-size: .85em;
  color: #7d7dbb !important;
  z-index: 1000;
  float: right;
}

.DPelsewhere {
  background-color: #f7fcfd;
}

.argumentScoreHandle {
  display: flex;
  font-size: 0.75em;
  flex-direction: row;
  align-content: center;
  justify-content: center;
  align-items: center;
  background-color: chartreuse !important;
  height: unset !important;
}

.argumentScoreDisplay {

  background-color: chartreuse;
  padding: 3px;
  border-radius: 0.4em;
}

.evValidity {
  position: relative;
  font-size: .85em;
  color: #7d7dbb !important;
  z-index: 1000;
  float: right;
}

.modal-body [contenteditable=true] {
  border-style: inset;
  border-style: inset;
  min-height: 100px;
  border-radius: 0.4rem;
  border-radius: 0.4rem;
}

.commentNotificationTick {
  font-size: 12px;
}

.replyCount {
  font-weight: 400;
  color: #78838e;
}

.comment.wysiwyg>[contenteditable=true]:hover,
.comment.wysiwyg>[contenteditable=true]:focus {
  background-color: #fbfbfb;
}

.comment.wysiwyg>[contenteditable=true][data-placeholder]:empty {
  opacity: 0;
}

.comment.wysiwyg>[contenteditable=true][data-placeholder]:hover,
.comment.wysiwyg>[contenteditable=true][data-placeholder]:focus {
  opacity: 1;
}

.toolbar-top {
  background-color: #cccccc;
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}

.uploadFileGrp {
  margin-bottom: 0.3rem;
  max-height: 2.5rem;
}

.imgPreview {
  max-height: 2.3rem;
}

.filePreview {
  font-size: 1.5em;
}

.imgGalleryItem {
  width: 5rem;
  height: 5rem;
  margin: 0.5rem 0 0 0.5rem;
  margin: 0.5rem 0 0 0.5rem;
  object-fit: cover;
  box-shadow: 0px 0px 5px 0px #888888;
  border-style: solid;
  border-bottom-width: thin;
  border-color: #59606c;
}

a.imgViewerLink {
  display: revert;
}

img.maximisedImage {
  max-width: 100%;
}

/* SCL2FormEND */
.ui-sortable-helper {
  display: table;
}


.ui-draggable-handle {
  cursor: grab;
}

.colorpicker.colorpicker-2x {
  width: 272px;
}

.colorpicker-2x .colorpicker-saturation {
  width: 200px;
  height: 200px;
}

.colorpicker-2x .colorpicker-hue,
.colorpicker-2x .colorpicker-alpha {
  width: 30px;
  height: 200px;
}

.colorpicker-2x .colorpicker-alpha,
.colorpicker-2x .colorpicker-preview {
  background-size: 20px 20px;
  background-position: 0 0, 10px 10px;
}

.colorpicker-2x .colorpicker-preview,
.colorpicker-2x .colorpicker-preview div {
  height: 30px;
  font-size: 16px;
  line-height: 160%;
}

.colorpicker-saturation .colorpicker-guide {
  height: 10px;
  width: 10px;
  border-radius: 10px;
  margin: -5px 0 0 -5px;
}

.popover-content {
  color: black;
  font-size: 0.9em;
}

.popover-title {
  color: black;
}

.table-hover tbody tr:hover td,
.table-hover tbody tr:hover th {
  background-color: #fff0e0;
}

.table-hover tbody tr td,
.table-hover tbody tr th {
  vertical-align: middle;
}

div#NextMilestone {
  position: absolute;
  font-size: 0.4em;
  right: 40px;
}

div#NextMilestoneSCL2 {
  position: absolute;
  font-size: 0.8em;
  right: 40px;

}

input#DateComplete {
  margin-left: 0px;
}

.popover {
  max-width: 100%;
}

div#pgtime {
  position: absolute;
  bottom: 5px;
  left: 5px;
  color: #9a9a9a;
  font-family: monospace;
  font-size: 0.8em;
}

div#asUser {
  color: #f0f8ff;
  font-size: .9em;
  text-align: center;
}

.table-bordered>tbody>tr>td.ResponsibleEntity {
  border-style: solid;
  border-width: medium;
  border-color: #ffb203;
}

/* TIMELINE */

.timeline>div>.fa {
  box-shadow: 0 1px 1px rgb(0 0 0 / 20%);
  width: 30px;
  height: 30px;
  font-size: 15px;
  line-height: 30px;
  position: absolute;
  color: #666;
  /* background: rgb(173, 173, 173); */
  border-radius: 50%;
  text-align: center;
  /* left: 8px; */
  top: 0;
}

.timeline>div>.fa {
  color: white;
}

.timeline>.time-label>span {
  border-radius: 4px;
  background-color: #ababab;
  color: white;
  display: inline-block;
  font-weight: 600;
  padding: 5px;
}

.timeline>div>.fa.loggingItemIcon {
  background-color: #ababab;
}

.timeline>div>.fa.fileItemIcon {
  background-color: aqua;

}

.timeline>div>.fa.commentItemIcon {
  background-color: #242849;
}

#comments .userInitials {
  height: 2.5rem;
  width: 2.5em;
  float: left;
  background-color: gray;
  border-radius: 50%;
  color: aliceblue;
  display: flex;
  justify-content: center;
  align-items: center;
}

#comments .userInitialsSm {
  height: 2rem;
  width: 2rem;
}

.card-comment:last-of-type {
  border-bottom: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}

.card-footer.card-comments+.card-footer-comment-reply {
  margin-top: 0;
  padding-top: 0;
}

.card-comment {
  border-bottom: 1px solid #e9ecef;
  padding: 8px 0;
}

.user-block .username {
  color: #495057;
}

.userInitialsSm+.reply-push {
  margin-left: 2.5rem;
}

.timeline-body {
  font-weight: 300;
}

.timeline-body .highlight {
  font-weight: 500;
}


/* END TIMELINE */

.nav-pills .nav-link {
  border-radius: 0px;
}

/* SIDEBAR (MENU) */
.sidebar-menu-selected {
  background: color #e0862b;
  color: #fff;
}

.sidebar-dark-primary .nav-sidebar>.nav-item>.nav-link.active,
.sidebar-light-primary .nav-sidebar>.nav-item>.nav-link.active {
  background-color: #e0852b33;
  color: #fff;
}

[class*=sidebar-dark-] .nav-treeview>.nav-item>.nav-link.active,
[class*=sidebar-dark-] .nav-treeview>.nav-item>.nav-link.active:focus,
[class*=sidebar-dark-] .nav-treeview>.nav-item>.nav-link.active:hover {
  background-color: #e0852b;
  color: #fff;
}

.sidebar-mini .main-sidebar .nav-link,
.sidebar-mini-md .main-sidebar .nav-link,
.sidebar-mini-xs .main-sidebar .nav-link {
  width: 100%;
}

.sidebar-collapse.sidebar-mini .main-sidebar .nav-sidebar .nav-link,
.sidebar-collapse.sidebar-mini-md .main-sidebar .nav-sidebar .nav-link,
.sidebar-collapse.sidebar-mini-xs .main-sidebar .nav-sidebar .nav-link {
  width: 100%;
}

li.nav-item.has-treeview.menu-open {
  background-color: #e0852b33;
}

aside.main-sidebar {
  background-color: #242849;
}

.sidebar {
  padding-left: 0;
  padding-right: 0;
}

/* SIDEBAR (MENU) END */


.error-page>.error-content {
  display: block;
  margin-left: 190px;
  padding-top: 25px;
}

.content-header .breadcrumb {
  font-size: 0.8em;
}

.breadcrumb a {
  color: #63819e;
}

.breadcrumb a:hover {
  color: #275f94;
}

.popover {
  white-space: pre-wrap;
}

/* FOOTER */

.main-footer {
  /* display: flex; */
  /* justify-content: space-between; */
  /* align-items: center; */
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  text-align: center;
  padding: 0.5em 1em 0.5em 1em;
  overflow: hidden;
  z-index: 1000;
}

/* Add bottom margin to content when footer is present */
.content-wrapper:has(~ .main-footer) .content,
body:has(.main-footer) .content-wrapper .content {
  margin-bottom: 6rem;
}

/* Ensure footer content respects sidebar layout */
@media (min-width: 768px) {
  body:not(.sidebar-mini-md):not(.sidebar-mini-xs):not(.layout-top-nav):not(.sidebar-collapse) .main-footer {
    margin-left: 250px;
    width: calc(100% - 250px);
  }

  /* Collapsed sidebar with mini variants still need margin */
  body.sidebar-collapse .main-footer,
  body.sidebar-collapse .main-footer {
    margin-left: 4.6rem;
    width: calc(100% - 4.6rem);
  }

  /* Fully collapsed sidebar (no mini variants) */
  body.sidebar-collapse:not(.sidebar-mini):not(.sidebar-mini-md):not(.sidebar-mini-xs) .main-footer {
    margin-left: 0;
    width: 100%;
  }
}

/* Prevent footer content from overflowing */
.main-footer .row {
  max-width: 100%;
}

.main-footer .btn-group {
  flex-wrap: wrap;
  max-width: 100%;
}

.main-footer .btn-group .btn {
  white-space: nowrap;
  font-size: 0.875rem;
}

/* FLYTER */

div.flyter-inline>div.flyter-inline-content>div>div>div.mr-2 {
  width: 100%;
}

/* TEMPLATES */

.heading a {
  color: black;
}

#template>.TLC {
  display: flex;
  flex-direction: column;
  padding: 10px;
  background-color: #242849;
  color: aliceblue;
  box-shadow: 0px 0px 10px 1px #888;
}

#template>.TLC>.heading {
  font-size: 1.2em;
  padding-bottom: 10px;
}

#template>.TLC>.SCL1 {
  display: flex;
  flex-direction: column;
  padding: 10px;
  padding-bottom: 1px;
  background-color: #3c91ab;
  color: #f0f8ff;
}

#template>.TLC>.SCL1:not(:last-of-type) {
  margin-bottom: 10px;
}

#template>.TLC>.SCL1>.heading {
  font-size: 1.1em;
  padding-bottom: 10px;
}

#template>.TLC>.SCL1>.SCL2 {
  display: flex;
  flex-direction: column;
  padding: 10px;
  background-color: #e8f6fa;
  color: #000;
}

#template>.TLC>.SCL1>.SCL2>.heading {
  font-size: 1.05em;
}

#template>.TLC>.SCL1>.SCL2:not(:last-of-type) {
  border-bottom-width: thin;
  border-bottom-style: solid;
}

#template>.TLC>.SCL1>.SCL2:last-of-type {
  margin-bottom: 10px;
}






#template>.TLC>.SCL1>.SCL2>.SCL2PDP {
  display: flex;
  flex-direction: column;
  padding: 10px;
  background-color: #ffffff;
  color: #000;
}

#template>.TLC>.SCL1>.SCL2>.SCL2PDP>.heading {
  font-size: 1.05em;
}

#template>.TLC>.SCL1>.SCL2>.SCL2PDP:not(:last-of-type) {
  border-bottom-width: thin;
  border-bottom-style: solid;
}

#template>.TLC>.SCL1>.SCL2>.SCL2PDP:last-of-type {
  margin-bottom: 10px;
}


.control-sidebar-dark {
  margin-right: 0;

}

.editable {
  text-decoration: underline;
  text-decoration-color: blue;
  text-decoration-style: double;
}

.templateButton {
  display: flex;
  float: right;
}

/* NxM Report */
@page {
  size: auto;
}

.NxMscl1 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

.NxMtable a {
  color: black;
}

.NxMtable .NxMColHeading {
  vertical-align: middle;
  text-align: center;
}

.NxMtable .NxMtrHeading {
  /* 		display: flex; */
  padding: 0;
  /*     width: 100%; */
  height: 100%;
  /* 		justify-content: center; */
  vertical-align: middle;
  padding: 10px;
  text-align: center;
}

.NxMtable .NxMtr {
  height: 100px;
}

.NxMtable .NxMtd {
  padding: 0;
}

.NxMtable .NxMtdcontainer {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 0.2em;
}

.NxMtable .NxMSCL2Pair {
  display: flex;
  flex-direction: row;
  margin-bottom: -1px;
  font-size: 0.8rem;
  text-align: center;
}

.NxMtable .NxMSCL2Pair .block {
  width: 100%;
  display: flex;
  border: 1px solid #444;
}

.NxMtable .NxMSCL2Pair .reference {
  width: 20%;
  text-align: center;
}

.NxMtable .NxMSCL2EA {
  width: 50%;
  justify-content: center;
  display: flex;
  border-right: 1px solid #444;
}

.NxMtable .NxMSCL2AA {
  width: 50%;
  justify-content: center;
  display: flex;
}

.tableCol20pc {
  width: 20%;
}

.respHeading {
  font-size: 1.2em;
}

pre.sf-dump,
pre.sf-dump .sf-dump-default {
  z-index: 10 !important;
}

.resp-col {
  min-height: 50px;
  border-style: dashed;
  vertical-align: middle;
  box-sizing: border-box;

}

.resp-col.resp {
  background-color: #bdeb34;
  border-style: solid;
  box-sizing: border-box;

}

.resp-org-div {
  background-color: #e8f6fa;
  border-radius: 15px;
  padding: 15px;
  margin-bottom: 30px;
}

.resp-count.badge.badge-info.pull-right {
  position: relative;
  float: right;
  margin-top: 5px;
}

.resp-count.badge.badge-info.pull-right>a {
  color: #242849;
}

.CATDIV,
.CATDIV>a {
  background-color: #9acd3259;
  color: #1f2d3dc4;
  border-radius: 10px;
}

.CATDIV>a>h3 {
  padding-top: 15px;
  padding-bottom: 15px;
}

.CATDIV>.containerFlex {
  min-height: 100px;
}

.height100pc {
  height: 100%;
}

.height900px {
  height: 900px;
}

.height192px {
  height: 192px;
}

.errorPageBackround {
  background-color: #242849;
}

.login-page {
  background-color: #242849;
}

.dropdown-menu-lg {
  max-width: 500px;
}

@keyframes flashBorder {

  0%,
  100% {
    border-color: gold;
    -webkit-box-shadow: 0 0 14px 10px gold;
    -moz-box-shadow: 0 0 14px 10px gold;
    box-shadow: 0 0 14px 10px gold;
  }

  50% {
    border-color: transparent;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
  }
}


@keyframes flashBorder {

  0%,
  100% {
    border-color: gold;
    -webkit-box-shadow: 0 0 14px 10px gold;
    -moz-box-shadow: 0 0 14px 10px gold;
    box-shadow: 0 0 14px 10px gold;
  }

  50% {
    border-color: transparent;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
  }
}


.notificationAttention {
  animation: flashBorder 2s infinite;
  animation: flashBorder 2s infinite;
  position: relative;
}

.maxVh {
  height: 100vh;
}

.maxVw {
  width: 100vw;
}

.menu a {
  color: #6b6b6b;
}

.menu a:hover {
  transition: 0.3s linear;
  -webkit-transition: 0.3s linear;
  -moz-transition: 0.3s linear;
  -ms-transition: 0.3s linear;
  -o-transition: 0.3s linear;
  color: #3e3f8b;
}

/* Start Bow Tie */
.menu a#BTContextDelete:hover {
  transition: 0.3s linear;
  -webkit-transition: 0.3s linear;
  -moz-transition: 0.3s linear;
  -ms-transition: 0.3s linear;
  -o-transition: 0.3s linear;
  color: #cf2717;
}

#contextMenu>ul>li:not(:last-child) {
  margin-bottom: 0.5rem;
}

.contextMenuHover:hover {
  background-color: #cfcfb982;
}

#menu {
  display: none;
  position: fixed;
  background-color: white;
  border-radius: 3px;
  z-index: 10000;
  width: max-content;
  flex-direction: column;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 3px 4px 7px 0px rgb(0 0 0 / 50%);
  padding: 0.5rem 0.4rem 0rem 0rem;
}


ul.menu {
  list-style: none;
  padding-left: 0.7rem;
  padding-right: 0.3rem;
  margin-bottom: 0.6rem;
}

#btCardContainer>div#btCard.card {
  background-color: #696d84;
  color: #ddd;
}

#btCard .card-title {
  margin-top: 0.6em;
}


.btMenu a {
  color: #6b6b6b;
}

.btMenu a:hover {
  transition: 0.3s linear;
  -webkit-transition: 0.3s linear;
  -moz-transition: 0.3s linear;
  -ms-transition: 0.3s linear;
  -o-transition: 0.3s linear;
  color: #3e3f8b;
}

.btMenu a#BTContextDelete:hover {
  transition: 0.3s linear;
  -webkit-transition: 0.3s linear;
  -moz-transition: 0.3s linear;
  -ms-transition: 0.3s linear;
  -o-transition: 0.3s linear;
  color: #cf2717;
}

#contextbtMenu>ul>li:not(:last-child) {
  padding-bottom: 0.5rem;
}

#btMenu {
  user-select: none;
  display: none;
  position: fixed;
  background-color: white;
  border-radius: 3px;
  z-index: 1050;
  width: max-content;
  flex-direction: column;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 3px 4px 7px 0px rgb(0 0 0 / 50%);
  padding: 0.5rem 0.4rem 0rem 0rem;
}


ul.btMenu {
  list-style: none;
  padding-left: 0.7rem;
  padding-right: 0.3rem;
  margin-bottom: 0.6rem;
}

#CustomModalContent .select2-container--default .select2-selection--multiple .select2-selection__choice {
  background-color: lightgray;
  border-color: #006fe6;
  color: #fff;
  padding: 0 10px;
  margin-top: 0.31rem;
}

.btInfoBoxPreview {
  background-color: lightgray;
  border-color: #006fe6;
  color: #fff;
  padding: 4px 10px;
  margin-top: 0.31rem;
  border-radius: 0.3rem;
}

.btInfoBoxPreview>.styleApply {
  border-radius: 0.5rem;
  padding: 0rem 0.5rem;
}

#btCard .dropdown .form-check-input {
  margin-left: 0;
}

#btCard .dropdown .form-check-label {
  margin-left: 1.5rem;
}

#btCardContainer .card-header {
  padding: 0.7rem 0.5rem 0.5rem 0.7rem;
}

.bg-kbi {
  background-color: #e7ddcd !important;
}

.bg-btMetaTypes {
  background-color: #dde7cdbb !important;
}

/* End Bow Tie */


.revertLabelStyle {
  font-weight: revert !important;
  color: revert !important;
  margin-bottom: revert !important;
}

.connectionSearchResult {
  background-color: aqua;
  border-radius: 10px;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-right: 25px;
  padding-left: 25px;
  margin-top: 5px;
  margin-bottom: 5px;
}

.connectionExistingRow {
  background-color: aquamarine;
  padding: 0.3rem;
  border-radius: 0.5rem;
  margin-bottom: 0.5rem;
}


.scl2PendingConnectionsList .connectionSearchResult,
.pendingConnectionsList .connectionSearchResult {
  background-color: #baebba !important;
}

.connectionExistingRow.highlight,
.connectionSearchResult.highlight {
  background-color: greenyellow;
}

.connectionExistingRow.kbiEntity,
.connectionSearchResult.kbiEntity {
  background-color: #e7ddcd;
}

.connectionExistingRow.bowtieSearchResult,
.connectionSearchResult.bowtieSearchResult {
  background-color: #ffdede;
}

.connectionExistingRow.documentSearchResult,
.connectionSearchResult.documentSearchResult {
  background-color: rgb(244, 246, 196);
}



.connectableRow.active {
  box-shadow: 0 0 14px 5px #ffe700 !important;
  border-radius: inherit;
}

#RelatedEntitiesChart {
  min-height: 70vh;
  min-width: 100%;
}

.strikethru {
  text-decoration: line-through;
}

.connectItemOption {
  border-radius: inherit;
  box-shadow: inset 0px 0px 10px 12px #e7ff7b;
}

.connectItemHover {
  border-radius: inherit;
  box-shadow: inset 0px 0px 10px 12px #7bff8d;
}

.supportedArg {
  font-size: .9em;
  color: green;
}

.unsupportedArg {
  font-size: .9em;
  color: #b71b1b;
}

.supportingEvidenceEntity {
  border-style: solid;
  padding: 5px;
  background-color: ghostwhite;
  margin-top: 5px;
  border-width: thin;
  min-height: 65px;
}

.supportingEvidenceEntity>p:last-child {
  margin-bottom: 1px;
}


.modal.fade {
  background: rgba(0, 0, 0, 0.5);
}

.modal-backdrop.fade {
  opacity: 0;
}

.modal-fs {
  max-width: 95%;
  /* margin: 0; */
  width: 95vw;
  height: 95vh;
}

.modal-fs .modal-content {
  height: 95%;
  /* border-radius: 0; */
  border: none;
}

#ImageViewerModal,
#FileViewerModal {
  z-index: 1100;
}

/* SWEET ALERT DIALOGUE BOX ORDERING */
.swal2-confirm {
  order: 2;
}

.swal2-cancel {
  order: 1;
}

.swal2-popup.swal2-toast .swal2-html-container {
  margin: 0;
}

.swal2-popup.swal2-toast.toaster {
  padding: 20px;
}

.swal2-popup.swal2-toast.toaster .swal2-title {
  margin: .5em 1em;
  font-size: 1rem;
}


.youtube-iframe {
  aspect-ratio: 16 / 9;
  width: 100%;
}

.commentReplyDiv {
  background-color: #ffffff;
  border-radius: 3px;
  border-color: black;
  border-width: 10px;
}

.wysiwyg:not(:focus-within):not(.focus):not(.focused)>[contenteditable="true"]:not(:focus)~.toolbar-auto:after {
  height: 0;
  max-height: 1rem;
  transition: height 0.2s;
  transition-delay: 0.1s;
}

.wysiwyg:not(:focus-within):not(.focus):not(.focused)>[contenteditable="true"]:not(:focus)~.toolbar-auto>.toolbar {
  max-height: 0;
  margin-bottom: -2000px;
  border-top-width: 0;
  transition: margin-bottom 0.2s cubic-bezier(1, 0, 1, 1), max-height 0s 0.2s, border-top-width 0.2s;
  transition-delay: 0.1s;
}


/* DOCUMENTATION */

#office_frame {
  width: 100%;
  height: calc(100dvh - 200px);
  border: none;
  margin-left: .8em;
  margin-right: .8em;
  border-radius: 0;
  transition: 0.5s;
}

#bt_frame {
  width: 100%;
  height: calc(100dvh - 200px);
  border: none;
  margin-left: .8em;
  margin-right: .8em;
  border-radius: 0;
  transition: 0.5s;
}

.overlay {
  height: 0%;
  width: 100%;
  position: relative;
  z-index: 1;
  top: 0;
  left: 0;
  background-color: #242849aa;
  overflow-y: hidden;
  transition: 0.5s;
  border-radius: 0.3em;
  margin-bottom: 1em;
}

/* .overlay-content {
  position: relative;
  width: 100%;
  text-align: center;
}
 */
.overlay a {
  padding: 8px;
  text-decoration: none;
  font-size: 36px;
  color: #fff;
  display: block;
  transition: 0.3s;
}

.overlay a:hover,
.overlay a:focus {
  color: #f1f1f1;
}

.overlay .OverlayTools {
  font-size: 25px;
}

@media screen and (max-height: 450px) {
  .overlay {
    overflow-y: auto;
  }

  .overlay a {
    font-size: 20px
  }

  .overlay .closebtn {
    font-size: 40px;
    top: 15px;
    right: 35px;
  }
}

:root {
  --prependDocumentationColour: #adbfe1;
  --appendDocumentationColour: #bcedbe;
  --notTemplateControlled: #959595;

  --ms-excel-colour: #147641;
  --ms-word-colour: #174594;
  --ms-powerpoint-colour: #c84a27;
}

.documentationIndex {
  background-color: var(--prependDocumentationColour);
  background-size: 1rem 1rem;
  height: 100%;
  border-radius: 0.8rem;
  min-height: 5rem;
  display: flex;
  width: 100%;
  flex-wrap: wrap;
  align-content: center;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
}

.documentationIndex.append {
  background-color: var(--appendDocumentationColour);
}

.documentationIndex.notTemplateControlled {
  background-color: var(--notTemplateControlled);
  min-height: 8rem;
}

.DocumentRow:first-child {
  margin-top: .5rem;
}

.DocumentRow:last-child {
  margin-bottom: .5rem;
}

.DocumentRow {
  display: flex;
  background-color: #e9e9e9;
  color: #0c0a0a;
  border-radius: 0.5rem;
  justify-content: space-between;
  flex-shrink: 0;
  width: 100%;
  margin: .25rem;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
}

.DocumentRow form {
  display: none;
}

.DocumentRow.notTemplateControlledRow {
  background-color: #fbf5e8;
}

.ComponentisedDocumentRow:first-child {
  margin-top: .5rem;
}

.ComponentisedDocumentRow:last-child {
  margin-bottom: .5rem;
}

.ComponentisedDocumentRow {
  display: flex;
  background-color: #e9e9e9;
  color: #0c0a0a;
  border-radius: 0.5rem;
  justify-content: space-between;
  flex-shrink: 0;
  width: 100%;
  margin: .25rem;
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: center;
}

.ComponentisedDocumentRow form {
  display: none;
}

.ComponentisedDocumentRow.notTemplateControlledRow {
  background-color: #fbf5e8;
}

.ComponentisedDocumentSeparator {
  border: 0;
  border-top: 2px solid #ccc;
  /* the line itself */
  margin: -0.5rem 0 0.75rem;
  /* space above/below */
  width: 100%;
  /* full width within the row */
}

/* Make only THIS modal wider */
#ComponentisedDocumentEditModal .modal-dialog {
  max-width: 95vw;
}

/* Optional: give it more height too */
#ComponentisedDocumentEditModal .modal-content {
  height: 95vh;
}


/* Modal body as scroll container, no top padding so header sits tight */
#ComponentisedDocumentEditModal .modal-body {
  position: relative;
  padding-top: 0;
  overflow-x: hidden;
  /* prevent horizontal scrollbar in the modal */
}

/* Sticky header row */
#ComponentisedDocumentEditModal .ComponentisedDocumentHeader {
  position: sticky;
  top: 0;
  z-index: 20;
  background: white;
  margin-top: 0 !important;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #ddd;
}

/* Sidebar column: normal grid column */
#ComponentisedDocumentEditModal .ComponentisedDocumentSidebar {
  margin-top: 0 !important;
}

/* Sidebar inner: sticky, but no internal scrolling, no clipping */
#ComponentisedDocumentEditModal .ComponentisedDocumentSidebarInner {
  position: sticky;
  top: 2.75rem;
  /* sit just under the sticky header; tweak 2.5–3rem as needed */
  align-self: flex-start;
  overflow: visible;
  /* no own scrollbars */
  max-height: none;
  /* let the modal body handle scroll, not this box */
  width: 100%;
}

#body_editor_wrap {
  visibility: hidden;
  min-height: 220px;
}

#body_editor {
  visibility: hidden;
}

.image-collection .thumb {
  width: 100px;
  height: 100px;
  border-radius: .25rem;
  border: 1px solid #28a745;
  overflow: hidden;
  background: #fff;
}

.image-collection .thumb>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  max-width: none;
}

.image-collection .thumb>img.imgPreview {
  max-height: none !important;
}


.DocumentationTools {
  margin-right: 1rem;
  display: flex;
  align-items: center;
}

.DocumentIconAndFile {
  width: 40%;
  display: flex;
  flex-shrink: 0;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: flex-start;
  align-items: center;
}

.TemplateDocumentationTools {
  display: flex;
  flex-shrink: 0;
  flex-direction: row;
  flex-wrap: nowrap;
  align-content: center;
  justify-content: flex-start;
  align-items: center;
}

.DocumentIconAndFile.notTemplateControlledRow {
  width: 90%;
}

.DocumentIconAndFile.notTemplateControlledRow>.DocumentDisplayName {
  width: 100%;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.DocumentIconAndFile.SystemView {
  width: 40%;
}

.DocumentIconAndFile.TemplateDoc {
  width: 40%;
}

.notTemplateControlledRow .DocumentDisplayName {
  padding-right: 2rem;
  text-align: center;
}

.DocumentIcon {
  display: flex;
  margin-left: 1rem;
}

.DocumentDisplayName {
  display: flex;
  margin-left: 1rem;
  color: darkslategray;
  margin: 1rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  margin-bottom: 0;
  margin-top: 0;
  flex-shrink: 0;
  width: 100%;

}

.DocumentDisplayName>span {
  margin-left: 0.3rem;
}

.DocumentDisplayName>h5 {
  margin-bottom: 0;
}

.ComponentisedDocumentDisplayName {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding-left: 1rem;
  display: table;
  width: 100%;
}

.ComponentisedDocumentDisplayNameDiv {
  display: table-cell;
  vertical-align: middle;
}

.DocumentRowActions {
  display: table-cell;
  text-align: right;
  vertical-align: middle;
  white-space: nowrap;
}

.ComponentisedDocumentDisplayName h5 {
  margin: 0;
  /* remove default h5 margin that causes misalignment */
}


[data-password] {
  cursor: copy;
}

.btn-brand {
  color: #fff;
  background-color: #242849;
  border-color: #2f345f;
  box-shadow: none;
  border-radius: .25rem;
}

.btn-brand:hover {
  color: #ffc107 !important;
  text-decoration: none;
}

.btn-brand-secondary {
  background-color: #e0852b;
  border-color: #e0852b;
  color: #fff;
  box-shadow: none;
}

.btn-brand-secondary:hover {
  color: #242849 !important;
  background-color: #e0852b;
  box-shadow: none;
}

.btn-ms-excel {
  color: #fff;
  background-color: var(--ms-excel-colour);
  border-color: var(--ms-excel-colour);
  box-shadow: none;
  border-radius: .25rem;
}

.btn-ms-word {
  color: #fff;
  background-color: var(--ms-word-colour);
  border-color: var(--ms-word-colour);
  box-shadow: none;
  border-radius: .25rem;
}

.btn-ms-powerpoint {
  color: #fff;
  background-color: var(--ms-powerpoint-colour);
  border-color: var(--ms-powerpoint-colour);
  box-shadow: none;
  border-radius: .25rem;
}

.btn-ms-excel:hover,
.btn-ms-word:hover,
.btn-ms-powerpoint:hover {
  color: #fff;
  border-radius: .25rem;
}


.btn-success {
  background-color: var(--teal);
}

.btn-success:hover {
  background-color: var(--teal);
}

#documentCompilationModalFooter {
  transition: background-color .25s ease-in-out;
  -moz-transition: background-color .25s ease-in-out;
  -webkit-transition: background-color .25s ease-in-out;
  -o-transition: background-color .25s ease-in-out;
}

#compilingModalProgress {
  height: 1rem;
  width: -webkit-fill-available;
}

#compilingModalProgress .progress-bar {
  height: 100%;
}

#progressLog {
  max-height: 8em;
  overflow: scroll;
  width: -webkit-fill-available;
  --mask: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 1) 25%, rgba(0, 0, 0, 1) 0) 100% 50% / 100% 100% repeat-x;
  mask: var(--mask);
  white-space: pre;
  font-size: .75rem;
  scrollbar-width: none;
}

#progressInfo {
  position: absolute;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  width: inherit;
  flex-direction: row;
  height: inherit;
}

#docLoadingWrapper {
  width: 100%;
  display: flex;
  align-content: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

.swalLower {
  margin-top: 3rem;
}

#progressInfo>.progressInfoText {
  background-color: #e9ecef8a;
  padding: 0 1em 0 1em;
  display: flex;
  height: 1em;
  flex-wrap: wrap;
  align-content: center;
}

#notifications .dropdown-menu {
  max-height: 90vh;
  overflow: scroll;
  scrollbar-width: none;
}

.assurance_framework_entities_full_title p:last-child {
  margin-bottom: 0;
}

.ass-frame-entity.min-height-200 {
  min-height: 200px;
}



#ImageViewerModal {
  z-index: 100000;
}

.assurance_framework_entities_full_title p:last-child {
  margin-bottom: 0;
}


.context-menu {
  position: absolute;
  z-index: 10000;
}

.context-menu ul {
  list-style: none;
  margin-left: -2rem;
}

.menu {
  display: flex;
  flex-direction: column;
  background-color: #fff;
  border-radius: 10px;
  box-shadow: 0 10px 20px rgb(64 64 64 / 5%);
  padding: 10px 0;
  filter: drop-shadow(6px 7px 0.7px #00000077);
  border-style: solid;
  border-color: #88888888;
}

.menu div.form-check {
  font: inherit;
  border: 0;
  padding: 10px 30px 10px 30px;
  width: 100%;
  display: flex;
  align-items: center;
  position: relative;
  text-decoration: unset;
  color: #000;
  font-weight: 500;
  transition: 0.5s linear;
  -webkit-transition: 0.5s linear;
  -moz-transition: 0.5s linear;
  -ms-transition: 0.5s linear;
  -o-transition: 0.5s linear;
}

.menu>li {
  display: flex;
}

.menu>li>a:hover {
  background: #f1f3f7;
  color: #4b00ff;
}

.menu>li>input {
  margin-left: 10px;
}

.menu>li.trash>a:hover {
  color: red;
}

.assurance_framework_entities_full_title p:last-child {
  margin-bottom: 0;
}

.glass {
  background: rgba(255, 255, 255, 0.2);
  border-radius: 16px;
  box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.3);
}

.templateSequence {
  padding-top: 1rem;
}

.templateSequence p {
  padding: 0;
  margin: 0;
}

[contenteditable="false"],
[disabled] {
  cursor: not-allowed;
}

.text-colour {
  mix-blend-mode: multiply;
}

.SafetyCaseClone {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #a19e9e;
}

.SafetyCaseCloneConnections {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #f5f5f5;
}

.SafetyCaseCloneDocuments {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #7d75bd;
}

.SafetyCaseCloneKbi {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #bcd6ab;
}

.SafetyCaseCloneCategories {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #b4c6c7;
}


.SafetyCaseCloneSCL1s {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #1e676c;
  /* background-color: #84b6ba;    Suggestion to improve the contrast on the card */

}

.SafetyCaseCloneSCL2s {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #95d57f;
}

.SCL2Entities {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #ffffff8a;
}

.SafetyCaseCloneSCL2Args {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #40d0da;
}

.SafetyCaseCloneSCL2Dps {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #d676d9;
}

.SafetyCaseCloneSCL2Evs {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #ffffff8a;
}

.SafetyCaseCloneSCL2Contexts {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #ddde77;
}

.SafetyCaseCloneSCL2Context {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
}

.SafetyCaseCloneSCL2DPs {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #f0f0b3;
}

.SafetyCaseCloneSCL2Mits {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #89b3e3;
}

.SafetyCaseCloneConnection {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #ffffff8a;
}

.SafetyCaseCloneDocument {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #ffffff8a;
}

.SafetyCaseCloneCategory {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #ffffff8a;
}

.SafetyCaseCloneSCL1 {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #ffffff8a;
}

.SafetyCaseCloneSCL2 {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #ffffff8a;
}

.SafetyCaseCloneSCL2Arg {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #ffffff8a;
}

.SafetyCaseCloneSCL2Ev {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #ffffff8a;
}

.SafetyCaseCloneSCL2Context {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #ffffff8a;
}

.SafetyCaseCloneSCL2DP {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #ffffff8a;
}

.SafetyCaseCloneSCL2Mit {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #ffffff8a;
}

.evidenceCloneOrLinks {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #e0a451;
}

.evidenceCloneOrLink {
  border: 1px solid black;
  padding: 10px;
  margin: 10px;
  background-color: #ffffff8a;
}

/* percentage widths */
.w-10pct {
  width: 10%;
}

.w-15pct {
  width: 15%;
}

.w-20pct {
  width: 20%;
}

.w-30pct {
  width: 30%;
}

.w-40pct {
  width: 40%;
}

.w-50pct {
  width: 50%;
}

.w-60pct {
  width: 60%;
}

.w-70pct {
  width: 70%;
}

.w-80pct {
  width: 80%;
}

.w-90pct {
  width: 90%;
}

/* impersonation */
.pinned {
  float: left;
  top: 0;
  z-index: 1050;
  position: sticky;
  width: 100%;
  box-shadow: 0px 6px 10px -1px rgba(0, 0, 0, 0.4);
}

/* Bootstrap Modifications */
.input-group-text {
  /* Remove border-radius on right hand side of embedded input text */
  border-top-right-radius: 0px !important;
  border-bottom-right-radius: 0px !important;
}

/* organisation engagement */
.engagement-grid {
  width: fit-content;
  display: grid;
  grid-template-columns: max-content repeat(55, 12px);
  grid-template-rows: max-content repeat(7, 12px);
  column-gap: 1px;
  row-gap: 1px;
}

.engagement-weekday,
.engagement-month {
  font-size: 12px;
  line-height: 12px;
}

.engagement-weekday {
  padding-right: 5px;
}

.engagement-month {
  padding-bottom: 3px;
}

.engagement-day {
  border-radius: 1px;
  cursor: default;
  background: #EBEDF0;
}

.engagement-engage-1 {
  background: #c3f5e7;
}

.engagement-engage-25 {
  background: #88ecce;
}

.engagement-engage-50 {
  background: #4ce2b6;
}

.engagement-engage-75 {
  background: #20c997;
}

.engagement-engage-100 {
  background: #189771;
}

/* organisation engagement */
.engagement-grid {
  width: fit-content;
  display: grid;
  grid-template-columns: max-content repeat(55, 12px);
  grid-template-rows: max-content repeat(7, 12px);
  column-gap: 1px;
  row-gap: 1px;
}

.engagement-weekday,
.engagement-month {
  font-size: 12px;
  line-height: 12px;
}

.engagement-weekday {
  padding-right: 5px;
}

.engagement-month {
  padding-bottom: 3px;
}

.engagement-day {
  border-radius: 1px;
  cursor: default;
  background: #EBEDF0;
}

.engagement-engage-1 {
  background: #c3f5e7;
}

.engagement-engage-25 {
  background: #88ecce;
}

.engagement-engage-50 {
  background: #4ce2b6;
}

.engagement-engage-75 {
  background: #20c997;
}

.engagement-engage-100 {
  background: #189771;
}

/* Bootstrap Modifications */
.input-group-text {
  /* Remove border-radius on right hand side of embedded input text */
  border-top-right-radius: 0px !important;
  border-bottom-right-radius: 0px !important;
}

/* organisation engagement */
.engagement-grid {
  width: fit-content;
  display: grid;
  grid-template-columns: max-content repeat(55, 12px);
  grid-template-rows: max-content repeat(7, 12px);
  column-gap: 1px;
  row-gap: 1px;
}

.engagement-weekday,
.engagement-month {
  font-size: 12px;
  line-height: 12px;
}

.engagement-weekday {
  padding-right: 5px;
}

.engagement-month {
  padding-bottom: 3px;
}

.engagement-day {
  border-radius: 1px;
  cursor: default;
  background: #EBEDF0;
}

.engagement-engage-1 {
  background: #c3f5e7;
}

.engagement-engage-25 {
  background: #88ecce;
}

.engagement-engage-50 {
  background: #4ce2b6;
}

.engagement-engage-75 {
  background: #20c997;
}

.engagement-engage-100 {
  background: #189771;
}

/* organisation engagement */
.engagement-grid {
  width: fit-content;
  display: grid;
  grid-template-columns: max-content repeat(55, 12px);
  grid-template-rows: max-content repeat(7, 12px);
  column-gap: 1px;
  row-gap: 1px;
}

.engagement-weekday,
.engagement-month {
  font-size: 12px;
  line-height: 12px;
}

.engagement-weekday {
  padding-right: 5px;
}

.engagement-month {
  padding-bottom: 3px;
}

.engagement-day {
  border-radius: 1px;
  cursor: default;
  background: #EBEDF0;
}

.engagement-engage-1 {
  background: #c3f5e7;
}

.engagement-engage-25 {
  background: #88ecce;
}

.engagement-engage-50 {
  background: #4ce2b6;
}

.engagement-engage-75 {
  background: #20c997;
}

.engagement-engage-100 {
  background: #189771;
}

#cloneSummary {
  position: fixed;
  z-index: 100000;
  width: 400px;
  right: 20px;
  top: 20px;
}

#cloneSummaryContent {
  background: #6495ed;
  display: flex;
  flex-direction: column;
  padding: 10px;
  border-radius: 3px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

#cloneSummaryDetails {
  max-height: 60vh;
  overflow: auto;
  width: 100%;
}

/* Ensure collapse animation doesn't affect layout */
#cloneSummaryDetails.collapse {
  width: 100%;
}

#cloneSummaryDetails.collapsing {
  width: 100%;
}

/* CSP-friendly progress bar styles */
#progressBarContainer {
  display: none;
}

#progressBarContainer.slim {
  height: 4px;
}

#progressBar {
  width: 0%;
}

#cloneProgressMessage,
#currentCloneCase,
#singleCloneCase {
  display: none;
}


#cloneSummaryContent div {
  background-color: #ffffff;
  margin: 3px;
  padding: 2px;
}

.btn-connected {
  background-color: #aae5ee;
  border-color: #17a2b8;
  box-shadow: none;
}

.btn-connected-hover {
  background-color: #b1eeaa !important;
  border-color: #1ab817 !important;
  box-shadow: none;
}

.btn-connected-same-hover {
  background-color: #b1eeaa !important;
  border-color: #1ab817 !important;
  background-image: repeating-linear-gradient(45deg, transparent, transparent 4px, #1ab817 6px, #b1eeaa 4px);
  box-shadow: none !important;
}

.scl2HeaderFlexSpacer {
  flex: 1;
  /* grow to fill space */
}

.scl2assessmentAndScore {
  display: block;
  font-size: 15px;
  text-align: left;
  float: left;
}

.scl2HeaderSpan {
  display: block;
  text-align: center;
  margin-left: 0.5em;
  margin-right: 0.5em;
}

.scl2AssessmentLine {
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  line-height: 1em;
  margin-left: 0.5em;
}

.scl2Curved-border {
  /* border: 1px solid white;
  border-radius: 4px; */
}

.scl2ScoreText {
  font-style: italic;
  font-size: 1em;
  font-weight: 700;
  padding-left: 0.3em;
  padding-right: 0.3em;
  border-radius: 0.3em;
  border-color: white;
  border-width: 0.09em;
  border-style: solid;
  padding-left: 5px;
}

.scl2HeaderFlexContainer>div {
  min-width: 250px;
  margin-bottom: 1rem;
}

.text-white {
  color: #ffffff;
}

.text-black {
  color: #000000;
}


.text-truncate {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.text-wrap {
  white-space: normal;
  word-wrap: break-word;
}

.wrap-text {
  overflow-wrap: break-word;
  white-space: normal;
}

.scl2ScoreColour {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
}

.scl2ScoreColour .scoreColour {
  width: 30px;
  height: 25px;
}

.registerTableUnderline {
  border: 1px solid #000;
  margin: 12px;
}

.spinner.loading {
  position: relative;
  pointer-events: none;
  /* prevent double clicks */
  opacity: 0.7;
}

.spinner.loading::after {
  content: "";
  display: inline-block;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  border: 2px solid currentColor;
  border-top-color: transparent;
  border-radius: 50%;
  animation: spin 0.6s linear infinite;
}

@keyframes spin {
  0% {
    transform: translateY(-50%) rotate(0deg);
  }

  100% {
    transform: translateY(-50%) rotate(360deg);
  }
}

#CollaboraEditorModal .CollaboraEditorDialog {
  max-width: 97vw;
  height: 96vh;
  margin: 2vh auto;
  /* top/bottom 2vh, left/right auto = centered */
  padding-left: 0;
  padding-right: 0;
}


/* Make content stretch fully inside dialog */
#CollaboraEditorModal .modal-content {
  height: 100%;
  display: flex;
  flex-direction: column;
  padding: 0;
  /* no inner padding at all */
}

/* Body takes remaining space and has no own padding */
#CollaboraEditorModal .modal-body {
  flex: 1 1 auto;
  padding: 0;
  overflow: hidden;
  min-height: 0;
}

/* Frame holder fills body completely */
.CollaboraEditorFrame {
  width: 100%;
  height: 100%;
}

/* Make sure iframe has no inline-gap “ghost border” */
#office_frame {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

/* Remove any internal border / radius that can show as a strip */
#CollaboraEditorModal .modal-content {
  border: 0;
  border-radius: .3rem;
  padding: 0;
}

/* No padding in the body at all */
#CollaboraEditorModal .modal-body {
  padding: 0 !important;
}

/* Ensure the holder has zero margin/padding */
#CollaboraEditorModal .CollaboraEditorFrame {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
}

/* Ensure the iframe itself has no margin/padding and is block-level */
#CollaboraEditorModal #office_frame {
  display: block;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

#CollaboraEditorModal .modal-header .modal-icon-btn {
  color: #000;
  opacity: 1;
  font-size: 1.5rem;
  /* icon size */
  line-height: 1;
  padding: 0 .5rem;
  background: none;
  border: none;
  box-shadow: none;
}

/* Hover effect (optional) */
#CollaboraEditorModal .modal-header .modal-icon-btn:hover {
  opacity: 0.7;
  cursor: pointer;
}

#BowtieEditorModal .BowtieEditorDialog {
  box-sizing: border-box;
  max-width: 98vw;
  height: 96vh;
  margin: 2vh auto;
  padding-left: 0;
  padding-right: 0;
}

#BowtieEditorModal .modal-content {
  height: 100%;
  display: flex;
  flex-direction: column;
  border: 0;
  padding: 0;
  border-radius: .5rem;
  overflow: hidden;
}

/* Header = natural height; body takes the rest */
#BowtieEditorModal .modal-body {
  flex: 1 1 auto;
  padding: 0 !important;
  overflow: hidden;
  /* iframe handles scrolling */
  min-height: 0;
}

/* Holder fills the body */
.BowtieEditorFrame {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

/* Make sure iframe uses all space */
#BowtieEditorModal #bowtie_frame {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}

.userIcon {
  margin-left: -0.2em;
}

.pencilIcon {
  font-size: 1.25em;
  margin-left: 0.35em;
  margin-top: 0.15em;
}


.wb-custom-link .wb-title {
  color: blue;
  cursor: pointer;
  text-decoration: underline;
}


.wb-strikethru .wb-title {
  color: red;
  font-style: italic;
  text-decoration: line-through;
}

/* Overwrite Wunderbaum */
div.wunderbaum span.wb-node i.wb-indent {
  /* height: 16px !important; */
  /* width: 16px !important; */
  /* padding: 2px 2px !important; */
  /* display: inline-block; */
}


/* Center align all icon elements (icons, expanders, indents) in wunderbaum */
div.wunderbaum span.wb-node i.wb-checkbox,
div.wunderbaum span.wb-node i.wb-expander,
div.wunderbaum span.wb-node i.wb-icon,
div.wunderbaum span.wb-node i.wb-indent {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  vertical-align: middle !important;
}

/* Ensure FontAwesome icons are properly centered */
div.wunderbaum span.wb-node i.wb-icon::before,
div.wunderbaum span.wb-node i.wb-expander::before {
  display: block;
  line-height: 1;
}

/* Fix row alignment to center all content vertically */
div.wunderbaum div.wb-row span.wb-node {
  display: inline-flex;
  align-items: center;
}

.wb-title {
  padding-left: 3px !important;
}

div.wunderbaum i.wb-node i.wb-expander:nth-child(1) {
  background: none !important;
}

div.wunderbaum i.wb-node i.wb-expander.wb-indent {
  padding-right: 5px !important;
}

div.wunderbaum.wb-grid.wb-cell-mode div.wb-row:not(.wb-colspan):not(.wb-selected) span.wb-col {
  /* background-color: var(--wb-active-cell-color-grayscale); */
}

/* Wunderbaum dynamic height - calculated by JavaScript based on content */

div.wunderbaum {
  height: unset !important;
}

#wunderbaum>div.wunderbaum {
  /* height: 100% !important; */
}

div.wunderbaum {
  scroll-behavior: smooth;
}

/* Ensure wb-busy background remains visible by making columns transparent */
div.wunderbaum div.wb-node-list div.wb-row.wb-busy span.wb-col {
  background-color: transparent !important;
}

/* Style for the prepDeleteConnection button when row is marked for deletion */
div.wunderbaum div.wb-node-list div.wb-row.wb-strikethru .prepDeleteConnection {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}


/*  Custom colours in connections Wunderbaum */
.wb-AssuranceFrameworkEntity .wb-indent {
  background-color: greenyellow;
}

.wb-KbiTemplateEntity .wb-indent {
  background-color: #e7ddcd;
}

.wb-Document .wb-indent {
  background-color: rgb(244, 246, 196);
}

.wb-BowTie .wb-indent {
  background-color: #ffdede;
}

.wb-row:not(.wb-AssuranceFrameworkEntity):not(.wb-KbiTemplateEntity):not(.wb-Document):not(.wb-BowTie) .wb-indent {
  background-color: aquamarine;
}
