body {
    font-family: sans-serif;
    background-color: #f2f2f2;
}
.navbar {
  background-color: #5c8084;
  box-shadow: 0 2px 3px rgba(10, 10, 10, 0.1); /* subtle shadow for depth */
}
.icon-most-right {
  margin-right: -100px;
}
.has-text-eed68e {
  background-color: #eed68e;
}
.has-margin-bottom-1 {
  margin-bottom: -1px;
}
.columns.is-variable.is-1 {
  --columnGap: 0.5rem !important; /* Override the column gap variable for the tiles */
}
.tile-container {
  display: flex;
  flex-wrap: wrap;
  gap: var(--columnGap); /* Use the column gap variable */
}
.outer-tile {
  box-sizing: border-box;
  padding: 0.5rem;
}

@media screen and (min-width: 769px) {
  /* Default for 4 or more tiles */
  .outer-tile.is-one-quarter {
    flex: 0 0 calc(25% - var(--columnGap));
    max-width: calc(25% - var(--columnGap));
  }

  /* For single tile */
  .outer-tile.is-half {
    flex: 0 0 calc(50% - var(--columnGap));
    max-width: calc(50% - var(--columnGap));
  }

  /* For two tiles */
  .outer-tile.is-two-thirds {
    flex: 0 0 calc(66.666% - var(--columnGap));
    max-width: calc(66.666% - var(--columnGap));
  }
}

@media screen and (max-width: 768px) {
  .outer-tile {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }
}
.tile {
  height: 100%;
}
.hidden-tile {
  display: none !important;
}
.buttons {
  display: flex;
  justify-content: space-between;
  margin-top: auto;
}
.button {
  background-color: rgb(54, 54, 54);
  color: white;
}
.has-less-padding{
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}
.has-less-margin{
    margin-top: 5px !important;
    margin-bottom: 5px !important;
}
.no-side-padding{
    padding-left: 0px !important;
    padding-right: 0px !important;
}
.has-negative-margin{
    margin-left: 15px !important;
    margin-right: -4px !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}
.card-footer {
       border-top: none;
       margin-bottom: 10px;
   }
