/* .dark_theme * {
  background-color: inherit;
  color: inherit;
} */

#page_layout {
  overflow-x: clip;
}

#sidebar {
  text-align: center;
  padding: 2rem 1rem;
  background-color: #f7f7f7;
  padding-bottom: 0.1rem;
  z-index: auto;
  position: relative;
}

#sidebar h2 {
  text-align: left;
  margin-bottom: 0;
  color: #019875;
}

/* Hide the blurb on a small screen */
#blurb {
  display: none;
}

#sidebar-toggle {
  display: none;
  top: -2rem !important;
  background-color: wheat;
  width: 3rem;
  /* height: 0.1rem; */
  border-radius: 0.3rem;
  margin-left: 17.5rem;
}

/* #navbar-toggler { */
/* top: -0.1rem !important; */
/* background-color: wheat; */
/* width: 6rem;
  position: relative;
  border-radius: 0.3rem; */
/* margin-left: 19.1rem; */
/* } */

#topic {
  display: none;
}

.show #navbar-toggler {
  top: 3rem;
  transition: top 0.3s ease-in-out;
}

div #sidebar_tabs {
  align-self: center;
}

/* #collapse *:first-child {
  /* margin-top: 1rem; */

*/ .nav-link.active {
  font-weight: bold;
}

#sidebar_items {
  padding-right: 0%;
  padding-top: 0%;
  margin-right: 0rem;
}

/* add the three horizontal bars icon for the toggle */
.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(0, 0, 0, 0.5)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.custom_tabs {
  padding-right: 0;
  width: 19rem;
  /* border-right: 3px,solid, !important; */
  /* background-color: darkgoldenrod; */
  /* box-sizing:border-box; */
}

.cust_tab {
  /* padding-right: 1rem; */
  /* justify-self: center; */
  /* margin-left: 1rem; */
  /* color: palevioletred; */
  /* background-color: darkgreen; */
  /* border-right: 4px,solid,!important; */
  width: 19rem;
  /* padding: 1rem; */
}

#page-content {
  padding: 2rem 1rem;
}

#user_status_holder {
  display: none;
}

a {
  text-decoration: none !important;
}

.link_text {
  /* color:#cb1ee2; */
  color: #e21ecb;
  /* color:inherit; */
  /* color: #dfdfe9; */
  /* text-decoration: underline; */
}

.link_text_2 {
  color: inherit;
  opacity: 0.8;
}

.attributes {
  margin-bottom: 4rem;
}

#sender_message {
  height: 20rem;
}

.sneaky_trap {
  display: none;
}

.post_meta_metadata {
  height: 40rem;
}

.card-text {
  color: #3e3f3a !important;
}

.plotly svg {
  .bg {
    fill: transparent !important;
  }
}

.slider_container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: 10;
  cursor: pointer;
  display: none;
}

.slider_container2 {
  display: none;
}

.hoverer_overlay {
  position: relative;
}

.range_slider {
  position: absolute;
  top: 0;
  left: 0;
  width: 79%;
  height: 100%;
  opacity: 0;
  margin-left: 3rem;
  margin-right: 3rem;
}

#feedback_holder {
  position: sticky;
  top: 3rem;
  z-index: 1020;
}

#alert_feedback {
  padding: 0.2rem;
  text-align: center;
  /* text-overflow: clip; */
}

.button_link {
  background: none;
  border: none;
  cursor: pointer;
  padding: 1rem;
}

.home_image_wrapper {
  position: relative;
}

.home_image_wrapper::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: repeating-linear-gradient(0deg,
      rgba(175, 168, 168, 0.5) 0%,
      rgba(175, 168, 168, 0.5) 10%,
      rgba(0, 0, 0, 0.1) 10%,
      rgba(0, 0, 0, 0.1) 20%);
  border-radius: 0.3rem;
  pointer-events: none;
}

.dashboard_image {
  width: 100%;
  height: auto;
  display: block;
}

/* .card_title {
  font-size: 18px;
}
.card_byline {
  font-size: 14px;
} */
.visual_link {
  cursor: pointer;
  font-size: 12px;
  color: #3e3f3a;
}

