html {
  scroll-behavior: smooth;
}

:root {
    --crgb: #BB3E03;
    --cdepth: #EE9B00;
    --csemseg: #0A9396;
}

body {
  /* font-family: 'Noto Sans', sans-serif; */
  /* background: linear-gradient(to right, #DFE7FD, #D3F8E2); */
}

ol > li::marker {
  font-weight: bold;
}

th {
  font-size: 14px;
}

td {
  font-size: 14px;
}

.navbar-item:hover {
  background-color: transparent !important;
}

.navbar-link:hover {
  background-color: transparent !important;
}

.glass-overlay {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px); /* Adjust the blur value to your preference */
  /* background: linear-gradient(to right, #DFE7FDA0, #D3F8E2A0);  */
}

/* Media query for mobile devices */
@media screen and (max-width: 768px) {
  .publication-links {
      display: flex;
      flex-direction: row; /* Allow buttons to be side-by-side */
      flex-wrap: nowrap; /* Prevent buttons from wrapping */
      justify-content: center; /* Center the buttons */
      align-items: center; /* Align items vertically */
      margin-top: 1rem;
  }

  .publication-links .button,
  .slides-dropdown .button {
    padding: 8px 10px !important; /* Adjust padding */
    font-size: 0.8rem !important; /* Adjust font size */
    margin: 0 0.1rem !important; /* Adjust margin */
    height: auto !important;
  }

  .link-block-header {
      margin-bottom: 20px; /* Add space between buttons */
  }

  .external-link.button {
      padding: 10px; /* Adjust padding */
      font-size: 14px; /* Adjust font size */
  }
}

.banner blockquote {
  font-size: 1.4em; /* Make the subtitle a bit bigger */
}

.footer .icon-link {
    font-size: 25px;
    color: #000;
}

.link-block a {
    margin-top: 5px;
    margin-bottom: 5px;
}

.link-block-header a {
  margin-top: 10px;
  margin-bottom: -30px;
}

.align-items-center {
  display: flex;
  align-items: center;
}

.logo-container {
  display: flex;
  align-items: center;
  justify-content: flex-end; /* Aligns items to the right */
}

.logo {
  margin-right: 30px; /* Adjust this value to set the space between logos */
}

.title-container {
  display: flex;
  align-items: center;
  justify-content: center; 
}


.dmethod {
  font-family: 'American Typewriter', serif;
  font-size: 1.1em;
}

.dlink {
  color: hsl(204, 86%, 53%);
}

.teaser .hero-body {
  padding-top: 2rem;
  padding-bottom: 2rem;
}

.teaser {
  font-family: 'Google Sans', sans-serif;
}

.headline-container {
  padding-top: 1.5rem;
}

@media screen and (max-width: 768px) {
  .anchor {
    scroll-margin-top: 60px; /* Adjusted for mobile navbar height */
  }

  .title.is-1 {
      font-size: 1.8rem; /* Adjust this to your desired mobile size */
      padding-top: 1rem;
  }
  .publication-authors {
    font-size: 0.9rem !important;
    margin-top: 20px;
  }
}

.subtitle {
  padding-top: 1.5rem;
}

.tok-subtitle {
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}

.publication-banner {
  max-height: parent;

}

.publication-banner video {
  position: relative;
  left: auto;
  top: auto;
  transform: none;
  object-fit: fit;
}

.publication-title {
    font-family: 'Google Sans', sans-serif;
}

.publication-authors {
    font-family: 'Google Sans', sans-serif;
}

.publication-venue {
    color: #555;
    width: fit-content;
    font-weight: bold;
}

.publication-awards {
    color: #ff3860;
    width: fit-content;
    font-weight: bolder;
}

.publication-authors {
}

.publication-authors a {
   color: hsl(204, 86%, 53%) !important;
}

.publication-authors a:hover {
    text-decoration: underline;
}

.author-block {
  display: inline-block;
}

.publication-banner img {
}

.publication-authors {
  /*color: #4286f4;*/
}

