@font-face {
  font-family: 'TheSansUHHBold';
  src: url('../fonts/TheSansUHH_Bold.eot');
  src: url('../fonts/TheSansUHH_Bold.eot?#iefix') format('embedded-opentype'), url('../fonts/TheSansUHH_Bold.woff') format('woff'), url('../fonts/TheSansUHH_Bold.ttf') format('truetype'), url('../fonts/TheSansUHH_Bold.svg#TheSansUHHBold') format('svg');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'TheSansUHHBoldItalic';
  src: url('../fonts/TheSansUHH_BoldItalic.eot');
  src: url('../fonts/TheSansUHH_BoldItalic.eot?#iefix') format('embedded-opentype'), url('../fonts/TheSansUHH_BoldItalic.woff') format('woff'), url('../fonts/TheSansUHH_BoldItalic.ttf') format('truetype'), url('../fonts/TheSansUHH_BoldItalic.svg#TheSansUHHBoldItalic') format('svg');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'TheSansUHHItalic';
  src: url('../fonts/TheSansUHH_RegularItalic.eot');
  src: url('../fonts/TheSansUHH_RegularItalic.eot?#iefix') format('embedded-opentype'), url('../fonts/TheSansUHH_RegularItalic.woff') format('woff'), url('../fonts/TheSansUHH_RegularItalic.ttf') format('truetype'), url('../fonts/TheSansUHH_RegularItalic.svg#TheSansUHHItalic') format('svg');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'TheSansUHH';
  src: url('../fonts/TheSansUHH_Regular.eot');
  src: url('../fonts/TheSansUHH_Regular.eot?#iefix') format('embedded-opentype'), url('../fonts/TheSansUHH_Regular.woff') format('woff'), url('../fonts/TheSansUHH_Regular.ttf') format('truetype'), url('../fonts/TheSansUHH_Regular.svg#TheSansUHH') format('svg');
  font-weight: normal;
  font-style: normal;
}




/*--white: white;
--background-grey: whitesmoke;

$smartsplus_blue: #0098e6;
$smartsplus_blue_20percent: #c7ecfe;
$smartsplus_purple: #814997;*/


:root {
  /* Font Size*/
  --navbar-height: 54px;
  --offcanvas-width: 400px;
  --font-size-header: 16px;
  --font-size-text: 12px;
  /* Color */
  --blue-color: #0d6efd;
  --red-color: #c90a15;
  --white: #FFFFFF;
  --background-grey: #f5f5f5;
  --smartsplus_purple: #814997;
  --smartsplus_blue: #0098e6;
  --smartsplus_blue_20percent: #c7ecfe;
  --font-family-sans-serif: 'TheSansUHH', sans-serif;
  --headings-font-family: 'TheSansUHHBold', sans-serif;
  --baseFontFamily: 'TheSansUHH', sans-serif;

}

html {
  height: 100%;
}

body {
  height: 100%;
  margin: 0;
  margin-bottom: 0px;
  font-family: TheSansUHH, sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #fff;
}

#app {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.text-smartsplus_blue {
  color: var(--smartsplus_blue);
}

.main {
  padding-top: 20px;
  flex: 1;
}

.main .container {
  margin-top: 1rem;
  --bs-gutter-x: 0rem;

}

