/* USED */
:root,
[data-bs-theme=light] {
  /* WEST COLORS
    #3F50A0; (63, 80, 160) darkblue
    #2fa4e7; (47, 164, 231) light blue
    #56803D; (86, 128, 61) green
  */
  /* --bs-primary:   #2fa4e7; */
  /* --bs-heading-color: #2fa4e7; */
  --bs-primary:   #3F50A0;
  --bs-heading-color: #3F50A0;
  --bs-primary-rgb: 47, 164, 231;
  --bs-link-color: #3F50A0;
  --bs-link-hover-color: #2fa4e7;
  --bs-link-color-rgb: 63, 80, 160;
  --bs-link-hover-color-rgb: 47, 164, 231;
  --bs-tertiary-color: rgba(86, 128, 61, 0.3);
  --bs-tertiary-color-rgb: rgba(86, 128, 61, 1);

}

.bg-primary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;
}

.bg-secondary {
  --bs-bg-opacity: 1;
  background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;
}

.col-md-9-cust {
  flex: 0 0 auto;
  width: 75%;
  /* height: flex;   */
  overflow: visible;
  margin-left: 12.5%;
}

.navbar-collapse {
  flex-basis: 100%;
  flex-grow: 1;
  align-items: center;
  padding: 1%;
  background-color: white;
}

.navbar {
  border-bottom: 2px solid var(--bs-primary);
  --bs-navbar-padding-y: 0rem;
  min-height: 7vh;
}

.nav-link.active {
  /* border-bottom: 3px solid var(--bs-primary); */
  /* border-bottom: 3px solid rgba(var(--bs-link-hover-color-rgb), 1); */
  /* border-bottom: 3px solid var(--bs-success);
  border-top: 3px solid var(--bs-success); */
  border-bottom: 2px solid var(--bs-tertiary-color-rgb);
  border-top: 2px solid var(--bs-tertiary-color-rgb);
  height: 100%;
  width: auto;
  position: relative;
  font-weight: 600;
}

.figure-logo {
  margin-bottom: 0.01rem;
  line-height: 1;
  width: auto;
  height: 8vh;
}

.figure-logo-container {
  display: flex;
  align-items: center;
}

.card-mod { 
align-items: center;
margin: 0.1%;
overflow: visible;
}

/* remove x-scrollbar form main page */
body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}


.main-container {
  flex: 1;
  display: flex;
  flex-direction: column;
  position: relative; /* creates positioning context */
  /* justify-content: space-between;
  overflow-y: auto;
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
  width: 100vw;
  padding-right: calc(var(--bs-gutter-x) * 0.5);
  padding-left: calc(var(--bs-gutter-x) * 0.5);
  margin-right: auto;
  margin-left: auto; */
}

.sidebar {
  position: fixed;
  top: 7%;
  bottom: 10%;
  width: inherit;
  overflow-y: auto;
  background: rgba(var(--bs-light-rgb), 1);
  z-index: 3;
  height: 100vh;
}

@media (max-width: 768px) {
  .sidebar {
    position: sticky;
    height: auto;
    width: 100%;
  }

}

.content-section {
  height: auto;
  min-height: 0;
  z-index: 2;
}

#extended-content {
  flex: 1
}

.container-fluid-cust {
  height: 100%;
  position: relative;
  overflow-x: hidden;
  overflow-y: hidden;
}

.text-disclaimer {
  color: var(--bs-danger);
}

/* make sure footer is on top */
.z-index-card {
  position: relative; /* Required for z-index to work */
  z-index: 9999; /* Adjust the z-index value */
}

.dash-accordion-header {
  display: flex;
  /* max-height: 5px; */
  /* justify-content: center; */
  /* text-align: center; */
}

.dash-accordion-text {
  display: flex;
  max-height: 5px;
  color: var(--bs-primary);
  text-align: center;
}