.home_byline {
  font-size: 24px;
}

.page_title {
  font-size: 28px;
  font-weight: 450;
  margin-bottom: 2.5rem;
}

.text_title {
  font-weight: 450;
  font-size: 20px;
}

.board_title {
  font-size: 20px;
  font-weight: 450;
  margin-bottom: 1.5rem;
}

.sidebar_title {
  font-weight: 500;
}

.rc-slider-track {
  background-color: #e5c21f;
  height: 8px !important;
}

.rc-slider-rail {
    height: 8px !important;
}


.rc-slider-handle {
  border: solid 2px #e5c21f;
  width: 21px !important;
  height: 21px !important;
  /* margin-top: -6px !important; */
}

.rc-slider-dot {
  width: 16px !important;
  height: 16px !important;
  top: -4.3px !important;
  margin-left: -7.5px !important;
 
  /* border-radius: 50%; */
  /* background-color: #e21ecb; */
}

.rc-slider-mark-text {
  color: inherit;
  font-size:medium;
  margin-top: 4px;
}

.slider_autoplay_controls {
  font-size: 34px;
}

.plotly .geolayer rect {
  fill: none !important;
}

.navlink_custom {
  color: #3e3f3a !important;
  text-transform: capitalize !important;
}
.coffee_button {
    background-color: #f6d32d !important;
    color: #000000 !important;
    border: none !important;
    border-radius: 25px;
}

.coffee_button:hover {
    background-color: #e5c21f !important;
    transform: translateY(-2px);
    transition: all 0.2s;
}
/* Scroll indicator */
.scroll-indicator-container {
    position: fixed;
    bottom: 80px;
    right: 20px;
    text-align: center;
    opacity: 0;
    transition: opacity 0.3s;
    pointer-events: auto;
    z-index: 1000;  /* Higher z-index */
    background-color: rgba(255, 152, 0, 0.95);  /* Orange background */
    padding: 10px 15px;
    border-radius: 25px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);  /* Shadow for depth */
    cursor: pointer;
}

.scroll-indicator-container:hover {
    background-color: rgba(255, 152, 0, 1);  /* Brighter on hover */
    transform: scale(1.05);
    transition: all 0.2s;
}
.scroll-indicator-container.show {
    opacity: 1;
}

.scroll-arrow {
    font-size: 2rem;
    animation: bounce 2s infinite;
    color: #ffffff;
}

.scroll-text {
    display: block;
    color: #ffffff; 
    font-weight: 500;
    font-size: 0.875rem;
}
.scroll-dismiss-btn {
    position: absolute;
    top: -8px;
    right: -8px;
    background-color: rgba(0, 0, 0, 0.7);
    color: white;
    border: none;
    border-radius: 50%;
    width: 24px;
    height: 24px;
    font-size: 18px;
    line-height: 1;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    z-index: 1001;
}

.scroll-dismiss-btn:hover {
    background-color: rgba(0, 0, 0, 0.9);
}

@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-10px);
    }
    60% {
        transform: translateY(-5px);
    }
}

.dash-dropdown .Select-control {
  border-radius: 10px !important;
}

.dash-dropdown .Select-menu-outer {
  border-radius: 10px !important;
}
/* .visual_link_span {
  cursor: none;
  position: relative;
  z-index: 2000;
} */
@media (hover:none) {
  .slider_container {
    display: block;
  }

  div#tree_map_holder .slider_container {
    display: none;
  }
}

/* Scaling Graphs*/

dash-graph {
  zoom: 0.45;
}


@media (min-width: 475px) {
  .dash-graph {
    zoom: 0.6;
  }
}

@media (min-width: 768px) {
  .dash-graph {
    zoom: 0.85;
  }
}

@media (min-width: 1024px) {
  .dash-graph {
    zoom: 1;
  }
}