.header {
  padding: 20px;
  height: 10%;
  max-height: 100px;
  background-image: linear-gradient(to bottom, #FFFFFF, #f5f5f5);
  overflow: hidden;
}

.header  .centerzbh {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.header .centerzbh h3 {
  margin-bottom: 0em !important;
}

.header .float-md-left {
  float: left !important;
}

.header .float-md-right {
  float: right !important;
}

.footer {
  position: fixed !important;
  bottom: 0;
  width: 100%;
  padding-bottom: 10px;
  padding-top: 10px;
  background-color: var(--background-grey);
}

.footer-padding {
  padding: 40px;
}

button.close-button {
  position: absolute;
  top: 10px;
  right: 50px;
  border: none;
  padding: 10px;
  cursor: pointer;
  z-index: 1001;
}

.smartsview-bg {
  color: #fff !important;
  background-color: #0098e6 !important;
}

button.smartsview-btn {
  color: #fff !important;
  background-color: #0098e6 !important;
  margin: 0.2em !important;
}

button.smartsview-btn.shown {
  background-color: #814997 !important;

}

button.smartsview-btn:hover {
  color: #fff !important;
  background-color: #814997 !important;
}

button.smartsview-btn:active {
  color: #fff !important;
  background-color: #0076b3 !important;
  border-color: #0076b3 !important;
}

button.smartsview-btn.page-navigation {
  color: black !important;
  background-color: white !important;
  border-color: white !important;
}

button.smartsview-btn.page-navigation.shown {
  background-color: #814997 !important;
  border-color: #814997 !important;
  color: #fff !important;
}

button.smartsview-btn.page-navigation:hover {
  color: #fff !important;
  background-color: #814997 !important;
  border-color: #814997 !important;
}

button.smartsview-btn.page-navigation:active {

  border-color: #814997 !important;
}

button.smartsview-btn.page-number:disabled {
  color: #fff !important;
  background-color: #0098e6 !important;
  opacity: 100%;
  width: 40px;
}

button.smartsview-small-btn {
  padding: 0.1em 0.4em;
}

button.smartsview-large-btn {
  font-size: large;
}

.reactionsmartssearch-modal-body {
  padding: 20px;
}

.toolselect .active {
  color: #fff;
  background-color: #814997;
  pointer-events: none;
}

#options {
  padding-left: 15px;
  padding-bottom: 15px;
}

#pollingError {
  display: none;
  text-align: center;
  border: 2px solid red;
  padding: 10px;
  background: rgba(255, 0, 0, 0.1);
}


.smartsview-btn {
  margin: 0.2em;
}

.smartsview-small-btn {
  padding: 0.1em 0.4em;
}

.smartsview-large-btn {
  font-size: large;
}

.toolselect .btn[aria-expanded="true"] {
  background-color: #814997;
  pointer-events: none;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  margin-bottom: 1.5rem;
  font-family: var(--headings-font-family);
}


.uhhlogo {
  max-height: 70px;
  max-width: 100%;
  height: 70px;
  width: 244.5px;
  position: relative;
  padding-right: 15px;
  padding-left: 15px;
}

.cold-md-4 {
  position: relative;
  padding-right: 15px;
  padding-left: 15px;
}

#imagemodal .modal-dialog {
  max-width: 100em;
  max-height: 100em;
}

#imagemodal {
  padding: 0px !important;
}

.modalimagepreview {
  width: auto;
  max-height: calc(-120px + 100vh);
  max-width: 85vw;
  cursor: zoom-in;
}

.zbhhref {
  cursor: pointer;
  text-decoration: none;
  color: #000;
  text-align: right;
}

.queryform {
  max-width: 900px;
  margin-top: 0.5em;
}


.smartsplusprocessingmessage {
  text-align: center;
  border: 2px solid #0098e6;
  padding: 10px;
  border-radius: 30px;
  width: 70%;
  max-width: 1100px;
  margin: 50px auto;
  opacity: 100%;
  /* background: rgba(255, 0, 0, 0.1); */
}

.smartspluspreprocmessage {
  text-align: center;
  border: 2px solid var(--smartsplus_blue);
  background: var(--smartsplus_blue_20percent);
  padding: 10px;
}

.smartspluserrormessage {
  text-align: center;
  border: 2px solid red;
  padding: 10px;
  background: rgba(255, 0, 0, 0.1);
}

.new-form {
  width: 100%;
}

.hover-white-bg:hover {
  background-color: white;
}

.form-in-results .only-main {
  display: none;
}

.svg-wrapper {
  width: 75px;
  height: 75px;
}

.table-striped table {
  border-bottom: 1px solid #dee2e6;
}