.copy-icon {
    width: 15px;
    height: 15px;
    vertical-align: middle;
    margin-left: 4px;
    margin-bottom: 4px;
    cursor: pointer;
}
.card-header {
  position: relative;
}
.table-container {
  position: absolute;
  z-index: 1000;
  top: 100%;
  left: 0;
  max-height: 150px;
  overflow-y: auto;
  overflow-x: hidden;
  border: 1px solid #363636;
  box-shadow: 0 2px 5px rgba(0,0,0,0.2);
  display: none;
}
.table {
  background-color: white;
  padding: 10px 10px;
}
.table.is-narrow td, .table.is-narrow th {
  padding: 0.1em 0.1em;
}
.siret-checkbox {
    transform: scale(1.5);
    margin-right: 1em;
}
.progress-bars {
  display: flex;
  height: 6rem;
  border-radius: 6px;
  overflow: hidden;
  font-size: 1rem;
}
.progress-bar {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1rem;
  white-space: normal;
  overflow: hidden;
  flex-grow: 1; /* Ensures bars take proportional space */
}
.progress-text {
  color: #e3f0f1;
  z-index: 1;
  text-align: center; /* Center text horizontally */
}
@media screen and (max-width: 768px) {
  .progress-text {
    font-size: 0.75rem;
  }
}
@media (max-width: 768px) {
  .button {
    font-size: 0.75rem;
  }
  .tab-icon-text span {
    display: none;
  }
  .tabs a {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
.ctc-icon {
  height: 40px;
  width: auto;
  margin-right: 10px;
}

@media screen and (max-width: 768px) {
  .ctc-icon {
    height: 26px;
    width: auto;
  }
}
.toggle-icon {
  width: 45px;
  height: 45px;
  margin-right: 23px;
  margin-top: 3px;
}
:root {
  --color-bg: #ffffff;
  --color-text: #000000;
  --color-card-bg: #f5f5f5;
  --color-card-text: #333333;
  --color-item-bg: #D3D3D3;
  --color-item-text: #000000;
  --color-title-text: #000000;
  --color-content-text: #000000;
  --color-header-title-text: #000000;
  --color-label-text: #000000;
  --color-label-text-strong: #000000;
  --color-title-text: #363636;
}
[data-theme="dark"] {
  --color-bg: #41464d;
  --color-text: #ffffff;
  --color-card-bg: #ffffff;
  --color-card-text: #f5f5f5;
  --color-item-bg: #5C5470;
  --color-item-text: #D3D3D3;
  --color-title-text: #D3D3D3;
  --color-content-text: #000000;
  --color-header-title-text: #D3D3D3;
  --color-label-text: #D3D3D3;
  --color-label-text-strong: #D3D3D3;
  --color-title-text: #D3D3D3;
}
body {
  background-color: var(--color-bg);
  color: var(--color-text);
}
.hero-body {
  background-color: var(--color-bg);
  color: var(--color-text);
}
.card {
  background-color: var(--color-bg);
  color: var(--color-text);
}
.column.card.has-background-grey-lighter {
  background-color: var(--color-item-bg);
  color: var(--color-item-text);
}
.title-toggle, .card-header-title {
  color: var(--color-title-text);
}
.label-text {
  color: var(--color-label-text);
}
.title-text {
  color: var(--color-title-text);
}
.label-text strong {
  color: var(--color-label-text-strong);
}
.content {
  color: var(--color-content-text);
}
/*.white-borders * {
    border-color: #ffffff0d !important;
    border-width: 0.2px !important;
}*/
.warning.box {
    color: white;
}
.card .has-less-padding .has-less-margin {
  margin-top: auto;
}
.small-text {
  font-size: 0.9rem;
}
.sidebar-text {
  margin-left: 20px;
}

.menu.is-menu-main .menu-list a.sidebar-text {
  color: #9ca3b0 !important;
}

.menu.is-menu-main .menu-list .menu-item-label {
  color: #9ca3b0 !important;
}

.menu.is-menu-main .menu-list a span {
  color: #9ca3b0 !important;
}

.bottom-links .sidebar-text .menu-item-label {
  color: #9ca3b0 !important;
}

.bottom-links p.sidebar-text span {
  color: #9ca3b0 !important;
}
.bottom-links {
  margin-bottom: 0;
  border-top-width: 0.1px;
  border-top-style: solid;
  padding-top: 10px;
  margin-top: 10px;
}
.custom-ul {
  list-style-type: disc;
  list-style-position: inside;
  padding-left: 1em;
}
.scrollable-menu {
  max-height: 700px;
  overflow-y: auto;
}

.rounded-5px {
    border-radius: 5px;
}
.divider {
    border-top: 2px solid #dbdbdb;
    margin: 1rem 0;
}

/* Tooltips formatting */
.tooltip {
  position: relative;
  display: inline-block;
  cursor: help;
}

/* Tooltip text */
.tooltip .tooltiptext {
  visibility: hidden;
  min-width: 400px;
  max-width: 700px;
  background-color: black;
  color: white;
  text-align: center;
  border-radius: 6px;
  padding: 5px;

  /* Position the tooltip below the icon */
  position: absolute;
  z-index: 10000;
  top: 30px;
  left: 50%;
  transform: translateX(-100%);

  opacity: 0; /* Start transparent */
  transition: opacity 0.3s;
}

@media screen and (max-width: 768px) { /* Bulma's default mobile breakpoint */
  .tooltip .tooltiptext {
    min-width: 300px;
  }
}

/* Tooltip arrow */
.tooltip .tooltiptext::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 50%;
  transform: translateX(-50%);
  border-width: 5px;
  border-style: solid;
  border-color: black transparent transparent transparent;
}

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

.custom-map-box {
    height: 800px;
}

.map-iframe {
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 768px) {
  .custom-map-box {
    padding-left: 0;
    padding-right: 0;
    margin-left: -1.5rem;
    margin-right: -1.5rem;
    width: calc(100% + 3rem);
    height: 600px;
  }
}
/* Override to make the ::after pseudo-element ineffective */
section.section.is-title-bar ul li::after {
  content: none !important;
}
/* Set non-active tabs to normal font weight */
section.section.is-title-bar .tabs ul li a {
  font-weight: normal;
  font-size: 1.1rem;
}
/* Set the active tab to bold font weight */
section.section.is-title-bar .tabs ul li.is-active a {
  font-weight: bold;
  font-size: 1.1rem;
  color: black;
}
@media screen and (min-width: 769px) {
  .section {
    padding: 0rem 3rem;
  }
}
.is-dark {
  background-color: #363636;
}
.button.is-grey.is-outlined {
  background-color:rgba(0,0,0,0);
  border-color: #e3dbdb;
  color:#363636
}
.has-background-dark {
  background-color: #363636;
}
.has-text-light {
  color: #f5f5f5;
}
.tabs ul li.is-active.has-background-dark {
  background-color: black;
}

/* Style for the navbar items */
.navbar-item {
  border-top: 1px solid #4a4a4a; /* Add a border to each item */
  color: #333; /* Text color */
}

/* The last navbar item shouldn't have a border at the bottom */
.navbar-item:first-child {
  border-top: none;
}

.greenish {
  background-color: #5c8084;
  color: white;
}
.image-preview {
    max-width: 400px; /* Set a max-width for the image */
    border: 1px solid #222;
    border-radius: 8px;
    box-shadow: 0 2px 3px rgba(0,0,0,0.1);
}
.year-label {
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.7); /* Semi-transparent black background */
    color: white; /* White text color */
    padding: 2px 5px; /* Some padding around the text */
    border-top-left-radius: 4px; /* Match the border radius of the image preview */
    font-size: 0.75rem; /* Smaller font size */
}