.publication-video {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;

    overflow: hidden;
    border-radius: 10px !important;
}

.intro-video-container video {
  border-radius: 10px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.publication-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.publication-body img {
}

.play-controls {
  text-align: right; /* Aligns content to the right */
}

.rgb-image img {
  width: 95%;
  border-radius: 5px;
  border: 2px solid black;
}

.depth-image img {
  width: 95%;
  border-radius: 5px;
  border: 2px solid var(--cdepth);
}

.semseg-image img {
  width: 95%;
  border-radius: 5px;
  border: 2px solid var(--csemseg);
}

.has-text-centered {
  padding: 0;
}

#semsegmanipulation-slider {
  width: 50%;
  margin-left: auto;
  margin-right: auto;
}

.bboxprobing-panel {
  background: #f5f5f5;
  border-radius: 10px;
  padding-top: 1.4rem;
}

.bboxprobing-panel .columns {
  width: 99%;
  margin-left: auto;
  margin-right: auto;
}

#bboxprobing-slider {
  width: 50%;
  margin-left: auto;
  margin-right: auto;
}

.sam-panel {
  background: #f5f5f5;
  border-radius: 10px;
  padding-top: 1.4rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.sam-panel .columns {
  width: 99%;
  margin-left: auto;
  margin-right: auto;
}


@media screen and (min-width: 1220px){
  .extended-container {
    margin-left: -5vw !important;
    margin-right: -5vw !important;
  }
}

.rotate {
  transform: rotate(-90deg);
  /* Safari */
  -webkit-transform: rotate(-90deg);
  /* Firefox */
  -moz-transform: rotate(-90deg);
  /* IE */
  -ms-transform: rotate(-90deg);
  /* Opera */
  -o-transform: rotate(-90deg);
  /* Internet Explorer */
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
}


.histtitle {
  font-family: 'Google Sans', sans-serif;
  font-weight: bold;
  font-size: 1.0rem;
}

.histtitle:after {
  margin-top: 3px !important ;
}

.text-center .histtitle:after {
  margin: 0px auto 0px;
}

.home-content > p {
  color: #444;
  opacity: 1.0;
}

#charts {
  padding: 10px 0;
}

.chart {
  display: inline-block;
  /* height: 151px; */
  min-height: 10px;
  margin-bottom: 5%;
  margin-left: 5%;
}

.reset {
  padding-left: 1.5em;
  /* font-size: smaller;
  color: #ccc; */
}

.background.bar {
  fill: #ccc;
}

.foreground.bar {
  fill: steelblue;
}

.axis path, .axis line {
  fill: none;
  stroke: #000;
  shape-rendering: crispEdges;
}

.axis text {
  font: 10px sans-serif;
}

.brush rect.extent {
  fill: steelblue;
  fill-opacity: .125;
}

.brush .resize path {
  fill: #eee;
  stroke: #666;
}

.task-header {
  margin-top: .5cm;
  margin-bottom: 0.1cm;
}

.task-header th {
  font-size: 10px;
  width: 10%;
  text-align: center;
}

#overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, #DFE7FD80, #D3F8E280);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  z-index: 1;
}

#popup {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  padding: 20px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.5);
  width: 30vh;
  border-radius: 10px !important;
  z-index: 2;
}

#popup img {
  max-width: 100%;
  max-height: 100%;
}

.card-content {
  padding: 1rem;
}

.expandable-content {
  display: none;
}
.expanded .expandable-content {
  display: table-row;
}
.clickable-row {
  cursor: pointer;
}


/**
* Table styling 
*/

.shaded-red {
  background-color: #ffdddd;
  transition: background-color 0.3s ease;
}
.shaded-red.hovered {
  background-color: #ffcccc;
}
.shaded-red.individual-hover td:not([rowspan]) {
  background-color: #ffcccc;
}
.shaded-red.individual-hover td[rowspan] {
  background-color: #ffdddd;
}