/* Fixing Hover */
/* @media (hover: none){
  .plotly svg {
    pointer-events: none !important;
  }
} */
@media (min-width: 48em) {

  #sidebar {
    position: fixed;
    top: 56px;
    left: 0;
    bottom: 0;
    width: 21rem;
    text-align: left;
    transition: margin 0.3s ease-in-out, padding 0.3s ease-in-out;
  }

  #sidebar-toggle {
    display: inline-block;
    position: relative;
    top: 0;
    transition: top 0.3s ease-in-out;
  }

  /* add negative margin to sidebar to achieve the collapse */
  #sidebar.collapsed {
    margin-left: -15.5rem;
    padding-right: 0.5rem;
  }

  /* move the sidebar toggle up to the top left corner */
  #sidebar.collapsed #sidebar-toggle {
    top: -2rem;
  }

  /* also adjust margin of page content */
  #sidebar.collapsed~#page-content {
    margin-left: 6.5rem;
  }

  /* move all contents of navbar other than header (containing toggle) further
      off-screen */
  #sidebar.collapsed>*:not(:first-child) {
    margin-left: -6rem;
    margin-right: 6rem;
  }

  /* reveal the blurb on a large screen */
  #blurb {
    display: block;
  }

  /* Hide the toggle on a large screen */
  #navbar-toggle {
    display: none;
  }

  #collapse {
    display: block;
  }

  #topic {
    display: block;
  }

  /* set margins of the main content so that it doesn't overlap the sidebar */
  #page-content {
    margin-left: 22rem;
    margin-right: 2rem;
    transition: margin-left 0.3s ease-in-out;
  }

  .text_container_row {
    width: 75%;
  }

  #feedback_holder {
    top: 3.25rem;
    margin-left: 63rem;
  }

  .before_dropdown {
    min-height: 70vh !important;
  }

  /* #slider_container {
    display:none;
  } */
  /* #home_page_content {
    padding: 0.6rem !important;
  } */
}

@media only screen and (max-width: 576px) {
  div .hm_tile {
    margin-bottom: 1rem;
  }
}

/* #home_page_content {
  padding: 3rem;
} */
#home_img {
  max-height: 280px;
  object-fit: cover;
}

#footer_container {
  z-index: 7;
  height: 10rem;
  background-color: #161b24;
  position: absolute;
}

#wrapper {
  min-height: 100vh;
  padding-bottom: 0.1rem;
}

#navbar_container {
  max-width: 90%;
}

.before_dropdown {
  min-height: 64vh;
}

#nav_title {
  color: #e29a1e;
}

#footer_links {
  A {
    color: #dfdfe9;
  }
}

#nav_items_container {
  max-width: 75%;
}

.navbar_custom {
  background-color: white !important;
}

div .tab--selected.jsx-2309230230 {
  color: #e29a1e;
}

div .tab--selected.jsx-2309230230:hover {
  background-color: rgb(248, 244, 205);
}

div .dash-graph {
  margin-bottom: 2rem !important;
}

.plotly svg {
  background: transparent !important;
}

div .plot-container.plotly {
  background: rgb(248, 244, 205) !important;
  border-radius: 8px !important;
  /* background: rgb(171, 210, 229) !important; */
}
/* .dash-spreadsheet-container {
  border-radius: 8px !important;
  overflow: hidden;
} */
.dash-spreadsheet-container th {
  background-color: rgb(248, 244, 205) !important;
}

.dash-spreadsheet table {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border-radius: 8px !important;
  border: 1px solid #ddd !important;
}
.dash-spreadsheet-container tr:first-child th:first-child {
  border-top-left-radius: 8px !important;
}

.dash-spreadsheet-container tr:first-child th:last-child {
  border-top-right-radius: 8px !important;
}

.dash-spreadsheet-container tr:last-child td:first-child {
  border-bottom-left-radius: 8px !important;
}

.dash-spreadsheet-container tr:last-child td:last-child {
  border-bottom-right-radius: 8px !important;
}

.Select-value-label {
  color: #e29a1e !important;
}

div .hm_tile {
  background-color: rgb(248, 244, 205);
  padding-top: 0.2rem;
  margin-bottom: 0.1rem;
}

.text_body {
  background-color: rgb(248, 244, 205);
}

.blog-card {
  transition: transform 0.2s;
  border: none;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  background-color: var(--bs-white);
}