/* for easy button enabling downloading rain gauges as a geojson file */
.custom-GeoJSON-download {
  background-image: url('/assets/images/GeoJSON_Download.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

/* for easy button enabling downloading rain gauges as a shp file */
.custom-shp-download {
  background-image: url('/assets/images/Shp_Download.png');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

/* Keep DataTable containers width-stable and prevent horizontal jiggle
.dash-table-container {
  width: 100% !important;
}
.dash-spreadsheet-container {
  max-width: 100%;
  overflow-x: auto !important;
  box-sizing: border-box;
}
.dash-spreadsheet {
  min-width: 100%;
} */

/* .container-fluid-cust {
  height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
  padding: 0;
} */

.iframe-cust {
  width: 100%;
  height: calc(100vh - 170px);
  border: none;
  margin: 0;
  padding: 0;
  /* overflow-y: visible; */
  overflow-x: hidden;
  overflow-y: hidden;
  /* position: static; */
}

.lat-long-input input:invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 0.75rem);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
  outline: none;
}

/* Related to dropdown analysis navbar */

/* Some general formatting of dropdown-menu */
.dropdown-menu {
  background-color: rgba(255, 255, 255, 0.9);
  text-align: center;
}
/* only apply if viewer width > Xpx */
@media (min-width: 1200px) {
  .dropdown-menu {
    left: 50%;
    transform: translateX(-50%);
  }
}

/* Enable dropdown on hover */
.nav-item.dropdown:hover .dropdown-menu {
  display: block;
  margin-top: 0; /* Optional: prevent a gap between the button and the dropdown */
}

/* Hide the dropdown menu by default */
.nav-item.dropdown .dropdown-menu {
  display: none;
}

/* Show the dropdown menu when the parent li has the 'active' class */
.nav-item.dropdown.active .dropdown-menu {
  display: block;
}
/* ################# */
.nav-link.dropdown-toggle::after {
  display: none;
}


.dropdown-item {
  display: block;
  width: 100%;
  padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);
  clear: both;
  font-weight: 400;
  color: var(--bs-dropdown-link-color);
  text-align: inherit;
  text-decoration: none;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
  border-radius: var(--bs-dropdown-item-border-radius, 0);
}
.dropdown-item:hover, .dropdown-item:focus {
  /* color: var(--bs-dropdown-link-hover-color); */
  color: var(--bs-dropdown-link-color);
  /* background-color: var(--bs-dropdown-link-hover-bg); */
  /* background-color: rgba(168, 226, 242, 0.5); */
  background-color: rgba(var(--bs-link-hover-color-rgb), 0.3);
  /* background-color: var(--bs-tertiary-color); */
}
.dropdown-item.active, .dropdown-item:active {
  color: var(--bs-dropdown-link-active-color);
  text-decoration: none;
  /* background-color: var(--bs-tertiary-color-rgb); */
  background-color: rgba(var(--bs-link-hover-color-rgb));
}
.dropdown-item.disabled, .dropdown-item:disabled {
  color: var(--bs-dropdown-link-disabled-color);
  pointer-events: none;
  background-color: transparent;
  /* display: none; */
  /* visibility: hidden; */
}

/* Custom format section that is currently selected in about page*/
section:target {
  /* outline: 2px solid blue; */
  outline: 4px solid var(--bs-tertiary-color-rgb);
  /* background-color: #f0f0f0; */
  background-color: var(--bs-white);
}


.main-content {
  flex: 1; /* Ensures content takes up remaining space */
  overflow: auto; /* Allows scrolling only within the main content */
}


body.overflow-auto {
  overflow-y: auto;
}

body.overflow-hidden {
  overflow-y: hidden;
}

/* format column displaying 'about' info */
.about-col {
  /* Equivalent to col-10 (10 out of 12 columns) */
  /* width: 83.33%; */
  /* Equivalent to col-11 (10 out of 12 columns) */
  /* width: 91.666667%; */
  /* width: 66.666667%; */
  width: 83.333333%;
  margin-left: auto;
  margin-right:  auto; /* auto */
  padding-left: 0px;
  padding-right: 0px;
  border-left: 1px solid var(--bs-primary);
  border-right: 1px solid var(--bs-primary);
}