/* Filter button UI */
#streetDropdown .dropdown-menu {
  left: 0;           /* Align the left edge of the menu with the left edge of the button */
  right: auto;       /* Ensure the right positioning is not affecting the layout */
}

#clearSearch {
  font-size: 18px;
  color: lightgray;
}

.no-hover-color-change:hover span {
  color: white !important;  /* Keep the text color the same */
  fill: white !important;  /* Keep the SVG fill color the same */
}

.checkbox-button {
  display: none;
}

.checkbox-button + .checkbox-label,
.custom-button {
  display: inline-block;
  padding: 0.5em 1em;
  border: 1px solid #b5b5b5;
  margin-bottom: 8px;
  margin-left: 4px;
  margin-right: 4px;
  border-radius: 4px;
  background-color: #36363600;
  color: black;
  cursor: pointer;
  height: 2.5em; /* Ensures consistent height */
}
.checkbox-button + .checkbox-label,
.custom2-button {
  display: inline-block;
  padding: 0.5em 1em;
  border: 1px solid #b5b5b5;
  margin-left: 4px;
  margin-right: 4px;
  border-radius: 4px;
  background-color: #36363600;
  color: black;
  cursor: pointer;
  height: 3em; /* Ensures consistent height */
}
.checkbox-button:checked + .checkbox-label,
.custom-button {
  background-color: #36363600;
  color: black;
  text-decoration: line-through;
}

.field.is-grouped {
  display: flex;
  align-items: center;
  justify-content: space-between; /* Push items to opposite ends */
  width: 100%; /* Ensure the container takes full width */
}

/* Custom dropdown menu positioning */
.custom-dropdown-menu {
  position: absolute;
  top: 100%; /* Position below the button */
  left: 0; /* Align to the left of the button */
  margin-top: 0.5rem; /* Add some space between the button and the menu */
  z-index: 1000; /* Ensure it appears above other elements */
  min-width: 250px;
  max-width: 350px;
}

/* Custom button styling */
.special-button {
  width: 100%; /* Full width of the parent container */
  white-space: normal; /* Allow text to wrap */
  word-wrap: break-word; /* Break long words if necessary */
}