.blog-card:hover {
  transform: translateY(-5px);
}
.cell-table {
  border-radius: 8px !important;
}
.dashboard-preview {
  background-color: #f8f9fa;
  border-radius: 8px;
  height: 400px;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}
 .ctl_btn_txt {
  font-size: 10px;
 }
/* .light_theme {
    transition: background-color 0.5s ease, color 0.5s ease; 
  } */
.dark_theme {
  background-color: #22282f;
  /* color: #e09223; */
  color: #dfdfe9;

  transition: background-color 0.5s ease, color 0.5s ease;

  .navbar_custom {
    background-color: #121822 !important;
  }

  .navlink_custom {
    color: rgb(248, 244, 205) !important;
  }

  .dash-dropdown .Select-menu-outer {
    background-color: #393d42 !important;
  }

  .dash-dropdown .Select-menu {
    color: #dfdfe9;
  }

  .dash-dropdown .Select-control {
    background-color: #393d42;
  }

  #footer_container {
    background-color: #161b24;
  }

  #sidebar {
    background-color: #1d2228;
  }

  .tab {
    color: #dfdfe9;
    background-color: #323e51;
  }

  .tab.jsx-2309230230 {
    background-color: #1d2228;
  }

  .tab--selected.jsx-2309230230:hover {
    background-color: #3d4754;
  }

  .tab--selected.jsx-2309230230 {
    color: #e29a1e;
  }

  /* .js-pl0tly-plot .plotly .main-svg {
    background-color: #171a1e !important;
  } */
  /* .plotly .main-svg{
    background-color: transparent;
    background: none;
  } */
  .plotly svg {
    /* background: transparent !important; */
    fill: #e29a1e;
    /* color: #dfdfe9; */

    /* text {
      fill: #dfdfe9 !important; 
      /* fill:#e29a1e !important; */
    /* color:#dfdfe9 !important; */
    /* } */
    */ .bg {
      /* fill: #323e51 !important; */
      fill: transparent !important;
    }
  }

  /* .tree_map_holder .plotly svg{
    text {
      fill: transparent !important;
    }
  } */
  g.infolayer text {
    fill: #dfdfe9 !important;
  }

  g.subplot.xy text {
    fill: #dfdfe9 !important;
  }

  div .plot-container.plotly {
    background: #393d42 !important;
  }

  .Select-value-label {
    color: #e29a1e !important;
  }

  .dash-spreadsheet-container th {
    background-color: #323e51 !important;
  }

  .dash-spreadsheet-inner td {
    background-color: #393d42 !important;
  }

  button #sidebar-toggle {
    color: #dfdfe9 !important;
  }

  div .hm_tile {
    background: #393d42 !important;
    color: rgb(248, 244, 205);
    border-color: #121822;
  }

  .home_title {
    color: rgb(248, 244, 205)
  }

  #sidebar-toggle {
    background-color: #323e51;
  }

  #navbar-toggler {
    border-color: transparent !important;
  }

  .text_body {
    background-color: #393d42;
  }

  .text_title {
    color: rgb(248, 244, 205);
  }

  .board_title {
    color: rgb(248, 244, 205);
  }

  .page_title {
    color: rgb(248, 244, 205);
  }

  .visual_link {
    color: rgb(248, 244, 205);
  }

  .card-text {
    color: rgb(248, 244, 205) !important;
  }

  .blog-card {
    background-color: #1d2228;
    color: #dfdfe9;
  }

  .blog-card .card-title {
    color: #e29a1e;
  }

  .blog-card .text-muted {
    color: #adb5bd !important;
  }

  .form-control {
    color: #dfdfe9 !important;
    background-color: #323e51;
  }

  .form_area_custom {
    background-color: #22282f !important;

  }

  .form_area_custom .form-select {
    color: #dfdfe9 !important;
    background-color: #323e51 !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dfdfe9' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  }

  input::placeholder,
  textarea::placeholder {
    color: #adb5bd !important;
    opacity: 1;
    /* Firefox */
  }

  /* svg .main-svg {
      background: #e29a1e !important;
    } */

  /* .js-plotly-plot {
      background: #e29a1e !import.plot-container .plotly{
      background: #e29a1e !important;
    } ant;
     } */
  /* rect .bg {
      fill: #171a1e !important;
    } */
  /* g .xy .nsewdrag.drag {
      fill: #2222lef7; */
  .ag-theme-alpine {
    --ag-background-color: #1d2228;
    --ag-foreground-color: #dfdfe9;
    --ag-header-background-color: #2a2e35;
    --ag-odd-row-background-color: #252930;
    --ag-border-color: #3a3e45;
  }
  .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='rgba(255, 255, 255, 0.8)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
  }
}