.table-striped th {
  border-top: 1px solid #dee2e6;
  border-bottom: 2px solid #dee2e6;
}

body.modal-open {
  overflow-y: hidden;
}

.smartsplus-index {
  background-color: white;
  width: 100%;
  margin-top: 5%;
}

.smartsplus-index .container-fluid {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1rem;
  padding-right: 15px;
  padding-left: 15px;
}

.smartsplus-index .container-fluid .row {
  max-width: 70em;
  margin-left: auto;
  margin-right: auto;
}

.fa-plus {
  max-width: 15px
}

.smartsplus-index .container-fluid .row .toolselect {
  margin-right: -15px;
  margin-left: -15px;
}

.smartsplus-index .container-fluid .row .toolselect .no-padding-sm-up {
  padding: 0;
}

.smartsplus-index .container-fluid .row #toggleparent {
  position: relative;
  width: 45em;
  margin-left: auto;
  margin-right: auto;
  margin-top: 1em;

}

.smartsplus-index .container-fluid .row .col-md-8 {
  flex: 0 0 66.6666666667%;
  max-width: 66.6666666667%;
  padding-right: 15px;
  padding-left: 15px;
}

.smartsplus-index img {
  max-width: 100%;
}

.smartsplus-index .container-fluid .row #smartspluslogo {
  width: 15em;
  flex: 0 0 33.3333333333%;
  max-width: 33.3333333333%;
  padding-right: 15px;
  padding-left: 15px;
  padding-top: 9px;
}

.collapse,
.collapsing {
  margin-top: 1em;
}


.font-weight-light-bold {
  font-family: TheSansUHHBold, sans-serif;
  font-weight: 500;
}

.sepline {
  border: 3px solid #0098e6;
  border-radius: 30px;
  width: 95%;
  max-width: 1100px;
  margin: 50px auto;
  opacity: 100%;
}

.viewform .compare-only {
  display: none;
}

/* .compareform */
.compareform .view-only {
  display: none;
}

/* .smartssearch-show-query */
.smartssearch-show-query {
  width: 100%;
  margin: 0;
}

.smartssearch-show-query .query-col {
  margin: auto;
  box-sizing: border-box;
  max-width: 750px;
}

.smartssearch-show-query td,
.smartssearch-show-query th {
  /*border: 1px solid var(--smartsplus_purple);*/
  padding: 7px;
}

.smartssearch-show-query td {
  text-align: left;
}

.smartssearch-show-query th {
  text-align: center;
  background-color: var(--smartsplus_blue);
  color: white;
  font-size: 1.2rem;
}

.smartssearch-show-query table {
  /*border: 2px solid var(--smartsplus_purple);*/
  max-width: 750px;
  table-layout: auto;
  margin: auto;
}

/* .reactionsearch-show-query
 * This is almost an exact copy of smartssearch-show-query with the exception of
 * '#image' and 'svg' further down to allow for different picture sizes for normal
 * SMARTSsearch and ReactionSMARTSsearch. */
.reactionsearch-show-query {
  width: 100%;
  margin: 0;
}

.reactionsearch-show-query .query-col {
  margin: auto;
  box-sizing: border-box;
  max-width: 750px;
}

.reactionsearch-show-query td,
.reactionsearch-show-query th {
  /*border: 1px solid var(--smartsplus_purple);*/
  padding: 7px;
}

.reactionsearch-show-query td {
  text-align: left;
}

.reactionsearch-show-query th {
  text-align: center;
  background-color: var(--smartsplus_blue);
  color: white;
  font-size: 1.2rem;
}

.reactionsearch-show-query table {
  /*border: 2px solid var(--smartsplus_purple);*/
  max-width: 750px;
  table-layout: auto;
  margin: auto;
}

.smartsscreate-prev-queries-tbl {
  border: none;
  border-top: 0px solid #814997;
  width: 100%;
  table-layout: auto;
  margin: auto;
  box-sizing: border-box;
  border-collapse: separate;
  border-spacing: 0;
}