/* Style Regions boxes in landing page dashboard */
.is-purple-region {
    background-color: #c61dc66b !important;
    color: #4b004b !important;
    font-weight: bold;
    border: 1px solid #8f0f8f !important; /* Mid-tone purple border */
}
.is-blue-region {
    background-color: #485fc7a3 !important;
    color: #0d0935 !important;
    font-weight: bold;
    border: 1px solid #2f47a0 !important; /* Mid-tone blue border */
}
.is-red-region {
    background-color: #ff3860a3 !important;
    color: #7f1a36 !important;
    font-weight: bold;
    border: 1px solid #bf2c4b !important; /* Mid-tone red border */
}
.is-green-region {
    background-color: #23d160a3 !important;
    color: #1a572d !important;
    font-weight: bold;
    border: 1px solid #1cbf5a !important; /* Mid-tone green border */
}
.is-orange-region {
    background-color: #ffdd57a3 !important;
    color: #7f652e !important;
    font-weight: bold;
    border: 1px solid #d6ad45 !important; /* Mid-tone orange border */
}
.is-teal-region {
    background-color: #00d1b2a3 !important;
    color: #00695c !important;
    font-weight: bold;
    border: 1px solid #009f89 !important; /* Mid-tone teal border */
}
.is-pink-region {
    background-color: #ff69b4a3 !important;
    color: #a03a6b !important;
    font-weight: bold;
    border: 1px solid #d1548f !important; /* Mid-tone pink border */
}
.is-yellow-region {
    background-color: #ffd700a3 !important;
    color: #7f6a00 !important;
    font-weight: bold;
    border: 1px solid #d4b300 !important; /* Mid-tone yellow border */
}
.is-cyan-region {
    background-color: #00c4cca3 !important;
    color: #00747a !important;
    font-weight: bold;
    border: 1px solid #009aa0 !important; /* Mid-tone cyan border */
}
.is-brown-region {
    background-color: #8b4513a3 !important;
    color: #4d260b !important;
    font-weight: bold;
    border: 1px solid #70340e !important; /* Mid-tone brown border */
}
.is-lime-region {
    background-color: #bfff00a3 !important;
    color: #6b7f00 !important;
    font-weight: bold;
    border: 1px solid #97b300 !important; /* Mid-tone lime border */
}
.is-indigo-region {
    background-color: #4b0082a3 !important;
    color: #2d004d !important;
    font-weight: bold;
    border: 1px solid #3b0066 !important; /* Mid-tone indigo border */
}
.is-magenta-region {
    background-color: #ff00ffa3 !important;
    color: #7f007f !important;
    font-weight: bold;
    border: 1px solid #bf00bf !important; /* Mid-tone magenta border */
}
.is-olive-region {
    background-color: #808000a3 !important;
    color: #4d4d00 !important;
    font-weight: bold;
    border: 1px solid #666600 !important; /* Mid-tone olive border */
}
.is-turquoise-region {
    background-color: #40e0d0a3 !important;
    color: #2b7f70 !important;
    font-weight: bold;
    border: 1px solid #33b8a8 !important; /* Mid-tone turquoise border */
}
.table td, .table th {
  border: none; /* Remove default borders */
}

@media screen and (max-width: 768px) {
  .mobile-column {
    width: 50% !important;
    text-align: center !important;
  }

  /* Add text-align to the existing selector */
  .table td, .table th {
    border: none;
    text-align: center !important;
  }
}
.equal-height {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.equal-height .box {
    height: 100%;
    display: flex;
    flex-direction: column;
}

/* This ensures the title stays at the top */
.equal-height .box .title {
    margin-bottom: 1rem;
}

/* This makes the content area fill the remaining space */
.equal-height .box .content-area {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.fixed-height-row {
  height: 70px; /* Making sure each row is same height */
  border-bottom: 1px solid #ddd;
}
.clickable-region,
.clickable-metropole {
    cursor: pointer;
}
.totals-row {
  border: 3px solid black;
  padding-top: 10px;
  padding-bottom: 10px;
}
.transparent-button {
    background-color: transparent;
    border: 1px solid black;
    border-radius: 4px;
    padding: 0.5em 1em;
    cursor: pointer;
    transition: background-color 0.3s, color 0.3s;
}

.transparent-button:hover {
    background-color: #363636;
    color: white;
}
@media screen and (max-width: 768px) {
  .tile.is-parent {
    padding: 0.75rem !important;
    width: 100% !important;
  }

  .tile.is-parent.is-12-mobile {
    flex: none !important;
    width: 100% !important;
  }
}