.shaded-green {
  background-color: #ddffdd;
  transition: background-color 0.3s ease;
}
.shaded-green.hovered {
  background-color: #bbffbb;
}
.shaded-green.individual-hover td:not([rowspan]) {
  background-color: #bbffbb;
}
.shaded-green.individual-hover td[rowspan] {
  background-color: #ddffdd;
}

.shaded-blue {
  background-color: #eeeeff;
  transition: background-color 0.3s ease;
}
.shaded-blue.hovered {
  background-color: #ddddff;
}
.shaded-blue.individual-hover td:not([rowspan]) {
  background-color: #ddddff;
}
.shaded-blue.individual-hover td[rowspan] {
  background-color: #eeeeff;
}

.tables-wrapper {
  display: flex;
  justify-content: center;
  /* Center the tables horizontally */
  align-items: flex-start;
  /* Align tables at the top */
  gap: 40px;
  /* Space between the tables */
  flex-wrap: wrap;
  /* Allow wrapping on smaller screens */
  padding: 20px;
}

@media (max-width: 768px) {
  .table-container {
    flex: 1 1 100%;
    /* Stack tables vertically on smaller screens */
  }
}


/*
** Drop down for Slides Button
*/

.publication-links {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  /* Adds a little space between buttons */
}

/* Custom dropdown styles for slides */
.slides-dropdown {
  position: relative;
  display: inline-block;
}

/* Add invisible hover area to bridge gap between button and dropdown */
.slides-dropdown::before {
  content: '';
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 10px;
  /* Creates invisible bridge */
  z-index: 999;
  pointer-events: none;
  /* Allows hover but not clicks */
}

.slides-dropdown:hover::before {
  pointer-events: auto;
  /* Enable hover detection in bridge area */
}

.slides-dropdown .dropdown-content {
  display: none;
  position: absolute;
  background-color: white;
  min-width: 200px;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  border-radius: 8px;
  z-index: 1000;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  margin-top: 5px;
  border: 1px solid #e1e1e1;
  animation: slideDown 0.3s ease;
  padding-top: 0px;
  padding-bottom: 0px;
}

@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateX(-50%) translateY(-10px);
  }

  to {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
  }
}

.slides-dropdown:hover .dropdown-content {
  display: block;
}

.slides-dropdown .dropdown-content a {
  color: #333;
  padding: 12px 16px;
  text-decoration: none;
  display: block;
  transition: all 0.3s ease;
  border-radius: 0;
}

.slides-dropdown .dropdown-content a:first-child {
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}

.slides-dropdown .dropdown-content a:last-child {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}

.slides-dropdown .dropdown-content a:hover {
  background-color: #3273dc;
  color: white;
}

.slides-dropdown .dropdown-content a i {
  margin-right: 8px;
  width: 16px;
}

/* Hover effect for slides button */
.slides-dropdown:hover .button {
  background-color: #3273dc !important;
  border-color: #3273dc !important;
  color: white !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(50, 115, 220, 0.3);
}

.slides-dropdown .button {
  transition: all 0.3s ease;
}

/* Dropdown arrow indicator */
.slides-dropdown .button::after {
  content: '▼';
  font-size: 0.7em;
  margin-left: 8px;
  opacity: 0.7;
  transition: transform 0.3s ease;
}

.slides-dropdown:hover .button::after {
  transform: rotate(180deg);
}


.section.hero.is-light {
  background: #f8f9fa;
}

.box {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border: 1px solid #e1e1e1;
}

.box:hover {
  transform: translateY(-5px);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
}

.intro-video-container {
  max-width: 800px;
  margin: 0 auto;
}

.intro-video-container video {
  border-radius: 12px;
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
}

.dlink {
  color: #3273dc;
  text-decoration: none;
  border-bottom: 1px solid transparent;
  transition: border-bottom-color 0.3s ease;
}

.dlink:hover {
  border-bottom-color: #3273dc;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .slides-dropdown .dropdown-content {
    min-width: 160px;
    padding: 0px 0px !important;
    font-size: 0.7rem !important;
  }

  .link-block-header {
    margin: 0.25rem;
  }
}