.smartsscreate-prev-queries-tbl .current {
  background-color: #c7ecfe;
}

.smartsscreate-prev-queries-tbl thead {
  box-sizing: border-box;
  border-collapse: separate;
  border-spacing: 0;
  border-bottom: 3px solid #814997;
}

.smartsscreate-prev-queries-tbl tr {
  display: table-row;
  vertical-align: inherit;
  border-color: inherit;
  text-align: left;
  height: 50px;
  border-top: 1px solid #814997;
}

.smartsscreate-prev-queries-tbl th {
  text-align: center;
  background-color: var(--smartsplus_blue);
  color: white;
  text-transform: uppercase;
  padding: 10px 18px;
  font-weight: bold;
  text-align: inherit;
}

.smartsscreate-prev-queries-tbl td {
  text-align: left;
  padding: 8px 10px;
}

.smartscreate-prev-visit-later {

  padding: 100px !important;
}

.smartssearch-show-query .query-image-col {
  margin: auto;
  max-width: 350px;
}

.smartssearch-show-query .smartssearch-query-image-div {
  margin: auto;
}

.smartssearch-show-query .query-modalpopup {
  cursor: zoom-in;
}

.smartssearch-show-query #image {
  max-height: 15em;
  max-width: 15em;
  display: block;
  margin: auto;
}

.smartssearch-show-query svg {
  height: 70%;
  width: 70%;
}


.reactionsearch-show-query .query-image-col {
  margin: auto;
  max-width: 350px;
}

.reactionsearch-show-query .reactionsearch-query-image-div {
  margin: auto;
}

.reactionsearch-show-query .query-modalpopup {
  cursor: zoom-in;
}

.reactionsearch-show-query #image {
  max-height: 15em;
  max-width: 30em;
  display: block;
  margin: auto;
}

.reactionsearch-show-query svg {
  height: 70%;
  width: 100%;
}

/* .filter */
.filter {
  margin: auto auto 10px;
}

@media only screen and (min-width: 1183px) {
  .filter {
    width: 1100px;
  }
}

.filter .filter-tresh,
.filter .filter-number {
  margin: auto;
}

.filter input {
  max-width: 6em;
  margin: 5px;
}

.smartssearchtbl div[data-pc-section="wrapper"] {
  border-top: 1px solid var(--smartsplus_purple);
  border-left: 1px solid var(--smartsplus_purple);
  border-right: 1px solid var(--smartsplus_purple);
}

/* .smartssearch-result-table */
.smartssearch-result-table .table-images {
  max-width: 9em;
  max-height: 9em;
}


div[data-pc-name="dropdown"]:hover {
  border: 1px solid #676774;
  cursor: pointer;

}

div[data-pc-section="panel"] {

  background-color: white;
  padding: 0px 10px 0px 0px;
  margin: 0;
  border: 1px solid #8f8f9d;
  border-radius: 0.375rem;
  max-height: 130px;
  width: 70px;
  cursor: pointer;

}

div[data-pc-name="dropdown"] {
  background-color: white;
  display: flex;
  justify-content: left;
  margin-right: 200px;
  float: left;
  width: 70px;
  padding: 0px 30px 0px 5px;
  font-weight: 400;
  color: #212529;
  box-sizing: border-box;
  border: 1px solid #8f8f9d;
  border-radius: 0.375rem;
  padding-left: 15px
}

div[data-pc-name="dropdown"] div[data-pc-section="trigger"] {
  margin: 0px 5px 0px 10px;
  float: right;
}

.smartssearchtbl th[data-pc-name="tableheader"] {
  display: none
}





.results-wrapper {
  width: 1100px;
  max-width: 93vw;
  margin: auto;
}

.smartssearch-result-table .table-images svg {
  max-width: 9em;
  max-height: 9em;
  cursor: zoom-in;
}

.smartssearch-result-table .link-modalpopup {
  cursor: zoom-in;
}