/* Landing page styles */
.hero-section {
  background-color: var(--bs-light);
}

.service-card {
  transition: transform 0.2s;
  border: none;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.service-card:hover {
  transform: translateY(-5px);
}

.service-card i {
  font-size: 2.5rem;
  color: var(--bs-primary);
}

.dark_theme .hero-section {
  background-color: #323e51;
}

.dark_theme .service-card {
  background-color: #1d2228;
  color: #dfdfe9;
}

/* Landing page animation styles */
.landing-graph-container {
  position: relative;
}

.landing-graph {
  height: 400px;
  width: 100%;
}

.landing-formula-top {
  position: absolute;
  top: 5px;
  left: 50%;
  transform: translateX(-50%);
  color: inherit;
  font-size: 12px;
}

.landing-formula-bottom {
  position: absolute;
  bottom: 50px;
  left: 50%;
  transform: translateX(-50%);
  color: inherit;
  font-size: 12px;
}
/* .dark_theme .modal-content {
  background-color: #1d2228 !important;
  color: #dfdfe9 !important;
}

.dark_theme .modal-header {
  background-color: #323e51 !important;
  border-bottom-color: #393d42 !important;
}

.dark_theme .modal-body {
  background-color: #1d2228 !important;
}

.dark_theme .modal-footer {
  background-color: #323e51 !important;
  border-top-color: #393d42 !important;
}

.dark_theme .modal-title {
  color: rgb(248, 244, 205) !important;
}*/

.dark_theme .close-btn {
  color:#dfdfe9;
} 
.tree-map-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  /* padding: 20px; */
}

.tree-map-overlay-content {
  background-color: white;
  padding: 10px;
  border-radius: 8px;
  max-width: 100%;
  width: 100%;
  max-height: 100%;
  overflow: auto;
  position: relative;
}

.close-btn {
  position: absolute;
  top: 10px;
  right: 15px;
  font-size: 28px;
  background: none;
  border: none;
  cursor: pointer;
}

.dark_theme .tree-map-overlay-content {
  background-color: #1d2228;
  color: #dfdfe9;
}

.dark_theme .dashboard-preview {
  background-color: #1d2228;
}

/* Alternative Mobile Menu Styles */
.mobile-menu-toggle {
  display: none;
  position: absolute;
  top: 0;
  left: 100%;
  /* z-index: 1041; */
  background-color: #e29a1e;
  color: white;
  border: none;
  border-radius: 0 8px 8px 0;
  width: 48px;
  height: 48px;
  font-size: 22px;
  box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.3);
  cursor: pointer;
  transition: all 0.3s;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
}

.mobile-menu-toggle:hover {
  transform: scale(1.1);
  background-color: #d18a0e;
}

@media (max-width: 47.99em) {
  .mobile-menu-toggle {
    display: flex !important;
  }
}

.mobile-menu-overlay {
  position: fixed;
  top: 56px;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0);
  z-index: 1040;
  pointer-events: none;
  transition: background-color 0.3s;
}

.mobile-menu-overlay.show {
  background-color: rgba(0, 0, 0, 0.5);
  pointer-events: auto;
}

.mobile-menu-panel {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 80%;
  max-width: 320px;
  background-color: white;
  box-shadow: 2px 0 8px rgba(0, 0, 0, 0.2);
  transform: translateX(-100%);
  transition: transform 0.3s;
  pointer-events: auto;
  display: flex;
  flex-direction: column;
}

.mobile-menu-content {
  flex: 1;
  overflow-y: auto;
  width: 100%;
}

.mobile-menu-overlay.show .mobile-menu-panel {
  transform: translateX(0);
}