.about-card {
  --bs-card-spacer-y: 1rem;
  --bs-card-spacer-x: 1rem;
  --bs-card-title-spacer-y: 0.5rem;
  --bs-card-title-color: ;
  --bs-card-subtitle-color: ;
  --bs-card-border-width: var(--bs-border-width);
  /* --bs-card-border-color: var(--bs-border-color-translucent); */
  --bs-card-border-radius: var(--bs-border-radius);
  --bs-card-box-shadow: ;
  --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));
  --bs-card-cap-padding-y: 0.5rem;
  --bs-card-cap-padding-x: 1rem;
  --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);
  --bs-card-cap-color: ;
  --bs-card-height: ;
  --bs-card-color: ;
  --bs-card-bg: var(--bs-body-bg);
  --bs-card-img-overlay-padding: 1rem;
  --bs-card-group-margin: 0.75rem;
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  /* height: var(--bs-card-height); */
  color: var(--bs-body-color);
  word-wrap: break-word;
  background-color: var(--bs-card-bg);
  background-clip: border-box;
  border: var(--bs-card-border-width) solid var(--bs-primary);
  border-radius: var(--bs-card-border-radius);
  /* BChoat adding to card class below here */
  /* This section for only card w/o column */
  /* width: 83.333333%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 2rem;
  margin-bottom: 2rem; */
  /* This sectino for card within column */
  width: 95%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 2rem;
  margin-bottom: 2rem;
  padding: 1rem
}
/* format section headers in about */

.about-section {
  text-align: center;
}


/* ////////////////////////////////////////////////// */
/* dash and dash-leaflet updates */
/* ////////////////////////////////////////// */
/* Dash + Dash-Leaflet - Bottom Right Control */
/* ////////////////////////////////////////// */

/* Style the control button itself */
.leaflet-bottom.leaflet-right .leaflet-control-layers > .leaflet-control-layers-toggle {
  background-image: none !important;
  width: 15vw;                       /* Responsive width */
  min-width: 150px;                 /* Minimum width for usability */
  height: auto;
  
  position: relative;

  display: flex;
  justify-content: center;
  align-items: center;

  /* border: 4px solid hsl(119, 93%, 40%); */
  border: 4px solid var(--bs-tertiary-color-rgb);
  border-radius: 50px;

  margin: 0;
  padding: 0;

  background-color: rgba(var(--bs-success-rgb), 0.1);
  box-shadow: 24px 12px 12px rgba(0, 0, 0, 0.2);
  cursor: pointer;
}

/* Replace icon with styled label */
.leaflet-bottom.leaflet-right .leaflet-control-layers > .leaflet-control-layers-toggle::before {
  content: 'Available Datasets';
  color: var(--bs-primary);
  font-size: 1rem;
  font-weight: 600;
  
  padding: 4px 7px;
  /* border-radius: 50px; */
  
  display: inline-block;
  text-align: center;
  width: 100%;
}

/* Style the expanded control panel */
.leaflet-bottom.leaflet-right .leaflet-control-layers.leaflet-control-layers-expanded {
  padding: 0px;
  background-color: rgba(255, 255, 255, 0.9);
  /* border-radius: 4px; */
  border-radius: 20px 20px 4px 4px;
  /* width: flex;
  height: flex; */
  /* Hover effects */
  /* transition: all 0.3s ease; */
}

/* Style the expanded control panel */
.leaflet-bottom.leaflet-right .leaflet-control-layers {
  padding: 0px;
  background-color: rgba(255, 255, 255, 0.9);
  /* border-radius: 4px; */
  border-radius: 40px;
  /* width: flex;
  height: flex; */
  /* Hover effects */
  /* transition: all 0.3s ease; */
}