.smartssearch-result-table td.description-column {
  word-break: break-all;
}

.smartssearch-result-table .table-modalpopup img {
  cursor: zoom-in;
}

.dataTables_filter input {
  padding: 2px !important;
  margin-bottom: 5px;
}

.dataTables_length select {
  padding: 2px !important;
  margin-bottom: 5px;
}


.smartsview-column {
  padding: 0px 0px !important;
}


.tableoptionstop {
  display: flex;
  justify-content: space-between;
  align-items: left;
}

.smartssearch-result-table thead {
  border-bottom: 3px solid #814997;
}

.smartssearch-result-table td {
  border-left: none;
  border-right: none;
  text-align: left;
  border-top: 1px solid var(--smartsplus_purple);
  border-bottom: 1px solid var(--smartsplus_purple);
  padding: 7px;
}



.smartssearch-result-table th {
  width: 60%;
  text-align: left;
  background-color: var(--smartsplus_blue);
  color: white;
  font-size: 1.2rem;
  padding: 7px;
}

tr {
  display: table-row;
  vertical-align: inherit;
  border-color: inherit;
}








.smartsview-index {

  width: 100%;
  margin-top: 2em;
}

.smartsview-index .container {

  position: relative;
  max-width: 80em;
  margin-left: auto;
  margin-right: auto;
}

.smartsview-index .new_smartsview {

  width: 100%;
}

.smartsview-show {

  width: 100%;
  max-width: 900px;
  margin: 2em auto;
}

.smartsview-show .container {
  position: relative;
  margin-left: auto;
  margin-right: auto;
}

.smartsview-show .new_smartsview {
  width: 100%;
}

.smartsview-show-picture {
  max-width: 100%;
  /* height: 100%;
  width: 100%; */
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2em;
}

.smartsview-show-picture svg {
  max-height: 80vh;
  max-width: 100vw;
  height: auto;
  cursor: pointer;
}

.svg-container {
  /* Ensure the SVG container allows for interaction */
  position: relative;
  width: 100%;
  height: 100%;
}

.svg-notification {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: rgba(0, 0, 0, 0.8);
  color: white;
  padding: 8px;
  border-radius: 5px;
  text-align: center;
  /* display: none; Initially hidden */
  z-index: 10;
  opacity: 1;
  animation: fadeOut 3s forwards; /* Animation to handle fading out */
  pointer-events: auto;
}

.fullscreen svg {
  max-height: 100vh;
  max-width: 100vw;
}

.fullscreen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: white;
  z-index: 1000;
  overflow: hidden;
}

.smartsview-image-div {
  touch-action: pan-x pan-y;
  display: flex;
  justify-content: center;
  align-items: center;
}

.smartsview-image-div .fullscreen .svg-container {
  touch-action: none;
  width: 100%;
  height: 100%;
}

.modalpopup #image {
  cursor: zoom-in;
  max-height: 35em;
}

.error-messages {
  font-family: monospace;
  margin-bottom: 0px;
}

.new-error-messages {
  color: red;
}

.feedbackform {
  width: 100%;
}

.feedback-notice-messages {
  color: green;
}

.feedback-error-messages {
  color: red;
}

.card {
  max-width: 1140px;
  margin: 0 auto;

}

.smartscreate-img-column img {
  max-width: 100px;
  max-height: 100px;
}

.smartscreate-result-smartsview {
  cursor: zoom-in;
}

#smartsscreatetbl thead {
  border-bottom: 3px solid #814997;

}

#smartsscreatetbl th {
  border: none;
  background-color: var(--smartsplus_blue);
  color: white;
  text-transform: uppercase;
  font-weight: bold;
  text-align: left;
  padding: 8px 10px;
}

#smartsscreatetbl td {
  border-bottom: solid 1px var(--smartsplus_purple);
  border-left: none;
  border-right: none;
  padding: 8px 10px;
}

.smartscreate-show-query table {
  width: 100%;
  max-height: 450px;
  border: 1px solid var(--smartsplus_purple);
}

