html {
  overflow-y: scroll;
}

.tab-bar {
    display: flex;
    justify-content: start;
    border-bottom: 2px solid #ccc;
    margin-bottom: 1rem;
  }
  
  .tab {
    padding: 10px 20px;
    margin-right: 10px;
    text-decoration: none;
    color: #333;
    border-bottom: 3px solid transparent;
    font-weight: 500;
  }
  
  .tab:hover {
    color: green;
  }
  
  .tab.active {
    font-weight: bold;
    border-bottom: 3px solid green;
    color: green;
  }
  .tab:visited {
    text-decoration: none;
    color: #1b582e;           /* Keep dark green after visit and on hover */
  }
  
  .hidden {
    display: none;
  }
/*  
  #loadMoreBtn {
    margin-top: 1rem;
    padding: 8px 16px;
    font-size: 1rem;
    background-color: #4CAF50;
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
  }
*/  
  .plant-divider {
    margin: 10px 0;
    border-top: 1px solid #ccc;
    list-style: none;
  }
  
  .share-buttons {
    margin-top: 40px;
  }

  .plant-ul-list {
    margin-bottom: 1.5rem;
    margin-left: 1em;
    /*list-style: none;*/
    padding: 0;
  }
  .plant-li-list {
    padding-top: .625rem;
    padding-bottom: .625rem;
    padding-left: .75rem;
    padding-right: .75rem;
    gap: .75rem;
    align-items: center;
    display: flex;
  }
  .plant-info-btn {
    opacity: .6;
    color: hsl(145 45% 32%);
    background-color: hsl(145 35% 90%);
    border-radius: 9999px;
    justify-content: center;
    align-items: center;
    width: 1.75rem;
    height: 1.75rem;
    /*display: flex;*/
    cursor: pointer;
    border: none;
    transition: background-color 0.2s, color 0.2s;
  }
  .plant-info-btn:hover {
    background-color: hsl(145 45% 32%);
    color: hsl(145 35% 90%);
    opacity: 1;
  }
  .plant-info-svg {
    width: 1rem;
    height: 1rem;
    display: block;
  }
  .plant-name-list {
    flex-grow: 1;
  }
  .plant-dot-list {
    background-color: hsl(145 45% 32%);
    border-radius: 9999px;
    width: .5rem;
    height: .5rem;
    flex-shrink: 0;
  }
  .btn-load-more {
    /*color: hsl(80 30% 97%);
    background-color: hsl(145 45% 32%);
    font-weight: 700;
    font-size: .875rem;
    line-height: 1.25rem;
    padding-top: .625rem;
    padding-bottom: .625rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    border-radius: 0.75rem;*/
    border: none;
    cursor: pointer;
    text-transform: none;
  }

.container-name-info {
  position: relative;
  display: inline-block;
  }

.info-popup {
  position: fixed; /* Crucial: This makes math independent of the list size */
  top: 0;
  left: 0;
  will-change: transform;
  padding: 10px 15px;
  border-radius: 8px;
  font-size: 14px;
  z-index: 9999;
  width: max-content; /* Ensure it fits the text */
  max-width: 200px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  pointer-events: none;
  background-color: white;
  color: #333; /* Ensure text is visible on white */
}

/* Hide when not active */
.info-popup[hidden] {
  display: none;
}

/* Small arrow pointing down */
.popup-arrow {
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -5px;
  border-width: 5px;
  border-style: solid;
  border-color: #1b582e transparent transparent transparent;
}