/* Make sure scrolling is smooth */
html, body {
  scroll-behavior: auto;  /* this does not seem to get picked up for some reason */
  scroll-padding-top: 100px; /* make header present when landing */
  
}

/* ///////////////////////////////////// */
/* modify tooltips styling */
/* increase pop-up/over window for dbc.tooltip */
.tooltip-inner {
  background-color: rgba(var(--bs-light-rgb), 1);
  color: black;
  border: 2px solid var(--bs-tertiary-color-rgb);
  max-width:30vw !important; /* Default is 200px */
  white-space: normal;
  text-align: left;
  font-size: 1rem;
}

.tooltip-inner ul,
.tooltip-inner ol {
  padding-left: 1.2em;
  margin: 0;
  text-align: left;
  list-style-position: outside;
}

.bs-tooltip-top .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {
  border-top-color: var(--bs-success);
}

.bs-tooltip-end .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {
  border-right-color: var(--bs-success);
}

.bs-tooltip-bottom .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {
  border-bottom-color: var(--bs-success);
}

.bs-tooltip-start .tooltip-arrow::before,
.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {
  border-left-color: var(--bs-success);
}

/* keeps brief resize when tooltips pop up */
.bs-tooltip-auto,
.bs-tooltip-top,
.bs-tooltip-end,
.bs-tooltip-bottom,
.bs-tooltip-start {
  position: fixed !important;
}


.img-domain{
  /* max-width: 100%; */
  width: 25vw;
  min-width: 100px;
  height: auto;
  border: 5px solid var(--bs-primary);
}

.img-domain.expandable-hover {
  transition: transform 0.3s ease; /* Smooth transition */
}

.img-domain.expandable-hover:hover {
  transform: scale(2); /* Increase size on hover */
}

/* increase pop-up/over window for dbc.Popover */
.popover {
    max-width: 50vw
}

.popover-header {
  font-size: var(--bs-popover-header-font-size);
  /* color: var(--bs-popover-header-color); */
  /* color: var(--bs-primary); */
  /* color: black; */
  color: var(--bs-tertiary-color-rgb);
  font-weight: bold;
}

.method-info-button {
  /* border: 2px solid  rgba(var(--bs-success-rgb), 0.5); */
  border: 2px solid  var(--bs-tertiary-color-rgb);
  border-radius: 50%; /* Circle shape */
  width: 30px;
  height: 30px;
  text-align: center;
  padding: 0;
  margin: 10px;
  position: absolute;
  bottom: 10px;
  right: 10px;
}

.expand-plot-button {
  /* border: 2px solid  rgba(var(--bs-success-rgb), 0.5); */
  border: 2px solid  var(--bs-tertiary-color-rgb);
  border-radius: 50%; /* Circle shape */
  width: 30px;
  height: 30px;
  text-align: center;
  padding: 0;
  margin: 10px;
  position: absolute;
  bottom: 10px;
  right: 50px;
}

/* .arrow-button {
  width: 50px;
  height: 20px;
  padding: 0;
  margin-bottom: 15px;
  border-radius: 6px;
  font-size: 80px;
  font-weight: bold;
  text-align: center;
  line-height: 20px;
  color: rgba(var(--bs-success-rgb), 1);
  border-color: white;
  background-color: white;
} */

.arrow-button {
  /* width: 50px; */
  height: 80%;
  padding: 0;
  margin-bottom: 3vh;
  /* padding-bottom: 15px; */
  border-radius: 6px;
  /* font-size: 80px; */
  /* font-size: 5rem; */
  font-size: clamp(2rem, 6vw, 6rem);
  font-weight: bold;
  text-align: center;
  line-height: 20px;  /* vertically center arrow */
  /* border: 2px solid  rgba(var(--bs-success-rgb), 1); */
  color: rgba(var(--bs-primary), 1);
  border-color: white;
  background-color: white;
  text-shadow:
    -1px -1px 0 var(--bs-tertiary-color-rgb),
     1px -1px 0 var(--bs-tertiary-color-rgb),
    -1px  1px 0 var(--bs-tertiary-color-rgb),
     1px  1px 0 var(--bs-tertiary-color-rgb);
  /* text-shadow:
    -1px -1px 0 rgba(var(--bs-link-hover-color-rgb), 1),
     1px -1px 0 rgba(var(--bs-link-hover-color-rgb), 1),
    -1px  1px 0 rgba(var(--bs-link-hover-color-rgb), 1),
     1px  1px 0 rgba(var(--bs-link-hover-color-rgb), 1); */
}