.smartscreate-show-query table tbody {
  height: 86px;
}

.smartscreate-show-query table th.sortable {
  pointer-events: none;
  cursor: not-allowed;
}

.smartscreate-show-query table th.sorting:after,
.smartscreate-show-query table th.sorting_asc:after,
.smartscreate-show-query table th.sorting_desc:after {
  content: none !important;
}

.smartscreate-show-query table th.sorting:before,
.smartscreate-show-query table th.sorting_asc:before,
.smartscreate-show-query table th.sorting_desc:before {
  content: none !important;
}

.smartscreate-show-query th {
  background-color: var(--smartsplus_blue);
  color: white;
  text-transform: uppercase;
  font-weight: bold;
  text-align: center;
}

.smartscreate-show-query td {
  border-top: solid 1px var(--smartsplus_purple);
  border-bottom: none;
  border-left: none;
  border-right: none;
  text-align: center;
}

.smiles_image svg {
  width: 100%;
  height: 100%;
  touch-action: none;
  overflow: hidden;
  vertical-align: middle;
  box-sizing: border-box;
  overflow-clip-margin: content-box;

}

.smartscreate-show-query .dataTables_length {
  display: none !important;
}

/* Hide the search input */
.smartscreate-show-query .dataTables_filter {
  display: none !important;
}


.enlargable {
  transition: transform 0.1s ease;
}

.enlargable:hover {
  transform: scale(3.5);
  z-index: 1;
}

.smartscreate-refresh-notification .row {
  border: 2px solid var(--smartsplus_blue_20percent);
  border-radius: 10px;
  background-color: azure;
}

.smartscreate-refresh-notification .smartscreate-refresh-error {
  border-color: red;
  background-color: rgba(255, 0, 0, 0.2);
}


#confusion-table th {
  background-color: var(--smartsplus_blue);
  color: white;
  text-transform: uppercase;
  font-weight: bold;
  padding: 8px 10px;
}

#confusion-table td {
  border: none;
  text-align: center;
  padding: 8px 10px;
}

#create-filters input {
  width: 8em;
}

.current-create {
  background-color: var(--smartsplus_blue_20percent) !important;
}

.smartscreatetbl th {
  border: none;
}

.smartscreate-img-column {
  margin: auto;
  max-width: 350px;
}

.smartscreate-img-column .table-modalpopup {
  cursor: zoom-in;
}

.smartscreate-img-column #image {
  max-height: 15em;
  max-width: 15em;
  display: block;
  margin: auto;
}

.smartscreate-img-column svg {
  height: 70%;
  width: 70%;
}

.no-page-zoom {
  touch-action: pinch-zoom; /* Prevents page zoom, but allows interaction */
}


/* Animation to handle the visibility and fading out */
@keyframes fadeOut {
  0% {
      opacity: 1;
  }
  50% {
      opacity: 1; /* Keep it visible for the first second */
  }
  100% {
      opacity: 0;
      pointer-events: none; /* Disable pointer events to prevent interaction */
  }
}

/* Tooltip container. Needs to be called tooltip2 because apperantly 'tooltip' is already
 * used somewhere in bootstrap and an object with a 'tooltip' class simply dissapears */
.tooltip2 {
  position: relative;
  top: -10px;
  display: inline-block;
}

/* Tooltip text */
.tooltip2 .tooltiptext {
  visibility: hidden;
  font-size: 12px;
  width: 240px;
  bottom: 100%;
  left: 50%;
  margin-left: -120px; /* Margin needs to be width/2 to center the tooltip. */
  background-color: black;
  color: #fff;
  text-align: left;
  padding: 5px 5px;
  border-radius: 6px;
  position: absolute;
  z-index: 1;
}

/* Show the tooltip text when you mouse over the tooltip container */
.tooltip2:hover .tooltiptext {
  visibility: visible;
}

.tooltip2 .tooltiptext::after {
  content: " ";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: black transparent transparent transparent;
}