.mobile-menu-header {
  padding: 1.5rem 1rem;
  border-bottom: 1px solid #e0e0e0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: sticky;
  top: 0;
  background-color: white;
  z-index: 1;
}

.mobile-menu-title {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 500;
  color: #3e3f3a;
}

.mobile-menu-close {
  background: none;
  border: none;
  font-size: 1.5rem;
  color: #666;
  cursor: pointer;
  padding: 0.5rem;
  margin: -0.5rem;
}

.mobile-menu-items {
  padding: 1rem 0;
}

.mobile-menu-item {
  display: flex;
  align-items: center;
  padding: 1rem 1.5rem;
  color: #3e3f3a;
  text-decoration: none;
  transition: background-color 0.2s;
  border-left: 3px solid transparent;
}

.mobile-menu-item:hover {
  background-color: #f5f5f5;
}

.mobile-menu-item.active {
  background-color: #fff8e1;
  border-left-color: #e29a1e;
}

.mobile-menu-item i {
  margin-right: 1rem;
  font-size: 1.25rem;
  color: #999;
}

.mobile-menu-item.active i {
  color: #e29a1e;
}

.mobile-menu-item-text {
  font-size: 1rem;
  font-weight: 400;
}

.mobile-menu-item.active .mobile-menu-item-text {
  font-weight: 500;
  color: #e29a1e;
}

.dark_theme .mobile-menu-toggle {
  background-color: #e29a1e;
}

.dark_theme .mobile-menu-panel {
  background-color: #1d2228;
}

.dark_theme .mobile-menu-header {
  background-color: #1d2228;
  border-bottom-color: #393d42;
}

.dark_theme .mobile-menu-title {
  color: #dfdfe9;
}

.dark_theme .mobile-menu-close {
  color: #dfdfe9;
}

.dark_theme .mobile-menu-item {
  color: #dfdfe9;
}

.dark_theme .mobile-menu-item:hover {
  background-color: #2a2e35;
}

.dark_theme .mobile-menu-item.active {
  background-color: #323e51;
}

/* .navbar * {
    background-color: inherit;
  } */
/* Toggle button */
/* .toggle {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 34px;
  }
  .toggle #theme_toggler {
    display: none;
  }
  .slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #333;
    transition: 0.4s;
    border-radius: 34px;
  }
  .slider:before {
    position: absolute;
    content: "";
    height: 26px;
    width: 26px;
    left: 4px;
    bottom: 4px;
    background-color: #fff;
    transition: 0.4s;
    border-radius: 50%;
  }
  #theme_toggler:checked + .slider {
    background-color: #060;
  }
  #theme_toggler:checked + .slider:before {
    transform: translate(26px);
  } */

/* Navbar Mobile Collapse Positioning */
@media (max-width: 991.98px) {
  #navbar_container {
      position: static; /* Let the collapse find the main Navbar (sticky-top) parent */
  }

  #navbar-collapse {
      position: absolute;
      top: 100%;
      right: 0;
      left: auto !important;
      width: auto !important;
      min-width: 200px;
      max-width: 200px;
      background-color: white;
      z-index: 1050;
      padding: 0.5rem 0;
      border-radius: 0 0 0 8px;
      box-shadow: -2px 4px 10px rgba(0,0,0,0.15);
      margin-top: 0;
      /* No margin-right specific to container needed if positioning relative to standard navbar */
      border-top: none;
  }
  
  #navbar-collapse .nav-link {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    text-align: right;
  }

  /* Right align the utility items container and their content */
  #navbar-collapse > .row > div {
    display: flex;
    flex-direction: column;
    align-items: flex-end !important; /* Force content to right */
    justify-content: flex-end !important;
    padding-right: 1.5rem;
  }
  
  /* Target the inner flex div in app.py for utilities */
  #navbar-collapse > .row > div > div {
      align-items: flex-end !important;
  }
}

.dark_theme #navbar-collapse {
    background-color: #121822; /* Matches dark theme navbar */
    /* box-shadow: -2px 4px 10px rgba(0,0,0,0.4); */
    /* border: 1px solid #323e51; */
    border-top: none;
    border-right: none;
}