.arrow-button:hover {
  /* color: rgba(var(--bs-secondary-rgb), 1); */
  /* color: rgba(var(--bs-link-hover-color-rgb), 1); */
  color: rgba(var(--bs-link-color-rgb), 1);
}

.arrow-button:focus {
    /* outline: none;
    box-shadow: none; */
    border: none;
    /* color: inherit; */
}

  /* --bs-link-color-rgb: 63, 80, 160;
  --bs-link-hover-color-rgb: 47, 164, 231; */
/*  */


/* ////////////////////////////// */
/* style for welcome window */
/* ////////////////////////////// */

.modal {
    position: fixed;
    top: 0; left: 0;
    width: 100vw; height: 100vh;
    background-color: rgba(0,0,0,0.1);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 20000; /* make sure on top */
}
.modal.show {
    display: flex !important;
    align-items: center;
    justify-content: center;
}
.modal-content-welcome {
    background-color: white;
    padding: 2rem;
    border-radius: 10px;
    /* border: 5px solid  var(--bs-tertiary-color-rgb); */
    border: 5px solid  var(--bs-primary);
    text-align: center;
    /* margin-top: 0px; */
    margin: auto;
    max-width: 50%;
    max-height: 97%;
    overflow: auto;  /* scrolling when content overflows */
    font-size: 1.1rem;
}
.modal-content-welcome h4 {
    font-size: 1.5rem;
}

.modal-content-welcome h6 {
    font-size: 1.2rem;
}
.modal-content-plots {
    background-color: white;
    padding: 2rem;
    border-radius: 10px;
    /* border: 5px solid  var(--bs-tertiary-color-rgb); */
    border: 5px solid  var(--bs-primary);
    text-align: center;
    /* margin-top: 0px; */
    margin: auto;
    max-width: 65%;
    max-height: 97%;
    overflow: auto;  /* scrolling when content overflows */
}
.modal-content-report {
    background-color: white;
    padding: 2rem;
    border-radius: 10px;
    /* border: 5px solid  var(--bs-tertiary-color-rgb); */
    border: 5px solid  var(--bs-primary);
    text-align: center;
    /* margin-top: 0px; */
    margin: auto;
    max-width: 90%;
    /* max-height: 97%; */
    height: 100%;
    overflow: auto;  /* scrolling when content overflows */
}

.modal-content-confirm-existing {
    background-color: white;
    padding: 2rem;
    border-radius: 10px;
    /* border: 5px solid  var(--bs-tertiary-color-rgb); */
    border: 5px solid  var(--bs-primary);
    text-align: center;
    /* margin-top: 0px; */
    margin: auto;
    /* width: 100%; */
    /* max-width: 100%; */
    max-width: 75%;
    /* max-height: 97%; */
    /* max-height: 85%; */
    /* height: 95%; */
    height: 100%;
    /* height: 85%; */
    overflow: auto;  /* scrolling when content overflows */
    /* position the modal window */
    position: absolute;
    /* top: 10vh; */
    /* left: 3vw; */
    /* right: 3vw; */
    margin: 0;
    transform: none;
}

.dismiss-button {
    margin-top: 1rem;
    border: 2px solid var(--bs-danger);
    padding: 0.5rem 1rem;
    cursor: pointer;
    font-weight: 700
}
/* 
modal
modal-dialog
modal-content
modal-header
modal-title
modal-body
        
modal-footer
dismiss-button btn btn-primary */
